Fix v85.go: Set UNIQUE constraint later (#6851)
Signed-off-by: Andrew Thornton <art27@cantab.net>
This commit is contained in:
		
							parent
							
								
									d27bf72530
								
							
						
					
					
						commit
						07bcccf9ce
					
				
					 1 changed files with 22 additions and 4 deletions
				
			
		|  | @ -24,7 +24,7 @@ func hashAppToken(x *xorm.Engine) error { | |||
| 		Name           string | ||||
| 		Sha1           string | ||||
| 		Token          string `xorm:"-"` | ||||
| 		TokenHash      string `xorm:"UNIQUE"` // sha256 of token
 | ||||
| 		TokenHash      string // sha256 of token - we will ensure UNIQUE later
 | ||||
| 		TokenSalt      string | ||||
| 		TokenLastEight string `xorm:"token_last_eight"` | ||||
| 
 | ||||
|  | @ -74,7 +74,7 @@ func hashAppToken(x *xorm.Engine) error { | |||
| 		return err | ||||
| 	} | ||||
| 
 | ||||
| 	if err := x.Sync2(new(AccessToken)); err != nil { | ||||
| 	if err := sess.Sync2(new(AccessToken)); err != nil { | ||||
| 		return fmt.Errorf("Sync2: %v", err) | ||||
| 	} | ||||
| 
 | ||||
|  | @ -130,6 +130,24 @@ func hashAppToken(x *xorm.Engine) error { | |||
| 	if err := dropTableColumns(sess, "access_token", "sha1"); err != nil { | ||||
| 		return err | ||||
| 	} | ||||
| 	return sess.Commit() | ||||
| 
 | ||||
| 	if err := sess.Commit(); err != nil { | ||||
| 		return err | ||||
| 	} | ||||
| 	return resyncHashAppTokenWithUniqueHash(x) | ||||
| } | ||||
| 
 | ||||
| func resyncHashAppTokenWithUniqueHash(x *xorm.Engine) error { | ||||
| 	// AccessToken see models/token.go
 | ||||
| 	type AccessToken struct { | ||||
| 		TokenHash string `xorm:"UNIQUE"` // sha256 of token - we will ensure UNIQUE later
 | ||||
| 	} | ||||
| 	sess := x.NewSession() | ||||
| 	defer sess.Close() | ||||
| 	if err := sess.Begin(); err != nil { | ||||
| 		return err | ||||
| 	} | ||||
| 	if err := sess.Sync2(new(AccessToken)); err != nil { | ||||
| 		return fmt.Errorf("Sync2: %v", err) | ||||
| 	} | ||||
| 	return sess.Commit() | ||||
| } | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue