@@ -340,11 +340,22 @@ public void testTableParserSkipsUnnecessaryBitMaps() throws Exception {
340340 false )) {
341341 final Iterator <TabletInsertionEvent > iterator = parser .toTabletInsertionEvents ().iterator ();
342342 Assert .assertTrue (iterator .hasNext ());
343- final Tablet parsedTablet =
344- ((PipeRawTabletInsertionEvent ) iterator .next ()).convertToTablet ();
345- assertBitMapExistence (parsedTablet , false , false , true );
346- Assert .assertTrue (parsedTablet .isNull (1 , 2 ));
347- Assert .assertFalse (iterator .hasNext ());
343+ Tablet parsedTablet = ((PipeRawTabletInsertionEvent ) iterator .next ()).convertToTablet ();
344+ if (parsedTablet .getSchemas ().size () == 3 ) {
345+ assertBitMapExistence (parsedTablet , false , false , true );
346+ Assert .assertTrue (parsedTablet .isNull (1 , 2 ));
347+ Assert .assertFalse (iterator .hasNext ());
348+ } else {
349+ Assert .assertNull (parsedTablet .getBitMaps ());
350+ while (iterator .hasNext ()) {
351+ parsedTablet = ((PipeRawTabletInsertionEvent ) iterator .next ()).convertToTablet ();
352+ if (parsedTablet .getSchemas ().get (1 ).getMeasurementName ().equals ("dense" )) {
353+ Assert .assertNull (parsedTablet .getBitMaps ());
354+ } else {
355+ Assert .assertTrue (parsedTablet .isNull (1 , 1 ));
356+ }
357+ }
358+ }
348359 }
349360 } finally {
350361 CommonDescriptor .getInstance ()
@@ -1095,11 +1106,23 @@ private void testTreeParserSkipsUnnecessaryBitMaps(final boolean isQuery) throws
10951106 false )) {
10961107 final Iterator <TabletInsertionEvent > iterator = parser .toTabletInsertionEvents ().iterator ();
10971108 Assert .assertTrue (iterator .hasNext ());
1098- final Tablet parsedTablet =
1099- ((PipeRawTabletInsertionEvent ) iterator .next ()).convertToTablet ();
1100- assertBitMapExistence (parsedTablet , false , true );
1101- Assert .assertTrue (parsedTablet .isNull (1 , 1 ));
1102- Assert .assertFalse (iterator .hasNext ());
1109+ Tablet parsedTablet = ((PipeRawTabletInsertionEvent ) iterator .next ()).convertToTablet ();
1110+ if (parsedTablet .getSchemas ().size () > 1 ) {
1111+ assertBitMapExistence (parsedTablet , false , true );
1112+ Assert .assertTrue (parsedTablet .isNull (1 , 1 ));
1113+ Assert .assertFalse (iterator .hasNext ());
1114+ } else {
1115+ Assert .assertNull (parsedTablet .getBitMaps ());
1116+ Assert .assertTrue (iterator .hasNext ());
1117+ while (iterator .hasNext ()) {
1118+ parsedTablet = ((PipeRawTabletInsertionEvent ) iterator .next ()).convertToTablet ();
1119+ if (parsedTablet .getSchemas ().get (0 ).getMeasurementName ().equals ("dense" )) {
1120+ Assert .assertNull (parsedTablet .getBitMaps ());
1121+ } else {
1122+ Assert .assertTrue (parsedTablet .isNull (0 , 1 ));
1123+ }
1124+ }
1125+ }
11031126 }
11041127 } finally {
11051128 CommonDescriptor .getInstance ()
0 commit comments