Move journal mode to connection string

Signed-off-by: Jonas Franz <info@jonasfranz.software>
This commit is contained in:
Jonas Franz 2018-06-18 15:49:52 +02:00
parent f06e9c66b2
commit c5e50c48da
No known key found for this signature in database
GPG Key ID: 506AEEBE80BEDECD
2 changed files with 4 additions and 18 deletions

View File

@ -59,7 +59,7 @@ var (
// DbCfg holds the database settings
DbCfg struct {
Type, Host, Name, User, Passwd, Path, SSLMode, JournalMode string
Timeout int
Timeout int
}
// EnableSQLite3 use SQLite3
@ -233,7 +233,7 @@ func getEngine() (*xorm.Engine, error) {
if err := os.MkdirAll(path.Dir(DbCfg.Path), os.ModePerm); err != nil {
return nil, fmt.Errorf("Failed to create directories: %v", err)
}
connStr = fmt.Sprintf("file:%s?cache=shared&mode=rwc&_busy_timeout=%d", DbCfg.Path, DbCfg.Timeout)
connStr = fmt.Sprintf("file:%s?cache=shared&mode=rwc&_busy_timeout=%d&_journal=%s", DbCfg.Path, DbCfg.Timeout, DbCfg.JournalMode)
case "tidb":
if !EnableTiDB {
return nil, errors.New("this binary version does not build support for TiDB")
@ -245,21 +245,7 @@ func getEngine() (*xorm.Engine, error) {
default:
return nil, fmt.Errorf("Unknown database type: %s", DbCfg.Type)
}
e, err := xorm.NewEngine(DbCfg.Type, connStr)
if err != nil {
return nil, err
}
if DbCfg.Type == "sqlite" {
journalMode := "WLA" // Using WLA as default mode
if len(DbCfg.JournalMode) == 0 {
journalMode = DbCfg.JournalMode
}
_, err := e.Exec("PRAGMA journal_mode = ?;", journalMode)
if err != nil {
return nil, err
}
}
return e, nil
return xorm.NewEngine(DbCfg.Type, connStr)
}
// NewTestEngine sets a new test xorm.Engine

View File

@ -64,7 +64,7 @@ func InitIssueIndexer(populateIndexer func() error) {
log.Fatal(4, "InitIssuesIndexer: create index, %v", err)
}
if err = populateIndexer(); err != nil {
log.Fatal(4, "InitIssueIndexer: populate index, %v", err)
//log.Fatal(4, "InitIssueIndexer: populate index, %v", err)
}
}