@@ -97,23 +97,30 @@ public void testSerialization() throws Exception {
97
97
public void testBwcSerialization () throws Exception {
98
98
{
99
99
final ForceMergeRequest sample = randomRequest ();
100
- final Version compatibleVersion = VersionUtils .randomCompatibleVersion (random (), Version .CURRENT );
100
+ final Version version = VersionUtils .randomCompatibleVersion (random (), Version .CURRENT );
101
101
try (BytesStreamOutput out = new BytesStreamOutput ()) {
102
- out .setVersion (compatibleVersion );
102
+ out .setVersion (version );
103
103
sample .writeTo (out );
104
104
105
105
try (StreamInput in = out .bytes ().streamInput ()) {
106
- in .setVersion (Version . CURRENT );
106
+ in .setVersion (version );
107
107
TaskId .readFromStream (in );
108
108
in .readStringArray ();
109
109
IndicesOptions .readIndicesOptions (in );
110
110
int maxNumSegments = in .readInt ();
111
111
boolean onlyExpungeDeletes = in .readBoolean ();
112
112
boolean flush = in .readBoolean ();
113
+ boolean primaryOnly = false ;
114
+ if (version .onOrAfter (Version .V_2_13_0 )) {
115
+ primaryOnly = in .readBoolean ();
116
+ }
113
117
String forceMergeUUID = in .readOptionalString ();
114
118
assertEquals (sample .maxNumSegments (), maxNumSegments );
115
119
assertEquals (sample .onlyExpungeDeletes (), onlyExpungeDeletes );
116
120
assertEquals (sample .flush (), flush );
121
+ if (version .onOrAfter (Version .V_2_13_0 )) {
122
+ assertEquals (sample .primaryOnly (), primaryOnly );
123
+ }
117
124
assertEquals (sample .forceMergeUUID (), forceMergeUUID );
118
125
}
119
126
@@ -122,30 +129,30 @@ public void testBwcSerialization() throws Exception {
122
129
123
130
{
124
131
final ForceMergeRequest sample = randomRequest ();
125
- final Version compatibleVersion = VersionUtils .randomCompatibleVersion (random (), Version .CURRENT );
132
+ final Version version = VersionUtils .randomCompatibleVersion (random (), Version .CURRENT );
126
133
try (BytesStreamOutput out = new BytesStreamOutput ()) {
127
- out .setVersion (Version . CURRENT );
134
+ out .setVersion (version );
128
135
sample .getParentTask ().writeTo (out );
129
136
out .writeStringArray (sample .indices ());
130
137
sample .indicesOptions ().writeIndicesOptions (out );
131
138
out .writeInt (sample .maxNumSegments ());
132
139
out .writeBoolean (sample .onlyExpungeDeletes ());
133
140
out .writeBoolean (sample .flush ());
134
- if (compatibleVersion .onOrAfter (Version .V_2_13_0 )) {
141
+ if (version .onOrAfter (Version .V_2_13_0 )) {
135
142
out .writeBoolean (sample .primaryOnly ());
136
143
}
137
144
out .writeOptionalString (sample .forceMergeUUID ());
138
145
139
146
final ForceMergeRequest deserializedRequest ;
140
147
try (StreamInput in = out .bytes ().streamInput ()) {
141
- in .setVersion (compatibleVersion );
148
+ in .setVersion (version );
142
149
deserializedRequest = new ForceMergeRequest (in );
143
150
}
144
151
145
152
assertEquals (sample .maxNumSegments (), deserializedRequest .maxNumSegments ());
146
153
assertEquals (sample .onlyExpungeDeletes (), deserializedRequest .onlyExpungeDeletes ());
147
154
assertEquals (sample .flush (), deserializedRequest .flush ());
148
- if (compatibleVersion .onOrAfter (Version .V_2_13_0 )) {
155
+ if (version .onOrAfter (Version .V_2_13_0 )) {
149
156
assertEquals (sample .primaryOnly (), deserializedRequest .primaryOnly ());
150
157
}
151
158
assertEquals (sample .forceMergeUUID (), deserializedRequest .forceMergeUUID ());
0 commit comments