Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

types: casting JSON literal null to number types should fail #30278

Merged
merged 5 commits into from
Dec 2, 2021

Conversation

djshow832
Copy link
Contributor

What problem does this PR solve?

Issue Number: close #25028

Problem Summary:
In MySQL, casting JSON literal null to int, bigint, float, decimal, year and other number types fails, but they all succeed in TiDB.

What is changed and how it works?

Return error when the source json type is null.

Check List

Tests

  • Unit test
  • Integration test
  • Manual test (add detailed scripts or steps below)
  • No code

Side effects

  • Performance regression: Consumes more CPU
  • Performance regression: Consumes more Memory
  • Breaking backward compatibility

Documentation

  • Affects user behaviors
  • Contains syntax changes
  • Contains variable changes
  • Contains experimental features
  • Changes MySQL compatibility

Release note

Fix the bug that casting JSON literal `null` to number types incorrectly succeeds.

@djshow832 djshow832 added the type/bugfix This PR fixes a bug. label Nov 30, 2021
@ti-chi-bot
Copy link
Member

ti-chi-bot commented Nov 30, 2021

[REVIEW NOTIFICATION]

This pull request has been approved by:

  • bb7133
  • zimulala

To complete the pull request process, please ask the reviewers in the list to review by filling /cc @reviewer in the comment.
After your PR has acquired the required number of LGTMs, you can assign this pull request to the committer in the list by filling /assign @committer in the comment to help you merge this pull request.

The full list of commands accepted by this bot can be found here.

Reviewer can indicate their review by submitting an approval review.
Reviewer can cancel approval by submitting a request changes review.

@ti-chi-bot ti-chi-bot added release-note Denotes a PR that will be considered when it comes time to generate release notes. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Nov 30, 2021
@djshow832 djshow832 added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Nov 30, 2021
@djshow832 djshow832 removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Nov 30, 2021
Copy link
Member

@bb7133 bb7133 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@ti-chi-bot ti-chi-bot added the status/LGT1 Indicates that a PR has LGTM 1. label Dec 2, 2021
Copy link
Contributor

@zimulala zimulala left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@ti-chi-bot ti-chi-bot added status/LGT2 Indicates that a PR has LGTM 2. and removed status/LGT1 Indicates that a PR has LGTM 1. labels Dec 2, 2021
@zimulala
Copy link
Contributor

zimulala commented Dec 2, 2021

/merge

@ti-chi-bot
Copy link
Member

This pull request has been accepted and is ready to merge.

Commit hash: 7bc06ad

@ti-chi-bot ti-chi-bot added the status/can-merge Indicates a PR has been approved by a committer. label Dec 2, 2021
@ti-chi-bot
Copy link
Member

@djshow832: Your PR was out of date, I have automatically updated it for you.

At the same time I will also trigger all tests for you:

/run-all-tests

If the CI test fails, you just re-trigger the test that failed and the bot will merge the PR for you after the CI passes.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the ti-community-infra/tichi repository.

@ti-chi-bot ti-chi-bot merged commit 8e2b962 into pingcap:master Dec 2, 2021
@djshow832 djshow832 deleted the convert_json_null branch December 2, 2021 07:19
fengou1 added a commit that referenced this pull request Dec 20, 2021
* executor: fix error msg of granting non-table level privilege (#29321)

* server: fix bug https://asktug.com/t/topic/213082/11 (#29577)

* *: replace compareDatum by compare (#30048)

* executor, store: replace compareDatum by compare (#30044)

* executor: migrate test-infra to testify for executor/write_test.go (#29953)

* planner: add sub plan info of shuffleReceiver when query explain analyze (#27992)

* expression: fix wrong flen for CastAsString funtion (#29563)

* br: migrate test-infra to testify for redact (#29747)

* ddl: stable create expression index test (#29990)

* *: replace compareDatum by compare (#30060)

* planner: fix the issue that binding cannot work when sql_select_limit is enabled  (#29789)

* br : migrate test-infra to testify for lightning/backend/tidb/tidb_test.go (#30042)

* *: fix unstable test in placement gc cases (#30045)

* lightning: let ignore columns be compatible with tidb backend (#27850)

* statistics: replace compareDatum by compare (#30052)

* br/pkg/mock: migrate test-infra to testify (#30034)

* ddl: forbit alter table cache in system db (#29998)

* topsql: distinguish the row and index operation type (#29044)

* ddl, util/codec: fix add index OOM and prevent panic in logging (#29925)

* br/pkg/utils: migrate tests to testify (#30032)

* expression, sessionctx: support rand_seed1 and rand_seed2 sysvar (#29936)

* *: track the memory usage of IndexJoin more accurate (#29068)

* br : migrate test-infra to testify for lightning/backend/importer (#30073)

* planner: fix panic when the join key is scalarFunction (#30002)

* ddl: fix none info of `alter table placement` (#29929)

* expression: cast charset according to the function's resulting charset (#29905)

* *: replace compareDatum by compare and fix compare (#30090)

* store/driver: Use BatchGet method supported in client-go. (#29860)

* privilege: disable role privilege when it is revoked from an user (#30028)

* partition: Show partition reformat (#29945)

* planner: fix the unstable test `TestPartitionWithVariedDatasources` (#30139)

* server: Add a `MockConn` to enable testing connections (#30119)

* *: skip unstable test (#29433)

* skip test

Signed-off-by: yisaer <disxiaofei@163.com>

* skip unstable test

Signed-off-by: yisaer <disxiaofei@163.com>

* table/tables: add `StateRemote` interface for the cached table (#29152)

* planner: rebuild range when the range is empty (#30003)

* planner: support dump file for trace plan statement (#30059)

* planner: make clear for MaybeOverOptimized4PlanCache (#29782)

* update: fix the updatable table name resolution in build update list (#30061)

* expression : prevent function DATE_ADD/SUB_STRING_XXX pushed down to TiFlash (#30154)

* *: remove unused profile memory tracker from global tracker (#30143)

* expression, util/codec: fix wrongly eliminated conditions caused by `HashCode()` collision (#30120)

* cmd, expression: fix convert binary string to gbk (#30004)

* sessionctx/variable: make lc_time_names read only (#30084)

* expression: fix misuse of datumsToConstants in GBK test (#30072)

* plugin: add more tests to cover audit logs (#30165)

* planner: consider prefix index column length in skyline pruning (#27527)

* server: support download optimize trace file (#30150)

* expression: add ut config (#30156)

* ddl/ddl_test.go: refactor testTableInfo to return error (#30069)

* *: skip a case in TestClusterTables/ForClusterServerInfo on mac M1 (#29933)

* planner: do not add extra limit when handle the execute stmt (#30152)

* ddl: migrate test-infra to testify for db_cache_test.go (#30117)

* tables: fix data race in mockStatRemoteData (#30180)

* server: Port missing in processlist (#30183)

* server: add build not race flag (#30184)

* unistore: get/batchGet/scan support read-through-lock (#29898)

* topsql: fix nil pointer panic in stmtctx (#30181)

* types: fix wrong str_to_date() microseconds with leading zeros are not converted correctly (#30122)

* dumpling: Add support for `Create Placement` (#29724)

* *: add cardinality estimation trace for `Selectivity` (#29883)

* *: replace compareDatum by compare and ignore warnings is collate is empty (#30105)

* planner: implement aggregation eliminate optimize trace (#30114)

* server: Combined fix for authentication issues (#29738)

* executer: fix data race (#30186)

* dumpling : add a function for the variable call of dm (#30033)

* planner: revise optimize trace logic (#30163)

* statistics: fix unstable test case TestTraceCE (#30235)

* lightning: avoid retry write rows and record duplicate rows in tidb backend (#30179)

* executor: send a task with error to the resultCh when panic happen (#30214)

* docs: update placement policy limits (#30202)

* expression: Support GBK for builtin function AesEncrypt. (#29946)

* executor: remove useless log (#30248)

* docs: Update 2021-09-29-secure-bootstrap.md (#30243)

* executor: fix unstable test of topsql (#30257)

* copr: add paging API for streaming-like process (#29612)

* *: forbid set TiFlash Replica for a table with unsupport charset (#30162)

* privilege, session, server: consistently map user login to identity (#30204)

* expression: fix flen for timestamp_add (#30213)

* types: check values equals to NaN or Inf when convert to float (#30148)

* parser: respect TiDB comment when DROP INDEX IF EXISTS (#30173)

* ddl: disallow change columns from zero int to time (#25728)

* * : statement summary should know the slow write is blocked on read lock lease (#30166)

* planner: regard NULL as point when accessing composite index (#30244)

* planner: Add trace for proj elimination rule (#30275)

* privilege,session: Match loopback connections to 'localhost' accounts (#29995) (#30189)

* ddltest: refactor logutil.InitLogger in ddltest to avoid data race (#30299)

* load data: fix bug if load data with long content (#29222)

* topsql: reduce data race of sql digest (#30296)

* ddl: Do not consider the clustered index when checking the length of the secondary index (#29660)

* *: update client-go to use resolveForRead (#30314)

* ddl/ddl_algorithm_test.go: migrate test-infra to testify (#30268)

* store: Add metrics for pd api call time (#30062)

* *: replace compareDatum by compare and fix wrong optimize order by (#30273)

* metrics/grafana: fix display for 'Start TSO Wait Duration' panel (#30311)

* ddl: migrate test-infra to testify for ddl/options_test.go (#30269)

* planner: fix inconsistent schema between UnionAll and child operator (#30231)

* test: fix incorrect regexp pattern during migrating test (#30080)

* br: add more precise check for lock file (#30218)

* executor: replace should not change other rows when auto ID is out of range (#30301)

* tidb-server: return 1 while failing to set cpu affinity (#30197)

* executor: migrate test-infra to testify for executor/index_lookup_join_test.go (#30260)

* expression: fix wrong result of greatest/least(mixed unsigned/signed int) (#30121)

* types: casting JSON literal `null` to number types should fail (#30278)

* executor: fix data race in oomtest (#30339)

* parser: fix missing charset and collation of handle column (#30320)

* expression: don't append null when param for char() is null (#30236)

* *: add warn log for stale read (#30340)

* parser:  support multi bracket for subquery (#29656)

* session, sessionctx/variable: fix validation recursion bug (#30293)

* planner: Add trace for agg pushdown rule (#30262)

* planner/core: fix a data race when building plan for cached table (#30355)

* executor: avoid sum from avg overflow (#30010)

* config: make EnableSlowLog atomic (#30346)

* *: fix goroutine leak in ddl intergration test (#30369)

* executor: make projection executor unparallel for insert/update/delete (#30290)

* executor, util: reset offsets and nullBitMap for MutRow when setting new values (#30265)

* expression: fix tidb can't alter table from other-type with null value to timestamp with NOT NULL attribute (#29664)

* dumpling: fix default collation with upstream when dump database and table (#30292)

* ddl: fix the enum default value by triming trailing space (#30356)

* expression: migrate test-infra to testify for flag_simplify_test.go (#30407)

* server: refine code logic in handleDownloadFile (#30422)

* refine logic

Signed-off-by: yisaer <disxiaofei@163.com>

* fix

Signed-off-by: yisaer <disxiaofei@163.com>

* ddl: migrate test-infra to testify for ddl/table_test.go (#30267)

* ddl: handle the error from `addBatchDDLJobs()` correctly (#30401)

* br: fix the integration tests (#30423)

* util, cmd: remove unused filesort (#30438)

* *: update client-go for small backoff time (#30436)

* server: Fix unstable tests with FakeAuthSwitch (#30287)

* dumpling: fix dump failed when sequence exists (#30164)

* *: replace compareDatum by compare (#30421)

* lightning: fix gcs max key limit (#30393)

* expression, parser: add built-in func is_uuid (#30318)

* expression: migrate test-infra to testify for constant_fold_test.go (#30424)

* executor: fix pipelined window invalid memory address (#30418)

* makefile: add gotestsum for verify ci (#29848)

* server: close sql rows to fix unstable test (#30306)

* Makefile: add coverage record for BR and Dumpling (#30457)

* executor: track the mem usage of IndexMergeReader (#30210)

* infosync: close body when ReadAll encounters error (#30462)

* planner: show accessed partition when explain mpp query over partition table (#30367)

* *: Fix use of user identity in SHOW GRANTS + error messages (#30294)

* ddl: add not null flag for auto_increment column  (#30477)

* expression: make some unstable test serial (#30323)

* expression: migrate test-infra to testify for constant_propagation_test.go (#30430)

* executor: stable test TestSetDDLReorgBatchSize and TestSetDDLReorgWorkerCnt (#30480)

* statistics, util/ranger: add cardinality estimation trace for `GetRowCountBy...` (#30321)

* *: skip mysql client goroutine leak detection in integration ddl (#30467)

* executor,util: write slow query to slow log no matter what log level (#30461)

* executor: enable index_merge used in transaction. (#29875)

* logutil: add testcase for SlowQueryLogger.MaxDays/MaxSize/MaxBackups (#30316)

* expression: fix data race in builtin_other_vec_generated_test.go (#30503)

* expression: fix data race in the collationInfo (#30490)

* planner/core, session: fix error message of wrong variable scope (#30510)

* lightning: support Re/ReregisterMySQL by different tls name (#30463)

* executor: TestBatchGetandPointGetwithHashPartition test typo (#29669) (#29671)

* mockstore: improve log to avoid panic for nil pointer (#30513)

* *: replace compareDatum by compare, PR 10 (#30456)

* planner: Disable dynamic partition prune mode for all non-autocommit (#27532) (#30505)

* expression: change the log level of an confusing log from warn to debug (#30484)

* br: Check crypter.key valid before backup (#29991)

* *: replace compareDatum by compare, PR 11 (#30465)

* dumpling: fix default column collation with upstream when dump table (#30531)

* server: fix prepared cursor select (#30285)

* executor: HashJoinExec checks the buildError even if the probeSide is empty (#30471)

* parser, expression: follow mysql, increase interval precedence (#30528)

* makefile: set timeout 25m for make race (#30555)

* planner: fix the unstable test TestAnalyzeGlobalStatsWithOpts/2 (#30576)

* expression,types: Adjusts UNIX_TIMESTAMP() for non-existing DST values (#28739) (#30405)

* br: add res.Body.close to avoid leak (#30545)

* lightning: add back integration test lightning_error_summary (#30547)

* sessionctx/variable: small refactor (split large file) (#30511)

* ddl: let `admin cancel ddl jobs` run in a new transaction (#30549)

* *: Retry when placement PutBundles failed (#30590)

* dumpling: delete unit test in github actions (#30562)

* *: support trace plan target='estimation' statement (#30491)

* expression: migrate test-infra to testify for integration_test.go (#30548)

* planner: support trace for min/max eliminate (#30441)

* support min/max trace

Signed-off-by: yisaer <disxiaofei@163.com>

* address the comment

Signed-off-by: yisaer <disxiaofei@163.com>

Co-authored-by: Ti Chi Robot <ti-community-prow-bot@tidb.io>

* br: remove cdclog in br (#30573)

* *: show cmd to check if all needed histograms are loaded (#29672)

* expression: clone repertoire when clone the scalar function (#30602)

* *: use the real StateRemote interface implementation for cached table (#30066)

* *: query failed after add index / timestamp out-of-range (#28424) (#29323)

* planner: implement collecting predicate columns from logical plan (#29878)

* *: show PK name when decoding the clustered index row key (#30623)

* ddl/callback_test.go: migrate test-infra to testify (#30317)

* *: Rename some names of placement ddl operation (#30622)

* executor: fix data race in the index_lookup_hash_join (#30619)

* ddl: remove unnecessary locking when adding an index (#29772)

* server: try to make `TidbTestSuite` more stable (#30643)

* *: Add some PD tests for placement and fix some bug found (#30621)

* *: migrate sync.WaitGroup to util.WaitGroupWrapper (#30644)

* planner: add trace for join eliminate rule (#30343)

* executor: migrate test-infra to testify for executor/shuffle_test.go (#30514)

* planner: make (*AccessPath).OnlyPointRange more succinct (#30520)

* planner: add trace for join reorder (#30394)

* executor: migrate test-infra to testify for executor/union_scan_test.go (#30525)

* expression: make cast return error if cast binary literal to another character set (#30537)

* *: update tikv client (#30670)

* *: update sysutil in go.mod to fix panic when search log (#30523)

* topsql: shouldn't evict the SQL meta, since the evicted SQL can be appear on Other components (TiKV) TopN records (#27050)

* testify: migrate test-infra to testify for analyze_test.go (#30640)

* util: replace compareDatum by compare,  point part (#30575)

* test: make all the tests run in serial (#30692)

* statistics: add mutex for Handle.globalMap and Handle.feedback (#30550)

* executor: fix regular expression in json so that it could match identifer start with '$' (#29750)

* util/testkit/testkit.go: fix typo (#30638)

* planner: Introduce a new global variable to control the historical statistics feature (#30646)

* topsql: introduce datasink interface (#30662)

* planner: unify the argument of stats functions to use SessionCtx instead of StatementContext (#30668)

* metrics: fix the Max SafeTS Gap metrics (#30689)

* lightning: Add source dir existence check for s3 (#30674)

* golangci-lint: support durationcheck (#30027)

* executor: fix data race on IndexHashJoin.cancelFunc (#30701)

* sessionctx/variable: change tidb_store_limit to global only (#30522)

* statistics: remove reassignment of Handle.pool in NewHandle (#30675)

* br: fix some unstable unit test cases. (#30716)

* bindinfo: fix the comment typo (#30616)

* server: support decoding prepared string args to character_set_client (#30723)

* expression: fix enum type join binary get wrong result (#30445)

* cmd/explaintest: fix wrong result comparison for explain test (#30717)

* parallel create tables in br

* metrics: fix copr-cache metrics (#30712)

* test: merge executor's serial tests to other tests (#30711)

* statistics: avoid deadlock when create/drop extended stats and analyze at the same time (#30566)

* ddl: add batch create table api

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: add unit tests

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: fix fmt

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: typo

Co-authored-by: Arenatlx <ailinsilence4@gmail.com>

* ddl: fix tests

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: rename to BatchCreateTableWithInfo

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: trace the error

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: comments

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: cancle the job right

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: cancel the job right 2

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: report error if entry too large

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: report error when table is duplicated

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: go fmt

Signed-off-by: xhe <xw897002528@gmail.com>

* infoschema: improve batch memory perf

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: retain ID

Signed-off-by: xhe <xw897002528@gmail.com>

* sessionctx: fix the value of analyze_version when upgrading 4.x to 5.… (#30743)

* ddl: reduce log frequency

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: fix tests

Signed-off-by: xhe <xw897002528@gmail.com>

* server: disable socket listener for `basicHTTPHandlerTestSuite` (#30680)

* planner: support the plan cache aware of bindings (#30169)

* planner: fix early set of plan's statisticsTable (#30754)

* *: implement renew write lock lease for cached table (#30206)

* *: Modify placement rule index to reserve some indexes for future work (#30737)

* executor: add an unit test case for unreasonable invoking Close (#30696)

* planner: fix wrong subquery's coercibility  (#30750)

Co-authored-by: unconsolable <chenzhipeng2012@gmail.com>
Co-authored-by: zhangguangchao <1614439+zgcbj@users.noreply.github.com>
Co-authored-by: wjHuang <huangwenjun1997@gmail.com>
Co-authored-by: Weizhen Wang <wangweizhen@pingcap.com>
Co-authored-by: mmyj <mayj.hello@gmail.com>
Co-authored-by: Shenghui Wu <793703860@qq.com>
Co-authored-by: tison <wander4096@gmail.com>
Co-authored-by: Yuanjia Zhang <zhangyuanjia@pingcap.com>
Co-authored-by: xiaolunzhou <51695571+JayL-zxl@users.noreply.github.com>
Co-authored-by: 王超 <cclcwangchao@hotmail.com>
Co-authored-by: glorv <glorvs@163.com>
Co-authored-by: sylzd <liuzidong@xiaomi.com>
Co-authored-by: Yexiang Zhang <mornyx.z@gmail.com>
Co-authored-by: tangenta <tangenta@126.com>
Co-authored-by: Yujie Xia <xiayjchn@gmail.com>
Co-authored-by: Hangjie Mo <mohangjie1995@gmail.com>
Co-authored-by: HuaiyuXu <391585975@qq.com>
Co-authored-by: Song Gao <disxiaofei@163.com>
Co-authored-by: xiongjiwei <xiongjiwei1996@outlook.com>
Co-authored-by: WangDeng <DWang_Slam@163.com>
Co-authored-by: Mattias Jonsson <mjonss@users.noreply.github.com>
Co-authored-by: djshow832 <zhangming@pingcap.com>
Co-authored-by: tiancaiamao <tiancaiamao@gmail.com>
Co-authored-by: Chengpeng Yan <41809508+Reminiscent@users.noreply.github.com>
Co-authored-by: Arenatlx <314806019@qq.com>
Co-authored-by: Meng Xin <tregoldmeng@gmail.com>
Co-authored-by: Zhou Kunqin <25057648+time-and-fate@users.noreply.github.com>
Co-authored-by: Youra Cho <espresso98@users.noreply.github.com>
Co-authored-by: Yifan Xu <30385241+xuyifangreeneyes@users.noreply.github.com>
Co-authored-by: José Clovis Ramírez de la Rosa <clovis-@live.com>
Co-authored-by: Xiang Zhang <angwerzx@126.com>
Co-authored-by: Lei Zhao <zlwgx1023@gmail.com>
Co-authored-by: Daniël van Eeden <git@myname.nl>
Co-authored-by: docsir <73268456+docsir@users.noreply.github.com>
Co-authored-by: Morgan Tocker <tocker@gmail.com>
Co-authored-by: jakevin <30525741+jackwener@users.noreply.github.com>
Co-authored-by: 姬小野 <38575466+JameyWoo@users.noreply.github.com>
Co-authored-by: you06 <you1474600@gmail.com>
Co-authored-by: lance6716 <lance6716@gmail.com>
Co-authored-by: TonsnakeLin <87681388+TonsnakeLin@users.noreply.github.com>
Co-authored-by: imentu <imentu@foxmail.com>
Co-authored-by: Alkaid <38248129+jyz0309@users.noreply.github.com>
Co-authored-by: lvtu <37565148+tongtongyin@users.noreply.github.com>
Co-authored-by: 3pointer <luancheng@pingcap.com>
Co-authored-by: Zhuhe Fang <fzhedu@gmail.com>
Co-authored-by: WizardXiao <89761062+WizardXiao@users.noreply.github.com>
Co-authored-by: Jianjun Liao <36503113+Leavrth@users.noreply.github.com>
Co-authored-by: guo-shaoge <shaoge1994@163.com>
Co-authored-by: Ryan Leung <rleungx@gmail.com>
Co-authored-by: xufei <xufei@pingcap.com>
Co-authored-by: Ehco <zh19960202@gmail.com>
Co-authored-by: Zak Zhao <57036248+joccau@users.noreply.github.com>
Co-authored-by: xhe <xw897002528@gmail.com>
Co-authored-by: Chunzhu Li <lichunzhu@stu.xjtu.edu.cn>
Co-authored-by: Ti Chi Robot <ti-community-prow-bot@tidb.io>
Co-authored-by: Xiaoju Wu <wuxiaoju@pingcap.com>
Co-authored-by: JmPotato <ghzpotato@gmail.com>
Co-authored-by: Zach <51114270+zach030@users.noreply.github.com>
Co-authored-by: bb7133 <bb7133@gmail.com>
Co-authored-by: crazycs <crazycs520@gmail.com>
Co-authored-by: znhh6018 <44599853+znhh6018@users.noreply.github.com>
Co-authored-by: eddie lin <eddievim@foxmail.com>
Co-authored-by: dongjunduo <andj4cn@gmail.com>
Co-authored-by: Zhenchi <zhongzc_arch@outlook.com>
Co-authored-by: wangggong <793160615@qq.com>
Co-authored-by: zhangjinpeng1987 <zhangjinpeng@pingcap.com>
Co-authored-by: Jack Yu <yusp@pingcap.com>
Co-authored-by: Arenatlx <ailinsilence4@gmail.com>
Co-authored-by: Yiding Cui <winoros@gmail.com>
fengou1 added a commit that referenced this pull request Dec 26, 2021
* executor: migrate test-infra to testify for executor/show_stats_test.go (#30000)

* ddl/table_split_test.go: migrate test-infra to testify (#29960)

* *: fix unstable test caused by TestRandomPanicAggConsume (#30035)

* ddl/ddl_test.go: refactor testSchemaInfo to return error #29964 (#30008)

* executor: remove useless parameter (#30043)

* executor: fix error msg of granting non-table level privilege (#29321)

* server: fix bug https://asktug.com/t/topic/213082/11 (#29577)

* *: replace compareDatum by compare (#30048)

* executor, store: replace compareDatum by compare (#30044)

* executor: migrate test-infra to testify for executor/write_test.go (#29953)

* planner: add sub plan info of shuffleReceiver when query explain analyze (#27992)

* expression: fix wrong flen for CastAsString funtion (#29563)

* br: migrate test-infra to testify for redact (#29747)

* ddl: stable create expression index test (#29990)

* *: replace compareDatum by compare (#30060)

* planner: fix the issue that binding cannot work when sql_select_limit is enabled  (#29789)

* br : migrate test-infra to testify for lightning/backend/tidb/tidb_test.go (#30042)

* *: fix unstable test in placement gc cases (#30045)

* lightning: let ignore columns be compatible with tidb backend (#27850)

* statistics: replace compareDatum by compare (#30052)

* br/pkg/mock: migrate test-infra to testify (#30034)

* ddl: forbit alter table cache in system db (#29998)

* topsql: distinguish the row and index operation type (#29044)

* ddl, util/codec: fix add index OOM and prevent panic in logging (#29925)

* br/pkg/utils: migrate tests to testify (#30032)

* expression, sessionctx: support rand_seed1 and rand_seed2 sysvar (#29936)

* *: track the memory usage of IndexJoin more accurate (#29068)

* br : migrate test-infra to testify for lightning/backend/importer (#30073)

* planner: fix panic when the join key is scalarFunction (#30002)

* ddl: fix none info of `alter table placement` (#29929)

* expression: cast charset according to the function's resulting charset (#29905)

* *: replace compareDatum by compare and fix compare (#30090)

* store/driver: Use BatchGet method supported in client-go. (#29860)

* privilege: disable role privilege when it is revoked from an user (#30028)

* partition: Show partition reformat (#29945)

* planner: fix the unstable test `TestPartitionWithVariedDatasources` (#30139)

* server: Add a `MockConn` to enable testing connections (#30119)

* *: skip unstable test (#29433)

* skip test

Signed-off-by: yisaer <disxiaofei@163.com>

* skip unstable test

Signed-off-by: yisaer <disxiaofei@163.com>

* table/tables: add `StateRemote` interface for the cached table (#29152)

* planner: rebuild range when the range is empty (#30003)

* planner: support dump file for trace plan statement (#30059)

* planner: make clear for MaybeOverOptimized4PlanCache (#29782)

* update: fix the updatable table name resolution in build update list (#30061)

* expression : prevent function DATE_ADD/SUB_STRING_XXX pushed down to TiFlash (#30154)

* *: remove unused profile memory tracker from global tracker (#30143)

* expression, util/codec: fix wrongly eliminated conditions caused by `HashCode()` collision (#30120)

* cmd, expression: fix convert binary string to gbk (#30004)

* sessionctx/variable: make lc_time_names read only (#30084)

* expression: fix misuse of datumsToConstants in GBK test (#30072)

* plugin: add more tests to cover audit logs (#30165)

* planner: consider prefix index column length in skyline pruning (#27527)

* server: support download optimize trace file (#30150)

* expression: add ut config (#30156)

* ddl/ddl_test.go: refactor testTableInfo to return error (#30069)

* *: skip a case in TestClusterTables/ForClusterServerInfo on mac M1 (#29933)

* planner: do not add extra limit when handle the execute stmt (#30152)

* ddl: migrate test-infra to testify for db_cache_test.go (#30117)

* tables: fix data race in mockStatRemoteData (#30180)

* server: Port missing in processlist (#30183)

* server: add build not race flag (#30184)

* unistore: get/batchGet/scan support read-through-lock (#29898)

* topsql: fix nil pointer panic in stmtctx (#30181)

* types: fix wrong str_to_date() microseconds with leading zeros are not converted correctly (#30122)

* dumpling: Add support for `Create Placement` (#29724)

* *: add cardinality estimation trace for `Selectivity` (#29883)

* *: replace compareDatum by compare and ignore warnings is collate is empty (#30105)

* planner: implement aggregation eliminate optimize trace (#30114)

* server: Combined fix for authentication issues (#29738)

* executer: fix data race (#30186)

* dumpling : add a function for the variable call of dm (#30033)

* planner: revise optimize trace logic (#30163)

* statistics: fix unstable test case TestTraceCE (#30235)

* lightning: avoid retry write rows and record duplicate rows in tidb backend (#30179)

* executor: send a task with error to the resultCh when panic happen (#30214)

* docs: update placement policy limits (#30202)

* expression: Support GBK for builtin function AesEncrypt. (#29946)

* executor: remove useless log (#30248)

* docs: Update 2021-09-29-secure-bootstrap.md (#30243)

* executor: fix unstable test of topsql (#30257)

* copr: add paging API for streaming-like process (#29612)

* *: forbid set TiFlash Replica for a table with unsupport charset (#30162)

* privilege, session, server: consistently map user login to identity (#30204)

* expression: fix flen for timestamp_add (#30213)

* types: check values equals to NaN or Inf when convert to float (#30148)

* parser: respect TiDB comment when DROP INDEX IF EXISTS (#30173)

* ddl: disallow change columns from zero int to time (#25728)

* * : statement summary should know the slow write is blocked on read lock lease (#30166)

* planner: regard NULL as point when accessing composite index (#30244)

* planner: Add trace for proj elimination rule (#30275)

* privilege,session: Match loopback connections to 'localhost' accounts (#29995) (#30189)

* ddltest: refactor logutil.InitLogger in ddltest to avoid data race (#30299)

* load data: fix bug if load data with long content (#29222)

* topsql: reduce data race of sql digest (#30296)

* ddl: Do not consider the clustered index when checking the length of the secondary index (#29660)

* *: update client-go to use resolveForRead (#30314)

* ddl/ddl_algorithm_test.go: migrate test-infra to testify (#30268)

* store: Add metrics for pd api call time (#30062)

* *: replace compareDatum by compare and fix wrong optimize order by (#30273)

* metrics/grafana: fix display for 'Start TSO Wait Duration' panel (#30311)

* ddl: migrate test-infra to testify for ddl/options_test.go (#30269)

* planner: fix inconsistent schema between UnionAll and child operator (#30231)

* test: fix incorrect regexp pattern during migrating test (#30080)

* br: add more precise check for lock file (#30218)

* executor: replace should not change other rows when auto ID is out of range (#30301)

* tidb-server: return 1 while failing to set cpu affinity (#30197)

* executor: migrate test-infra to testify for executor/index_lookup_join_test.go (#30260)

* expression: fix wrong result of greatest/least(mixed unsigned/signed int) (#30121)

* types: casting JSON literal `null` to number types should fail (#30278)

* executor: fix data race in oomtest (#30339)

* parser: fix missing charset and collation of handle column (#30320)

* expression: don't append null when param for char() is null (#30236)

* *: add warn log for stale read (#30340)

* parser:  support multi bracket for subquery (#29656)

* session, sessionctx/variable: fix validation recursion bug (#30293)

* planner: Add trace for agg pushdown rule (#30262)

* planner/core: fix a data race when building plan for cached table (#30355)

* executor: avoid sum from avg overflow (#30010)

* config: make EnableSlowLog atomic (#30346)

* *: fix goroutine leak in ddl intergration test (#30369)

* executor: make projection executor unparallel for insert/update/delete (#30290)

* executor, util: reset offsets and nullBitMap for MutRow when setting new values (#30265)

* expression: fix tidb can't alter table from other-type with null value to timestamp with NOT NULL attribute (#29664)

* dumpling: fix default collation with upstream when dump database and table (#30292)

* ddl: fix the enum default value by triming trailing space (#30356)

* expression: migrate test-infra to testify for flag_simplify_test.go (#30407)

* server: refine code logic in handleDownloadFile (#30422)

* refine logic

Signed-off-by: yisaer <disxiaofei@163.com>

* fix

Signed-off-by: yisaer <disxiaofei@163.com>

* ddl: migrate test-infra to testify for ddl/table_test.go (#30267)

* ddl: handle the error from `addBatchDDLJobs()` correctly (#30401)

* br: fix the integration tests (#30423)

* util, cmd: remove unused filesort (#30438)

* *: update client-go for small backoff time (#30436)

* server: Fix unstable tests with FakeAuthSwitch (#30287)

* dumpling: fix dump failed when sequence exists (#30164)

* *: replace compareDatum by compare (#30421)

* lightning: fix gcs max key limit (#30393)

* expression, parser: add built-in func is_uuid (#30318)

* expression: migrate test-infra to testify for constant_fold_test.go (#30424)

* executor: fix pipelined window invalid memory address (#30418)

* makefile: add gotestsum for verify ci (#29848)

* server: close sql rows to fix unstable test (#30306)

* Makefile: add coverage record for BR and Dumpling (#30457)

* executor: track the mem usage of IndexMergeReader (#30210)

* infosync: close body when ReadAll encounters error (#30462)

* planner: show accessed partition when explain mpp query over partition table (#30367)

* *: Fix use of user identity in SHOW GRANTS + error messages (#30294)

* ddl: add not null flag for auto_increment column  (#30477)

* expression: make some unstable test serial (#30323)

* expression: migrate test-infra to testify for constant_propagation_test.go (#30430)

* executor: stable test TestSetDDLReorgBatchSize and TestSetDDLReorgWorkerCnt (#30480)

* statistics, util/ranger: add cardinality estimation trace for `GetRowCountBy...` (#30321)

* *: skip mysql client goroutine leak detection in integration ddl (#30467)

* executor,util: write slow query to slow log no matter what log level (#30461)

* executor: enable index_merge used in transaction. (#29875)

* logutil: add testcase for SlowQueryLogger.MaxDays/MaxSize/MaxBackups (#30316)

* expression: fix data race in builtin_other_vec_generated_test.go (#30503)

* expression: fix data race in the collationInfo (#30490)

* planner/core, session: fix error message of wrong variable scope (#30510)

* lightning: support Re/ReregisterMySQL by different tls name (#30463)

* executor: TestBatchGetandPointGetwithHashPartition test typo (#29669) (#29671)

* mockstore: improve log to avoid panic for nil pointer (#30513)

* *: replace compareDatum by compare, PR 10 (#30456)

* planner: Disable dynamic partition prune mode for all non-autocommit (#27532) (#30505)

* expression: change the log level of an confusing log from warn to debug (#30484)

* br: Check crypter.key valid before backup (#29991)

* *: replace compareDatum by compare, PR 11 (#30465)

* dumpling: fix default column collation with upstream when dump table (#30531)

* server: fix prepared cursor select (#30285)

* executor: HashJoinExec checks the buildError even if the probeSide is empty (#30471)

* parser, expression: follow mysql, increase interval precedence (#30528)

* makefile: set timeout 25m for make race (#30555)

* planner: fix the unstable test TestAnalyzeGlobalStatsWithOpts/2 (#30576)

* expression,types: Adjusts UNIX_TIMESTAMP() for non-existing DST values (#28739) (#30405)

* br: add res.Body.close to avoid leak (#30545)

* lightning: add back integration test lightning_error_summary (#30547)

* sessionctx/variable: small refactor (split large file) (#30511)

* ddl: let `admin cancel ddl jobs` run in a new transaction (#30549)

* *: Retry when placement PutBundles failed (#30590)

* dumpling: delete unit test in github actions (#30562)

* *: support trace plan target='estimation' statement (#30491)

* expression: migrate test-infra to testify for integration_test.go (#30548)

* planner: support trace for min/max eliminate (#30441)

* support min/max trace

Signed-off-by: yisaer <disxiaofei@163.com>

* address the comment

Signed-off-by: yisaer <disxiaofei@163.com>

Co-authored-by: Ti Chi Robot <ti-community-prow-bot@tidb.io>

* br: remove cdclog in br (#30573)

* *: show cmd to check if all needed histograms are loaded (#29672)

* expression: clone repertoire when clone the scalar function (#30602)

* *: use the real StateRemote interface implementation for cached table (#30066)

* *: query failed after add index / timestamp out-of-range (#28424) (#29323)

* planner: implement collecting predicate columns from logical plan (#29878)

* *: show PK name when decoding the clustered index row key (#30623)

* ddl/callback_test.go: migrate test-infra to testify (#30317)

* *: Rename some names of placement ddl operation (#30622)

* executor: fix data race in the index_lookup_hash_join (#30619)

* ddl: remove unnecessary locking when adding an index (#29772)

* server: try to make `TidbTestSuite` more stable (#30643)

* *: Add some PD tests for placement and fix some bug found (#30621)

* *: migrate sync.WaitGroup to util.WaitGroupWrapper (#30644)

* planner: add trace for join eliminate rule (#30343)

* executor: migrate test-infra to testify for executor/shuffle_test.go (#30514)

* planner: make (*AccessPath).OnlyPointRange more succinct (#30520)

* planner: add trace for join reorder (#30394)

* executor: migrate test-infra to testify for executor/union_scan_test.go (#30525)

* expression: make cast return error if cast binary literal to another character set (#30537)

* *: update tikv client (#30670)

* *: update sysutil in go.mod to fix panic when search log (#30523)

* topsql: shouldn't evict the SQL meta, since the evicted SQL can be appear on Other components (TiKV) TopN records (#27050)

* testify: migrate test-infra to testify for analyze_test.go (#30640)

* util: replace compareDatum by compare,  point part (#30575)

* test: make all the tests run in serial (#30692)

* statistics: add mutex for Handle.globalMap and Handle.feedback (#30550)

* executor: fix regular expression in json so that it could match identifer start with '$' (#29750)

* util/testkit/testkit.go: fix typo (#30638)

* planner: Introduce a new global variable to control the historical statistics feature (#30646)

* topsql: introduce datasink interface (#30662)

* planner: unify the argument of stats functions to use SessionCtx instead of StatementContext (#30668)

* metrics: fix the Max SafeTS Gap metrics (#30689)

* lightning: Add source dir existence check for s3 (#30674)

* golangci-lint: support durationcheck (#30027)

* executor: fix data race on IndexHashJoin.cancelFunc (#30701)

* sessionctx/variable: change tidb_store_limit to global only (#30522)

* statistics: remove reassignment of Handle.pool in NewHandle (#30675)

* br: fix some unstable unit test cases. (#30716)

* bindinfo: fix the comment typo (#30616)

* server: support decoding prepared string args to character_set_client (#30723)

* expression: fix enum type join binary get wrong result (#30445)

* cmd/explaintest: fix wrong result comparison for explain test (#30717)

* parallel create tables in br

* metrics: fix copr-cache metrics (#30712)

* test: merge executor's serial tests to other tests (#30711)

* ddl: add batch create table api

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: add unit tests

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: fix fmt

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: typo

Co-authored-by: Arenatlx <ailinsilence4@gmail.com>

* ddl: fix tests

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: rename to BatchCreateTableWithInfo

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: trace the error

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: comments

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: cancle the job right

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: cancel the job right 2

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: report error if entry too large

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: report error when table is duplicated

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: go fmt

Signed-off-by: xhe <xw897002528@gmail.com>

* infoschema: improve batch memory perf

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: retain ID

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: reduce log frequency

Signed-off-by: xhe <xw897002528@gmail.com>

* ddl: fix tests

Signed-off-by: xhe <xw897002528@gmail.com>

* fix merge issue

* fix issue that loss table restore

* refactoring code

* refactoring code

Co-authored-by: Weizhen Wang <wangweizhen@pingcap.com>
Co-authored-by: wangggong <793160615@qq.com>
Co-authored-by: 王超 <cclcwangchao@hotmail.com>
Co-authored-by: José Clovis Ramírez de la Rosa <clovis-@live.com>
Co-authored-by: unconsolable <chenzhipeng2012@gmail.com>
Co-authored-by: zhangguangchao <1614439+zgcbj@users.noreply.github.com>
Co-authored-by: wjHuang <huangwenjun1997@gmail.com>
Co-authored-by: mmyj <mayj.hello@gmail.com>
Co-authored-by: Shenghui Wu <793703860@qq.com>
Co-authored-by: tison <wander4096@gmail.com>
Co-authored-by: Yuanjia Zhang <zhangyuanjia@pingcap.com>
Co-authored-by: xiaolunzhou <51695571+JayL-zxl@users.noreply.github.com>
Co-authored-by: glorv <glorvs@163.com>
Co-authored-by: sylzd <liuzidong@xiaomi.com>
Co-authored-by: Yexiang Zhang <mornyx.z@gmail.com>
Co-authored-by: tangenta <tangenta@126.com>
Co-authored-by: Yujie Xia <xiayjchn@gmail.com>
Co-authored-by: Hangjie Mo <mohangjie1995@gmail.com>
Co-authored-by: HuaiyuXu <391585975@qq.com>
Co-authored-by: Song Gao <disxiaofei@163.com>
Co-authored-by: xiongjiwei <xiongjiwei1996@outlook.com>
Co-authored-by: WangDeng <DWang_Slam@163.com>
Co-authored-by: Mattias Jonsson <mjonss@users.noreply.github.com>
Co-authored-by: djshow832 <zhangming@pingcap.com>
Co-authored-by: tiancaiamao <tiancaiamao@gmail.com>
Co-authored-by: Chengpeng Yan <41809508+Reminiscent@users.noreply.github.com>
Co-authored-by: Arenatlx <314806019@qq.com>
Co-authored-by: Meng Xin <tregoldmeng@gmail.com>
Co-authored-by: Zhou Kunqin <25057648+time-and-fate@users.noreply.github.com>
Co-authored-by: Youra Cho <espresso98@users.noreply.github.com>
Co-authored-by: Yifan Xu <30385241+xuyifangreeneyes@users.noreply.github.com>
Co-authored-by: Xiang Zhang <angwerzx@126.com>
Co-authored-by: Lei Zhao <zlwgx1023@gmail.com>
Co-authored-by: Daniël van Eeden <git@myname.nl>
Co-authored-by: docsir <73268456+docsir@users.noreply.github.com>
Co-authored-by: Morgan Tocker <tocker@gmail.com>
Co-authored-by: jakevin <30525741+jackwener@users.noreply.github.com>
Co-authored-by: 姬小野 <38575466+JameyWoo@users.noreply.github.com>
Co-authored-by: you06 <you1474600@gmail.com>
Co-authored-by: lance6716 <lance6716@gmail.com>
Co-authored-by: TonsnakeLin <87681388+TonsnakeLin@users.noreply.github.com>
Co-authored-by: imentu <imentu@foxmail.com>
Co-authored-by: Alkaid <38248129+jyz0309@users.noreply.github.com>
Co-authored-by: lvtu <37565148+tongtongyin@users.noreply.github.com>
Co-authored-by: 3pointer <luancheng@pingcap.com>
Co-authored-by: Zhuhe Fang <fzhedu@gmail.com>
Co-authored-by: WizardXiao <89761062+WizardXiao@users.noreply.github.com>
Co-authored-by: Jianjun Liao <36503113+Leavrth@users.noreply.github.com>
Co-authored-by: guo-shaoge <shaoge1994@163.com>
Co-authored-by: Ryan Leung <rleungx@gmail.com>
Co-authored-by: xufei <xufei@pingcap.com>
Co-authored-by: Ehco <zh19960202@gmail.com>
Co-authored-by: Zak Zhao <57036248+joccau@users.noreply.github.com>
Co-authored-by: xhe <xw897002528@gmail.com>
Co-authored-by: Chunzhu Li <lichunzhu@stu.xjtu.edu.cn>
Co-authored-by: Ti Chi Robot <ti-community-prow-bot@tidb.io>
Co-authored-by: Xiaoju Wu <wuxiaoju@pingcap.com>
Co-authored-by: JmPotato <ghzpotato@gmail.com>
Co-authored-by: Zach <51114270+zach030@users.noreply.github.com>
Co-authored-by: bb7133 <bb7133@gmail.com>
Co-authored-by: crazycs <crazycs520@gmail.com>
Co-authored-by: znhh6018 <44599853+znhh6018@users.noreply.github.com>
Co-authored-by: eddie lin <eddievim@foxmail.com>
Co-authored-by: dongjunduo <andj4cn@gmail.com>
Co-authored-by: Zhenchi <zhongzc_arch@outlook.com>
Co-authored-by: zhangjinpeng1987 <zhangjinpeng@pingcap.com>
Co-authored-by: Jack Yu <yusp@pingcap.com>
Co-authored-by: Arenatlx <ailinsilence4@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release-note Denotes a PR that will be considered when it comes time to generate release notes. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. status/can-merge Indicates a PR has been approved by a committer. status/LGT2 Indicates that a PR has LGTM 2. type/bugfix This PR fixes a bug.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

ddl: column type change will use default value as converted one for a invalid old json string
4 participants