From 5f42ce34bc084c0e0cdd9f75c449233c5f2c0f99 Mon Sep 17 00:00:00 2001 From: Meng Xin <363042881@qq.com> Date: Tue, 20 Jul 2021 14:45:34 +0800 Subject: [PATCH] cherry pick #25975 to release-5.1 Signed-off-by: ti-srebot --- expression/expression.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/expression/expression.go b/expression/expression.go index 6a456329bd0ce..795661b98df62 100644 --- a/expression/expression.go +++ b/expression/expression.go @@ -1026,7 +1026,10 @@ func scalarExprSupportedByFlash(function *ScalarFunction) bool { } case ast.Cast: switch function.Function.PbCode() { - case tipb.ScalarFuncSig_CastIntAsInt, tipb.ScalarFuncSig_CastIntAsReal, tipb.ScalarFuncSig_CastIntAsDecimal, tipb.ScalarFuncSig_CastIntAsString, tipb.ScalarFuncSig_CastIntAsTime, + case tipb.ScalarFuncSig_CastIntAsTime: + // ban the function of casting year type as time type pushing down to tiflash because of https://github.com/pingcap/tidb/issues/26215 + return function.GetArgs()[0].GetType().Tp != mysql.TypeYear + case tipb.ScalarFuncSig_CastIntAsInt, tipb.ScalarFuncSig_CastIntAsReal, tipb.ScalarFuncSig_CastIntAsDecimal, tipb.ScalarFuncSig_CastIntAsString, tipb.ScalarFuncSig_CastRealAsInt, tipb.ScalarFuncSig_CastRealAsReal, tipb.ScalarFuncSig_CastRealAsDecimal, tipb.ScalarFuncSig_CastRealAsString, tipb.ScalarFuncSig_CastRealAsTime, tipb.ScalarFuncSig_CastStringAsInt, tipb.ScalarFuncSig_CastStringAsReal, tipb.ScalarFuncSig_CastStringAsDecimal, tipb.ScalarFuncSig_CastStringAsString, tipb.ScalarFuncSig_CastStringAsTime, tipb.ScalarFuncSig_CastDecimalAsInt /*, tipb.ScalarFuncSig_CastDecimalAsReal*/, tipb.ScalarFuncSig_CastDecimalAsDecimal, tipb.ScalarFuncSig_CastDecimalAsString, tipb.ScalarFuncSig_CastDecimalAsTime,