From bdfdf3cacba75fe1c36f7a05096748c26f25a2f9 Mon Sep 17 00:00:00 2001 From: Tristan Storch Date: Thu, 4 Sep 2014 17:19:26 +0200 Subject: Code dedoublication in models/models.go Just some code dedoublication in models/models.go --- models/models.go | 44 +++++++++++++++----------------------------- 1 file changed, 15 insertions(+), 29 deletions(-) (limited to 'models/models.go') diff --git a/models/models.go b/models/models.go index 4e2e08cf..5558ec00 100644 --- a/models/models.go +++ b/models/models.go @@ -55,11 +55,12 @@ func LoadModelsConfig() { DbCfg.Path = setting.Cfg.MustValue("database", "PATH", "data/gogs.db") } -func NewTestEngine(x *xorm.Engine) (err error) { +func getEngine() (*xorm.Engine, error) { + cnnstr := "" switch DbCfg.Type { case "mysql": - x, err = xorm.NewEngine("mysql", fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8", - DbCfg.User, DbCfg.Pwd, DbCfg.Host, DbCfg.Name)) + cnnstr = fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8", + DbCfg.User, DbCfg.Pwd, DbCfg.Host, DbCfg.Name) case "postgres": var host, port = "127.0.0.1", "5432" fields := strings.Split(DbCfg.Host, ":") @@ -69,46 +70,31 @@ func NewTestEngine(x *xorm.Engine) (err error) { if len(fields) > 1 && len(strings.TrimSpace(fields[1])) > 0 { port = fields[1] } - cnnstr := fmt.Sprintf("user=%s password=%s host=%s port=%s dbname=%s sslmode=%s", + cnnstr = fmt.Sprintf("user=%s password=%s host=%s port=%s dbname=%s sslmode=%s", DbCfg.User, DbCfg.Pwd, host, port, DbCfg.Name, DbCfg.SslMode) - x, err = xorm.NewEngine("postgres", cnnstr) case "sqlite3": if !EnableSQLite3 { - return fmt.Errorf("Unknown database type: %s", DbCfg.Type) + return nil, fmt.Errorf("Unknown database type: %s", DbCfg.Type) } os.MkdirAll(path.Dir(DbCfg.Path), os.ModePerm) - x, err = xorm.NewEngine("sqlite3", DbCfg.Path) + cnnstr = DbCfg.Path default: - return fmt.Errorf("Unknown database type: %s", DbCfg.Type) + return nil, fmt.Errorf("Unknown database type: %s", DbCfg.Type) } + return xorm.NewEngine(DbCfg.Type, cnnstr) +} + +func NewTestEngine(x *xorm.Engine) (err error) { + x, err = getEngine() if err != nil { return fmt.Errorf("models.init(fail to conntect database): %v", err) } + return x.Sync(tables...) } func SetEngine() (err error) { - switch DbCfg.Type { - case "mysql": - x, err = xorm.NewEngine("mysql", fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8", - DbCfg.User, DbCfg.Pwd, DbCfg.Host, DbCfg.Name)) - case "postgres": - var host, port = "127.0.0.1", "5432" - fields := strings.Split(DbCfg.Host, ":") - if len(fields) > 0 && len(strings.TrimSpace(fields[0])) > 0 { - host = fields[0] - } - if len(fields) > 1 && len(strings.TrimSpace(fields[1])) > 0 { - port = fields[1] - } - x, err = xorm.NewEngine("postgres", fmt.Sprintf("user=%s password=%s host=%s port=%s dbname=%s sslmode=%s", - DbCfg.User, DbCfg.Pwd, host, port, DbCfg.Name, DbCfg.SslMode)) - case "sqlite3": - os.MkdirAll(path.Dir(DbCfg.Path), os.ModePerm) - x, err = xorm.NewEngine("sqlite3", DbCfg.Path) - default: - return fmt.Errorf("Unknown database type: %s", DbCfg.Type) - } + x, err = getEngine() if err != nil { return fmt.Errorf("models.init(fail to conntect database): %v", err) } -- cgit v1.2.3 From d84d6dfdae93518936b33290e5cc9adeef876524 Mon Sep 17 00:00:00 2001 From: lunnyxiao Date: Mon, 8 Sep 2014 12:11:25 +0800 Subject: add showinfo for xorm --- models/models.go | 1 + 1 file changed, 1 insertion(+) (limited to 'models/models.go') diff --git a/models/models.go b/models/models.go index 5558ec00..247bcf2f 100644 --- a/models/models.go +++ b/models/models.go @@ -111,6 +111,7 @@ func SetEngine() (err error) { x.Logger = xorm.NewSimpleLogger(f) x.ShowSQL = true + x.ShowInfo = true x.ShowDebug = true x.ShowErr = true x.ShowWarn = true -- cgit v1.2.3 From 1b7adf57e94aaccd2abc6c7288947e36bb311c0a Mon Sep 17 00:00:00 2001 From: Unknwon Date: Fri, 12 Sep 2014 18:58:24 -0400 Subject: fix https://github.com/go-xorm/xorm/issues/161 --- models/models.go | 2 +- models/webhook.go | 17 ++++++++++++----- 2 files changed, 13 insertions(+), 6 deletions(-) (limited to 'models/models.go') diff --git a/models/models.go b/models/models.go index 247bcf2f..283a8f7a 100644 --- a/models/models.go +++ b/models/models.go @@ -77,7 +77,7 @@ func getEngine() (*xorm.Engine, error) { return nil, fmt.Errorf("Unknown database type: %s", DbCfg.Type) } os.MkdirAll(path.Dir(DbCfg.Path), os.ModePerm) - cnnstr = DbCfg.Path + cnnstr = "file:" + DbCfg.Path + "?cache=shared&mode=rwc" default: return nil, fmt.Errorf("Unknown database type: %s", DbCfg.Type) } diff --git a/models/webhook.go b/models/webhook.go index 5c0e2179..3c07cc81 100644 --- a/models/webhook.go +++ b/models/webhook.go @@ -236,6 +236,7 @@ func UpdateHookTask(t *HookTask) error { // DeliverHooks checks and delivers undelivered hooks. func DeliverHooks() { + tasks := make([]*HookTask, 0, 10) timeout := time.Duration(setting.WebhookDeliverTimeout) * time.Second x.Where("is_delivered=?", false).Iterate(new(HookTask), func(idx int, bean interface{}) error { @@ -283,12 +284,18 @@ func DeliverHooks() { } } - if err := UpdateHookTask(t); err != nil { - log.Error(4, "UpdateHookTask: %v", err) - return nil - } + tasks = append(tasks, t) - log.Trace("Hook delivered(%s): %s", t.Uuid, t.PayloadContent) + if t.IsSucceed { + log.Trace("Hook delivered(%s): %s", t.Uuid, t.PayloadContent) + } return nil }) + + // Update hook task status. + for _, t := range tasks { + if err := UpdateHookTask(t); err != nil { + log.Error(4, "UpdateHookTask(%d): %v", t.Id, err) + } + } } -- cgit v1.2.3 From b7b0ee7df96c019795e3939dbb33389f7f0c2c43 Mon Sep 17 00:00:00 2001 From: evolvedlight Date: Sun, 28 Sep 2014 22:01:05 +0100 Subject: Fix minor typo --- models/models.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'models/models.go') diff --git a/models/models.go b/models/models.go index 283a8f7a..570df0c1 100644 --- a/models/models.go +++ b/models/models.go @@ -87,7 +87,7 @@ func getEngine() (*xorm.Engine, error) { func NewTestEngine(x *xorm.Engine) (err error) { x, err = getEngine() if err != nil { - return fmt.Errorf("models.init(fail to conntect database): %v", err) + return fmt.Errorf("models.init(fail to connect to database): %v", err) } return x.Sync(tables...) @@ -96,7 +96,7 @@ func NewTestEngine(x *xorm.Engine) (err error) { func SetEngine() (err error) { x, err = getEngine() if err != nil { - return fmt.Errorf("models.init(fail to conntect database): %v", err) + return fmt.Errorf("models.init(fail to connect to database): %v", err) } // WARNNING: for serv command, MUST remove the output to os.stdout, -- cgit v1.2.3