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

support fine grained shuffle for window function #5048

Merged
merged 52 commits into from
Jul 11, 2022

Conversation

guo-shaoge
Copy link
Contributor

@guo-shaoge guo-shaoge commented Jun 2, 2022

Signed-off-by: guo-shaoge [email protected]

What problem does this PR solve?

Issue Number: close #5142

Problem Summary:

What is changed and how it works?

Check List

  1. StreamingDAGResponseWriter.cpp: add batchWriterForFineGrainedShuffle(), partition rows into fine grained stream for each tiflash node
  2. ExchangeReceiver.cpp: add pushPacket(), readLoop() thread will check packet.stream_ids and dispatch to different msg_channels[stream_id]

Related PR:

  1. support fine grained shuffle(tiflash) tipb#266: Add pb field.
  2. add stream_ids for MPPDataPacket kvproto#954: Add pb field.
  3. sessionctx,kv,planner: add system variable for fine_grained_shuffle tidb#35256: Setup pb field when dispatching MPPTask.
  4. add microbenchmark for exchange and window function #5137: microbenchmark.

Tests

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

image

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

support fine grained shuffle for window function

@ti-chi-bot
Copy link
Member

ti-chi-bot commented Jun 2, 2022

[REVIEW NOTIFICATION]

This pull request has been approved by:

  • SeaRise
  • windtalker

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 do-not-merge/needs-linked-issue release-note-none Denotes a PR that doesn't merit a release note. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Jun 2, 2022
@guo-shaoge guo-shaoge changed the title WIP support fine grained shuffle [WIP] support fine grained shuffle Jun 2, 2022
@ti-chi-bot ti-chi-bot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jun 8, 2022
Signed-off-by: guo-shaoge <[email protected]>
Signed-off-by: guo-shaoge <[email protected]>
@guo-shaoge guo-shaoge changed the title [WIP] support fine grained shuffle support fine grained shuffle for window function Jun 9, 2022
@ti-chi-bot ti-chi-bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jun 9, 2022
Signed-off-by: guo-shaoge <[email protected]>
@ti-chi-bot ti-chi-bot added release-note Denotes a PR that will be considered when it comes time to generate release notes. and removed release-note-none Denotes a PR that doesn't merit a release note. labels Jun 9, 2022
@SeaRise SeaRise self-requested a review June 10, 2022 04:02
Signed-off-by: guo-shaoge <[email protected]>
Signed-off-by: guo-shaoge <[email protected]>
@SeaRise SeaRise self-requested a review June 13, 2022 02:40
@guo-shaoge
Copy link
Contributor Author

/cc @windtalker ptal~

@guo-shaoge guo-shaoge requested a review from fuzhe1989 July 7, 2022 07:06
@sre-bot
Copy link
Collaborator

sre-bot commented Jul 7, 2022

Coverage for changed files

Filename                                                   Regions    Missed Regions     Cover   Functions  Missed Functions  Executed       Lines      Missed Lines     Cover    Branches   Missed Branches     Cover
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
DataStreams/TiRemoteBlockInputStream.h                         117               117     0.00%          17                17     0.00%         164               164     0.00%          60                60     0.00%
Debug/astToExecutor.cpp                                        576               215    62.67%          53                 9    83.02%        1520               553    63.62%         568               254    55.28%
Debug/astToExecutor.h                                           33                12    63.64%          22                 7    68.18%          50                18    64.00%          10                 6    40.00%
Debug/dbgFuncCoprocessor.cpp                                   417               337    19.18%          37                27    27.03%         867               710    18.11%         294               248    15.65%
Flash/Coprocessor/CoprocessorReader.h                           49                49     0.00%          11                11     0.00%          80                80     0.00%          32                32     0.00%
Flash/Coprocessor/DAGContext.h                                  41                14    65.85%          32                12    62.50%          91                34    62.64%          12                 6    50.00%
Flash/Coprocessor/DAGDriver.cpp                                112               112     0.00%           5                 5     0.00%         151               151     0.00%          46                46     0.00%
Flash/Coprocessor/DAGQueryBlockInterpreter.cpp                 269                94    65.06%          41                 5    87.80%         694               171    75.36%         166                61    63.25%
Flash/Coprocessor/DAGQueryBlockInterpreter.h                     2                 0   100.00%           2                 0   100.00%           2                 0   100.00%           0                 0         -
Flash/Coprocessor/DAGStorageInterpreter.cpp                    436               436     0.00%          32                32     0.00%         884               884     0.00%         290               290     0.00%
Flash/Coprocessor/StreamingDAGResponseWriter.cpp               139                71    48.92%          13                 3    76.92%         314               158    49.68%          94                54    42.55%
Flash/Coprocessor/tests/gtest_streaming_dag_writer.cpp         145                37    74.48%          12                 3    75.00%          96                 3    96.88%          48                18    62.50%
Flash/Mpp/ExchangeReceiver.cpp                                 409               409     0.00%          35                35     0.00%         596               596     0.00%         240               240     0.00%
Flash/Mpp/ExchangeReceiver.h                                    11                11     0.00%           9                 9     0.00%          17                17     0.00%           2                 2     0.00%
Flash/Mpp/MPPTask.cpp                                          447               447     0.00%          27                27     0.00%         429               429     0.00%         210               210     0.00%
Flash/tests/gtest_interpreter.cpp                              138                76    44.93%           5                 0   100.00%         480                 0   100.00%          16                16     0.00%
TestUtils/mockExecutor.cpp                                      80                15    81.25%          50                12    76.00%         310                63    79.68%          36                 3    91.67%
TestUtils/mockExecutor.h                                         6                 1    83.33%           6                 1    83.33%          15                 3    80.00%           0                 0         -
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TOTAL                                                         3427              2453    28.42%         409               215    47.43%        6760              4034    40.33%        2124              1546    27.21%

Coverage summary

Functions  MissedFunctions  Executed  Lines   MissedLines  Cover
18466      9587             48.08%    208072  96387        53.68%

full coverage report (for internal network access only)

// If fine grained_shuffle is disabled:
// Push all chunks to msg_channels[0].
// Return true if all push succeed, otherwise return false.
// NOTE: shared_ptr<MPPDataPacket> will be hold by all ExchangeReceiverBlockInputStream to make chunk pointer valid.
Copy link
Contributor

Choose a reason for hiding this comment

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

Can we call chunk.clear() in ExchangeReceiverBase::nextResult after decodeChunks in order to release chunk's memory earlier?

Copy link
Contributor

Choose a reason for hiding this comment

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

If there is an ExchangeReceiverBlockInputStream hanging, all chunks will not be released

Copy link
Contributor Author

Choose a reason for hiding this comment

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

All chunks will be released when all stream decode done. I think we cannot release earlier?

Copy link
Contributor

Choose a reason for hiding this comment

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

I mean that calling Chunk(String).clear()

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I think it's helpful for memory usage. But I don't know if it's proper way, because the memory of Chunk is in protobuf.

Copy link
Contributor

Choose a reason for hiding this comment

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

maybe we can add todo or some comments about it.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

After discussion, we think the delay of memory release can happen when data is skewed to one stream, which is inevitable.

@guo-shaoge guo-shaoge requested a review from SeaRise July 8, 2022 07:51
@ti-chi-bot ti-chi-bot added the status/LGT1 Indicates that a PR has LGTM 1. label Jul 8, 2022
@guo-shaoge
Copy link
Contributor Author

/run-all-tests

@sre-bot
Copy link
Collaborator

sre-bot commented Jul 8, 2022

Coverage for changed files

Filename                                                   Regions    Missed Regions     Cover   Functions  Missed Functions  Executed       Lines      Missed Lines     Cover    Branches   Missed Branches     Cover
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
DataStreams/TiRemoteBlockInputStream.h                         117               117     0.00%          17                17     0.00%         164               164     0.00%          60                60     0.00%
Debug/astToExecutor.cpp                                        576               215    62.67%          53                 9    83.02%        1520               553    63.62%         568               254    55.28%
Debug/astToExecutor.h                                           33                12    63.64%          22                 7    68.18%          50                18    64.00%          10                 6    40.00%
Debug/dbgFuncCoprocessor.cpp                                   417               337    19.18%          37                27    27.03%         867               710    18.11%         294               248    15.65%
Flash/Coprocessor/CoprocessorReader.h                           49                49     0.00%          11                11     0.00%          80                80     0.00%          32                32     0.00%
Flash/Coprocessor/DAGContext.h                                  41                14    65.85%          32                12    62.50%          91                34    62.64%          12                 6    50.00%
Flash/Coprocessor/DAGDriver.cpp                                112               112     0.00%           5                 5     0.00%         151               151     0.00%          46                46     0.00%
Flash/Coprocessor/DAGQueryBlockInterpreter.cpp                 269                94    65.06%          41                 5    87.80%         694               171    75.36%         166                61    63.25%
Flash/Coprocessor/DAGQueryBlockInterpreter.h                     2                 0   100.00%           2                 0   100.00%           2                 0   100.00%           0                 0         -
Flash/Coprocessor/DAGStorageInterpreter.cpp                    436               436     0.00%          32                32     0.00%         884               884     0.00%         290               290     0.00%
Flash/Coprocessor/StreamingDAGResponseWriter.cpp               139                71    48.92%          13                 3    76.92%         314               158    49.68%          94                54    42.55%
Flash/Coprocessor/tests/gtest_streaming_dag_writer.cpp         145                37    74.48%          12                 3    75.00%          96                 3    96.88%          48                18    62.50%
Flash/Mpp/ExchangeReceiver.cpp                                 409               409     0.00%          35                35     0.00%         596               596     0.00%         240               240     0.00%
Flash/Mpp/ExchangeReceiver.h                                    11                11     0.00%           9                 9     0.00%          17                17     0.00%           2                 2     0.00%
Flash/Mpp/MPPTask.cpp                                          447               447     0.00%          27                27     0.00%         430               430     0.00%         210               210     0.00%
Flash/tests/gtest_interpreter.cpp                              138                76    44.93%           5                 0   100.00%         480                 0   100.00%          16                16     0.00%
TestUtils/mockExecutor.cpp                                      69                 8    88.41%          41                 5    87.80%         264                38    85.61%          32                 3    90.62%
TestUtils/mockExecutor.h                                         6                 1    83.33%           6                 1    83.33%          15                 3    80.00%           0                 0         -
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TOTAL                                                         3416              2446    28.40%         400               208    48.00%        6715              4010    40.28%        2120              1546    27.08%

Coverage summary

Functions  MissedFunctions  Executed  Lines   MissedLines  Cover
18488      9585             48.16%    208405  96504        53.69%

full coverage report (for internal network access only)

@guo-shaoge
Copy link
Contributor Author

/run-check-license

@ti-chi-bot ti-chi-bot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jul 8, 2022
@ti-chi-bot ti-chi-bot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jul 10, 2022
@guo-shaoge
Copy link
Contributor Author

/run-all-tests

@sre-bot
Copy link
Collaborator

sre-bot commented Jul 10, 2022

Coverage for changed files

Filename                                                   Regions    Missed Regions     Cover   Functions  Missed Functions  Executed       Lines      Missed Lines     Cover    Branches   Missed Branches     Cover
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
DataStreams/TiRemoteBlockInputStream.h                         117               117     0.00%          17                17     0.00%         164               164     0.00%          60                60     0.00%
Debug/astToExecutor.cpp                                        578               210    63.67%          53                 9    83.02%        1520               545    64.14%         570               246    56.84%
Debug/astToExecutor.h                                           33                12    63.64%          22                 7    68.18%          50                18    64.00%          10                 6    40.00%
Debug/dbgFuncCoprocessor.cpp                                   417               337    19.18%          37                27    27.03%         867               710    18.11%         294               248    15.65%
Flash/Coprocessor/CoprocessorReader.h                           49                49     0.00%          11                11     0.00%          80                80     0.00%          32                32     0.00%
Flash/Coprocessor/DAGContext.h                                  41                14    65.85%          32                12    62.50%          91                34    62.64%          12                 6    50.00%
Flash/Coprocessor/DAGDriver.cpp                                112               112     0.00%           5                 5     0.00%         151               151     0.00%          46                46     0.00%
Flash/Coprocessor/DAGQueryBlockInterpreter.cpp                 270                90    66.67%          41                 5    87.80%         694               155    77.67%         168                60    64.29%
Flash/Coprocessor/DAGQueryBlockInterpreter.h                     2                 0   100.00%           2                 0   100.00%           2                 0   100.00%           0                 0         -
Flash/Coprocessor/DAGStorageInterpreter.cpp                    436               436     0.00%          32                32     0.00%         884               884     0.00%         290               290     0.00%
Flash/Coprocessor/StreamingDAGResponseWriter.cpp               139                71    48.92%          13                 3    76.92%         314               158    49.68%          94                54    42.55%
Flash/Coprocessor/tests/gtest_streaming_dag_writer.cpp         145                37    74.48%          12                 3    75.00%          96                 3    96.88%          48                18    62.50%
Flash/Mpp/ExchangeReceiver.cpp                                 409               409     0.00%          35                35     0.00%         596               596     0.00%         240               240     0.00%
Flash/Mpp/ExchangeReceiver.h                                    11                11     0.00%           9                 9     0.00%          17                17     0.00%           2                 2     0.00%
Flash/Mpp/MPPTask.cpp                                          447               447     0.00%          27                27     0.00%         430               430     0.00%         210               210     0.00%
Flash/tests/gtest_interpreter.cpp                              194               114    41.24%           7                 0   100.00%         585                 0   100.00%          24                24     0.00%
TestUtils/mockExecutor.cpp                                      69                 8    88.41%          41                 5    87.80%         264                38    85.61%          32                 3    90.62%
TestUtils/mockExecutor.h                                         6                 1    83.33%           6                 1    83.33%          15                 3    80.00%           0                 0         -
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TOTAL                                                         3475              2475    28.78%         402               208    48.26%        6820              3986    41.55%        2132              1545    27.53%

Coverage summary

Functions  MissedFunctions  Executed  Lines   MissedLines  Cover
18492      9568             48.26%    208481  96365        53.78%

full coverage report (for internal network access only)

Copy link
Contributor

@windtalker windtalker 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 Jul 11, 2022
@windtalker
Copy link
Contributor

/merge

@ti-chi-bot
Copy link
Member

@windtalker: It seems you want to merge this PR, I will help you trigger all the tests:

/run-all-tests

You only need to trigger /merge once, and 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.

If you have any questions about the PR merge process, please refer to pr process.

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
Copy link
Member

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

Commit hash: 920673c

@ti-chi-bot ti-chi-bot added the status/can-merge Indicates a PR has been approved by a committer. label Jul 11, 2022
@sre-bot
Copy link
Collaborator

sre-bot commented Jul 11, 2022

Coverage for changed files

Filename                                                   Regions    Missed Regions     Cover   Functions  Missed Functions  Executed       Lines      Missed Lines     Cover    Branches   Missed Branches     Cover
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
DataStreams/TiRemoteBlockInputStream.h                         117               117     0.00%          17                17     0.00%         164               164     0.00%          60                60     0.00%
Debug/astToExecutor.cpp                                        578               210    63.67%          53                 9    83.02%        1520               545    64.14%         570               246    56.84%
Debug/astToExecutor.h                                           33                12    63.64%          22                 7    68.18%          50                18    64.00%          10                 6    40.00%
Debug/dbgFuncCoprocessor.cpp                                   417               337    19.18%          37                27    27.03%         867               710    18.11%         294               248    15.65%
Flash/Coprocessor/CoprocessorReader.h                           49                49     0.00%          11                11     0.00%          80                80     0.00%          32                32     0.00%
Flash/Coprocessor/DAGContext.h                                  41                14    65.85%          32                12    62.50%          91                34    62.64%          12                 6    50.00%
Flash/Coprocessor/DAGDriver.cpp                                112               112     0.00%           5                 5     0.00%         151               151     0.00%          46                46     0.00%
Flash/Coprocessor/DAGQueryBlockInterpreter.cpp                 270                90    66.67%          41                 5    87.80%         694               155    77.67%         168                60    64.29%
Flash/Coprocessor/DAGQueryBlockInterpreter.h                     2                 0   100.00%           2                 0   100.00%           2                 0   100.00%           0                 0         -
Flash/Coprocessor/DAGStorageInterpreter.cpp                    436               436     0.00%          32                32     0.00%         884               884     0.00%         290               290     0.00%
Flash/Coprocessor/StreamingDAGResponseWriter.cpp               139                71    48.92%          13                 3    76.92%         314               158    49.68%          94                54    42.55%
Flash/Coprocessor/tests/gtest_streaming_dag_writer.cpp         145                37    74.48%          12                 3    75.00%          96                 3    96.88%          48                18    62.50%
Flash/Mpp/ExchangeReceiver.cpp                                 409               409     0.00%          35                35     0.00%         596               596     0.00%         240               240     0.00%
Flash/Mpp/ExchangeReceiver.h                                    11                11     0.00%           9                 9     0.00%          17                17     0.00%           2                 2     0.00%
Flash/Mpp/MPPTask.cpp                                          447               447     0.00%          27                27     0.00%         430               430     0.00%         210               210     0.00%
Flash/tests/gtest_interpreter.cpp                              194               114    41.24%           7                 0   100.00%         585                 0   100.00%          24                24     0.00%
TestUtils/mockExecutor.cpp                                      69                 8    88.41%          41                 5    87.80%         264                38    85.61%          32                 3    90.62%
TestUtils/mockExecutor.h                                         6                 1    83.33%           6                 1    83.33%          15                 3    80.00%           0                 0         -
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TOTAL                                                         3475              2475    28.78%         402               208    48.26%        6820              3986    41.55%        2132              1545    27.53%

Coverage summary

Functions  MissedFunctions  Executed  Lines   MissedLines  Cover
18492      9568             48.26%    208481  96347        53.79%

full coverage report (for internal network access only)

@ti-chi-bot ti-chi-bot merged commit 649919d into pingcap:master Jul 11, 2022
Lloyd-Pottiger pushed a commit to Lloyd-Pottiger/tiflash that referenced this pull request Jul 12, 2022
…s in README (pingcap#5182)

close pingcap#5172, ref pingcap#5178

Enhancement: add a integrated test on DDL module (pingcap#5130)

ref pingcap#5129

Revert "Revise default background threads size" (pingcap#5176)

close pingcap#5177

chore: remove extra dyn cast (pingcap#5186)

close pingcap#5185

Add MPPReceiverSet, which includes ExchangeReceiver and CoprocessorReader (pingcap#5175)

ref pingcap#5095

DDL: Use Column Name Instead of Offset to Find the common handle cluster index (pingcap#5166)

close pingcap#5154

Add random failpoint in critical paths (pingcap#4876)

close pingcap#4807

Segment test framework (pingcap#5150)

close pingcap#5151

optimize ps v3 restore (pingcap#5163)

ref pingcap#4914

Fix build failed (pingcap#5196)

close pingcap#5195

feat: delta tree dispatching (pingcap#5199)

close pingcap#5200

feat: introduce specialized API to write fixed length data rapidly (pingcap#5181)

close pingcap#5183

Add gtest for Limit, TopN, Projection (pingcap#5187) (pingcap#5188)

close pingcap#5187

add `MPPTask::handleError()` (pingcap#5202)

ref pingcap#5095

Check result of starting grpc server (pingcap#5257)

close pingcap#5255

feat: add optimized routines for aarch64 (pingcap#5231)

close pingcap#5240

fix: aarch64-quick-fix (pingcap#5259)

close pingcap#5260

Update client-c to support ipv6 (pingcap#5270)

close pingcap#5247

upgrade prometheus-cpp to v1.0.1 (pingcap#5279)

ref pingcap#2103, close pingcap#5278

Fix README type error (pingcap#5273)

ref pingcap#5178

fix(cmake): make sure libc++ is utilized by tiflash-proxy (pingcap#5281)

close pingcap#5282

fix the wrong order of execution summary for list based executors (pingcap#5242)

close pingcap#5241

Schema: allow loading empty schema diff when the version grows up. (pingcap#5245)

close pingcap#5244

Optimize apply speed under heavy write pressure (pingcap#4883)

ref pingcap#4728

update proxy to raftstore-proxy-6.2 (pingcap#5287)

ref pingcap#4982

Flush segment cache when doing the compaction (pingcap#5284)

close pingcap#5179

metrics: Fix incorrect metrics for delta_merge tasks (pingcap#5061)

close pingcap#5055

dep: upgrade jemalloc (pingcap#5197)

close pingcap#5258

*: TiFlash pagectl/dttool use only-decryption mode (pingcap#5271)

close pingcap#5122

suppresion false positive report from tsan (pingcap#5303)

close pingcap#5088

Refine test framework code and tests (pingcap#5261)

close pingcap#5262

feat: add logical cpu cores and memory into grafana (pingcap#5124)

close pingcap#3821

Implement TimeToSec function push down (pingcap#5235)

close pingcap#5116

feat: implement shiftRight function push down (pingcap#5156)

close pingcap#5100

schema : make update to partition tables when 'set tiflash replica' (pingcap#5267)

close pingcap#5266

Replace initializer_list with vector for planner test framework (pingcap#5307)

close pingcap#5295

KVStore: decouple flush region and CompactLog with a new FFI fn_try_flush_data (pingcap#5283)

ref pingcap#5170

refine error message in mpptask (pingcap#5304)

ref pingcap#5095

Implement ReverseUTF8/Reverse function push down (pingcap#5233)

close pingcap#5111

Optimize comparision for collation `UTF8_BIN` and `UTF8MB4_BIN` (pingcap#5299)

ref pingcap#5294

feat : support set tiflash mode ddl action (pingcap#5256)

ref pingcap#5252

Add non-blocking functions for MPMCQueue (pingcap#5311)

close pingcap#5310

add random segment test for CI weekly (pingcap#5300)

close pingcap#5301

*: tidy FunctionString.cpp (pingcap#5312)

close pingcap#5313

ci: fix check-license github action (pingcap#5318)

close pingcap#5317

update proxy to raftstore-proxy-6.2 (pingcap#5316)

ref pingcap#4982

Change one `additional_input_at_end` to many streams in `ParallelInputsProcessor`  (pingcap#5274)

close pingcap#4856, close pingcap#5263

support fine grained shuffle for window function (pingcap#5048)

close pingcap#5142

feat: pushdown get_format into TiFlash (pingcap#5269)

close pingcap#5115

fix: format throw data truncated error (pingcap#5272)

close pingcap#4891

Print content of columns for gtest (pingcap#5243)

close pingcap#5203

*: also enable O3 for aarch64 (pingcap#5338)

close pingcap#5342

Add debug image build target for CentOS7 (pingcap#5344)

close pingcap#5343

*: mini refactor (pingcap#5326)

close pingcap#4739

Refactor initialize of background pool (pingcap#5190)

close pingcap#5189

delete copy/move ctor of MPMCQueue explicitly (pingcap#5328)

close pingcap#5329

Introduce proxy_server and new-mock-engine-store (pingcap#5319)

ref pingcap#5170

fix: incorrect uptime in grafana panel

Signed-off-by: Lloyd-Pottiger <[email protected]>
Lloyd-Pottiger pushed a commit to Lloyd-Pottiger/tiflash that referenced this pull request Jul 19, 2022
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/XXL Denotes a PR that changes 1000+ 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.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Fine grained shuffle for window function
7 participants