From c12eca8416359abbad2e947ba30f48d5cc8d6db0 Mon Sep 17 00:00:00 2001 From: yedongfu Date: Thu, 15 Jul 2021 17:44:45 +0800 Subject: [PATCH] change to yaml.v2 --- .vscode/launch.json | 2 +- common/types_test.go | 2 +- common/utils.go | 20 +++++++------------- dtmsvr/config.go | 4 ++-- dtmsvr/dtmsvr_test.go | 7 +------ dtmsvr/trans.go | 2 ++ examples/config.go | 2 +- go.mod | 5 +---- go.sum | 22 ---------------------- 9 files changed, 16 insertions(+), 50 deletions(-) diff --git a/.vscode/launch.json b/.vscode/launch.json index 223c37a..7c8dc8b 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -9,7 +9,7 @@ "type": "go", "request": "launch", "mode": "debug", - "program": "${workspaceFolder}/main.go", + "program": "${workspaceFolder}/app/main.go", "env": { // "GIN_MODE": "release" }, diff --git a/common/types_test.go b/common/types_test.go index f951dff..bc4f390 100644 --- a/common/types_test.go +++ b/common/types_test.go @@ -7,7 +7,7 @@ import ( ) type testConfig struct { - Mysql map[string]string + Mysql map[string]string `yaml:"Mysql"` } var config = testConfig{} diff --git a/common/utils.go b/common/utils.go index 9b33f7c..18209fe 100644 --- a/common/utils.go +++ b/common/utils.go @@ -17,7 +17,7 @@ import ( "github.com/gin-gonic/gin" "github.com/go-resty/resty/v2" "github.com/sirupsen/logrus" - "github.com/spf13/viper" + yaml "gopkg.in/yaml.v2" ) func P2E(perr *error) { @@ -192,22 +192,16 @@ func (f *formatter) Format(entry *logrus.Entry) ([]byte, error) { return b.Bytes(), nil } -var configLoaded = map[string]bool{} - // 加载调用者文件相同目录下的配置文件 func InitApp(dir string, config interface{}) { logrus.SetFormatter(&formatter{}) - if !configLoaded[dir] { - configLoaded[dir] = true - viper.SetConfigFile(dir + "/conf.yml") - err := viper.ReadInConfig() - if err != nil { - viper.SetConfigFile(dir + "/conf.sample.yml") - err = viper.ReadInConfig() - } - E2P(err) + cont, err := ioutil.ReadFile(dir + "/conf.yml") + if err != nil { + cont, err = ioutil.ReadFile(dir + "/conf.sample.yml") } - err := viper.Unmarshal(config) + logrus.Printf("cont is: \n%s", string(cont)) + E2P(err) + err = yaml.Unmarshal(cont, config) E2P(err) } diff --git a/dtmsvr/config.go b/dtmsvr/config.go index 8367059..7beb64e 100644 --- a/dtmsvr/config.go +++ b/dtmsvr/config.go @@ -1,8 +1,8 @@ package dtmsvr type dtmsvrConfig struct { - TransCronInterval int64 // 单位秒 当事务等待这个时间之后,还没有变化,则进行一轮处理,包括prepared中的任务和commited的任务 - Mysql map[string]string + TransCronInterval int64 `yaml:"TransCronInterval"` // 单位秒 当事务等待这个时间之后,还没有变化,则进行一轮处理,包括prepared中的任务和commited的任务 + Mysql map[string]string `yaml:"Mysql"` } var config = &dtmsvrConfig{ diff --git a/dtmsvr/dtmsvr_test.go b/dtmsvr/dtmsvr_test.go index f3c47b2..8e1bee3 100644 --- a/dtmsvr/dtmsvr_test.go +++ b/dtmsvr/dtmsvr_test.go @@ -7,7 +7,6 @@ import ( "time" "github.com/sirupsen/logrus" - "github.com/spf13/viper" "github.com/stretchr/testify/assert" "github.com/yedf/dtm/common" "github.com/yedf/dtm/dtmcli" @@ -25,10 +24,6 @@ var myinit int = func() int { return 0 }() -func TestViper(t *testing.T) { - assert.Equal(t, true, viper.Get("mysql") != nil) -} - func TestDtmSvr(t *testing.T) { TransProcessedTestChan = make(chan string, 1) // 启动组件 @@ -45,8 +40,8 @@ func TestDtmSvr(t *testing.T) { e2p(dbGet().Exec("truncate trans_log").Error) examples.ResetXaData() - msgPending(t) msgNormal(t) + msgPending(t) tccNormal(t) tccRollback(t) sagaNormal(t) diff --git a/dtmsvr/trans.go b/dtmsvr/trans.go index c4fbe75..862d18d 100644 --- a/dtmsvr/trans.go +++ b/dtmsvr/trans.go @@ -109,9 +109,11 @@ func (trans *TransGlobal) Process(db *common.DB) { defer handlePanic() defer func() { if TransProcessedTestChan != nil { + logrus.Printf("processed: %s", trans.Gid) TransProcessedTestChan <- trans.Gid } }() + logrus.Printf("processing: %s", trans.Gid) branches := []TransBranch{} db.Must().Where("gid=?", trans.Gid).Order("id asc").Find(&branches) trans.getProcessor().ProcessOnce(db, branches) diff --git a/examples/config.go b/examples/config.go index 074028c..10f9d6c 100644 --- a/examples/config.go +++ b/examples/config.go @@ -1,7 +1,7 @@ package examples type exampleConfig struct { - Mysql map[string]string + Mysql map[string]string `yaml:"Mysql"` } var Config = exampleConfig{} diff --git a/go.mod b/go.mod index a15bf34..d6e6f08 100644 --- a/go.mod +++ b/go.mod @@ -8,14 +8,11 @@ require ( github.com/gin-gonic/gin v1.6.3 github.com/go-playground/assert/v2 v2.0.1 github.com/go-resty/resty/v2 v2.6.0 - github.com/golang/protobuf v1.4.2 // indirect - github.com/google/go-cmp v0.5.5 // indirect github.com/json-iterator/go v1.1.10 github.com/sirupsen/logrus v1.7.0 github.com/spf13/viper v1.7.1 github.com/stretchr/testify v1.7.0 - golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect - gopkg.in/yaml.v2 v2.3.0 // indirect + gopkg.in/yaml.v2 v2.3.0 gorm.io/driver/mysql v1.0.3 gorm.io/gorm v1.20.12 // gotest.tools v2.2.0+incompatible diff --git a/go.sum b/go.sum index dd94c51..ab03115 100644 --- a/go.sum +++ b/go.sum @@ -78,21 +78,10 @@ github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5y github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.3 h1:gyjaxf+svBWX08ZjK86iN9geUJF0H6gp2IRKX6Nf6/I= github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= -github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= -github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= -github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= -github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w= -github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= -github.com/golang/protobuf v1.4.2 h1:+Z5KGCizgyZCbGh1KZqA0fcLLkwbsjIzS4aV2v7wJX0= -github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= -github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= -github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.5 h1:Khx7svrCpmxxtHBq5j2mp/xVjsi8hQMfNLvJFAlrGgU= -github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= @@ -333,9 +322,6 @@ golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtn golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191112195655-aa38f8e97acc/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE= -golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= @@ -357,13 +343,6 @@ google.golang.org/genproto v0.0.0-20191108220845-16a3f7862a1a/go.mod h1:n3cpQtvx google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= -google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= -google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= -google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= -google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE= -google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo= -google.golang.org/protobuf v1.23.0 h1:4MY060fB1DLGMB/7MBTLnwQUY6+F09GEiz6SsrNqyzM= -google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= @@ -393,4 +372,3 @@ honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= -