overflow will cause error in plan cache
- Dominant language
- Go
- Stars
- 40.5k
- Forks
- 6.2k
- PR merge metrics
- PR metrics pending
Description
## Bug Report
Please answer these questions before submitting your issue. Thanks!
### 1. Minimal reproduce step (Required)
```sql
CREATE TABLE `IDT_MULTI15847STROBJSTROBJ` (
`COL1` enum('^YSQT0]V@9TFN>^WB6G?NG@S8>VYOM;BSC@64=ZISGS?O[JDFBI5M]QXJYQNSKU>NGAWLXS26LMTZ2YNN`XKIUGKY0IHDWV>E[BJJCABOKH1M^CB5E@DLS7Q88PWZTEAY]1ZQMN5NX[IFIYA983K:E4N77@FINM5HVGQCUCVNF5WLOOOEORAM=_JLMVFURMUASTVDBE','NL3V:J9LM4U5KUCVR;P','M5=T5FLQEZMPZAXH]4G:TSYYYVQ7O@4S6C3N8WPFKSP;SRD6VW@94BBH8XCT','P]I52Y46F?@RMOOF6;FWDTO`7FIT]R:]ELHD[CNLDSHC7FPBYOOJXLZSBV^5C^AAF6J5BCKE4V9==@H=4C]GMZXPNM','ECIQWH>?MK=ARGI0WVJNIBZFCFVJHFIUYJ:2?2WWZBNBWTPFNQPLLBFP9R_','E<_Y9OT@SOPYR72VIJVMBWIVPF@TTBZ@8ZPBZL=LXZF`WM4V2?K>AT','PZ@PR6XN28JL`B','ZOHBSCRMZPOI`IVTSEZAIDAF7DS@1TT20AP9','QLDIOY[Y:JZR@OL__I^@FBO=O_?WOOR:2BE:QJC','BI^TGJ_NEEXYKV1POHTOJQPGCPVR=TYZMGWABUQR07J8U::W4','N`ZN4P@9T[JW;FR6=FA4WP@APNPG[XQVIK4]F]2>EC>JEIOXC``;;?OHP') COLLATE utf8mb4_bin DEFAULT NULL,
`COL2` smallint DEFAULT NULL,
`COL3` timestamp(5) NULL DEFAULT NULL,
KEY `U_M_COL4` (`COL1`,`COL2`),
KEY `U_M_COL5` (`COL3`,`COL2`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
INSERT INTO `IDT_MULTI15847STROBJSTROBJ` VALUES
('@M`IHSJQ8HBTGOS`=VW]QBMLVWN`SP;E>EEXYKV1POHTOJQPGCPVR=TYZMGWABUQR07J8U::W4',-21679,'2035-10-14 00:33:10.00000'),
('PZ@PR6XN28JL`B',20882,'2028-10-29 12:44:57.00000'),
('^YSQT0]V@9TFN>^WB6G?NG@S8>VYOM;BSC@FIYA983K:E4N77@FINM5HVGQCUCVNF5WLOOOEORAM=_JLMVFURMUASTVDBE',9385,'1987-07-06 03:08:39.00000'),
('@[ETQPEKKDD;9INXAQISU0O65J86AWQ2SZ8=ZZW6TKT4GCF_O13\ZQW_S>FIYA983K:E4N77@FINM5HVGQCUCVNF5WLOOOEORAM=_JLMVFURMUASTVDBE',-21890,'2004-08-30 16:40:37.00000'),
('@[ETQPEKKDD;9INXAQISU0O65J86AWQ2SZ8=ZZW6TKT4GCF_O13\ZQW_S>FIYA983K:E4N77@FINM5HVGQCUCVNF5WLOOOEORAM=_JLMVFURMUASTVDBE',10525,'2020-04-14 01:58:41.00000'),
('W[5E_U1J?YSOQISL1KD',10880,'2026-04-05 15:16:57.00000'),
('NL3V:J9LM4U5KUCVR;P',-32318,'2023-05-28 15:58:08.00000'),
('PXWTHJ?R]P=`Y',-4733,'1974-09-07 22:05:59.00000'),
('W[5E_U1J?YSOQISL1KD',-29098,'2030-11-10 22:10:27.00000'),
('ECIQWH>?MK=ARGI0WVJNIBZFCFVJHFIUYJ:2?2WWZBNBWTPFNQPLLBFP9R_',-9815,'1986-04-28 13:06:28.00000'),
('E<FIYA983K:E4N77@FINM5HVGQCUCVNF5WLOOOEORAM=_JLMVFURMUASTVDBE',-10852,'1981-11-17 21:04:08.00000'),
('M@V^`^8I',3763,'1981-07-08 13:10:46.00000'),
('@[ETQPEKKDD;9INXAQISU0O65J86AWQ2SZ8=ZZW6TKT4GCF_O13\ZQW_S>FIYA983K:E4N77@FINM5HVGQCUCVNF5WLOOOEORAM=_JLMVFURMUASTVDBE',10322,'1991-04-04 09:12:38.00000'),
('ECIQWH>?MK=ARGI0WVJNIBZFCFVJHFIUYJ:2?2WWZBNBWTPFNQPLLBFP9R_',18529,'1984-11-19 06:07:30.00000'),
('M@HGGFM43C7',16882,'2016-11-01 15:12:33.00000'),
('ECIQWH>?MK=ARGI0WVJNIBZFCFVJHFIUYJ:2?2WWZBNBWTPFNQPLLBFP9R_',5570,'1997-04-30 20:15:05.00000'),
('E<FIYA983K:E4N77@FINM5HVGQCUCVNF5WLOOOEORAM=_JLMVFURMUASTVDBE',-10602,'1991-12-16 03:28:02.00000'),
('QLDIOY[Y:JZR@OL__I^@FBO=O_?WOOR:2BE:QJC',-16781,'1990-05-18 23:54:45.00000'),
('QLDIOY[Y:JZR@OL__I^@FBO=O_?WOOR:2BE:QJC',7264,'2018-01-18 13:07:41.00000'),
('NL3V:J9LM4U5KUCVR;P',-26266,'1973-10-12 13:35:56.00000'),
('@[ETQPEKKDD;9INXAQISU0O65J86AWQ2SZ8=ZZW6TKT4GCF_O13\ZQW_S>FIYA983K:E4N77@FINM5HVGQCUCVNF5WLOOOEORAM=_JLMVFURMUASTVDBE',13789,'2015-01-17 10:15:50.00000'),
('PXWTHJ?R]P=`Y',-11215,'2030-05-16 01:13:38.00000'),
('N`ZN4P@9T[JW;FR6=FA4WP@APNPG[XQVIK4]F]2>EC>JEIOXC``;;?OHP',7042,'2032-02-28 11:32:21.00000'),
('ZOHBSCRMZPOI`IVTSEZAIDAF7DS@1TT20AP9',3513,'2000-04-15 02:14:19.00000'),
('5UTEJUZIQ\ZJOJU_D6@V2DSVOIK@LUT^E?RTL>_Y9OT@SOPYR72VIJVMBWIVPF@TTBZ@8ZPBZL=LXZF`WM4V2?K>AT',9638,'1997-03-08 23:32:00.00000'),
('PXWTHJ?R]P=`Y',28145,'1971-04-10 09:54:39.00000'),
('E<R;P',-30039,'2031-10-13 03:56:30.00000'),
('^YSQT0]V@9TFN>^WB6G?NG@S8>VYOM;BSC@^WB6G?NG@S8>VYOM;BSC@^WB6G?NG@S8>VYOM;BSC@EC>JEIOXC``;;?OHP',-17366,'1991-11-07 10:09:45.00000'),
('M@V^`^8I',5510,'2031-12-09 21:34:46.00000'),
('E<64=ZISGS?O[JDFBI5M]QXJYQNSKU>NGAWLXS26LMTZ2YNN`XKIUGKY0IHDWV>E[BJJCABOKH1M^CB5E@DLS7Q88PWZTEAY]1ZQMN5NX[I?MK=ARGI0WVJNIBZFCFVJHFIUYJ:2?2WWZBNBWTPFNQPLLBFP9R_',-356,'2013-05-25 10:16:46.00000'),
('T\\NKZQQ=C1@IH9W>64=ZISGS?O[JDFBI5M]QXJYQNSKU>NGAWLXS26LMTZ2YNN`XKIUGKY0IHDWV>E[BJJCABOKH1M^CB5E@DLS7Q88PWZTEAY]1ZQMN5NX[I?MK=ARGI0WVJNIBZFCFVJHFIUYJ:2?2WWZBNBWTPFNQPLLBFP9R_',-11633,'1991-08-14 09:55:05.00000'),
('T\\NKZQQ=C1@IH9W>64=ZISGS?O[JDFBI5M]QXJYQNSKU>NGAWLXS26LMTZ2YNN`XKIUGKY0IHDWV>E[BJJCABOKH1M^CB5E@DLS7Q88PWZTEAY]1ZQMN5NX[IFIYA983K:E4N77@FINM5HVGQCUCVNF5WLOOOEORAM=_JLMVFURMUASTVDBE',-8842,'2025-07-10 00:29:24.00000'),
('PZ@PR6XN28JL`B',8622,'2026-07-06 01:58:03.00000'),
('T\\NKZQQ=C1@IH9W>64=ZISGS?O[JDFBI5M]QXJYQNSKU>NGAWLXS26LMTZ2YNN`XKIUGKY0IHDWV>E[BJJCABOKH1M^CB5E@DLS7Q88PWZTEAY]1ZQMN5NX[IFIYA983K:E4N77@FINM5HVGQCUCVNF5WLOOOEORAM=_JLMVFURMUASTVDBE',-11478,'2020-09-17 19:16:29.00000'),
('^YSQT0]V@9TFN>^WB6G?NG@S8>VYOM;BSC@^WB6G?NG@S8>VYOM;BSC@ ?;';
set @a=28145, @b=28145, @c=28145;
execute stmt using @a,@b,@c;
set @a=-32318, @b=-32318, @c=-32318;
execute stmt using @a,@b,@c;
set @a=-9287, @b=-9815, @c=-19748;
execute stmt using @a,@b,@c;
set @a=-360860821470, @b=1037975153909, @c=687344291891;
execute stmt using @a,@b,@c;
```
### 2. What did you expect to see? (Required)
follow sql query success
```sql
set @a=-360860821470, @b=1037975153909, @c=687344291891;
execute stmt using @a,@b,@c;
```
### 3. What did you see instead (Required)
```sql
set @a=-360860821470, @b=1037975153909, @c=687344291891;
execute stmt using @a,@b,@c;
(1815, 'expression gt(mul(-360860821470, 1037975153909), 687344291891) cannot be pushed down')
-- wait some time
TiDB root@127.0.0.1:new_data> execute stmt using @a,@b,@c;
+------+------+------+
| COL1 | COL2 | COL3 |
+------+------+------+
+------+------+------+
```
the plan changed.
1. query failed plan
```sql
mysql> explain for connection 8625184934786498979 ;
+-------------------------+----------+---------+-----------+----------------------------------+----------------+-----------------------------------------------------------------------------------------+--------+------+
| id | estRows | actRows | task | access object | execution info | operator info | memory | disk |
+-------------------------+----------+---------+-----------+----------------------------------+----------------+-----------------------------------------------------------------------------------------+--------+------+
| TableReader_7 | 10.00 | 0 | root | | | data:Selection_6 | N/A | N/A |
| └─Selection_6 | 10.00 | 0 | cop[tikv] | | | eq(new_data.idt_multi15847strobjstrobj.col2, -360860821470), not recognized const vanue | N/A | N/A |
| └─TableFullScan_5 | 10000.00 | 0 | cop[tikv] | table:IDT_MULTI15847STROBJSTROBJ | | keep order:false, stats:pseudo | N/A | N/A |
+-------------------------+----------+---------+-----------+----------------------------------+----------------+-----------------------------------------------------------------------------------------+--------+------+
3 rows in set (0.01 sec)
```
2. query success
```sql
mysql> explain for connection 8625184934786498979 ;
+-------------------------+---------+---------+-----------+----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+--------+------+
| id | estRows | actRows | task | access object | execution info | operator info | memory | disk |
+-------------------------+---------+---------+-----------+----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+--------+------+
| TableReader_7 | 0.06 | 0 | root | | time:2.01ms, loops:1, cop_task: {num: 1, max: 1.93ms, proc_keys: 74, tot_proc: 127.5µs, tot_wait: 185.4µs, rpc_num: 1, rpc_time: 1.88ms, copr_cache_hit_ratio: 0.00, build_task_duration: 19.9µs, max_distsql_concurrency: 1} | data:Selection_6 | N/A | N/A |
| └─Selection_6 | 0.06 | 0 | cop[tikv] | | tikv_task:{time:0s, loops:2}, scan_detail: {total_process_keys: 74, total_process_keys_size: 3922, total_keys: 75, get_snapshot_time: 144.1µs, rocksdb: {key_skipped_count: 74, block: {}}} | eq(new_data.idt_multi15847strobjstrobj.col2, -360860821470), gt(mul(-360860821470, 1037975153909), 687344291891) | N/A | N/A |
| └─TableFullScan_5 | 74.00 | 74 | cop[tikv] | table:IDT_MULTI15847STROBJSTROBJ | tikv_task:{time:0s, loops:2} | keep order:false, stats:pseudo | N/A | N/A |
+-------------------------+---------+---------+-----------+----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+--------+------+
```
### 4. What is your TiDB version? (Required)
```sql
mysql> select tidb_version();
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| tidb_version() |
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Release Version: v7.1.0
Edition: Community
Git Commit Hash: f8f6cda58bb892c9cba4031b004cb6015eacc830
Git Branch: heads/refs/tags/v7.1.0
UTC Build Time: 2023-05-26 05:56:50
GoVersion: go1.20.3
Race Enabled: false
TiKV Min Version: 6.2.0-alpha
Check Table Before Drop: false
Store: tikv |
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
```
Contributor guide
Assessment
This issue has not been assessed yet.