[Demonstration 1]

[Buggy Method]
public static void main(String[] args) {
    int[] dist = GenerateLongtailDistribution(300000000, 500000, 1000);
    long[] bitsRequiredHistogram = getHistogram(dist);
    int count = 0;
    for (int i = 0; i < bitsRequiredHistogram.length; i++) {
        System.out.println((i + 1) + " bits:" + bitsRequiredHistogram[i]);
        count += (int) bitsRequiredHistogram[i];
    }
    System.out.println(count);
}

[Buggy Hunk]
long[] bitsRequiredHistogram = getHistogram(dist);

[Patch]
int[] bitsRequiredHistogram = getHistogram(dist);

[Demonstration 2]

[Buggy Method]
private String generateSelect(String tableName) {
    Schema table = schema.getElement(tableName);
    String alias = String.valueOf(tableName.charAt(0));
    StringBuilder select = new StringBuilder("SELECT ");
    int loop = 0;
    for (String column : table.getElements().keySet()) {
        select.append(alias).append(".").append(column);
        loop++;
        if (loop != table.getElements().keySet().size()) {
            select.append(", ");
        }
    }
    select.append(" FROM ").append(tableName).append(" ").append(alias).append(" ");
    return select.toString();
}

[Buggy Hunk]
String alias = String.valueOf(tableName.charAt(0));

[Patch]
String alias = defaultAlias(tableName);

[Demonstration 3]

[Buggy Method]
public static Constant parseNumber(String s) {
    try {
        int v;
        boolean ch = false;
        if (s.charAt(0) == '#') {
            ch = true;
            s = s.substring(1);
        }
        if (s.charAt(0) == '$') {
            v = (int) Long.parseLong(s.substring(1), 16);
        } else
            v = Integer.parseInt(s);
        if (ch)
            return new Constant(Type.real, new Character((char) v));
        else
            return new Constant(Type.integer, v);
    } catch (NumberFormatException ei) {
        try {
            return new Constant(Type.real, Double.parseDouble(s));
        } catch (NumberFormatException ed) {
            throw new JPasError("Number format error.");
        }
    }
}

[Buggy Hunk]
return new Constant(Type.real, new Character((char) v));

[Patch]
return new Constant(Type.character, new Character((char) v));