Bug #20257 Partition pruning may be broken for BIGINT UNSIGNED fields.
| Submitted: | 4 Jun 2006 10:32 | Modified: | 3 Aug 2006 2:17 |
|---|---|---|---|
| Reporter: | Sergey Petrunya | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: Partitions | Severity: | S3 (Non-critical) |
| Version: | 5.1-bk with BUG#16002 fix | OS: | |
| Assigned to: | Sergey Petrunya | CPU Architecture: | Any |
[4 Jun 2006 10:32]
Sergey Petrunya
[21 Jul 2006 14:36]
Sergey Petrunya
Some of the tests that need to be added are added in patch for BUG#20733.
[22 Jul 2006 17:58]
Sergey Petrunya
As suspected, one can get wrong query results/hangs in edge cases. A wrong query result case: CREATE TABLE t1 ( a bigint(20) unsigned NOT NULL) PARTITION BY RANGE (a+0) ( PARTITION p1 VALUES LESS THAN (10), PARTITION p2 VALUES LESS THAN (20), PARTITION p3 VALUES LESS THAN (2305561538531885056), PARTITION p4 VALUES LESS THAN (2305561538531950591) ); mysql> explain partitions select * from t1 where a > 0xFFFFFFFFFFFFFFEC and a < 0xFFFFFFFFFFFFFFEE; +----+-------------+-------+------------+------+---------------+------+---------+------+------+-------------+ | id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+-------+------------+------+---------------+------+---------+------+------+-------------+ | 1 | SIMPLE | t1 | p1 | ALL | NULL | NULL | NULL | NULL | 2 | Using where | +----+-------------+-------+------------+------+---------------+------+---------+------+------+-------------+ 1 row in set (23.98 sec)
[22 Jul 2006 19:11]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/9453
[24 Jul 2006 14:30]
Sergey Petrunya
Notes for the changelog: Partition pruning could cause wrong query results (missing rows) when partitioning function used BIGINT UNSIGNED fields and "edge case" intervals were inferred from the query WHERE clause.
[2 Aug 2006 19:10]
Evgeny Potemkin
Fixed in 5.1.12
[3 Aug 2006 2:17]
Jon Stephens
Documented in 5.1.12 changelog.
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.040 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the
respective copyright holders.
It is not reviewed in advance
by Oracle and does not necessarily represent the opinion of
Oracle or any other party.