code: func (j *Job) save() error {
  	t := newTransaction()
  	t.saveJob(j)
  	if err := t.exec(); err != nil {
  		return err
  	}
  	return nil
  }
docs: // save writes the job to the database and adds it to the appropriate indexes and status
  // sets, but does not enqueue it. If you want to add it to the queue, use the enqueue method
  // after save.