Program: 90256
Project: 90256
Buggy source:
@Setup public void setup() throws Exception {
  ZipRealDataRetriever dataRetriever=new ZipRealDataRetriever(dataset);
  System.out.println();
  System.out.println("String_Node_Str" + dataRetriever.getName());
  int normalsize=0;
  int runsize=0;
  int concisesize=0;
  int wahsize=0;
  int ewahsize=0;
  int ewahsize32=0;
  long stupidarraysize=0;
  long stupidbitmapsize=0;
  int totalcount=0;
  int numberofbitmaps=0;
  int universesize=0;
  for (  int[] data : dataRetriever.fetchBitPositions()) {
    numberofbitmaps++;
    if (universesize < data[data.length - 1])     universesize=data[data.length - 1];
    stupidarraysize+=8 + data.length * 4L;
    stupidbitmapsize+=8 + (data[data.length - 1] + 63L) / 64 * 8;
    totalcount+=data.length;
    EWAHCompressedBitmap ewahBitmap=EWAHCompressedBitmap.bitmapOf(data);
    ewahsize+=ewahBitmap.serializedSizeInBytes();
    ewah.add(ewahBitmap);
    EWAHCompressedBitmap32 ewahBitmap32=EWAHCompressedBitmap32.bitmapOf(data);
    ewahsize32+=ewahBitmap32.serializedSizeInBytes();
    ewah32.add(ewahBitmap32);
    RoaringBitmap basic=RoaringBitmap.bitmapOf(data);
    RoaringBitmap opti=basic.clone();
    opti.runOptimize();
    ConciseSet concise=toConcise(data);
    ConciseSet w=toWAH(data);
    wah.add(w);
    wahsize+=(int)(concise.size() * concise.collectionCompressionRatio()) * 4;
    rc.add(opti);
    ac.add(basic);
    cc.add(concise);
    normalsize+=basic.serializedSizeInBytes();
    runsize+=opti.serializedSizeInBytes();
    concisesize+=(int)(concise.size() * concise.collectionCompressionRatio()) * 4;
  }
  DecimalFormat df=new DecimalFormat("String_Node_Str");
  System.out.println();
  System.out.println("String_Node_Str");
  System.out.println("String_Node_Str" + dataset);
  System.out.println("String_Node_Str" + numberofbitmaps + "String_Node_Str"+ totalcount+ "String_Node_Str"+ universesize);
  System.out.println("String_Node_Str" + df.format(totalcount * 1.0 / numberofbitmaps));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + runsize) + "String_Node_Str"+ String.format("String_Node_Str",df.format(runsize * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(runsize * 8.0 / totalcount)));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + normalsize) + "String_Node_Str"+ String.format("String_Node_Str",df.format(normalsize * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(normalsize * 8.0 / totalcount)));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + concisesize) + "String_Node_Str"+ String.format("String_Node_Str",df.format(concisesize * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(concisesize * 8.0 / totalcount)));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + wahsize) + "String_Node_Str"+ String.format("String_Node_Str",df.format(wahsize * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(wahsize * 8.0 / totalcount)));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + ewahsize) + "String_Node_Str"+ String.format("String_Node_Str",df.format(ewahsize * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(ewahsize * 8.0 / totalcount)));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + ewahsize32) + "String_Node_Str"+ String.format("String_Node_Str",df.format(ewahsize32 * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(ewahsize32 * 8.0 / totalcount)));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + stupidarraysize) + "String_Node_Str"+ String.format("String_Node_Str",df.format(stupidarraysize * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(stupidarraysize * 8.0 / totalcount)));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + stupidbitmapsize) + "String_Node_Str"+ String.format("String_Node_Str",df.format(stupidbitmapsize * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(stupidbitmapsize * 8.0 / totalcount)));
  System.out.println("String_Node_Str");
  System.out.println();
  for (int k=0; k + 1 < rc.size(); ++k) {
    totalandnot+=RoaringBitmap.andNot(rc.get(k),rc.get(k + 1)).getCardinality();
  }
}

Fixed version (ground truth):
@Setup public void setup() throws Exception {
  ZipRealDataRetriever dataRetriever=new ZipRealDataRetriever(dataset);
  System.out.println();
  System.out.println("String_Node_Str" + dataRetriever.getName());
  int normalsize=0;
  int runsize=0;
  int concisesize=0;
  int wahsize=0;
  int ewahsize=0;
  int ewahsize32=0;
  long stupidarraysize=0;
  long stupidbitmapsize=0;
  int totalcount=0;
  int numberofbitmaps=0;
  int universesize=0;
  for (  int[] data : dataRetriever.fetchBitPositions()) {
    numberofbitmaps++;
    if (universesize < data[data.length - 1])     universesize=data[data.length - 1];
    stupidarraysize+=8 + data.length * 4L;
    stupidbitmapsize+=8 + (data[data.length - 1] + 63L) / 64 * 8;
    totalcount+=data.length;
    EWAHCompressedBitmap ewahBitmap=EWAHCompressedBitmap.bitmapOf(data);
    ewahsize+=ewahBitmap.serializedSizeInBytes();
    ewah.add(ewahBitmap);
    EWAHCompressedBitmap32 ewahBitmap32=EWAHCompressedBitmap32.bitmapOf(data);
    ewahsize32+=ewahBitmap32.serializedSizeInBytes();
    ewah32.add(ewahBitmap32);
    RoaringBitmap basic=RoaringBitmap.bitmapOf(data);
    RoaringBitmap opti=basic.clone();
    opti.runOptimize();
    ConciseSet concise=toConcise(data);
    ConciseSet w=toWAH(data);
    wah.add(w);
    wahsize+=(int)(concise.size() * concise.collectionCompressionRatio()) * 4;
    rc.add(opti);
    ac.add(basic);
    cc.add(concise);
    normalsize+=basic.serializedSizeInBytes();
    runsize+=opti.serializedSizeInBytes();
    concisesize+=(int)(concise.size() * concise.collectionCompressionRatio()) * 4;
  }
  DecimalFormat df=new DecimalFormat("String_Node_Str");
  System.out.println();
  System.out.println("String_Node_Str");
  System.out.println("String_Node_Str" + dataset);
  System.out.println("String_Node_Str" + numberofbitmaps + "String_Node_Str"+ totalcount+ "String_Node_Str"+ universesize);
  System.out.println("String_Node_Str" + df.format(totalcount * 1.0 / numberofbitmaps));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + runsize) + "String_Node_Str"+ String.format("String_Node_Str",df.format(runsize * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(runsize * 8.0 / totalcount)));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + normalsize) + "String_Node_Str"+ String.format("String_Node_Str",df.format(normalsize * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(normalsize * 8.0 / totalcount)));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + concisesize) + "String_Node_Str"+ String.format("String_Node_Str",df.format(concisesize * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(concisesize * 8.0 / totalcount)));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + wahsize) + "String_Node_Str"+ String.format("String_Node_Str",df.format(wahsize * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(wahsize * 8.0 / totalcount)));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + ewahsize) + "String_Node_Str"+ String.format("String_Node_Str",df.format(ewahsize * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(ewahsize * 8.0 / totalcount)));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + ewahsize32) + "String_Node_Str"+ String.format("String_Node_Str",df.format(ewahsize32 * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(ewahsize32 * 8.0 / totalcount)));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + stupidarraysize) + "String_Node_Str"+ String.format("String_Node_Str",df.format(stupidarraysize * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(stupidarraysize * 8.0 / totalcount)));
  System.out.println("String_Node_Str" + String.format("String_Node_Str","String_Node_Str" + stupidbitmapsize) + "String_Node_Str"+ String.format("String_Node_Str",df.format(stupidbitmapsize * 1.0 / numberofbitmaps))+ "String_Node_Str"+ String.format("String_Node_Str",df.format(stupidbitmapsize * 8.0 / totalcount)));
  System.out.println("String_Node_Str");
  System.out.println();
  totalandnot=0;
  for (int k=0; k + 1 < rc.size(); ++k) {
    int answer1=RoaringBitmap.andNot(rc.get(k),rc.get(k + 1)).getCardinality();
    int answer2=RoaringBitmap.andNot(ac.get(k),ac.get(k + 1)).getCardinality();
    int answer3=cc.get(k).difference(cc.get(k + 1)).size();
    int answer4=wah.get(k).difference(wah.get(k + 1)).size();
    int answer5=ewah.get(k).andNot(ewah.get(k + 1)).cardinality();
    int answer6=ewah32.get(k).andNot(ewah32.get(k + 1)).cardinality();
    if ((answer1 != answer2) || (answer2 != answer3) || (answer3 != answer4)|| (answer4 != answer5)|| (answer5 != answer6)) {
      System.out.println("String_Node_Str");
      System.out.println("String_Node_Str" + answer1);
      System.out.println("String_Node_Str" + answer2);
      System.out.println("String_Node_Str" + answer3);
      System.out.println("String_Node_Str" + answer4);
      System.out.println("String_Node_Str" + answer5);
      System.out.println("String_Node_Str" + answer6);
      throw new RuntimeException("String_Node_Str");
    }
    totalandnot+=RoaringBitmap.andNot(rc.get(k),rc.get(k + 1)).getCardinality();
  }
}