bug fixed for sync2

This commit is contained in:
Lunny Xiao 2015-06-27 12:36:38 +08:00
parent 76eef59c8f
commit 2ee7de9fa5
2 changed files with 20 additions and 15 deletions

View File

@ -3889,6 +3889,7 @@ func (s *Session) Sync2(beans ...interface{}) error {
}
var foundIndexNames = make(map[string]bool)
var addedNames = make(map[string]*core.Index)
for name, index := range table.Indexes {
var oriIndex *core.Index
@ -3912,20 +3913,7 @@ func (s *Session) Sync2(beans ...interface{}) error {
}
if oriIndex == nil {
if index.Type == core.UniqueType {
session := engine.NewSession()
session.Statement.RefTable = table
defer session.Close()
err = session.addUnique(table.Name, name)
} else if index.Type == core.IndexType {
session := engine.NewSession()
session.Statement.RefTable = table
defer session.Close()
err = session.addIndex(table.Name, name)
}
if err != nil {
return err
}
addedNames[name] = index
}
}
@ -3938,6 +3926,23 @@ func (s *Session) Sync2(beans ...interface{}) error {
}
}
}
for name, index := range addedNames {
if index.Type == core.UniqueType {
session := engine.NewSession()
session.Statement.RefTable = table
defer session.Close()
err = session.addUnique(table.Name, name)
} else if index.Type == core.IndexType {
session := engine.NewSession()
session.Statement.RefTable = table
defer session.Close()
err = session.addIndex(table.Name, name)
}
if err != nil {
return err
}
}
}
}

View File

@ -17,7 +17,7 @@ import (
)
const (
Version string = "0.4.3.0526"
Version string = "0.4.3.0627"
)
func regDrvsNDialects() bool {