kevin пре 4 година
родитељ
комит
94645481b1

+ 0 - 1
core/bloom/bloom.go

@@ -37,7 +37,6 @@ type (
 
 	BloomFilter struct {
 		bits   uint
-		maps   uint
 		bitSet BitSetProvider
 	}
 )

+ 3 - 2
core/codec/gzip.go

@@ -6,6 +6,8 @@ import (
 	"io"
 )
 
+const unzipLimit = 100 * 1024 * 1024 // 100MB
+
 func Gzip(bs []byte) []byte {
 	var b bytes.Buffer
 
@@ -24,8 +26,7 @@ func Gunzip(bs []byte) ([]byte, error) {
 	defer r.Close()
 
 	var c bytes.Buffer
-	_, err = io.Copy(&c, r)
-	if err != nil {
+	if _, err = io.Copy(&c, io.LimitReader(r, unzipLimit)); err != nil {
 		return nil, err
 	}
 

+ 1 - 2
core/codec/rsa_test.go

@@ -30,8 +30,7 @@ FstHGSkUYFLe+nl1dEKHbD+/Zt95L757J3xGTrwoTc7KCTxbrgn+stn0w52BNjj/
 kIE2ko4lbh/v8Fl14AyVR9msfKtKOnhe5FCT72mdtApr+qvzcC3q9hfXwkyQU32p
 v7q5UimZ205iKSBmgQIDAQAB
 -----END PUBLIC KEY-----`
-	testBody      = `this is the content`
-	encryptedBody = `49e7bc15640e5d927fd3f129b749536d0755baf03a0f35fc914ff1b7b8ce659e5fe3a598442eb908c5995e28bacd3d76e4420bb05b6bfc177040f66c6976f680f7123505d626ab96a9db1151f45c93bc0262db9087b9fb6801715f76f902e644a20029262858f05b0d10540842204346ac1d6d8f29cc5d47dab79af75d922ef2`
+	testBody = `this is the content`
 )
 
 func TestCryption(t *testing.T) {

+ 0 - 1
core/collection/cache.go

@@ -29,7 +29,6 @@ type (
 		name           string
 		lock           sync.Mutex
 		data           map[string]interface{}
-		evicts         *list.List
 		expire         time.Duration
 		timingWheel    *TimingWheel
 		lruCache       lru

+ 1 - 1
core/collection/rollingwindow_test.go

@@ -88,7 +88,7 @@ func TestRollingWindowReduce(t *testing.T) {
 	for _, test := range tests {
 		t.Run(stringx.Rand(), func(t *testing.T) {
 			r := test.win
-			for x := 0; x < size; x = x + 1 {
+			for x := 0; x < size; x++ {
 				for i := 0; i <= x; i++ {
 					r.Add(float64(i))
 				}

+ 8 - 4
core/contextx/deadline_test.go

@@ -10,8 +10,10 @@ import (
 
 func TestShrinkDeadlineLess(t *testing.T) {
 	deadline := time.Now().Add(time.Second)
-	ctx, _ := context.WithDeadline(context.Background(), deadline)
-	ctx, _ = ShrinkDeadline(ctx, time.Minute)
+	ctx, cancel := context.WithDeadline(context.Background(), deadline)
+	defer cancel()
+	ctx, cancel = ShrinkDeadline(ctx, time.Minute)
+	defer cancel()
 	dl, ok := ctx.Deadline()
 	assert.True(t, ok)
 	assert.Equal(t, deadline, dl)
@@ -19,8 +21,10 @@ func TestShrinkDeadlineLess(t *testing.T) {
 
 func TestShrinkDeadlineMore(t *testing.T) {
 	deadline := time.Now().Add(time.Minute)
-	ctx, _ := context.WithDeadline(context.Background(), deadline)
-	ctx, _ = ShrinkDeadline(ctx, time.Second)
+	ctx, cancel := context.WithDeadline(context.Background(), deadline)
+	defer cancel()
+	ctx, cancel = ShrinkDeadline(ctx, time.Second)
+	defer cancel()
 	dl, ok := ctx.Deadline()
 	assert.True(t, ok)
 	assert.True(t, dl.Before(deadline))

+ 4 - 2
core/contextx/valueonlycontext_test.go

@@ -12,7 +12,8 @@ func TestContextCancel(t *testing.T) {
 	c := context.WithValue(context.Background(), "key", "value")
 	c1, cancel := context.WithCancel(c)
 	o := ValueOnlyFrom(c1)
-	c2, _ := context.WithCancel(o)
+	c2, cancel2 := context.WithCancel(o)
+	defer cancel2()
 	contexts := []context.Context{c1, c2}
 
 	for _, c := range contexts {
@@ -35,7 +36,8 @@ func TestContextCancel(t *testing.T) {
 }
 
 func TestContextDeadline(t *testing.T) {
-	c, _ := context.WithDeadline(context.Background(), time.Now().Add(10*time.Millisecond))
+	c, cancel := context.WithDeadline(context.Background(), time.Now().Add(10*time.Millisecond))
+	cancel()
 	o := ValueOnlyFrom(c)
 	select {
 	case <-time.After(100 * time.Millisecond):

+ 1 - 1
core/discov/clients.go

@@ -8,7 +8,7 @@ import (
 )
 
 const (
-	indexOfKey = iota
+	_ = iota
 	indexOfId
 )
 

+ 1 - 0
core/mathx/int_test.go

@@ -31,6 +31,7 @@ func TestMaxInt(t *testing.T) {
 	}
 
 	for _, each := range cases {
+		each := each
 		t.Run(stringx.Rand(), func(t *testing.T) {
 			actual := MaxInt(each.a, each.b)
 			assert.Equal(t, each.expect, actual)

+ 0 - 4
core/proc/profile.go

@@ -26,10 +26,6 @@ var started uint32
 
 // Profile represents an active profiling session.
 type Profile struct {
-	// path holds the base path where various profiling files are  written.
-	// If blank, the base path will be generated by ioutil.TempDir.
-	path string
-
 	// closers holds cleanup functions that run after each profile
 	closers []func()
 

+ 1 - 1
core/service/servicegroup_test.go

@@ -27,7 +27,7 @@ func newMockedService(multiplier int) *mockedService {
 
 func (s *mockedService) Start() {
 	mutex.Lock()
-	number = number * s.multiplier
+	number *= s.multiplier
 	mutex.Unlock()
 	done <- struct{}{}
 	<-s.quit

+ 0 - 4
core/syncx/cond_test.go

@@ -67,7 +67,3 @@ func TestSignalNoWait(t *testing.T) {
 func sleep(millisecond int) {
 	time.Sleep(time.Duration(millisecond) * time.Millisecond)
 }
-
-func currentTimeMillis() int64 {
-	return time.Now().UnixNano() / int64(time.Millisecond)
-}

+ 2 - 1
core/syncx/sharedcalls_test.go

@@ -95,7 +95,8 @@ func TestExclusiveCallDoDiffDupSuppress(t *testing.T) {
 	close(broadcast)
 	wg.Wait()
 
-	if got := atomic.LoadInt32(&calls); got != 5 {	// five letters
+	if got := atomic.LoadInt32(&calls); got != 5 {
+		// five letters
 		t.Errorf("number of calls = %d; want 5", got)
 	}
 }

+ 1 - 1
core/timex/relativetime_test.go

@@ -16,7 +16,7 @@ func TestRelativeTime(t *testing.T) {
 }
 
 func TestRelativeTime_Time(t *testing.T) {
-	diff := Time().Sub(time.Now())
+	diff := time.Until(Time())
 	if diff > 0 {
 		assert.True(t, diff < time.Second)
 	} else {

+ 3 - 6
core/timex/ticker_test.go

@@ -27,12 +27,9 @@ func TestFakeTicker(t *testing.T) {
 
 	var count int32
 	go func() {
-		for {
-			select {
-			case <-ticker.Chan():
-				if atomic.AddInt32(&count, 1) == total {
-					ticker.Done()
-				}
+		for range ticker.Chan() {
+			if atomic.AddInt32(&count, 1) == total {
+				ticker.Done()
 			}
 		}
 	}()

+ 1 - 4
core/trace/span.go

@@ -17,7 +17,6 @@ const (
 	clientFlag  = "client"
 	serverFlag  = "server"
 	spanSepRune = '.'
-	timeFormat  = "2006-01-02 15:04:05.000"
 )
 
 var spanSep = string([]byte{spanSepRune})
@@ -37,9 +36,7 @@ func newServerSpan(carrier Carrier, serviceName, operationName string) tracespec
 			return carrier.Get(traceIdKey)
 		}
 		return ""
-	}, func() string {
-		return stringx.RandId()
-	})
+	}, stringx.RandId)
 	spanId := stringx.TakeWithPriority(func() string {
 		if carrier != nil {
 			return carrier.Get(spanIdKey)

+ 1 - 0
core/utils/version_test.go

@@ -30,6 +30,7 @@ func TestCompareVersions(t *testing.T) {
 	}
 
 	for _, each := range cases {
+		each := each
 		t.Run(each.ver1, func(t *testing.T) {
 			actual := CompareVersions(each.ver1, each.operator, each.ver2)
 			assert.Equal(t, each.out, actual, fmt.Sprintf("%s vs %s", each.ver1, each.ver2))

+ 27 - 30
example/etcd/demo/etcdmon.go

@@ -128,41 +128,38 @@ func main() {
 	ticker := time.NewTicker(time.Minute)
 	defer ticker.Stop()
 
-	for {
-		select {
-		case <-ticker.C:
-			expect, err := loadAll(registry.Client().(*clientv3.Client))
-			if err != nil {
-				fmt.Println("[ETCD-test] can't load current keys")
-				continue
-			}
+	for range ticker.C {
+		expect, err := loadAll(registry.Client().(*clientv3.Client))
+		if err != nil {
+			fmt.Println("[ETCD-test] can't load current keys")
+			continue
+		}
 
-			check := func() bool {
-				var match bool
-				barrier.Guard(func() {
-					match = compare(expect, vals)
-				})
-				if match {
-					logx.Info("match")
-				}
-				return match
+		check := func() bool {
+			var match bool
+			barrier.Guard(func() {
+				match = compare(expect, vals)
+			})
+			if match {
+				logx.Info("match")
 			}
+			return match
+		}
+		if check() {
+			continue
+		}
+
+		time.AfterFunc(time.Second*5, func() {
 			if check() {
-				continue
+				return
 			}
 
-			time.AfterFunc(time.Second*5, func() {
-				if check() {
-					return
-				}
-
-				var builder strings.Builder
-				builder.WriteString(fmt.Sprintf("expect:\n%s\n", serializeMap(expect, "\t")))
-				barrier.Guard(func() {
-					builder.WriteString(fmt.Sprintf("actual:\n%s\n", serializeMap(vals, "\t")))
-				})
-				fmt.Println(builder.String())
+			var builder strings.Builder
+			builder.WriteString(fmt.Sprintf("expect:\n%s\n", serializeMap(expect, "\t")))
+			barrier.Guard(func() {
+				builder.WriteString(fmt.Sprintf("actual:\n%s\n", serializeMap(vals, "\t")))
 			})
-		}
+			fmt.Println(builder.String())
+		})
 	}
 }

+ 0 - 4
example/mapreduce/deadlock/main.go

@@ -26,10 +26,6 @@ func main() {
 		}
 		writer.Write(user)
 	}, func(pipe <-chan interface{}, writer mr.Writer, cancel func(error)) {
-		var users []*User
-		for p := range pipe {
-			users = append(users, p.(*User))
-		}
 		// missing writer.Write(...), should not panic
 	})
 	if err != nil {

+ 5 - 1
example/periodicalexecutor/pe.go

@@ -12,7 +12,11 @@ func main() {
 		fmt.Println(len(items))
 	}, executors.WithBulkTasks(10))
 	for {
-		executor.Add(1)
+		if err := executor.Add(1); err != nil {
+			fmt.Println(err)
+			return
+		}
+
 		time.Sleep(time.Millisecond * 90)
 	}
 }

+ 3 - 6
example/stat/main.go

@@ -24,11 +24,8 @@ func main() {
 	ticker := time.NewTicker(time.Second * 5)
 	defer ticker.Stop()
 
-	for {
-		select {
-		case <-ticker.C:
-			percent := stat.CpuUsage()
-			fmt.Println("cpu:", percent)
-		}
+	for range ticker.C {
+		percent := stat.CpuUsage()
+		fmt.Println("cpu:", percent)
 	}
 }

+ 1 - 1
rest/handler/cryptionhandler.go

@@ -45,7 +45,7 @@ func decryptBody(key []byte, r *http.Request) error {
 	var content []byte
 	var err error
 	if r.ContentLength > 0 {
-		content = make([]byte, r.ContentLength, r.ContentLength)
+		content = make([]byte, r.ContentLength)
 		_, err = io.ReadFull(r.Body, content)
 	} else {
 		content, err = ioutil.ReadAll(io.LimitReader(r.Body, maxBytes))

+ 0 - 2
tools/goctl/k8s/k8s.go

@@ -18,8 +18,6 @@ const (
 	ServiceTypeRmq  ServiceType = "rmq"
 	ServiceTypeSync ServiceType = "sync"
 	envDev                      = "dev"
-	envPre                      = "pre"
-	envPro                      = "pro"
 )
 
 type (

+ 1 - 1
tools/goctl/model/sql/parser/parser.go

@@ -9,7 +9,7 @@ import (
 )
 
 const (
-	none = iota
+	_ = iota
 	primary
 	unique
 	normal

+ 1 - 3
tools/goctl/util/stringx/string.go

@@ -53,9 +53,7 @@ func (s String) ToCamel() string {
 
 // camel->snake
 func (s String) ToSnake() string {
-	list := s.splitBy(func(r rune) bool {
-		return unicode.IsUpper(r)
-	}, false)
+	list := s.splitBy(unicode.IsUpper, false)
 	var target []string
 	for _, item := range list {
 		target = append(target, From(item).Lower())

+ 1 - 0
zrpc/internal/resolver/directbuilder_test.go

@@ -23,6 +23,7 @@ func TestDirectBuilder_Build(t *testing.T) {
 	}
 
 	for _, test := range tests {
+		test := test
 		t.Run(strconv.Itoa(test), func(t *testing.T) {
 			var servers []string
 			for i := 0; i < test; i++ {

+ 1 - 0
zrpc/internal/resolver/subset_test.go

@@ -27,6 +27,7 @@ func TestSubset(t *testing.T) {
 	}
 
 	for _, test := range tests {
+		test := test
 		t.Run(test.name, func(t *testing.T) {
 			var vals []string
 			for i := 0; i < test.set; i++ {