Program: 140334
Project: 140334
Buggy source:
/** 
 * Method "initDbmsFunctions" initialize functions specific to DBMS. This is needed for ZQLParser which does not know all available functions.
 * @param dbms
 * @return the initialized map of functions with their number of parameters.
 */
private Map<String,Integer> initDbmsFunctions(String dbms){
  Map<String,Integer> functions=new HashMap<String,Integer>();
  functions.put("String_Node_Str",1);
  functions.put("String_Node_Str",1);
  functions.put("String_Node_Str",1);
  functions.put("String_Node_Str",1);
  functions.put("String_Node_Str",1);
  if (is(SQL)) {
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
  }
  if (is(MYSQL)) {
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",3);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",2);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",2);
    functions.put("String_Node_Str",3);
    functions.put("String_Node_Str",2);
    functions.put("String_Node_Str",1);
    for (    DateGrain grain : DateGrain.values()) {
      functions.put(grain.getName(),1);
    }
  }
  if (is(ORACLE)) {
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",2);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",2);
  }
  if (is(POSTGRESQL)) {
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
  }
  if (is(MSSQL)) {
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
  }
  if (is(DB2)) {
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
  }
  if (is(SYBASE_ASE)) {
  }
  return functions;
}

Fixed version (ground truth):
/** 
 * Method "initDbmsFunctions" initialize functions specific to DBMS. This is needed for ZQLParser which does not know all available functions.
 * @param dbms
 * @return the initialized map of functions with their number of parameters.
 */
private Map<String,Integer> initDbmsFunctions(String dbms){
  Map<String,Integer> functions=new HashMap<String,Integer>();
  functions.put("String_Node_Str",1);
  functions.put("String_Node_Str",1);
  functions.put("String_Node_Str",1);
  functions.put("String_Node_Str",1);
  functions.put("String_Node_Str",1);
  if (is(SQL)) {
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
  }
  if (is(MYSQL)) {
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",3);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",2);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",2);
    functions.put("String_Node_Str",3);
    functions.put("String_Node_Str",2);
    functions.put("String_Node_Str",1);
    for (    DateGrain grain : DateGrain.values()) {
      functions.put(grain.getName(),1);
    }
  }
  if (is(ORACLE)) {
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",2);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",2);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",2);
    functions.put("String_Node_Str",2);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",3);
    functions.put("String_Node_Str",2);
    functions.put("String_Node_Str",3);
  }
  if (is(POSTGRESQL)) {
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",2);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",2);
  }
  if (is(MSSQL)) {
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
  }
  if (is(DB2)) {
    functions.put("String_Node_Str",1);
    functions.put("String_Node_Str",1);
  }
  if (is(SYBASE_ASE)) {
  }
  return functions;
}