Skip to content

Commit

Permalink
MDEV-14238 Bogus assertion on row_get_rec_trx_id()
Browse files Browse the repository at this point in the history
page_zip_write_rec(): Do not attempt to access a non-existing
DB_TRX_ID column when writing a record to a non-leaf page.
  • Loading branch information
dr-m committed Feb 9, 2018
1 parent 8411a8f commit e4da20d
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions storage/innobase/page/page0zip.cc
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Copyright (c) 2005, 2016, Oracle and/or its affiliates. All Rights Reserved.
Copyright (c) 2012, Facebook Inc.
Copyright (c) 2014, 2017, MariaDB Corporation.
Copyright (c) 2014, 2018, MariaDB Corporation.
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Expand Down Expand Up @@ -3714,8 +3714,9 @@ page_zip_write_rec(
/* Copy the delete mark. */
if (rec_get_deleted_flag(rec, TRUE)) {
/* In delete-marked records, DB_TRX_ID must
always refer to an existing undo log record. */
ut_ad(!dict_index_is_clust(index)
always refer to an existing undo log record.
On non-leaf pages, the delete-mark flag is garbage. */
ut_ad(!index->is_primary() || !page_is_leaf(page)
|| row_get_rec_trx_id(rec, index, offsets));
*slot |= PAGE_ZIP_DIR_SLOT_DEL >> 8;
} else {
Expand Down

0 comments on commit e4da20d

Please sign in to comment.