code: func (j *Job) Error(msg string) error {
  	errorCount := j.ErrorCount + 1
  	delay := intPow(int(errorCount), 4) + 3 // TODO: configurable delay
  
  	_, err := j.conn.Exec("que_set_error", errorCount, delay, msg, j.Queue, j.Priority, j.RunAt, j.ID)
  	if err != nil {
  		return err
  	}
  	return nil
  }
docs: // Error marks the job as failed and schedules it to be reworked. An error
  // message or backtrace can be provided as msg, which will be saved on the job.
  // It will also increase the error count.
  //
  // You must also later call Done() to return this job's database connection to
  // the pool.