Program: 14461
Project: 14461
Buggy source:
@Override public void render(ReportArtEntity report,OutputStream os,Units units) throws IOException {
  doc.setWriter(new OutputStreamWriter(os));
  doc.open();
  doc.textLine("String_Node_Str",1);
  doc.textLine("String_Node_Str" + new Date(report.getBeginMs()).toString(),4);
  doc.textLine("String_Node_Str" + new Date(report.getEndMs()).toString(),4);
  doc.textLine("String_Node_Str",3);
  doc.tableOpen();
  doc.newRow().addValCol("String_Node_Str").addValCol("String_Node_Str").addValCol("String_Node_Str").addValCol("String_Node_Str" + units.toString() + "String_Node_Str").addValCol("String_Node_Str");
  for (  String zoneName : report.getZones().keySet()) {
    AvailabilityZoneArtEntity zone=report.getZones().get(zoneName);
    doc.newRow().addLabelCol(0,"String_Node_Str" + zoneName).addValCol("String_Node_Str").addValCol("String_Node_Str");
    addUsageCols(doc,zone.getUsageTotals().getVolumeTotals(),units);
    for (    String accountName : zone.getAccounts().keySet()) {
      AccountArtEntity account=zone.getAccounts().get(accountName);
      doc.newRow().addLabelCol(1,"String_Node_Str" + accountName).addValCol("String_Node_Str").addValCol("String_Node_Str");
      addUsageCols(doc,account.getUsageTotals().getVolumeTotals(),units);
      for (      String userName : account.getUsers().keySet()) {
        UserArtEntity user=account.getUsers().get(userName);
        doc.newRow().addLabelCol(2,"String_Node_Str" + userName).addValCol("String_Node_Str").addValCol("String_Node_Str");
        addUsageCols(doc,user.getUsageTotals().getVolumeTotals(),units);
        for (        String volumeUuid : user.getVolumes().keySet()) {
          VolumeArtEntity volume=user.getVolumes().get(volumeUuid);
          doc.newRow().addValCol(volume.getVolumeId()).addValCol("String_Node_Str");
          addUsageCols(doc,volume.getUsage(),units);
          for (          String instanceId : volume.getInstanceAttachments().keySet()) {
            VolumeUsageArtEntity usage=volume.getInstanceAttachments().get(instanceId);
            doc.newRow().addEmptyValCols(6).addValCol(volume.getVolumeId()).addValCol(instanceId);
            addUsageCols(doc,usage,units);
          }
        }
      }
    }
  }
  doc.tableClose();
  doc.close();
}

Fixed version (ground truth):
@Override public void render(ReportArtEntity report,OutputStream os,Units units) throws IOException {
  doc.setWriter(new OutputStreamWriter(os));
  doc.open();
  doc.textLine("String_Node_Str",1);
  doc.textLine("String_Node_Str" + new Date(report.getBeginMs()).toString(),4);
  doc.textLine("String_Node_Str" + new Date(report.getEndMs()).toString(),4);
  doc.textLine("String_Node_Str",3);
  doc.tableOpen();
  doc.newRow().addValCol("String_Node_Str").addValCol("String_Node_Str").addValCol("String_Node_Str").addValCol("String_Node_Str" + units.getSizeUnit().toString() + "String_Node_Str").addValCol("String_Node_Str");
  for (  String zoneName : report.getZones().keySet()) {
    AvailabilityZoneArtEntity zone=report.getZones().get(zoneName);
    doc.newRow().addLabelCol(0,"String_Node_Str" + zoneName).addValCol("String_Node_Str").addValCol("String_Node_Str");
    addUsageCols(doc,zone.getUsageTotals().getVolumeTotals(),units);
    for (    String accountName : zone.getAccounts().keySet()) {
      AccountArtEntity account=zone.getAccounts().get(accountName);
      doc.newRow().addLabelCol(1,"String_Node_Str" + accountName).addValCol("String_Node_Str").addValCol("String_Node_Str");
      addUsageCols(doc,account.getUsageTotals().getVolumeTotals(),units);
      for (      String userName : account.getUsers().keySet()) {
        UserArtEntity user=account.getUsers().get(userName);
        doc.newRow().addLabelCol(2,"String_Node_Str" + userName).addValCol("String_Node_Str").addValCol("String_Node_Str");
        addUsageCols(doc,user.getUsageTotals().getVolumeTotals(),units);
        for (        String volumeUuid : user.getVolumes().keySet()) {
          VolumeArtEntity volume=user.getVolumes().get(volumeUuid);
          doc.newRow().addValCol(volume.getVolumeId()).addValCol("String_Node_Str");
          addUsageCols(doc,volume.getUsage(),units);
          for (          String instanceId : volume.getInstanceAttachments().keySet()) {
            VolumeUsageArtEntity usage=volume.getInstanceAttachments().get(instanceId);
            doc.newRow().addEmptyValCols(6).addValCol(volume.getVolumeId()).addValCol(instanceId);
            addUsageCols(doc,usage,units);
          }
        }
      }
    }
  }
  doc.tableClose();
  doc.close();
}