code: private void appendFailedModelParameters(MP params, String[] rawParams, String failureDetails, String stackTrace) {
      assert rawParams != null : "API has to always pass rawParams";
      // Append parameter
      MP[] a = _failed_params;
      MP[] na = Arrays.copyOf(a, a.length + 1);
      na[a.length] = params;
      _failed_params = na;
      // Append message
      String[] m = _failure_details;
      String[] nm = Arrays.copyOf(m, m.length + 1);
      nm[m.length] = failureDetails;
      _failure_details = nm;
      // Append raw parames
      String[][] rp = _failed_raw_params;
      String[][] nrp = Arrays.copyOf(rp, rp.length + 1);
      nrp[rp.length] = rawParams;
      _failed_raw_params = nrp;
      // Append stack trace
      String[] st = _failure_stack_traces;
      String[] nst = Arrays.copyOf(st, st.length + 1);
      nst[st.length] = stackTrace;
      _failure_stack_traces = nst;
    }
docs: This method appends a new item to the list of failed model parameters.
  <p/>
  <p> The failed parameters object represents a point in hyper space which cannot be used for
  model building. </p>
  
  @param params    model parameters which caused model builder failure, can be null
  @param rawParams array of "raw" parameter values
  @params failureDetails  textual description of model building failure
  @params stackTrace  stringify stacktrace