From 883cdff6638c325f17db200a9c8f4984537f80b8 Mon Sep 17 00:00:00 2001
From: liuxiaolong <736321739@qq.com>
Date: 星期五, 11 十月 2019 20:04:10 +0800
Subject: [PATCH] serf MaxUserEventSize is 9*1024,cannot more
---
dbself.go | 63 ++++++++++++++++++++-----------
1 files changed, 41 insertions(+), 22 deletions(-)
diff --git a/dbself.go b/dbself.go
index c2c1826..e40ea65 100644
--- a/dbself.go
+++ b/dbself.go
@@ -9,10 +9,13 @@
"strings"
"sync"
"github.com/jinzhu/gorm"
+ "basic.com/valib/logger.git"
)
const (
PersonSqliteDBPath = "~/workspace/gitblit/dbserver/config/testdb.db"
+ DbT_TableName = "dbtables"
+ DBP_TableName = "dbtablepersons"
)
var syncMut sync.Mutex
@@ -25,15 +28,15 @@
dbPath = PersonSqliteDBPath
}
- fmt.Println("self: ========>", dbPath)
+ logger.Info("self: ========>", dbPath)
db, err := New(dbPath, "", false)
if err != nil {
- fmt.Println("new db database: ", err)
+ logger.Error("new db database: ", err)
return err
}
dbConn, err := db.Connect()
if err != nil {
- fmt.Println("new db conn error; ", err)
+ logger.Error("new db conn error; ", err)
return err
}
@@ -46,21 +49,21 @@
path, err := getCurrentPath()
if err != nil {
- fmt.Println("getCurrentPath error; ", err)
+ logger.Error("getCurrentPath error; ", err)
return "", err
}
filepath := path + "tmp.db"
- fmt.Println("filepath:", filepath)
+ logger.Info("filepath:", filepath)
db, err := New(filepath, "", false)
if err != nil {
- fmt.Println("new db database: ", err)
+ logger.Error("new db database: ", err)
return "", err
}
tmpconn, err := db.Connect()
if err != nil {
- fmt.Println("new db conn error; ", err)
+ logger.Error("new db conn error; ", err)
return "", err
}
defer tmpconn.Close()
@@ -78,7 +81,7 @@
defer syncMut.Unlock()
allResults, err := SerfDbConn.Execute(sqlString, false, false)
if err != nil {
- fmt.Println("execute error!", err)
+ logger.Error("execute error!", err)
return nil, err
}
return allResults, nil
@@ -95,7 +98,7 @@
defer syncMut.Unlock()
rows, err := SerfDbConn.Query(sqlString, false, false)
if err != nil {
- fmt.Println("execute error!", err)
+ logger.Error("execute error!", err)
return nil, err
}
return rows, nil
@@ -114,12 +117,15 @@
}()
for _,sql :=range sqls {
result := tx.Exec(sql)
- if result.Error !=nil {
- return false,result.Error
+ err = result.Error
+ if err !=nil {
+ logger.Error("ExecuteSqlByGorm err:",err,",sql:",sql)
+ return false,err
}
- if result.RowsAffected == 0{
- fmt.Println("ExecuteSqlByGorm fail")
- return false,errors.New("ExecuteSqlByGorm fail")
+ if result.RowsAffected == 0 {
+ logger.Debug("ExecuteSqlByGorm RowsAffected == 0",",sql:",sql)
+ err = errors.New("ExecuteSqlByGorm RowsAffected == 0")
+ return false,err
}
}
tx.Commit()
@@ -155,7 +161,7 @@
if err !=nil {
return nil,errors.New("tableDesc err")
}
- fmt.Println(table,"'Columns is:",tDescArr)
+ logger.Info(table,"'Columns is:",tDescArr)
if tDescArr == nil || len(tDescArr) == 0 {
return nil,errors.New(table+" has no column")
}
@@ -163,11 +169,24 @@
for _,col :=range tDescArr {
columnNames = append(columnNames, fmt.Sprintf(`'||quote("%s")||'`, col.Name))
}
- tSql = fmt.Sprintf(`SELECT 'INSERT INTO "%s" VALUES(%s)' as sql FROM "%s";`,
- table,
- strings.Join(columnNames, ","),
- table)
- fmt.Println("tSql:",tSql)
+ if table == DbT_TableName {
+ tSql = fmt.Sprintf(`SELECT 'INSERT INTO "%s" VALUES(%s)' as sql FROM "%s" where (analyServerId='' or analyServerId is NULL);`,
+ table,
+ strings.Join(columnNames, ","),
+ table)
+ } else if table == DBP_TableName {
+ tSql = fmt.Sprintf(`SELECT 'INSERT INTO "%s" VALUES(%s)' as sql FROM "%s" where tableId in (select id from dbTables where (analyServerId='' or analyServerId is NULL));`,
+ table,
+ strings.Join(columnNames, ","),
+ table)
+ } else {
+ tSql = fmt.Sprintf(`SELECT 'INSERT INTO "%s" VALUES(%s)' as sql FROM "%s";`,
+ table,
+ strings.Join(columnNames, ","),
+ table)
+ }
+
+ logger.Info("tSql:",tSql)
err = localDb.Raw(tSql).Scan(&dumpSql).Error
if err !=nil {
@@ -190,9 +209,9 @@
var b strings.Builder
if err := SerfDbConn.Dump(&b); err != nil {
- fmt.Println("dump file ", err.Error())
+ logger.Error("dump file ", err.Error())
}
- fmt.Printf("%T\n", b)
+ logger.Info("%T\n", b)
}
// get current path
--
Gitblit v1.8.0