Program: 61715
Project: 61715
Buggy source:
@Test public void testHistoricalMultipleItems(){
  DateTime historyStart=now.minusYears(1);
  ContentKey firstKey=new ContentKey(historyStart);
  ContentKey lastKey=new ContentKey(historyStart.plusDays(1));
  lastContentPath.update(firstKey,"String_Node_Str",HISTORICAL_FIRST_UPDATED);
  lastContentPath.update(lastKey,"String_Node_Str",HISTORICAL_LAST_UPDATED);
  ChannelConfig channel=getHistoricalChannel("String_Node_Str");
  localChannelService.updateChannel(channel,null);
  S3Verifier.VerifierRange range=s3Verifier.getHistoricalVerifierRange(now,channel);
  logger.info("String_Node_Str",range);
  logger.info("String_Node_Str",new MinutePath(historyStart));
  assertEquals(new MinutePath(lastKey.getTime()),range.endPath);
  assertEquals(new MinutePath(firstKey.getTime()),range.startPath);
  logger.info("String_Node_Str",range.endPath);
  lastContentPath.update(range.endPath,"String_Node_Str",LAST_SINGLE_VERIFIED);
  range=s3Verifier.getHistoricalVerifierRange(now,channel);
  logger.info("String_Node_Str",range);
  assertEquals(new MinutePath(lastKey.getTime()),range.endPath);
  assertEquals(new MinutePath(lastKey.getTime()),range.startPath);
  ContentKey nextLastKey=new ContentKey(lastKey.getTime().plusDays(1));
  lastContentPath.updateIncrease(nextLastKey,"String_Node_Str",HISTORICAL_LAST_UPDATED);
  logger.info("String_Node_Str",lastContentPath.getOrNull("String_Node_Str",LAST_SINGLE_VERIFIED));
  range=s3Verifier.getHistoricalVerifierRange(now,channel);
  logger.info("String_Node_Str",range);
  assertEquals(new MinutePath(nextLastKey.getTime()),range.endPath);
  assertEquals(new MinutePath(lastKey.getTime()),range.startPath);
}

Fixed version (ground truth):
@Test public void testHistoricalMultipleItems(){
  DateTime historyStart=now.minusYears(1);
  ContentKey firstKey=new ContentKey(historyStart);
  ContentKey lastKey=new ContentKey(historyStart.plusDays(1));
  lastContentPath.update(firstKey,channelName,HISTORICAL_FIRST_UPDATED);
  lastContentPath.update(lastKey,channelName,HISTORICAL_LAST_UPDATED);
  ChannelConfig channel=getHistoricalChannel(channelName);
  localChannelService.updateChannel(channel,null);
  S3Verifier.VerifierRange range=s3Verifier.getHistoricalVerifierRange(now,channel);
  logger.info("String_Node_Str",channelName,range);
  logger.info("String_Node_Str",channelName,new MinutePath(historyStart));
  assertEquals(new MinutePath(lastKey.getTime()),range.endPath);
  assertEquals(new MinutePath(firstKey.getTime()),range.startPath);
  logger.info("String_Node_Str",range.endPath);
  lastContentPath.update(range.endPath,channelName,LAST_SINGLE_VERIFIED);
  range=s3Verifier.getHistoricalVerifierRange(now,channel);
  logger.info("String_Node_Str",range);
  assertEquals(new MinutePath(lastKey.getTime()),range.endPath);
  assertEquals(new MinutePath(lastKey.getTime()),range.startPath);
  ContentKey nextLastKey=new ContentKey(lastKey.getTime().plusDays(1));
  lastContentPath.updateIncrease(nextLastKey,channelName,HISTORICAL_LAST_UPDATED);
  logger.info("String_Node_Str",lastContentPath.getOrNull(channelName,LAST_SINGLE_VERIFIED));
  range=s3Verifier.getHistoricalVerifierRange(now,channel);
  logger.info("String_Node_Str",range);
  assertEquals(new MinutePath(nextLastKey.getTime()),range.endPath);
  assertEquals(new MinutePath(lastKey.getTime()),range.startPath);
}