| Bug #80939 | Insert of GIS data into rtree hits assert in rtr_cur_restore_position_func() | ||
|---|---|---|---|
| Submitted: | 3 Apr 2016 11:58 | Modified: | 22 Nov 2016 12:48 |
| Reporter: | Olav Sandstå | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: InnoDB storage engine | Severity: | S2 (Serious) |
| Version: | 5.7.13 | OS: | Any |
| Assigned to: | CPU Architecture: | Any | |
[22 Nov 2016 12:48]
Daniel Price
Posted by developer: Fixed as of the upcoming 5.7.18, 8.0.1 release, and here's the changelog entry: Inserting GIS data into an r-tree raised an assertion due to a missing page number field that was encountered when storing the b-tree cursor.
[9 Nov 2017 6:26]
Erlend Dahl
Bug#81497 Failing assertion:!cmp_rec_rec(r_cursor->old_rec,rec,offsets1,offsets2,index) was marked as a duplicate.

Description: When trying to load the Sakila demo database into a debug version of MySQL 5.7, the server crashes with the following assert in InnoDB: InnoDB: Assertion failure in thread 140292835587840 in file gis0sea.cc line 1329 InnoDB: Failing assertion: !cmp_rec_rec(r_cursor->old_rec, rec, offsets1, offsets2, index) This assert is in the function rtr_cur_restore_position_func(): if (rec_get_info_bits(r_cursor->old_rec, comp) & REC_INFO_MIN_REC_FLAG) { ut_ad(rec_get_info_bits(rec, comp) & REC_INFO_MIN_REC_FLAG); } else { ut_ad(!cmp_rec_rec(r_cursor->old_rec, rec, offsets1, offsets2, index)); } How to repeat: Either download the Sakila demo database and try to load this into MySQL: 1. The demo database Sakila is found here: https://dev.mysql.com/doc/index-other.html 2. Unpack the file 3. Start at debug built MySQL 5.7 server. 4. Load schema: client/mysql -u root < sakila-schema.sql 5. Load data: client/mysql -u root < sakila-data.sql