Comment 1 for bug 1737525

Revision history for this message
Shahriyar Rzayev (rzayev-sehriyar) wrote :

Examined a bit assertion.
It is failed on:
(gdb) bt
+bt
#0 0x00007ffff58cd5d7 in raise () from /usr/lib64/libc.so.6
#1 0x00007ffff58cecc8 in abort () from /usr/lib64/libc.so.6
#2 0x00000000010f979e in ut_dbg_assertion_failed (expr=0x1c14f72 "fsp_flags_is_valid(flags)", file=0x1c15148 "/home/shahriyar.rzaev/XB_TEST/server_dir/PXB-2.4-xb-bug1737179/storage/innobase/fil/fil0fil.cc", line=1232) at /home/shahriyar.rzaev/XB_TEST/server_dir/PXB-2.4-xb-bug1737179/storage/innobase/ut/ut0dbg.cc:67
#3 0x000000000103a912 in fil_space_create (name=0x29ef2b0 "ts3", id=112, flags=10432, purpose=FIL_TYPE_TABLESPACE) at /home/shahriyar.rzaev/XB_TEST/server_dir/PXB-2.4-xb-bug1737179/storage/innobase/fil/fil0fil.cc:1232
#4 0x0000000000dbc9d0 in xb_load_single_table_tablespace (dirname=0x0, filname=0x7fffffffb3c0 "ts3.ibd", is_remote=false) at /home/shahriyar.rzaev/XB_TEST/server_dir/PXB-2.4-xb-bug1737179/storage/innobase/xtrabackup/src/xtrabackup.cc:3530
#5 0x0000000000dbcd94 in xb_load_single_table_tablespaces (pred=0xdbc5d7 <xb_check_if_open_tablespace(char const*, char const*)>) at /home/shahriyar.rzaev/XB_TEST/server_dir/PXB-2.4-xb-bug1737179/storage/innobase/xtrabackup/src/xtrabackup.cc:3647
#6 0x0000000000dbd200 in xb_load_tablespaces () at /home/shahriyar.rzaev/XB_TEST/server_dir/PXB-2.4-xb-bug1737179/storage/innobase/xtrabackup/src/xtrabackup.cc:3816
#7 0x0000000000dbf126 in xtrabackup_backup_func () at /home/shahriyar.rzaev/XB_TEST/server_dir/PXB-2.4-xb-bug1737179/storage/innobase/xtrabackup/src/xtrabackup.cc:4781
#8 0x0000000000dc7e8b in main (argc=29, argv=0x7fffffffdd88) at /home/shahriyar.rzaev/XB_TEST/server_dir/PXB-2.4-xb-bug1737179/storage/innobase/xtrabackup/src/xtrabackup.cc:8704

According to source code:
https://github.com/percona/percona-xtrabackup/blob/2.4/storage/innobase/fsp/fsp0fsp.cc#L280

/* Only single-table and not temp tablespaces use the encryption
 clause. */
 if (is_encryption && (is_shared || is_temp)) {
  return(false);
}

With recent changes, i.e creating encrypted general tablespace the clause is_shared is invalidated?
And it can be changed to something like:

/* The encryption is invalid clause for temp tablespaces */
 if (is_encryption && is_temp) {
  return(false);
}