//GetOrCreateTransaction gets transaction from otto value or creates new is otto value is null func (env *Environment) GetOrCreateTransaction(value otto.Value) (transaction.Transaction, bool, error) { if !value.IsNull() { tx, err := GetTransaction(value) return tx, false, err } dataStore := env.DataStore tx, err := dataStore.Begin() if err != nil { return nil, false, fmt.Errorf("Error creating transaction: %v", err.Error()) } return tx, true, nil }