models/migrations: fix little logic error
This commit is contained in:
		
							parent
							
								
									31eb49c3ae
								
							
						
					
					
						commit
						0b3722c359
					
				| @ -47,8 +47,8 @@ type Version struct { | ||||
| } | ||||
| 
 | ||||
| // This is a sequence of migrations. Add new migrations to the bottom of the list.
 | ||||
| // If you want to "retire" a migration, remove it from the top of the list and 
 | ||||
| // update _MIN_VER_DB accordingly 
 | ||||
| // If you want to "retire" a migration, remove it from the top of the list and
 | ||||
| // update _MIN_VER_DB accordingly
 | ||||
| var migrations = []Migration{ | ||||
| 	NewMigration("generate collaboration from access", accessToCollaboration), // V0 -> V1
 | ||||
| } | ||||
| @ -65,7 +65,7 @@ func Migrate(x *xorm.Engine) error { | ||||
| 		return fmt.Errorf("get: %v", err) | ||||
| 	} else if !has { | ||||
| 		// If the user table does not exist it is a fresh installation and we
 | ||||
| 		// can skip all migrations
 | ||||
| 		// can skip all migrations.
 | ||||
| 		needsMigration, err := x.IsTableExist("user") | ||||
| 		if err != nil { | ||||
| 			return err | ||||
| @ -76,7 +76,7 @@ func Migrate(x *xorm.Engine) error { | ||||
| 				return err | ||||
| 			} | ||||
| 			// If the user table is empty it is a fresh installation and we can
 | ||||
| 			// skip all migrations
 | ||||
| 			// skip all migrations.
 | ||||
| 			needsMigration = !isEmpty | ||||
| 		} | ||||
| 		if !needsMigration { | ||||
| @ -102,6 +102,13 @@ func Migrate(x *xorm.Engine) error { | ||||
| 	return nil | ||||
| } | ||||
| 
 | ||||
| func sessionRelease(sess *xorm.Session) { | ||||
| 	if !sess.IsCommitedOrRollbacked { | ||||
| 		sess.Rollback() | ||||
| 	} | ||||
| 	sess.Close() | ||||
| } | ||||
| 
 | ||||
| func accessToCollaboration(x *xorm.Engine) error { | ||||
| 	type Collaboration struct { | ||||
| 		ID      int64 `xorm:"pk autoincr"` | ||||
| @ -118,12 +125,7 @@ func accessToCollaboration(x *xorm.Engine) error { | ||||
| 	} | ||||
| 
 | ||||
| 	sess := x.NewSession() | ||||
| 	defer func() { | ||||
| 		if sess.IsCommitedOrRollbacked { | ||||
| 			sess.Rollback() | ||||
| 		} | ||||
| 		sess.Close() | ||||
| 	}() | ||||
| 	defer sessionRelease(sess) | ||||
| 	if err = sess.Begin(); err != nil { | ||||
| 		return err | ||||
| 	} | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user