diff --git a/cmd/importer/data.go b/cmd/importer/data.go index e972f8ca000c8..dca045db6b12e 100644 --- a/cmd/importer/data.go +++ b/cmd/importer/data.go @@ -19,7 +19,7 @@ import ( "sync" "time" - "github.com/cznic/mathutil" + "github.com/pingcap/tidb/util/mathutil" ) type datum struct { diff --git a/ddl/ddl_api.go b/ddl/ddl_api.go index 7643b0a7cbb61..383cec56b3d8c 100644 --- a/ddl/ddl_api.go +++ b/ddl/ddl_api.go @@ -26,7 +26,6 @@ import ( "sync/atomic" "time" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/parser/ast" "github.com/pingcap/parser/charset" @@ -49,6 +48,7 @@ import ( "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/domainutil" "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/mock" "github.com/pingcap/tidb/util/set" "go.uber.org/zap" diff --git a/distsql/distsql_test.go b/distsql/distsql_test.go index fb825225083d9..9d7c377901cf6 100644 --- a/distsql/distsql_test.go +++ b/distsql/distsql_test.go @@ -20,7 +20,6 @@ import ( "testing" "time" - "github.com/cznic/mathutil" . "github.com/pingcap/check" "github.com/pingcap/parser/charset" "github.com/pingcap/parser/mysql" @@ -32,6 +31,7 @@ import ( "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/codec" "github.com/pingcap/tidb/util/execdetails" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/memory" "github.com/pingcap/tidb/util/stringutil" "github.com/pingcap/tipb/go-tipb" diff --git a/executor/aggfuncs/func_avg.go b/executor/aggfuncs/func_avg.go index 98155050c9958..1235d64426f63 100644 --- a/executor/aggfuncs/func_avg.go +++ b/executor/aggfuncs/func_avg.go @@ -14,12 +14,12 @@ package aggfuncs import ( - "github.com/cznic/mathutil" "github.com/pingcap/parser/mysql" "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/hack" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/set" ) diff --git a/executor/aggfuncs/func_group_concat.go b/executor/aggfuncs/func_group_concat.go index 636b2bb69006d..8ddd516e6eead 100644 --- a/executor/aggfuncs/func_group_concat.go +++ b/executor/aggfuncs/func_group_concat.go @@ -17,12 +17,12 @@ import ( "bytes" "sync/atomic" - "github.com/cznic/mathutil" "github.com/pingcap/tidb/expression" "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/codec" "github.com/pingcap/tidb/util/hack" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/set" ) diff --git a/executor/aggregate.go b/executor/aggregate.go index bfeb267e650aa..2b580849e133b 100644 --- a/executor/aggregate.go +++ b/executor/aggregate.go @@ -19,7 +19,6 @@ import ( "fmt" "sync" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/failpoint" "github.com/pingcap/parser/mysql" @@ -32,6 +31,7 @@ import ( "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/codec" "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/set" "github.com/spaolacci/murmur3" "go.uber.org/zap" diff --git a/executor/analyze.go b/executor/analyze.go index f6145495578f3..3ac7c0b230fb9 100755 --- a/executor/analyze.go +++ b/executor/analyze.go @@ -25,7 +25,6 @@ import ( "sync/atomic" "time" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/failpoint" "github.com/pingcap/kvproto/pkg/debugpb" @@ -48,6 +47,7 @@ import ( "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/codec" "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/ranger" "github.com/pingcap/tipb/go-tipb" "go.uber.org/zap" diff --git a/executor/builder.go b/executor/builder.go index b88e060689963..35ba5f5c7f13a 100644 --- a/executor/builder.go +++ b/executor/builder.go @@ -23,7 +23,6 @@ import ( "sync" "time" - "github.com/cznic/mathutil" "github.com/cznic/sortutil" "github.com/pingcap/errors" "github.com/pingcap/kvproto/pkg/diagnosticspb" @@ -47,6 +46,7 @@ import ( "github.com/pingcap/tidb/util/admin" "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/execdetails" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/ranger" "github.com/pingcap/tidb/util/stringutil" "github.com/pingcap/tidb/util/timeutil" diff --git a/executor/executor.go b/executor/executor.go index 521fb80a857c8..cae4bbb9da115 100644 --- a/executor/executor.go +++ b/executor/executor.go @@ -22,7 +22,6 @@ import ( "sync/atomic" "time" - "github.com/cznic/mathutil" "github.com/opentracing/opentracing-go" "github.com/pingcap/errors" "github.com/pingcap/parser/ast" @@ -50,6 +49,7 @@ import ( "github.com/pingcap/tidb/util/disk" "github.com/pingcap/tidb/util/execdetails" "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/memory" "github.com/pingcap/tidb/util/stringutil" "go.uber.org/zap" diff --git a/executor/executor_required_rows_test.go b/executor/executor_required_rows_test.go index a44dfe4f7035f..4c56cd43dd2fb 100644 --- a/executor/executor_required_rows_test.go +++ b/executor/executor_required_rows_test.go @@ -20,7 +20,6 @@ import ( "math/rand" "time" - "github.com/cznic/mathutil" . "github.com/pingcap/check" "github.com/pingcap/parser/ast" "github.com/pingcap/parser/mysql" @@ -33,6 +32,7 @@ import ( "github.com/pingcap/tidb/types/json" "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/disk" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/memory" "github.com/pingcap/tidb/util/mock" ) diff --git a/executor/explain.go b/executor/explain.go index 2e4c8103faa4c..42898da066dbe 100644 --- a/executor/explain.go +++ b/executor/explain.go @@ -16,9 +16,9 @@ package executor import ( "context" - "github.com/cznic/mathutil" "github.com/pingcap/tidb/planner/core" "github.com/pingcap/tidb/util/chunk" + "github.com/pingcap/tidb/util/mathutil" ) // ExplainExec represents an explain executor. diff --git a/executor/show.go b/executor/show.go index 17e755fc66d91..7109179b8b626 100644 --- a/executor/show.go +++ b/executor/show.go @@ -23,7 +23,6 @@ import ( "strings" "time" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/parser" "github.com/pingcap/parser/ast" @@ -56,6 +55,7 @@ import ( "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/format" "github.com/pingcap/tidb/util/hack" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/sqlexec" ) diff --git a/executor/split.go b/executor/split.go index a446f27e3ffa9..567be2c7e3023 100755 --- a/executor/split.go +++ b/executor/split.go @@ -21,7 +21,6 @@ import ( "math" "time" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/kvproto/pkg/metapb" "github.com/pingcap/parser/model" @@ -36,6 +35,7 @@ import ( "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/codec" "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/mathutil" "go.uber.org/zap" ) diff --git a/executor/table_readers_required_rows_test.go b/executor/table_readers_required_rows_test.go index 9e5aab6b53fa1..f00e7484a0809 100644 --- a/executor/table_readers_required_rows_test.go +++ b/executor/table_readers_required_rows_test.go @@ -18,7 +18,6 @@ import ( "fmt" "math/rand" - "github.com/cznic/mathutil" . "github.com/pingcap/check" "github.com/pingcap/parser/model" "github.com/pingcap/parser/mysql" @@ -31,6 +30,7 @@ import ( "github.com/pingcap/tidb/table/tables" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/chunk" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tipb/go-tipb" ) diff --git a/executor/window.go b/executor/window.go index f99df0afc0dd3..641859985cc2d 100644 --- a/executor/window.go +++ b/executor/window.go @@ -16,7 +16,6 @@ package executor import ( "context" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/parser/ast" "github.com/pingcap/tidb/executor/aggfuncs" @@ -24,6 +23,7 @@ import ( "github.com/pingcap/tidb/planner/core" "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/util/chunk" + "github.com/pingcap/tidb/util/mathutil" ) // WindowExec is the executor for window functions. diff --git a/expression/aggregation/avg.go b/expression/aggregation/avg.go index 7d861119e6568..ff9e55e689fbb 100644 --- a/expression/aggregation/avg.go +++ b/expression/aggregation/avg.go @@ -14,12 +14,12 @@ package aggregation import ( - "github.com/cznic/mathutil" "github.com/pingcap/parser/mysql" "github.com/pingcap/parser/terror" "github.com/pingcap/tidb/sessionctx/stmtctx" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/chunk" + "github.com/pingcap/tidb/util/mathutil" ) type avgFunction struct { diff --git a/expression/aggregation/base_func.go b/expression/aggregation/base_func.go index 6706eeea99d9d..5ed54f246bcf5 100644 --- a/expression/aggregation/base_func.go +++ b/expression/aggregation/base_func.go @@ -18,7 +18,6 @@ import ( "math" "strings" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/parser/ast" "github.com/pingcap/parser/charset" @@ -26,6 +25,7 @@ import ( "github.com/pingcap/tidb/expression" "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util/mathutil" ) // baseFuncDesc describes an function signature, only used in planner. diff --git a/expression/aggregation/concat.go b/expression/aggregation/concat.go index f456d659ae0d1..587842a9c0d5f 100644 --- a/expression/aggregation/concat.go +++ b/expression/aggregation/concat.go @@ -17,12 +17,12 @@ import ( "bytes" "fmt" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/tidb/expression" "github.com/pingcap/tidb/sessionctx/stmtctx" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/chunk" + "github.com/pingcap/tidb/util/mathutil" ) type concatFunction struct { diff --git a/expression/builtin_arithmetic.go b/expression/builtin_arithmetic.go index d7c36ef4bb660..7bace72920aad 100644 --- a/expression/builtin_arithmetic.go +++ b/expression/builtin_arithmetic.go @@ -17,12 +17,12 @@ import ( "fmt" "math" - "github.com/cznic/mathutil" "github.com/pingcap/parser/mysql" "github.com/pingcap/parser/terror" "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/chunk" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tipb/go-tipb" ) diff --git a/expression/builtin_control.go b/expression/builtin_control.go index 67e694f2af3ea..9c4ce12e4436c 100644 --- a/expression/builtin_control.go +++ b/expression/builtin_control.go @@ -14,13 +14,13 @@ package expression import ( - "github.com/cznic/mathutil" "github.com/pingcap/parser/charset" "github.com/pingcap/parser/mysql" "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/types/json" "github.com/pingcap/tidb/util/chunk" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tipb/go-tipb" ) diff --git a/expression/builtin_math.go b/expression/builtin_math.go index 9d0e39cc9ac55..3ec3cbb0232aa 100644 --- a/expression/builtin_math.go +++ b/expression/builtin_math.go @@ -27,11 +27,11 @@ import ( "sync" "time" - "github.com/cznic/mathutil" "github.com/pingcap/parser/mysql" "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/chunk" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tipb/go-tipb" ) diff --git a/expression/builtin_math_vec.go b/expression/builtin_math_vec.go index 5628b89bde10c..d781158c36bb0 100644 --- a/expression/builtin_math_vec.go +++ b/expression/builtin_math_vec.go @@ -21,10 +21,10 @@ import ( "strconv" "time" - "github.com/cznic/mathutil" "github.com/pingcap/parser/mysql" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/chunk" + "github.com/pingcap/tidb/util/mathutil" ) func (b *builtinLog1ArgSig) vecEvalReal(input *chunk.Chunk, result *chunk.Column) error { diff --git a/expression/builtin_time.go b/expression/builtin_time.go index 56aa5a6b77780..48a9997c1032c 100644 --- a/expression/builtin_time.go +++ b/expression/builtin_time.go @@ -25,7 +25,6 @@ import ( "strings" "time" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/parser/mysql" "github.com/pingcap/parser/terror" @@ -36,6 +35,7 @@ import ( "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tipb/go-tipb" "go.uber.org/zap" ) diff --git a/meta/autoid/autoid.go b/meta/autoid/autoid.go index 06e2df5ec6bed..684fe580a7b8e 100755 --- a/meta/autoid/autoid.go +++ b/meta/autoid/autoid.go @@ -19,7 +19,6 @@ import ( "sync" "time" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/failpoint" "github.com/pingcap/parser/model" @@ -27,6 +26,7 @@ import ( "github.com/pingcap/tidb/meta" "github.com/pingcap/tidb/metrics" "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/mathutil" "go.uber.org/zap" ) diff --git a/planner/core/logical_plan_builder.go b/planner/core/logical_plan_builder.go index 58812d5a3305f..4496dc401cf5e 100644 --- a/planner/core/logical_plan_builder.go +++ b/planner/core/logical_plan_builder.go @@ -23,7 +23,6 @@ import ( "strings" "unicode" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/parser" "github.com/pingcap/parser/ast" @@ -47,6 +46,7 @@ import ( "github.com/pingcap/tidb/types" driver "github.com/pingcap/tidb/types/parser_driver" "github.com/pingcap/tidb/util/chunk" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/plancodec" ) diff --git a/planner/core/memtable_predicate_extractor.go b/planner/core/memtable_predicate_extractor.go index 08da2dc0307d8..4d710181615c9 100644 --- a/planner/core/memtable_predicate_extractor.go +++ b/planner/core/memtable_predicate_extractor.go @@ -19,12 +19,12 @@ import ( "strings" "time" - "github.com/cznic/mathutil" "github.com/pingcap/parser/ast" "github.com/pingcap/parser/mysql" "github.com/pingcap/tidb/expression" "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/set" "github.com/pingcap/tidb/util/stringutil" ) diff --git a/planner/core/rule_topn_push_down.go b/planner/core/rule_topn_push_down.go index 854ddad90ad40..be6a7155f556d 100644 --- a/planner/core/rule_topn_push_down.go +++ b/planner/core/rule_topn_push_down.go @@ -16,8 +16,8 @@ package core import ( "context" - "github.com/cznic/mathutil" "github.com/pingcap/tidb/expression" + "github.com/pingcap/tidb/util/mathutil" ) // pushDownTopNOptimizer pushes down the topN or limit. In the future we will remove the limit from `requiredProperty` in CBO phase. diff --git a/statistics/cmsketch.go b/statistics/cmsketch.go index f97e0860426fa..8e4354e41b406 100644 --- a/statistics/cmsketch.go +++ b/statistics/cmsketch.go @@ -20,13 +20,13 @@ import ( "reflect" "sort" - "github.com/cznic/mathutil" "github.com/cznic/sortutil" "github.com/pingcap/errors" "github.com/pingcap/tidb/sessionctx/stmtctx" "github.com/pingcap/tidb/tablecodec" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/hack" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/sqlexec" "github.com/pingcap/tipb/go-tipb" "github.com/spaolacci/murmur3" diff --git a/statistics/estimate.go b/statistics/estimate.go index 952034186bdb8..93e5ce9439a61 100644 --- a/statistics/estimate.go +++ b/statistics/estimate.go @@ -16,7 +16,7 @@ package statistics import ( "math" - "github.com/cznic/mathutil" + "github.com/pingcap/tidb/util/mathutil" ) // calculateEstimateNDV calculates the estimate ndv of a sampled data from a multisize with size total. diff --git a/statistics/feedback.go b/statistics/feedback.go index cfc371947e23c..ddd861c1d69d8 100644 --- a/statistics/feedback.go +++ b/statistics/feedback.go @@ -21,7 +21,6 @@ import ( "sort" "time" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/log" "github.com/pingcap/parser/mysql" @@ -33,6 +32,7 @@ import ( "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/codec" "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/ranger" "go.uber.org/atomic" "go.uber.org/zap" diff --git a/statistics/handle/bootstrap.go b/statistics/handle/bootstrap.go index c690ea8ce1291..754ea8f62b6a2 100644 --- a/statistics/handle/bootstrap.go +++ b/statistics/handle/bootstrap.go @@ -17,7 +17,6 @@ import ( "context" "fmt" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/parser/model" "github.com/pingcap/parser/mysql" @@ -28,6 +27,7 @@ import ( "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/sqlexec" "go.uber.org/zap" ) diff --git a/statistics/handle/gc.go b/statistics/handle/gc.go index 40824a0d74294..51287f93a4f40 100644 --- a/statistics/handle/gc.go +++ b/statistics/handle/gc.go @@ -18,9 +18,9 @@ import ( "fmt" "time" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/tidb/infoschema" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/sqlexec" ) diff --git a/statistics/handle/update.go b/statistics/handle/update.go index 9b60683d39b08..6025887e31979 100644 --- a/statistics/handle/update.go +++ b/statistics/handle/update.go @@ -23,7 +23,6 @@ import ( "sync" "time" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/log" "github.com/pingcap/parser/model" @@ -39,6 +38,7 @@ import ( "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/codec" "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/ranger" "github.com/pingcap/tidb/util/sqlexec" "github.com/pingcap/tidb/util/timeutil" diff --git a/statistics/scalar.go b/statistics/scalar.go index dd54b0e6043a5..7e49bfe19419e 100644 --- a/statistics/scalar.go +++ b/statistics/scalar.go @@ -18,10 +18,10 @@ import ( "math" "time" - "github.com/cznic/mathutil" "github.com/pingcap/parser/mysql" "github.com/pingcap/tidb/sessionctx/stmtctx" "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util/mathutil" ) // calcFraction is used to calculate the fraction of the interval [lower, upper] that lies within the [lower, value] diff --git a/store/tikv/coprocessor.go b/store/tikv/coprocessor.go index f4ba544903f61..62d1916040ce6 100644 --- a/store/tikv/coprocessor.go +++ b/store/tikv/coprocessor.go @@ -26,7 +26,6 @@ import ( "time" "unsafe" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/failpoint" "github.com/pingcap/kvproto/pkg/coprocessor" @@ -39,6 +38,7 @@ import ( "github.com/pingcap/tidb/tablecodec" "github.com/pingcap/tidb/util/execdetails" "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/memory" "github.com/pingcap/tidb/util/ranger" "go.uber.org/zap" diff --git a/store/tikv/latch/latch.go b/store/tikv/latch/latch.go index 23f2b01c02da2..c9bbd223d03c8 100644 --- a/store/tikv/latch/latch.go +++ b/store/tikv/latch/latch.go @@ -20,8 +20,8 @@ import ( "sync" "time" - "github.com/cznic/mathutil" "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/mathutil" "github.com/spaolacci/murmur3" "go.uber.org/zap" ) diff --git a/types/datum_eval.go b/types/datum_eval.go index a2d4d744b4d60..c4784db26d08f 100644 --- a/types/datum_eval.go +++ b/types/datum_eval.go @@ -14,9 +14,9 @@ package types import ( - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/parser/opcode" + "github.com/pingcap/tidb/util/mathutil" ) // ComputePlus computes the result of a+b. diff --git a/util/chunk/chunk.go b/util/chunk/chunk.go index fbcb0ade9f5ae..4c5ce7fe98df9 100644 --- a/util/chunk/chunk.go +++ b/util/chunk/chunk.go @@ -17,10 +17,10 @@ import ( "reflect" "unsafe" - "github.com/cznic/mathutil" "github.com/pingcap/errors" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/types/json" + "github.com/pingcap/tidb/util/mathutil" ) var msgErrSelNotNil = "The selection vector of Chunk is not nil. Please file a bug to the TiDB Team" diff --git a/util/chunk/chunk_test.go b/util/chunk/chunk_test.go index 315c59a4be18f..b58b12ce4776e 100644 --- a/util/chunk/chunk_test.go +++ b/util/chunk/chunk_test.go @@ -24,12 +24,12 @@ import ( "time" "unsafe" - "github.com/cznic/mathutil" "github.com/pingcap/check" "github.com/pingcap/parser/mysql" "github.com/pingcap/tidb/sessionctx/stmtctx" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/types/json" + "github.com/pingcap/tidb/util/mathutil" ) func TestT(t *testing.T) { diff --git a/util/chunk/codec.go b/util/chunk/codec.go index 2858fb89b55a7..e57b3f9c6c7e4 100644 --- a/util/chunk/codec.go +++ b/util/chunk/codec.go @@ -18,9 +18,9 @@ import ( "reflect" "unsafe" - "github.com/cznic/mathutil" "github.com/pingcap/parser/mysql" "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util/mathutil" ) // Codec is used to: diff --git a/util/chunk/disk_test.go b/util/chunk/disk_test.go index 9f6e30ee74bd4..32a470cf9d05f 100644 --- a/util/chunk/disk_test.go +++ b/util/chunk/disk_test.go @@ -19,11 +19,11 @@ import ( "os" "testing" - "github.com/cznic/mathutil" "github.com/pingcap/check" "github.com/pingcap/parser/mysql" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/types/json" + "github.com/pingcap/tidb/util/mathutil" ) func initChunks(numChk, numRow int) ([]*Chunk, []*types.FieldType) { diff --git a/util/chunk/list_test.go b/util/chunk/list_test.go index b7d7780ffa2f2..377dffb5bef42 100644 --- a/util/chunk/list_test.go +++ b/util/chunk/list_test.go @@ -21,11 +21,11 @@ import ( "testing" "time" - "github.com/cznic/mathutil" "github.com/pingcap/check" "github.com/pingcap/parser/mysql" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/types/json" + "github.com/pingcap/tidb/util/mathutil" ) func (s *testChunkSuite) TestList(c *check.C) { diff --git a/util/mathutil/mathutil_darwin.go b/util/mathutil/mathutil_darwin.go new file mode 100644 index 0000000000000..6bd378e5e57d8 --- /dev/null +++ b/util/mathutil/mathutil_darwin.go @@ -0,0 +1,56 @@ +// Copyright 2018 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// See the License for the specific language governing permissions and +// limitations under the License. + +package mathutil + +// Reexport functions and variables from mathutil +import ( + "github.com/cznic/mathutil" +) + +const ( + // MaxInt presents the maximum number of Int + MaxInt = mathutil.MaxInt + // MinInt presents the minimum number of Int + MinInt = mathutil.MinInt +) + +// MaxUint64 returns the larger of a and b. +var MaxUint64 = mathutil.MaxUint64 + +// MinUint64 returns the smaller of a and b. +var MinUint64 = mathutil.MinUint64 + +// MaxUint32 returns the larger of a and b. +var MaxUint32 = mathutil.MaxUint32 + +// MinUint32 returns the smaller of a and b. +var MinUint32 = mathutil.MinUint32 + +// MaxInt64 returns the larger of a and b. +var MaxInt64 = mathutil.MaxInt64 + +// MinInt64 returns the smaller of a and b. +var MinInt64 = mathutil.MinInt64 + +// MaxInt8 returns the larger of a and b. +var MaxInt8 = mathutil.MaxInt8 + +// MinInt8 returns the smaller of a and b. +var MinInt8 = mathutil.MinInt8 + +// Max returns the larger of a and b. +var Max = mathutil.Max + +// Min returns the smaller of a and b. +var Min = mathutil.Min diff --git a/util/mathutil/mathutil_js.go b/util/mathutil/mathutil_js.go new file mode 100644 index 0000000000000..29952c0df4cb1 --- /dev/null +++ b/util/mathutil/mathutil_js.go @@ -0,0 +1,105 @@ +package mathutil + +// The maximum number uint can record +const ( + MaxUint = ^uint(0) + MinUint = 0 + MaxInt = int(MaxUint >> 1) + MinInt = -MaxInt - 1 +) + +// MaxUint64 returns the larger of a and b. +func MaxUint64(x, y uint64) uint64 { + if x > y { + return x + } + return y +} + +// MinUint64 returns the smaller of a and b. +func MinUint64(x, y uint64) uint64 { + if x < y { + return x + } + return y +} + +// MaxUint32 returns the larger of a and b. +func MaxUint32(x, y uint32) uint32 { + if x > y { + return x + } + return y +} + +// MinUint32 returns the smaller of a and b. +func MinUint32(x, y uint32) uint32 { + if x < y { + return x + } + return y +} + +// MaxInt64 returns the larger of a and b. +func MaxInt64(x, y int64) int64 { + if x > y { + return x + } + return y +} + +// MinInt64 returns the smaller of a and b. +func MinInt64(x, y int64) int64 { + if x < y { + return x + } + return y +} + +// MaxInt32 returns the larger of a and b. +func MaxInt32(x, y int32) int32 { + if x > y { + return x + } + return y +} + +// MinInt32 returns the smaller of a and b. +func MinInt32(x, y int32) int32 { + if x < y { + return x + } + return y +} + +// MaxInt8 returns the larger of a and b. +func MaxInt8(x, y int8) int8 { + if x > y { + return x + } + return y +} + +// MinInt8 returns the smaller of a and b. +func MinInt8(x, y int8) int8 { + if x < y { + return x + } + return y +} + +// Max returns the larger of a and b. +func Max(x, y int) int { + if x > y { + return x + } + return y +} + +// Min returns the larger of a and b. +func Min(x, y int) int { + if x < y { + return x + } + return y +} diff --git a/util/mathutil/mathutil_linux.go b/util/mathutil/mathutil_linux.go new file mode 100644 index 0000000000000..75fe4fb87812a --- /dev/null +++ b/util/mathutil/mathutil_linux.go @@ -0,0 +1,56 @@ +// Copyright 2018 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// See the License for the specific language governing permissions and +// limitations under the License. + +package mathutil + +// Reexport functions and variables from mathutil +import ( + "github.com/cznic/mathutil" +) + +const ( + // MaxInt presents the minimum number of Int + MaxInt = mathutil.MaxInt + // MinInt presents the minimum number of Int + MinInt = mathutil.MinInt +) + +// MaxUint64 returns the larger of a and b. +var MaxUint64 = mathutil.MaxUint64 + +// MinUint64 returns the smaller of a and b. +var MinUint64 = mathutil.MinUint64 + +// MaxUint32 returns the larger of a and b. +var MaxUint32 = mathutil.MaxUint32 + +// MinUint32 returns the smaller of a and b. +var MinUint32 = mathutil.MinUint32 + +// MaxInt64 returns the larger of a and b. +var MaxInt64 = mathutil.MaxInt64 + +// MinInt64 returns the smaller of a and b. +var MinInt64 = mathutil.MinInt64 + +// MaxInt8 returns the larger of a and b. +var MaxInt8 = mathutil.MaxInt8 + +// MinInt8 returns the smaller of a and b. +var MinInt8 = mathutil.MinInt8 + +// Max returns the larger of a and b. +var Max = mathutil.Max + +// Min returns the smaller of a and b. +var Min = mathutil.Min diff --git a/util/memory/tracker_test.go b/util/memory/tracker_test.go index 3256223029ceb..f5e7b59d315db 100644 --- a/util/memory/tracker_test.go +++ b/util/memory/tracker_test.go @@ -19,10 +19,10 @@ import ( "sync" "testing" - "github.com/cznic/mathutil" . "github.com/pingcap/check" "github.com/pingcap/parser/mysql" "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/stringutil" "github.com/pingcap/tidb/util/testleak" ) diff --git a/util/signal/signal_posix.go b/util/signal/signal_posix.go index 6e0be3d328138..83036c57999c2 100644 --- a/util/signal/signal_posix.go +++ b/util/signal/signal_posix.go @@ -26,7 +26,7 @@ import ( ) // SetupSignalHandler setup signal handler for TiDB Server -func SetupSignalHandler(shudownFunc func(bool)) { +func SetupSignalHandler(shutdownFunc func(bool)) { usrDefSignalChan := make(chan os.Signal, 1) signal.Notify(usrDefSignalChan, syscall.SIGUSR1) @@ -51,6 +51,6 @@ func SetupSignalHandler(shudownFunc func(bool)) { go func() { sig := <-closeSignalChan logutil.BgLogger().Info("got signal to exit", zap.Stringer("signal", sig)) - shudownFunc(sig == syscall.SIGQUIT) + shutdownFunc(sig == syscall.SIGQUIT) }() } diff --git a/util/signal/signal_wasm.go b/util/signal/signal_wasm.go new file mode 100644 index 0000000000000..a6bbddf439032 --- /dev/null +++ b/util/signal/signal_wasm.go @@ -0,0 +1,5 @@ +package signal + +// SetupSignalHandler setup signal handler for TiDB Server +func SetupSignalHandler(shutdownFunc func(bool)) { +} diff --git a/util/signal/signal_windows.go b/util/signal/signal_windows.go index 79134b17d219b..b93382f5ebaf7 100644 --- a/util/signal/signal_windows.go +++ b/util/signal/signal_windows.go @@ -24,7 +24,7 @@ import ( ) // SetupSignalHandler setup signal handler for TiDB Server -func SetupSignalHandler(shudownFunc func(bool)) { +func SetupSignalHandler(shutdownFunc func(bool)) { //todo deal with dump goroutine stack on windows closeSignalChan := make(chan os.Signal, 1) signal.Notify(closeSignalChan, @@ -36,6 +36,6 @@ func SetupSignalHandler(shudownFunc func(bool)) { go func() { sig := <-closeSignalChan logutil.BgLogger().Info("got signal to exit", zap.Stringer("signal", sig)) - shudownFunc(sig == syscall.SIGQUIT) + shutdownFunc(sig == syscall.SIGQUIT) }() }