nus-yam/ex-repair huggingface dataset:
Program: 172769
Project: 172769
Buggy source:
@Override public void setBlockIndexNode(final BlockIndexNode parentNode,final ColumnBinary columnBinary) throws IOException {
  ByteBuffer wrapBuffer=ByteBuffer.wrap(columnBinary.binary,columnBinary.binaryStart,columnBinary.binaryLength);
  int minLength=wrapBuffer.getInt();
  char[] minCharArray=new char[minLength];
  wrapBuffer.asCharBuffer().get(minCharArray);
  wrapBuffer.position(wrapBuffer.position() + minLength);
  int maxLength=wrapBuffer.getInt();
  char[] maxCharArray=new char[maxLength];
  wrapBuffer.asCharBuffer().get(maxCharArray);
  wrapBuffer.position(wrapBuffer.position() + maxLength);
  String min=new String(minCharArray);
  String max=new String(maxCharArray);
  BlockIndexNode currentNode=parentNode.getChildNode(columnBinary.columnName);
  currentNode.setBlockIndex(new StringRangeBlockIndex(min,max));
}

Fixed version (ground truth):
@Override public void setBlockIndexNode(final BlockIndexNode parentNode,final ColumnBinary columnBinary) throws IOException {
  ByteBuffer wrapBuffer=ByteBuffer.wrap(columnBinary.binary,columnBinary.binaryStart,columnBinary.binaryLength);
  int minLength=wrapBuffer.getInt();
  char[] minCharArray=new char[minLength / Character.BYTES];
  wrapBuffer.asCharBuffer().get(minCharArray);
  wrapBuffer.position(wrapBuffer.position() + minLength);
  int maxLength=wrapBuffer.getInt();
  char[] maxCharArray=new char[maxLength / Character.BYTES];
  wrapBuffer.asCharBuffer().get(maxCharArray);
  wrapBuffer.position(wrapBuffer.position() + maxLength);
  String min=new String(minCharArray);
  String max=new String(maxCharArray);
  BlockIndexNode currentNode=parentNode.getChildNode(columnBinary.columnName);
  currentNode.setBlockIndex(new StringRangeBlockIndex(min,max));
}
Program: 172770
Project: 172770
Buggy source:
@Override public IColumn toColumn(final ColumnBinary columnBinary) throws IOException {
  ByteBuffer wrapBuffer=ByteBuffer.wrap(columnBinary.binary,columnBinary.binaryStart,columnBinary.binaryLength);
  int minLength=wrapBuffer.getInt();
  char[] minCharArray=new char[minLength];
  wrapBuffer.asCharBuffer().get(minCharArray);
  wrapBuffer.position(wrapBuffer.position() + minLength);
  int maxLength=wrapBuffer.getInt();
  char[] maxCharArray=new char[maxLength];
  wrapBuffer.asCharBuffer().get(maxCharArray);
  wrapBuffer.position(wrapBuffer.position() + maxLength);
  String min=new String(minCharArray);
  String max=new String(maxCharArray);
  int type=wrapBuffer.getInt();
  int headerSize=Integer.BYTES + minLength + Integer.BYTES+ maxLength+ Integer.BYTES;
  if (type == 0) {
    return new HeaderIndexLazyColumn(columnBinary.columnName,columnBinary.columnType,new StringColumnManager(columnBinary,columnBinary.binaryStart + headerSize,columnBinary.binaryLength - headerSize),new RangeStringIndex(min,max,true));
  }
 else {
    return new HeaderIndexLazyColumn(columnBinary.columnName,columnBinary.columnType,new RangeStringColumnManager(columnBinary,columnBinary.binaryStart + headerSize,columnBinary.binaryLength - headerSize),new RangeStringIndex(min,max,false));
  }
}

Fixed version (ground truth):
@Override public IColumn toColumn(final ColumnBinary columnBinary) throws IOException {
  ByteBuffer wrapBuffer=ByteBuffer.wrap(columnBinary.binary,columnBinary.binaryStart,columnBinary.binaryLength);
  int minLength=wrapBuffer.getInt();
  char[] minCharArray=new char[minLength / Character.BYTES];
  wrapBuffer.asCharBuffer().get(minCharArray);
  wrapBuffer.position(wrapBuffer.position() + minLength);
  int maxLength=wrapBuffer.getInt();
  char[] maxCharArray=new char[maxLength / Character.BYTES];
  wrapBuffer.asCharBuffer().get(maxCharArray);
  wrapBuffer.position(wrapBuffer.position() + maxLength);
  String min=new String(minCharArray);
  String max=new String(maxCharArray);
  int type=wrapBuffer.getInt();
  int headerSize=Integer.BYTES + minLength + Integer.BYTES+ maxLength+ Integer.BYTES;
  if (type == 0) {
    return new HeaderIndexLazyColumn(columnBinary.columnName,columnBinary.columnType,new StringColumnManager(columnBinary,columnBinary.binaryStart + headerSize,columnBinary.binaryLength - headerSize),new RangeStringIndex(min,max,true));
  }
 else {
    return new HeaderIndexLazyColumn(columnBinary.columnName,columnBinary.columnType,new RangeStringColumnManager(columnBinary,columnBinary.binaryStart + headerSize,columnBinary.binaryLength - headerSize),new RangeStringIndex(min,max,false));
  }
}
Program: 172771
Project: 172771
Buggy source:
@Test public void T_toBinary_1() throws IOException {
  IColumn column=new PrimitiveColumn(ColumnType.STRING,"String_Node_Str");
  column.add(ColumnType.STRING,new StringObj("String_Node_Str"),0);
  column.add(ColumnType.STRING,new StringObj("String_Node_Str"),1);
  ColumnBinaryMakerConfig defaultConfig=new ColumnBinaryMakerConfig();
  ColumnBinaryMakerCustomConfigNode configNode=new ColumnBinaryMakerCustomConfigNode("String_Node_Str",defaultConfig);
  IColumnBinaryMaker maker=new RangeDumpStringColumnBinaryMaker();
  ColumnBinary columnBinary=maker.toBinary(defaultConfig,null,column,new MakerCache());
  assertEquals(columnBinary.columnName,"String_Node_Str");
  assertEquals(columnBinary.rowCount,2);
  assertEquals(columnBinary.columnType,ColumnType.STRING);
  IColumn decodeColumn=maker.toColumn(columnBinary);
  assertEquals(decodeColumn.getColumnKeys().size(),0);
  assertEquals(decodeColumn.getColumnSize(),0);
  assertEquals("String_Node_Str",((PrimitiveObject)(decodeColumn.get(0).getRow())).getString());
  assertEquals("String_Node_Str",((PrimitiveObject)(decodeColumn.get(1).getRow())).getString());
  assertEquals(decodeColumn.getColumnKeys().size(),0);
  assertEquals(decodeColumn.getColumnSize(),0);
}

Fixed version (ground truth):
@Test public void T_toBinary_1() throws IOException {
  IColumn column=new PrimitiveColumn(ColumnType.STRING,"String_Node_Str");
  column.add(ColumnType.STRING,new StringObj("String_Node_Str"),0);
  column.add(ColumnType.STRING,new StringObj("String_Node_Str"),1);
  ColumnBinaryMakerConfig defaultConfig=new ColumnBinaryMakerConfig();
  ColumnBinaryMakerCustomConfigNode configNode=new ColumnBinaryMakerCustomConfigNode("String_Node_Str",defaultConfig);
  IColumnBinaryMaker maker=new RangeDumpStringColumnBinaryMaker();
  ColumnBinary columnBinary=maker.toBinary(defaultConfig,null,column,new MakerCache());
  maker.setBlockIndexNode(new BlockIndexNode(),columnBinary);
  assertEquals(columnBinary.columnName,"String_Node_Str");
  assertEquals(columnBinary.rowCount,2);
  assertEquals(columnBinary.columnType,ColumnType.STRING);
  IColumn decodeColumn=maker.toColumn(columnBinary);
  assertEquals(decodeColumn.getColumnKeys().size(),0);
  assertEquals(decodeColumn.getColumnSize(),0);
  assertEquals("String_Node_Str",((PrimitiveObject)(decodeColumn.get(0).getRow())).getString());
  assertEquals("String_Node_Str",((PrimitiveObject)(decodeColumn.get(1).getRow())).getString());
  assertEquals(decodeColumn.getColumnKeys().size(),0);
  assertEquals(decodeColumn.getColumnSize(),0);
}
Program: 172772
Project: 172772
Buggy source:
@Test public void T_loadInMemoryStorage_2() throws IOException {
  IColumn column=new PrimitiveColumn(ColumnType.STRING,"String_Node_Str");
  column.add(ColumnType.STRING,new StringObj("String_Node_Str"),0);
  column.add(ColumnType.STRING,new StringObj("String_Node_Str"),1);
  column.add(ColumnType.STRING,new StringObj("String_Node_Str"),5);
  ColumnBinaryMakerConfig defaultConfig=new ColumnBinaryMakerConfig();
  ColumnBinaryMakerCustomConfigNode configNode=new ColumnBinaryMakerCustomConfigNode("String_Node_Str",defaultConfig);
  IColumnBinaryMaker maker=new RangeDumpStringColumnBinaryMaker();
  ColumnBinary columnBinary=maker.toBinary(defaultConfig,null,column,new MakerCache());
  assertEquals(columnBinary.columnName,"String_Node_Str");
  assertEquals(columnBinary.rowCount,3);
  assertEquals(columnBinary.columnType,ColumnType.STRING);
  TestStringMemoryAllocator allocator=new TestStringMemoryAllocator();
  maker.loadInMemoryStorage(columnBinary,allocator);
  assertEquals(allocator.list.get(0),"String_Node_Str");
  assertEquals(allocator.list.get(1),"String_Node_Str");
  assertEquals(allocator.list.get(2),null);
  assertEquals(allocator.list.get(3),null);
  assertEquals(allocator.list.get(4),null);
  assertEquals(allocator.list.get(5),"String_Node_Str");
}

Fixed version (ground truth):
@Test public void T_loadInMemoryStorage_2() throws IOException {
  IColumn column=new PrimitiveColumn(ColumnType.STRING,"String_Node_Str");
  column.add(ColumnType.STRING,new StringObj("String_Node_Str"),0);
  column.add(ColumnType.STRING,new StringObj("String_Node_Str"),1);
  column.add(ColumnType.STRING,new StringObj("String_Node_Str"),5);
  ColumnBinaryMakerConfig defaultConfig=new ColumnBinaryMakerConfig();
  ColumnBinaryMakerCustomConfigNode configNode=new ColumnBinaryMakerCustomConfigNode("String_Node_Str",defaultConfig);
  IColumnBinaryMaker maker=new RangeDumpStringColumnBinaryMaker();
  ColumnBinary columnBinary=maker.toBinary(defaultConfig,null,column,new MakerCache());
  maker.setBlockIndexNode(new BlockIndexNode(),columnBinary);
  assertEquals(columnBinary.columnName,"String_Node_Str");
  assertEquals(columnBinary.rowCount,3);
  assertEquals(columnBinary.columnType,ColumnType.STRING);
  TestStringMemoryAllocator allocator=new TestStringMemoryAllocator();
  maker.loadInMemoryStorage(columnBinary,allocator);
  assertEquals(allocator.list.get(0),"String_Node_Str");
  assertEquals(allocator.list.get(1),"String_Node_Str");
  assertEquals(allocator.list.get(2),null);
  assertEquals(allocator.list.get(3),null);
  assertEquals(allocator.list.get(4),null);
  assertEquals(allocator.list.get(5),"String_Node_Str");
}
Program: 172785
Project: 172785
Buggy source:
@Override public int calcBinarySize(final IColumnAnalizeResult analizeResult){
  StringColumnAnalizeResult stringAnalizeResult=(StringColumnAnalizeResult)analizeResult;
  int dicBinarySize=(analizeResult.getColumnSize() * PrimitiveByteLength.INT_LENGTH) + stringAnalizeResult.getTotalUtf8ByteSize();
  return (PrimitiveByteLength.INT_LENGTH * 2) + analizeResult.getNullCount() + dicBinarySize;
}

Fixed version (ground truth):
@Override public int calcBinarySize(final IColumnAnalizeResult analizeResult){
  StringColumnAnalizeResult stringAnalizeResult=(StringColumnAnalizeResult)analizeResult;
  int dicBinarySize=(analizeResult.getColumnSize() * PrimitiveByteLength.INT_LENGTH) + stringAnalizeResult.getTotalUtf8ByteSize();
  return (PrimitiveByteLength.INT_LENGTH * 2) + analizeResult.getColumnSize() + dicBinarySize;
}
Program: 172786
Project: 172786
Buggy source:
public ByteOptimizer(final Configuration config) throws IOException {
  dumpColumnBinaryMaker=FindColumnBinaryMaker.get(DumpByteColumnBinaryMaker.class.getName());
  rangeDumpColumnBinaryMaker=FindColumnBinaryMaker.get(RangeDumpByteColumnBinaryMaker.class.getName());
  uniqColumnBinaryMaker=FindColumnBinaryMaker.get(UniqByteColumnBinaryMaker.class.getName());
  rangeUniqColumnBinaryMaker=FindColumnBinaryMaker.get(RangeIndexByteColumnBinaryMaker.class.getName());
}

Fixed version (ground truth):
public ByteOptimizer(final Configuration config) throws IOException {
  rangeDumpColumnBinaryMaker=FindColumnBinaryMaker.get(RangeDumpByteColumnBinaryMaker.class.getName());
  uniqColumnBinaryMaker=FindColumnBinaryMaker.get(UniqByteColumnBinaryMaker.class.getName());
  rangeUniqColumnBinaryMaker=FindColumnBinaryMaker.get(RangeIndexByteColumnBinaryMaker.class.getName());
}
Program: 172787
Project: 172787
Buggy source:
@Override public ColumnBinaryMakerConfig getColumnBinaryMakerConfig(final ColumnBinaryMakerConfig commonConfig,final IColumnAnalizeResult analizeResult){
  ColumnBinaryMakerConfig currentConfig=new ColumnBinaryMakerConfig(commonConfig);
  ByteColumnAnalizeResult castColumnAnalizeResult=(ByteColumnAnalizeResult)analizeResult;
  IColumnBinaryMaker makerClass;
  if (castColumnAnalizeResult.maybeSorted()) {
    int dump=rangeDumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=rangeUniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=rangeDumpColumnBinaryMaker;
    }
 else {
      makerClass=rangeUniqColumnBinaryMaker;
    }
  }
 else {
    int dump=dumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=uniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=dumpColumnBinaryMaker;
    }
 else {
      makerClass=uniqColumnBinaryMaker;
    }
  }
  if (currentConfig.byteMakerClass.getClass().getName().equals(makerClass.getClass().getName())) {
    return null;
  }
  currentConfig.byteMakerClass=makerClass;
  return currentConfig;
}

Fixed version (ground truth):
@Override public ColumnBinaryMakerConfig getColumnBinaryMakerConfig(final ColumnBinaryMakerConfig commonConfig,final IColumnAnalizeResult analizeResult){
  ColumnBinaryMakerConfig currentConfig=new ColumnBinaryMakerConfig(commonConfig);
  ByteColumnAnalizeResult castColumnAnalizeResult=(ByteColumnAnalizeResult)analizeResult;
  IColumnBinaryMaker makerClass;
  if (castColumnAnalizeResult.maybeSorted()) {
    makerClass=rangeUniqColumnBinaryMaker;
  }
 else {
    int dump=rangeDumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=uniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=rangeDumpColumnBinaryMaker;
    }
 else {
      makerClass=uniqColumnBinaryMaker;
    }
  }
  if (currentConfig.byteMakerClass.getClass().getName().equals(makerClass.getClass().getName())) {
    return null;
  }
  currentConfig.byteMakerClass=makerClass;
  return currentConfig;
}
Program: 172788
Project: 172788
Buggy source:
@Override public ColumnBinaryMakerConfig getColumnBinaryMakerConfig(final ColumnBinaryMakerConfig commonConfig,final IColumnAnalizeResult analizeResult){
  ColumnBinaryMakerConfig currentConfig=new ColumnBinaryMakerConfig(commonConfig);
  DoubleColumnAnalizeResult castColumnAnalizeResult=(DoubleColumnAnalizeResult)analizeResult;
  IColumnBinaryMaker makerClass;
  if (castColumnAnalizeResult.maybeSorted()) {
    int dump=rangeDumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=rangeUniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=rangeDumpColumnBinaryMaker;
    }
 else {
      makerClass=rangeUniqColumnBinaryMaker;
    }
  }
 else {
    int dump=dumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=uniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=dumpColumnBinaryMaker;
    }
 else {
      makerClass=uniqColumnBinaryMaker;
    }
  }
  if (currentConfig.doubleMakerClass.getClass().getName().equals(makerClass.getClass().getName())) {
    return null;
  }
  currentConfig.doubleMakerClass=makerClass;
  return currentConfig;
}

Fixed version (ground truth):
@Override public ColumnBinaryMakerConfig getColumnBinaryMakerConfig(final ColumnBinaryMakerConfig commonConfig,final IColumnAnalizeResult analizeResult){
  ColumnBinaryMakerConfig currentConfig=new ColumnBinaryMakerConfig(commonConfig);
  DoubleColumnAnalizeResult castColumnAnalizeResult=(DoubleColumnAnalizeResult)analizeResult;
  IColumnBinaryMaker makerClass;
  if (castColumnAnalizeResult.maybeSorted()) {
    makerClass=rangeUniqColumnBinaryMaker;
  }
 else {
    int dump=rangeDumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=uniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=rangeDumpColumnBinaryMaker;
    }
 else {
      makerClass=uniqColumnBinaryMaker;
    }
  }
  if (currentConfig.doubleMakerClass.getClass().getName().equals(makerClass.getClass().getName())) {
    return null;
  }
  currentConfig.doubleMakerClass=makerClass;
  return currentConfig;
}
Program: 172789
Project: 172789
Buggy source:
public DoubleOptimizer(final Configuration config) throws IOException {
  dumpColumnBinaryMaker=FindColumnBinaryMaker.get(DumpDoubleColumnBinaryMaker.class.getName());
  rangeDumpColumnBinaryMaker=FindColumnBinaryMaker.get(RangeDumpDoubleColumnBinaryMaker.class.getName());
  uniqColumnBinaryMaker=FindColumnBinaryMaker.get(UniqDoubleColumnBinaryMaker.class.getName());
  rangeUniqColumnBinaryMaker=FindColumnBinaryMaker.get(RangeIndexDoubleColumnBinaryMaker.class.getName());
}

Fixed version (ground truth):
public DoubleOptimizer(final Configuration config) throws IOException {
  rangeDumpColumnBinaryMaker=FindColumnBinaryMaker.get(RangeDumpDoubleColumnBinaryMaker.class.getName());
  uniqColumnBinaryMaker=FindColumnBinaryMaker.get(UniqDoubleColumnBinaryMaker.class.getName());
  rangeUniqColumnBinaryMaker=FindColumnBinaryMaker.get(RangeIndexDoubleColumnBinaryMaker.class.getName());
}
Program: 172790
Project: 172790
Buggy source:
@Override public ColumnBinaryMakerConfig getColumnBinaryMakerConfig(final ColumnBinaryMakerConfig commonConfig,final IColumnAnalizeResult analizeResult){
  ColumnBinaryMakerConfig currentConfig=new ColumnBinaryMakerConfig(commonConfig);
  FloatColumnAnalizeResult castColumnAnalizeResult=(FloatColumnAnalizeResult)analizeResult;
  IColumnBinaryMaker makerClass;
  if (castColumnAnalizeResult.maybeSorted()) {
    int dump=rangeDumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=rangeUniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=rangeDumpColumnBinaryMaker;
    }
 else {
      makerClass=rangeUniqColumnBinaryMaker;
    }
  }
 else {
    int dump=dumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=uniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=dumpColumnBinaryMaker;
    }
 else {
      makerClass=uniqColumnBinaryMaker;
    }
  }
  if (currentConfig.floatMakerClass.getClass().getName().equals(makerClass.getClass().getName())) {
    return null;
  }
  currentConfig.floatMakerClass=makerClass;
  return currentConfig;
}

Fixed version (ground truth):
@Override public ColumnBinaryMakerConfig getColumnBinaryMakerConfig(final ColumnBinaryMakerConfig commonConfig,final IColumnAnalizeResult analizeResult){
  ColumnBinaryMakerConfig currentConfig=new ColumnBinaryMakerConfig(commonConfig);
  FloatColumnAnalizeResult castColumnAnalizeResult=(FloatColumnAnalizeResult)analizeResult;
  IColumnBinaryMaker makerClass;
  if (castColumnAnalizeResult.maybeSorted()) {
    makerClass=rangeUniqColumnBinaryMaker;
  }
 else {
    int dump=rangeDumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=uniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=rangeDumpColumnBinaryMaker;
    }
 else {
      makerClass=uniqColumnBinaryMaker;
    }
  }
  if (currentConfig.floatMakerClass.getClass().getName().equals(makerClass.getClass().getName())) {
    return null;
  }
  currentConfig.floatMakerClass=makerClass;
  return currentConfig;
}
Program: 172791
Project: 172791
Buggy source:
public FloatOptimizer(final Configuration config) throws IOException {
  dumpColumnBinaryMaker=FindColumnBinaryMaker.get(DumpFloatColumnBinaryMaker.class.getName());
  rangeDumpColumnBinaryMaker=FindColumnBinaryMaker.get(RangeDumpFloatColumnBinaryMaker.class.getName());
  uniqColumnBinaryMaker=FindColumnBinaryMaker.get(UniqFloatColumnBinaryMaker.class.getName());
  rangeUniqColumnBinaryMaker=FindColumnBinaryMaker.get(RangeIndexFloatColumnBinaryMaker.class.getName());
}

Fixed version (ground truth):
public FloatOptimizer(final Configuration config) throws IOException {
  rangeDumpColumnBinaryMaker=FindColumnBinaryMaker.get(RangeDumpFloatColumnBinaryMaker.class.getName());
  uniqColumnBinaryMaker=FindColumnBinaryMaker.get(UniqFloatColumnBinaryMaker.class.getName());
  rangeUniqColumnBinaryMaker=FindColumnBinaryMaker.get(RangeIndexFloatColumnBinaryMaker.class.getName());
}
Program: 172792
Project: 172792
Buggy source:
@Override public ColumnBinaryMakerConfig getColumnBinaryMakerConfig(final ColumnBinaryMakerConfig commonConfig,final IColumnAnalizeResult analizeResult){
  ColumnBinaryMakerConfig currentConfig=new ColumnBinaryMakerConfig(commonConfig);
  IntegerColumnAnalizeResult castColumnAnalizeResult=(IntegerColumnAnalizeResult)analizeResult;
  IColumnBinaryMaker makerClass;
  if (castColumnAnalizeResult.maybeSorted()) {
    int dump=rangeDumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=rangeUniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=rangeDumpColumnBinaryMaker;
    }
 else {
      makerClass=rangeUniqColumnBinaryMaker;
    }
  }
 else {
    int dump=dumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=uniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=dumpColumnBinaryMaker;
    }
 else {
      makerClass=uniqColumnBinaryMaker;
    }
  }
  if (currentConfig.integerMakerClass.getClass().getName().equals(makerClass.getClass().getName())) {
    return null;
  }
  currentConfig.integerMakerClass=makerClass;
  return currentConfig;
}

Fixed version (ground truth):
@Override public ColumnBinaryMakerConfig getColumnBinaryMakerConfig(final ColumnBinaryMakerConfig commonConfig,final IColumnAnalizeResult analizeResult){
  ColumnBinaryMakerConfig currentConfig=new ColumnBinaryMakerConfig(commonConfig);
  IntegerColumnAnalizeResult castColumnAnalizeResult=(IntegerColumnAnalizeResult)analizeResult;
  IColumnBinaryMaker makerClass;
  if (castColumnAnalizeResult.maybeSorted()) {
    makerClass=rangeUniqColumnBinaryMaker;
  }
 else {
    int dump=rangeDumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=uniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=rangeDumpColumnBinaryMaker;
    }
 else {
      makerClass=uniqColumnBinaryMaker;
    }
  }
  if (currentConfig.integerMakerClass.getClass().getName().equals(makerClass.getClass().getName())) {
    return null;
  }
  currentConfig.integerMakerClass=makerClass;
  return currentConfig;
}
Program: 172793
Project: 172793
Buggy source:
public IntegerOptimizer(final Configuration config) throws IOException {
  dumpColumnBinaryMaker=FindColumnBinaryMaker.get(DumpIntegerColumnBinaryMaker.class.getName());
  rangeDumpColumnBinaryMaker=FindColumnBinaryMaker.get(RangeDumpIntegerColumnBinaryMaker.class.getName());
  uniqColumnBinaryMaker=FindColumnBinaryMaker.get(UniqIntegerColumnBinaryMaker.class.getName());
  rangeUniqColumnBinaryMaker=FindColumnBinaryMaker.get(RangeIndexIntegerColumnBinaryMaker.class.getName());
}

Fixed version (ground truth):
public IntegerOptimizer(final Configuration config) throws IOException {
  rangeDumpColumnBinaryMaker=FindColumnBinaryMaker.get(RangeDumpIntegerColumnBinaryMaker.class.getName());
  uniqColumnBinaryMaker=FindColumnBinaryMaker.get(UniqIntegerColumnBinaryMaker.class.getName());
  rangeUniqColumnBinaryMaker=FindColumnBinaryMaker.get(RangeIndexIntegerColumnBinaryMaker.class.getName());
}
Program: 172794
Project: 172794
Buggy source:
@Override public ColumnBinaryMakerConfig getColumnBinaryMakerConfig(final ColumnBinaryMakerConfig commonConfig,final IColumnAnalizeResult analizeResult){
  ColumnBinaryMakerConfig currentConfig=new ColumnBinaryMakerConfig(commonConfig);
  LongColumnAnalizeResult castColumnAnalizeResult=(LongColumnAnalizeResult)analizeResult;
  IColumnBinaryMaker makerClass;
  if (castColumnAnalizeResult.maybeSorted()) {
    int dump=rangeDumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=rangeUniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=rangeDumpColumnBinaryMaker;
    }
 else {
      makerClass=rangeUniqColumnBinaryMaker;
    }
  }
 else {
    int dump=dumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=uniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=dumpColumnBinaryMaker;
    }
 else {
      makerClass=uniqColumnBinaryMaker;
    }
  }
  if (currentConfig.longMakerClass.getClass().getName().equals(makerClass.getClass().getName())) {
    return null;
  }
  currentConfig.longMakerClass=makerClass;
  return currentConfig;
}

Fixed version (ground truth):
@Override public ColumnBinaryMakerConfig getColumnBinaryMakerConfig(final ColumnBinaryMakerConfig commonConfig,final IColumnAnalizeResult analizeResult){
  ColumnBinaryMakerConfig currentConfig=new ColumnBinaryMakerConfig(commonConfig);
  LongColumnAnalizeResult castColumnAnalizeResult=(LongColumnAnalizeResult)analizeResult;
  IColumnBinaryMaker makerClass;
  if (castColumnAnalizeResult.maybeSorted()) {
    makerClass=rangeUniqColumnBinaryMaker;
  }
 else {
    int dump=rangeDumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=uniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=rangeUniqColumnBinaryMaker;
    }
 else {
      makerClass=uniqColumnBinaryMaker;
    }
  }
  if (currentConfig.longMakerClass.getClass().getName().equals(makerClass.getClass().getName())) {
    return null;
  }
  currentConfig.longMakerClass=makerClass;
  return currentConfig;
}
Program: 172795
Project: 172795
Buggy source:
public LongOptimizer(final Configuration config) throws IOException {
  dumpColumnBinaryMaker=FindColumnBinaryMaker.get(DumpLongColumnBinaryMaker.class.getName());
  rangeDumpColumnBinaryMaker=FindColumnBinaryMaker.get(RangeDumpLongColumnBinaryMaker.class.getName());
  uniqColumnBinaryMaker=FindColumnBinaryMaker.get(UniqLongColumnBinaryMaker.class.getName());
  rangeUniqColumnBinaryMaker=FindColumnBinaryMaker.get(RangeIndexLongColumnBinaryMaker.class.getName());
}

Fixed version (ground truth):
public LongOptimizer(final Configuration config) throws IOException {
  rangeDumpColumnBinaryMaker=FindColumnBinaryMaker.get(RangeDumpLongColumnBinaryMaker.class.getName());
  uniqColumnBinaryMaker=FindColumnBinaryMaker.get(UniqLongColumnBinaryMaker.class.getName());
  rangeUniqColumnBinaryMaker=FindColumnBinaryMaker.get(RangeIndexLongColumnBinaryMaker.class.getName());
}
Program: 172796
Project: 172796
Buggy source:
public ShortOptimizer(final Configuration config) throws IOException {
  dumpColumnBinaryMaker=FindColumnBinaryMaker.get(DumpShortColumnBinaryMaker.class.getName());
  rangeDumpColumnBinaryMaker=FindColumnBinaryMaker.get(RangeDumpShortColumnBinaryMaker.class.getName());
  uniqColumnBinaryMaker=FindColumnBinaryMaker.get(UniqShortColumnBinaryMaker.class.getName());
  rangeUniqColumnBinaryMaker=FindColumnBinaryMaker.get(RangeIndexShortColumnBinaryMaker.class.getName());
}

Fixed version (ground truth):
public ShortOptimizer(final Configuration config) throws IOException {
  rangeDumpColumnBinaryMaker=FindColumnBinaryMaker.get(RangeDumpShortColumnBinaryMaker.class.getName());
  uniqColumnBinaryMaker=FindColumnBinaryMaker.get(UniqShortColumnBinaryMaker.class.getName());
  rangeUniqColumnBinaryMaker=FindColumnBinaryMaker.get(RangeIndexShortColumnBinaryMaker.class.getName());
}
Program: 172797
Project: 172797
Buggy source:
@Override public ColumnBinaryMakerConfig getColumnBinaryMakerConfig(final ColumnBinaryMakerConfig commonConfig,final IColumnAnalizeResult analizeResult){
  ColumnBinaryMakerConfig currentConfig=new ColumnBinaryMakerConfig(commonConfig);
  ShortColumnAnalizeResult castColumnAnalizeResult=(ShortColumnAnalizeResult)analizeResult;
  IColumnBinaryMaker makerClass;
  if (castColumnAnalizeResult.maybeSorted()) {
    int dump=rangeDumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=rangeUniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=rangeDumpColumnBinaryMaker;
    }
 else {
      makerClass=rangeUniqColumnBinaryMaker;
    }
  }
 else {
    int dump=dumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=uniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=dumpColumnBinaryMaker;
    }
 else {
      makerClass=uniqColumnBinaryMaker;
    }
  }
  if (currentConfig.shortMakerClass.getClass().getName().equals(makerClass.getClass().getName())) {
    return null;
  }
  currentConfig.shortMakerClass=makerClass;
  return currentConfig;
}

Fixed version (ground truth):
@Override public ColumnBinaryMakerConfig getColumnBinaryMakerConfig(final ColumnBinaryMakerConfig commonConfig,final IColumnAnalizeResult analizeResult){
  ColumnBinaryMakerConfig currentConfig=new ColumnBinaryMakerConfig(commonConfig);
  ShortColumnAnalizeResult castColumnAnalizeResult=(ShortColumnAnalizeResult)analizeResult;
  IColumnBinaryMaker makerClass;
  if (castColumnAnalizeResult.maybeSorted()) {
    makerClass=rangeUniqColumnBinaryMaker;
  }
 else {
    int dump=rangeDumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=uniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=rangeDumpColumnBinaryMaker;
    }
 else {
      makerClass=uniqColumnBinaryMaker;
    }
  }
  if (currentConfig.shortMakerClass.getClass().getName().equals(makerClass.getClass().getName())) {
    return null;
  }
  currentConfig.shortMakerClass=makerClass;
  return currentConfig;
}
Program: 172798
Project: 172798
Buggy source:
@Override public ColumnBinaryMakerConfig getColumnBinaryMakerConfig(final ColumnBinaryMakerConfig commonConfig,final IColumnAnalizeResult analizeResult){
  ColumnBinaryMakerConfig currentConfig=new ColumnBinaryMakerConfig(commonConfig);
  StringColumnAnalizeResult castColumnAnalizeResult=(StringColumnAnalizeResult)analizeResult;
  IColumnBinaryMaker makerClass;
  if (castColumnAnalizeResult.maybeSorted()) {
    int dump=rangeDumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=rangeUniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=rangeDumpColumnBinaryMaker;
    }
 else {
      makerClass=rangeUniqColumnBinaryMaker;
    }
  }
 else {
    int dump=dumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=uniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=dumpColumnBinaryMaker;
    }
 else {
      makerClass=uniqColumnBinaryMaker;
    }
  }
  if (currentConfig.stringMakerClass.getClass().getName().equals(makerClass.getClass().getName())) {
    return null;
  }
  currentConfig.stringMakerClass=makerClass;
  return currentConfig;
}

Fixed version (ground truth):
@Override public ColumnBinaryMakerConfig getColumnBinaryMakerConfig(final ColumnBinaryMakerConfig commonConfig,final IColumnAnalizeResult analizeResult){
  ColumnBinaryMakerConfig currentConfig=new ColumnBinaryMakerConfig(commonConfig);
  StringColumnAnalizeResult castColumnAnalizeResult=(StringColumnAnalizeResult)analizeResult;
  IColumnBinaryMaker makerClass;
  if (castColumnAnalizeResult.maybeSorted()) {
    makerClass=rangeUniqColumnBinaryMaker;
  }
 else {
    int dump=rangeDumpColumnBinaryMaker.calcBinarySize(analizeResult);
    int uniq=uniqColumnBinaryMaker.calcBinarySize(analizeResult);
    if (dump < uniq) {
      makerClass=rangeDumpColumnBinaryMaker;
    }
 else {
      makerClass=uniqColumnBinaryMaker;
    }
  }
  if (currentConfig.stringMakerClass.getClass().getName().equals(makerClass.getClass().getName())) {
    return null;
  }
  currentConfig.stringMakerClass=makerClass;
  return currentConfig;
}
Program: 172799
Project: 172799
Buggy source:
public StringOptimizer(final Configuration config) throws IOException {
  dumpColumnBinaryMaker=FindColumnBinaryMaker.get(DumpStringColumnBinaryMaker.class.getName());
  rangeDumpColumnBinaryMaker=FindColumnBinaryMaker.get(RangeDumpStringColumnBinaryMaker.class.getName());
  uniqColumnBinaryMaker=FindColumnBinaryMaker.get(UniqStringToUTF8BytesColumnBinaryMaker.class.getName());
  rangeUniqColumnBinaryMaker=FindColumnBinaryMaker.get(RangeIndexStringToUTF8BytesColumnBinaryMaker.class.getName());
}

Fixed version (ground truth):
public StringOptimizer(final Configuration config) throws IOException {
  rangeDumpColumnBinaryMaker=FindColumnBinaryMaker.get(RangeDumpStringColumnBinaryMaker.class.getName());
  uniqColumnBinaryMaker=FindColumnBinaryMaker.get(UniqStringToUTF8BytesColumnBinaryMaker.class.getName());
  rangeUniqColumnBinaryMaker=FindColumnBinaryMaker.get(RangeIndexStringToUTF8BytesColumnBinaryMaker.class.getName());
}
Program: 172800
Project: 172800
Buggy source:
public IColumnAnalizeResult analize() throws IOException {
  boolean maybeSorted=true;
  Boolean currentSortCheckValue=false;
  int trueCount=0;
  int falseCount=0;
  int nullCount=0;
  int rowCount=0;
  for (int i=0; i < column.size(); i++) {
    ICell cell=column.get(i);
    if (cell.getType() == ColumnType.NULL) {
      nullCount++;
      continue;
    }
    boolean target=((PrimitiveCell)cell).getRow().getBoolean();
    if (maybeSorted && 0 <= currentSortCheckValue.compareTo(target)) {
      currentSortCheckValue=target;
    }
 else {
      maybeSorted=false;
    }
    if (target) {
      trueCount++;
      rowCount++;
    }
 else {
      falseCount++;
      rowCount++;
    }
  }
  int uniqCount=0;
  if (trueCount != 0) {
    uniqCount++;
  }
  if (falseCount != 0) {
    uniqCount++;
  }
  return new BooleanColumnAnalizeResult(column.getColumnName(),column.size(),maybeSorted,nullCount,rowCount,uniqCount,trueCount,falseCount);
}

Fixed version (ground truth):
public IColumnAnalizeResult analize() throws IOException {
  boolean maybeSorted=true;
  Boolean currentSortCheckValue=false;
  int trueCount=0;
  int falseCount=0;
  int nullCount=0;
  int rowCount=0;
  for (int i=0; i < column.size(); i++) {
    ICell cell=column.get(i);
    if (cell.getType() == ColumnType.NULL) {
      nullCount++;
      continue;
    }
    boolean target=((PrimitiveCell)cell).getRow().getBoolean();
    if (maybeSorted && currentSortCheckValue.compareTo(target) <= 0) {
      currentSortCheckValue=target;
    }
 else {
      maybeSorted=false;
    }
    if (target) {
      trueCount++;
      rowCount++;
    }
 else {
      falseCount++;
      rowCount++;
    }
  }
  int uniqCount=0;
  if (trueCount != 0) {
    uniqCount++;
  }
  if (falseCount != 0) {
    uniqCount++;
  }
  return new BooleanColumnAnalizeResult(column.getColumnName(),column.size(),maybeSorted,nullCount,rowCount,uniqCount,trueCount,falseCount);
}
Program: 172801
Project: 172801
Buggy source:
public IColumnAnalizeResult analize() throws IOException {
  boolean maybeSorted=true;
  Byte currentSortCheckValue=Byte.MIN_VALUE;
  int nullCount=0;
  int rowCount=0;
  Set<Byte> dicSet=new HashSet<Byte>();
  Byte min=Byte.MAX_VALUE;
  Byte max=Byte.MIN_VALUE;
  for (int i=0; i < column.size(); i++) {
    ICell cell=column.get(i);
    if (cell.getType() == ColumnType.NULL) {
      nullCount++;
      continue;
    }
    Byte target=Byte.valueOf(((PrimitiveCell)cell).getRow().getByte());
    if (maybeSorted && 0 <= currentSortCheckValue.compareTo(target)) {
      currentSortCheckValue=target;
    }
 else {
      maybeSorted=false;
    }
    rowCount++;
    if (!dicSet.contains(target)) {
      dicSet.add(target);
      if (0 < min.compareTo(target)) {
        min=Byte.valueOf(target);
      }
      if (max.compareTo(target) < 0) {
        max=Byte.valueOf(target);
      }
    }
  }
  int uniqCount=dicSet.size();
  return new ByteColumnAnalizeResult(column.getColumnName(),column.size(),maybeSorted,nullCount,rowCount,uniqCount,min,max);
}

Fixed version (ground truth):
public IColumnAnalizeResult analize() throws IOException {
  boolean maybeSorted=true;
  Byte currentSortCheckValue=Byte.MIN_VALUE;
  int nullCount=0;
  int rowCount=0;
  Set<Byte> dicSet=new HashSet<Byte>();
  Byte min=Byte.MAX_VALUE;
  Byte max=Byte.MIN_VALUE;
  for (int i=0; i < column.size(); i++) {
    ICell cell=column.get(i);
    if (cell.getType() == ColumnType.NULL) {
      nullCount++;
      continue;
    }
    Byte target=Byte.valueOf(((PrimitiveCell)cell).getRow().getByte());
    if (maybeSorted && currentSortCheckValue.compareTo(target) <= 0) {
      currentSortCheckValue=target;
    }
 else {
      maybeSorted=false;
    }
    rowCount++;
    if (!dicSet.contains(target)) {
      dicSet.add(target);
      if (0 < min.compareTo(target)) {
        min=Byte.valueOf(target);
      }
      if (max.compareTo(target) < 0) {
        max=Byte.valueOf(target);
      }
    }
  }
  int uniqCount=dicSet.size();
  return new ByteColumnAnalizeResult(column.getColumnName(),column.size(),maybeSorted,nullCount,rowCount,uniqCount,min,max);
}
Program: 172802
Project: 172802
Buggy source:
public IColumnAnalizeResult analize() throws IOException {
  boolean maybeSorted=true;
  Double currentSortCheckValue=Double.MIN_VALUE;
  int nullCount=0;
  int rowCount=0;
  Set<Double> dicSet=new HashSet<Double>();
  Double min=Double.MAX_VALUE;
  Double max=Double.MIN_VALUE;
  for (int i=0; i < column.size(); i++) {
    ICell cell=column.get(i);
    if (cell.getType() == ColumnType.NULL) {
      nullCount++;
      continue;
    }
    Double target=Double.valueOf(((PrimitiveCell)cell).getRow().getDouble());
    if (maybeSorted && 0 <= currentSortCheckValue.compareTo(target)) {
      currentSortCheckValue=target;
    }
 else {
      maybeSorted=false;
    }
    rowCount++;
    if (!dicSet.contains(target)) {
      dicSet.add(target);
      if (0 < min.compareTo(target)) {
        min=Double.valueOf(target);
      }
      if (max.compareTo(target) < 0) {
        max=Double.valueOf(target);
      }
    }
  }
  int uniqCount=dicSet.size();
  return new DoubleColumnAnalizeResult(column.getColumnName(),column.size(),maybeSorted,nullCount,rowCount,uniqCount,min,max);
}

Fixed version (ground truth):
public IColumnAnalizeResult analize() throws IOException {
  boolean maybeSorted=true;
  Double currentSortCheckValue=Double.MIN_VALUE;
  int nullCount=0;
  int rowCount=0;
  Set<Double> dicSet=new HashSet<Double>();
  Double min=Double.MAX_VALUE;
  Double max=Double.MIN_VALUE;
  for (int i=0; i < column.size(); i++) {
    ICell cell=column.get(i);
    if (cell.getType() == ColumnType.NULL) {
      nullCount++;
      continue;
    }
    Double target=Double.valueOf(((PrimitiveCell)cell).getRow().getDouble());
    if (maybeSorted && currentSortCheckValue.compareTo(target) <= 0) {
      currentSortCheckValue=target;
    }
 else {
      maybeSorted=false;
    }
    rowCount++;
    if (!dicSet.contains(target)) {
      dicSet.add(target);
      if (0 < min.compareTo(target)) {
        min=Double.valueOf(target);
      }
      if (max.compareTo(target) < 0) {
        max=Double.valueOf(target);
      }
    }
  }
  int uniqCount=dicSet.size();
  return new DoubleColumnAnalizeResult(column.getColumnName(),column.size(),maybeSorted,nullCount,rowCount,uniqCount,min,max);
}
Program: 172803
Project: 172803
Buggy source:
public IColumnAnalizeResult analize() throws IOException {
  boolean maybeSorted=true;
  Float currentSortCheckValue=Float.MIN_VALUE;
  int nullCount=0;
  int rowCount=0;
  Set<Float> dicSet=new HashSet<Float>();
  Float min=Float.MAX_VALUE;
  Float max=Float.MIN_VALUE;
  for (int i=0; i < column.size(); i++) {
    ICell cell=column.get(i);
    if (cell.getType() == ColumnType.NULL) {
      nullCount++;
      continue;
    }
    Float target=Float.valueOf(((PrimitiveCell)cell).getRow().getFloat());
    if (maybeSorted && 0 <= currentSortCheckValue.compareTo(target)) {
      currentSortCheckValue=target;
    }
 else {
      maybeSorted=false;
    }
    rowCount++;
    if (!dicSet.contains(target)) {
      dicSet.add(target);
      if (0 < min.compareTo(target)) {
        min=Float.valueOf(target);
      }
      if (max.compareTo(target) < 0) {
        max=Float.valueOf(target);
      }
    }
  }
  int uniqCount=dicSet.size();
  return new FloatColumnAnalizeResult(column.getColumnName(),column.size(),maybeSorted,nullCount,rowCount,uniqCount,min,max);
}

Fixed version (ground truth):
public IColumnAnalizeResult analize() throws IOException {
  boolean maybeSorted=true;
  Float currentSortCheckValue=Float.MIN_VALUE;
  int nullCount=0;
  int rowCount=0;
  Set<Float> dicSet=new HashSet<Float>();
  Float min=Float.MAX_VALUE;
  Float max=Float.MIN_VALUE;
  for (int i=0; i < column.size(); i++) {
    ICell cell=column.get(i);
    if (cell.getType() == ColumnType.NULL) {
      nullCount++;
      continue;
    }
    Float target=Float.valueOf(((PrimitiveCell)cell).getRow().getFloat());
    if (maybeSorted && currentSortCheckValue.compareTo(target) <= 0) {
      currentSortCheckValue=target;
    }
 else {
      maybeSorted=false;
    }
    rowCount++;
    if (!dicSet.contains(target)) {
      dicSet.add(target);
      if (0 < min.compareTo(target)) {
        min=Float.valueOf(target);
      }
      if (max.compareTo(target) < 0) {
        max=Float.valueOf(target);
      }
    }
  }
  int uniqCount=dicSet.size();
  return new FloatColumnAnalizeResult(column.getColumnName(),column.size(),maybeSorted,nullCount,rowCount,uniqCount,min,max);
}
Program: 172804
Project: 172804
Buggy source:
public IColumnAnalizeResult analize() throws IOException {
  boolean maybeSorted=true;
  Integer currentSortCheckValue=Integer.MIN_VALUE;
  int nullCount=0;
  int rowCount=0;
  Set<Integer> dicSet=new HashSet<Integer>();
  Integer min=Integer.MAX_VALUE;
  Integer max=Integer.MIN_VALUE;
  for (int i=0; i < column.size(); i++) {
    ICell cell=column.get(i);
    if (cell.getType() == ColumnType.NULL) {
      nullCount++;
      continue;
    }
    Integer target=Integer.valueOf(((PrimitiveCell)cell).getRow().getInt());
    if (maybeSorted && 0 <= currentSortCheckValue.compareTo(target)) {
      currentSortCheckValue=target;
    }
 else {
      maybeSorted=false;
    }
    rowCount++;
    if (!dicSet.contains(target)) {
      dicSet.add(target);
      if (0 < min.compareTo(target)) {
        min=Integer.valueOf(target);
      }
      if (max.compareTo(target) < 0) {
        max=Integer.valueOf(target);
      }
    }
  }
  int uniqCount=dicSet.size();
  return new IntegerColumnAnalizeResult(column.getColumnName(),column.size(),maybeSorted,nullCount,rowCount,uniqCount,min,max);
}

Fixed version (ground truth):
public IColumnAnalizeResult analize() throws IOException {
  boolean maybeSorted=true;
  Integer currentSortCheckValue=Integer.MIN_VALUE;
  int nullCount=0;
  int rowCount=0;
  Set<Integer> dicSet=new HashSet<Integer>();
  Integer min=Integer.MAX_VALUE;
  Integer max=Integer.MIN_VALUE;
  for (int i=0; i < column.size(); i++) {
    ICell cell=column.get(i);
    if (cell.getType() == ColumnType.NULL) {
      nullCount++;
      continue;
    }
    Integer target=Integer.valueOf(((PrimitiveCell)cell).getRow().getInt());
    if (maybeSorted && currentSortCheckValue.compareTo(target) <= 0) {
      currentSortCheckValue=target;
    }
 else {
      maybeSorted=false;
    }
    rowCount++;
    if (!dicSet.contains(target)) {
      dicSet.add(target);
      if (0 < min.compareTo(target)) {
        min=Integer.valueOf(target);
      }
      if (max.compareTo(target) < 0) {
        max=Integer.valueOf(target);
      }
    }
  }
  int uniqCount=dicSet.size();
  return new IntegerColumnAnalizeResult(column.getColumnName(),column.size(),maybeSorted,nullCount,rowCount,uniqCount,min,max);
}
Program: 172805
Project: 172805
Buggy source:
public IColumnAnalizeResult analize() throws IOException {
  boolean maybeSorted=true;
  Long currentSortCheckValue=Long.MIN_VALUE;
  int nullCount=0;
  int rowCount=0;
  Set<Long> dicSet=new HashSet<Long>();
  Long min=Long.MAX_VALUE;
  Long max=Long.MIN_VALUE;
  for (int i=0; i < column.size(); i++) {
    ICell cell=column.get(i);
    if (cell.getType() == ColumnType.NULL) {
      nullCount++;
      continue;
    }
    Long target=Long.valueOf(((PrimitiveCell)cell).getRow().getLong());
    if (maybeSorted && 0 <= currentSortCheckValue.compareTo(target)) {
      currentSortCheckValue=target;
    }
 else {
      maybeSorted=false;
    }
    rowCount++;
    if (!dicSet.contains(target)) {
      dicSet.add(target);
      if (0 < min.compareTo(target)) {
        min=Long.valueOf(target);
      }
      if (max.compareTo(target) < 0) {
        max=Long.valueOf(target);
      }
    }
  }
  int uniqCount=dicSet.size();
  return new LongColumnAnalizeResult(column.getColumnName(),column.size(),maybeSorted,nullCount,rowCount,uniqCount,min,max);
}

Fixed version (ground truth):
public IColumnAnalizeResult analize() throws IOException {
  boolean maybeSorted=true;
  Long currentSortCheckValue=Long.MIN_VALUE;
  int nullCount=0;
  int rowCount=0;
  Set<Long> dicSet=new HashSet<Long>();
  Long min=Long.MAX_VALUE;
  Long max=Long.MIN_VALUE;
  for (int i=0; i < column.size(); i++) {
    ICell cell=column.get(i);
    if (cell.getType() == ColumnType.NULL) {
      nullCount++;
      continue;
    }
    Long target=Long.valueOf(((PrimitiveCell)cell).getRow().getLong());
    if (maybeSorted && currentSortCheckValue.compareTo(target) <= 0) {
      currentSortCheckValue=target;
    }
 else {
      maybeSorted=false;
    }
    rowCount++;
    if (!dicSet.contains(target)) {
      dicSet.add(target);
      if (0 < min.compareTo(target)) {
        min=Long.valueOf(target);
      }
      if (max.compareTo(target) < 0) {
        max=Long.valueOf(target);
      }
    }
  }
  int uniqCount=dicSet.size();
  return new LongColumnAnalizeResult(column.getColumnName(),column.size(),maybeSorted,nullCount,rowCount,uniqCount,min,max);
}
Program: 172806
Project: 172806
Buggy source:
public IColumnAnalizeResult analize() throws IOException {
  boolean maybeSorted=true;
  Short currentSortCheckValue=Short.MIN_VALUE;
  int nullCount=0;
  int rowCount=0;
  Set<Short> dicSet=new HashSet<Short>();
  Short min=Short.MAX_VALUE;
  Short max=Short.MIN_VALUE;
  for (int i=0; i < column.size(); i++) {
    ICell cell=column.get(i);
    if (cell.getType() == ColumnType.NULL) {
      nullCount++;
      continue;
    }
    Short target=Short.valueOf(((PrimitiveCell)cell).getRow().getShort());
    if (maybeSorted && 0 <= currentSortCheckValue.compareTo(target)) {
      currentSortCheckValue=target;
    }
 else {
      maybeSorted=false;
    }
    rowCount++;
    if (!dicSet.contains(target)) {
      dicSet.add(target);
      if (0 < min.compareTo(target)) {
        min=Short.valueOf(target);
      }
      if (max.compareTo(target) < 0) {
        max=Short.valueOf(target);
      }
    }
  }
  int uniqCount=dicSet.size();
  return new ShortColumnAnalizeResult(column.getColumnName(),column.size(),maybeSorted,nullCount,rowCount,uniqCount,min,max);
}

Fixed version (ground truth):
public IColumnAnalizeResult analize() throws IOException {
  boolean maybeSorted=true;
  Short currentSortCheckValue=Short.MIN_VALUE;
  int nullCount=0;
  int rowCount=0;
  Set<Short> dicSet=new HashSet<Short>();
  Short min=Short.MAX_VALUE;
  Short max=Short.MIN_VALUE;
  for (int i=0; i < column.size(); i++) {
    ICell cell=column.get(i);
    if (cell.getType() == ColumnType.NULL) {
      nullCount++;
      continue;
    }
    Short target=Short.valueOf(((PrimitiveCell)cell).getRow().getShort());
    if (maybeSorted && currentSortCheckValue.compareTo(target) <= 0) {
      currentSortCheckValue=target;
    }
 else {
      maybeSorted=false;
    }
    rowCount++;
    if (!dicSet.contains(target)) {
      dicSet.add(target);
      if (0 < min.compareTo(target)) {
        min=Short.valueOf(target);
      }
      if (max.compareTo(target) < 0) {
        max=Short.valueOf(target);
      }
    }
  }
  int uniqCount=dicSet.size();
  return new ShortColumnAnalizeResult(column.getColumnName(),column.size(),maybeSorted,nullCount,rowCount,uniqCount,min,max);
}
Program: 172808
Project: 172808
Buggy source:
private void create() throws IOException {
  if (isCreate) {
    return;
  }
  ICompressor compressor=FindCompressor.get(columnBinary.compressorClassName);
  byte[] binary=compressor.decompress(columnBinary.binary,binaryStart,binaryLength);
  column=new PrimitiveColumn(columnBinary.columnType,columnBinary.columnName);
  IDicManager dicManager=new RangeByteDicManager(primitiveObjectConnector,ByteBuffer.wrap(binary));
  column.setCellManager(new BufferDirectCellManager(ColumnType.INTEGER,dicManager,columnBinary.rowCount));
  isCreate=true;
}

Fixed version (ground truth):
private void create() throws IOException {
  if (isCreate) {
    return;
  }
  ICompressor compressor=FindCompressor.get(columnBinary.compressorClassName);
  byte[] binary=compressor.decompress(columnBinary.binary,binaryStart,binaryLength);
  column=new PrimitiveColumn(columnBinary.columnType,columnBinary.columnName);
  IDicManager dicManager=new RangeByteDicManager(primitiveObjectConnector,ByteBuffer.wrap(binary));
  column.setCellManager(new BufferDirectCellManager(columnBinary.columnType,dicManager,columnBinary.rowCount));
  isCreate=true;
}