@@ -64,6 +64,7 @@ public void testForceMergeDenseCase() throws Exception {
6464
6565 int numDocs = 256 + random ().nextInt (1024 );
6666 int numHosts = numDocs / 20 ;
67+
6768 for (int i = 0 ; i < numDocs ; i ++) {
6869 var d = new Document ();
6970
@@ -77,7 +78,12 @@ public void testForceMergeDenseCase() throws Exception {
7778 d .add (new NumericDocValuesField ("counter_1" , counter1 ++));
7879 d .add (new SortedNumericDocValuesField ("counter_2" , counter2 ++));
7980 d .add (new SortedNumericDocValuesField ("gauge_1" , gauge1Values [i % gauge1Values .length ]));
80- d .add (new SortedNumericDocValuesField ("gauge_2" , gauge2Values [i % gauge1Values .length ]));
81+
82+ int numGauge2 = 1 + random ().nextInt (8 );
83+ for (int j = 0 ; j < numGauge2 ; j ++) {
84+ d .add (new SortedNumericDocValuesField ("gauge_2" , gauge2Values [(i + j ) % gauge2Values .length ]));
85+ }
86+
8187 int numTags = 1 + random ().nextInt (8 );
8288 for (int j = 0 ; j < numTags ; j ++) {
8389 d .add (new SortedSetDocValuesField ("tags" , new BytesRef (tags [j ])));
@@ -144,9 +150,10 @@ public void testForceMergeDenseCase() throws Exception {
144150 assertTrue ("unexpected gauge [" + gaugeOneValue + "]" , Arrays .binarySearch (gauge1Values , gaugeOneValue ) >= 0 );
145151
146152 assertEquals (i , gaugeTwoDV .nextDoc ());
147- assertEquals (1 , gaugeTwoDV .docValueCount ());
148- long gaugeTwoValue = gaugeTwoDV .nextValue ();
149- assertTrue ("unexpected gauge [" + gaugeTwoValue + "]" , Arrays .binarySearch (gauge2Values , gaugeTwoValue ) >= 0 );
153+ for (int j = 0 ; j < gaugeTwoDV .docValueCount (); j ++) {
154+ long gaugeTwoValue = gaugeTwoDV .nextValue ();
155+ assertTrue ("unexpected gauge [" + gaugeTwoValue + "]" , Arrays .binarySearch (gauge2Values , gaugeTwoValue ) >= 0 );
156+ }
150157
151158 assertEquals (i , tagsDV .nextDoc ());
152159 for (int j = 0 ; j < tagsDV .docValueCount (); j ++) {
@@ -195,7 +202,10 @@ public void testForceMergeSparseCase() throws Exception {
195202 d .add (new SortedNumericDocValuesField ("gauge_1" , gauge1Values [i % gauge1Values .length ]));
196203 }
197204 if (random ().nextBoolean ()) {
198- d .add (new SortedNumericDocValuesField ("gauge_2" , gauge2Values [i % gauge1Values .length ]));
205+ int numGauge2 = 1 + random ().nextInt (8 );
206+ for (int j = 0 ; j < numGauge2 ; j ++) {
207+ d .add (new SortedNumericDocValuesField ("gauge_2" , gauge2Values [(i + j ) % gauge2Values .length ]));
208+ }
199209 }
200210 if (random ().nextBoolean ()) {
201211 int numTags = 1 + random ().nextInt (8 );
@@ -274,9 +284,10 @@ public void testForceMergeSparseCase() throws Exception {
274284 }
275285
276286 if (gaugeTwoDV .advanceExact (i )) {
277- assertEquals (1 , gaugeTwoDV .docValueCount ());
278- long gaugeTwoValue = gaugeTwoDV .nextValue ();
279- assertTrue ("unexpected gauge [" + gaugeTwoValue + "]" , Arrays .binarySearch (gauge2Values , gaugeTwoValue ) >= 0 );
287+ for (int j = 0 ; j < gaugeTwoDV .docValueCount (); j ++) {
288+ long gaugeTwoValue = gaugeTwoDV .nextValue ();
289+ assertTrue ("unexpected gauge [" + gaugeTwoValue + "]" , Arrays .binarySearch (gauge2Values , gaugeTwoValue ) >= 0 );
290+ }
280291 }
281292
282293 if (tagsDV .advanceExact (i )) {
0 commit comments