*: only enable new string serdes format in exchange when MppVersion >= MppVersionV3#9759
Conversation
|
PR of tidb is pingcap/tidb#58652. Merge this PR before merging the PR of tidb. |
|
/retest |
| return MPPDataPacketVersion::MPPDataPacketV0; | ||
| case MppVersion::MppVersionV3: | ||
| return MPPDataPacketVersion::MPPDataPacketV2; | ||
| default: |
There was a problem hiding this comment.
why make MPPDataPacketV1 as the default value? If there is MppVersionV4, will it use MPPDataPacketV1?
There was a problem hiding this comment.
I used to follow the code of
auto data_codec_version = mpp_version == MppVersionV0 ? MPPDataPacketV0 : MPPDataPacketV1;
Its default value is MPPDataPacketV1.
But I have just updated the code to make MPPDataPacketV2 as the default value now.
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: JaySon-Huang, windtalker The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
[LGTM Timeline notifier]Timeline:
|
What problem does this PR solve?
Issue Number: close #9673
Problem Summary:
What is changed and how it works?
tidb will send an
MppVersionfield to tiflash.When rolling upgrade, tiflash will be upgraded before tidb.
During the process of upgrading tiflash, tidb has not been upgraded yet, so all mpp versions received are
MppVersionsV2, tiflash still using the old format to exchange data.When upgrading tidb, the new tidb uses
MppVersionsV3to send requests, and tiflash starts using the new format to exchange data (at this point, all tiflash has been upgraded, so there will be no compatibility issues).PR of tidb is copr: add MppVersionV3 tidb#58652.
Check List
Tests
Side effects
Documentation
Release note