Add support for function mod
(#2402)
#2561
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
cherry-pick #2402 to release-5.0
You can switch your code base to this Pull Request by using git-extras:
# In tics repo: git pr https://github.com/pingcap/tics/pull/2561
After apply modifications, you can push your change to this PR via:
What problem does this PR solve?
Issue Number: close #2318
Problem Summary: enable pushing function
mod
down to TiFlash.What is changed and how it works?
Proposal:
What's Changed:
Decimal.h
: compatible with TiDB.DataTypeDecimal.h
: add a helper function to get decimal precision in unit test.DAGUtils.cpp
: add mappings from TiPB codes to scalar function name.FunctionArithmetic.h
: update implementation ofFunctionModulo
.NumberTraits.h
: fix modulo result type deduction.types.h
: addactual_type
, which returns correct size of boost multiprecision integer.mod.test
,mod_extra.test
: the integration test.gtest_arithmetic_functions.cpp
: the unit test.Related changes
pingcap/docs
/pingcap/docs-cn
:Check List
INF
,NaN
Tests
Release note
MOD(N, M)
to TiFlash.