mariadb/storage/innobase/include
Jan Lindström 72cc73cea2 MDEV-10368: get_latest_version() called too often
Reduce the number of calls to encryption_get_key_get_latest_version
when doing key rotation with two different methods:

(1) We need to fetch key information when tablespace not yet
have a encryption information, invalid keys are handled now
differently (see below). There was extra call to detect
if key_id is not found on key rotation.

(2) If key_id is not found from encryption plugin, do not
try fetching new key_version for it as it will fail anyway.
We store return value from encryption_get_key_get_latest_version
call and if it returns ENCRYPTION_KEY_VERSION_INVALID there
is no need to call it again.
2016-12-13 11:51:33 +02:00
..
api0api.h 5.6.31 2016-06-21 14:21:03 +02:00
api0misc.h move to storage/innobase 2015-05-04 19:17:21 +02:00
btr0btr.h MDEV-10886: encryption.innodb-bad-key-change fails (crashes) in buildbot 2016-09-27 07:54:27 +03:00
btr0btr.ic MDEV-10886: encryption.innodb-bad-key-change fails (crashes) in buildbot 2016-09-27 07:54:27 +03:00
btr0cur.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
btr0cur.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
btr0defragment.h MDEV-8769: Server crash at file btr0btr.ic line 122 when defragmenting encrypted table using incorrect keys 2015-09-14 12:15:27 +03:00
btr0pcur.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
btr0pcur.ic MDEV-8588: Assertion failure in file ha_innodb.cc line 21140 if at least one encrypted table exists and encryption service is not available 2015-09-04 20:19:45 +03:00
btr0scrub.h Push for testing of encryption 2015-02-10 10:21:17 +01:00
btr0sea.h 5.6.31 2016-06-21 14:21:03 +02:00
btr0sea.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
btr0types.h 5.6.31 2016-06-21 14:21:03 +02:00
buf0buddy.h 5.6.31 2016-06-21 14:21:03 +02:00
buf0buddy.ic 5.6.31 2016-06-21 14:21:03 +02:00
buf0buf.h MDEV-11349 (1/2) Fix some clang 4.0 warnings 2016-11-25 09:09:51 +02:00
buf0buf.ic Output more information when assertion 2016-06-28 17:27:47 +03:00
buf0checksum.h move to storage/innobase 2015-05-04 19:17:21 +02:00
buf0dblwr.h move to storage/innobase 2015-05-04 19:17:21 +02:00
buf0dump.h move to storage/innobase 2015-05-04 19:17:21 +02:00
buf0flu.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
buf0flu.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
buf0lru.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
buf0lru.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
buf0mtflu.h Moved mt-flush code to buf0mtflu.[cc|h] and cleaned it up. This is for 2014-02-06 17:25:26 +02:00
buf0rea.h MDEV-8588: Assertion failure in file ha_innodb.cc line 21140 if at least one encrypted table exists and encryption service is not available 2015-09-04 20:19:45 +03:00
buf0types.h move to storage/innobase 2015-05-04 19:17:21 +02:00
data0data.h 5.6.31 2016-06-21 14:21:03 +02:00
data0data.ic 5.6.31 2016-06-21 14:21:03 +02:00
data0type.h move to storage/innobase 2015-05-04 19:17:21 +02:00
data0type.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
data0types.h move to storage/innobase 2015-05-04 19:17:21 +02:00
db0err.h MDEV-8764: Wrong error when encrypted table can't be decrypted. 2015-09-14 08:27:36 +03:00
dict0boot.h 5.6.31 2016-06-21 14:21:03 +02:00
dict0boot.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
dict0crea.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
dict0crea.ic 5.6.31 2016-06-21 14:21:03 +02:00
dict0dict.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
dict0dict.ic Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
dict0load.h 5.6.31 2016-06-21 14:21:03 +02:00
dict0load.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
dict0mem.h MDEV-11349 (1/2) Fix some clang 4.0 warnings 2016-11-25 09:09:51 +02:00
dict0mem.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
dict0pagecompress.h Enhancement: Change atomic_writes table option to enum type. Now every file can either use atomic writes, not use it or use default. 2014-01-10 12:11:36 +02:00
dict0pagecompress.ic InnoDB/XtraDB Encryption cleanup. 2015-04-07 23:44:56 +02:00
dict0priv.h move to storage/innobase 2015-05-04 19:17:21 +02:00
dict0priv.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
dict0stats.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
dict0stats.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
dict0stats_bg.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
dict0stats_bg.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
dict0types.h move to storage/innobase 2015-05-04 19:17:21 +02:00
dyn0dyn.h 5.6.31 2016-06-21 14:21:03 +02:00
dyn0dyn.ic 5.6.31 2016-06-21 14:21:03 +02:00
eval0eval.h move to storage/innobase 2015-05-04 19:17:21 +02:00
eval0eval.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
eval0proc.h move to storage/innobase 2015-05-04 19:17:21 +02:00
eval0proc.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
fil0crypt.h MDEV-10368: get_latest_version() called too often 2016-12-13 11:51:33 +02:00
fil0crypt.ic Add encryption key id to the API as a distinct concept 2015-04-09 19:35:40 +02:00
fil0fil.h MDEV-9931: InnoDB reads first page of every .ibd file at startup 2016-09-22 16:38:24 +03:00
fil0fil.ic MDEV-10377: innodb.innodb_blob_truncate fails in buildbot: Failing assertion: page_type == 34354 || page_type == 37401 || page_type == 17855 || page_type == 2 || page_type == 3 || ... 2016-11-22 16:38:36 +02:00
fil0pagecompress.h MDEV-11349 (1/2) Fix some clang 4.0 warnings 2016-11-25 09:09:51 +02:00
fsp0fsp.h MDEV-11349 (1/2) Fix some clang 4.0 warnings 2016-11-25 09:09:51 +02:00
fsp0fsp.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
fsp0pagecompress.h Merged from 10.0-FusionIO: 2015-02-19 17:42:18 +02:00
fsp0pagecompress.ic MDEV-8770: Incorrect error message when importing page compressed tablespace 2015-09-22 07:35:00 +03:00
fsp0types.h MDEV-9040: 10.1.8 fails after upgrade from 10.0.21 2015-11-05 10:30:48 +02:00
fts0ast.h 5.6.31 2016-06-21 14:21:03 +02:00
fts0blex.h move to storage/innobase 2015-05-04 19:17:21 +02:00
fts0fts.h MDEV-11233 CREATE FULLTEXT INDEX with a token longer than 127 bytes 2016-12-05 15:25:59 +02:00
fts0opt.h move to storage/innobase 2015-05-04 19:17:21 +02:00
fts0pars.h move to storage/innobase 2015-05-04 19:17:21 +02:00
fts0priv.h 5.6.31 2016-06-21 14:21:03 +02:00
fts0priv.ic 5.6.31 2016-06-21 14:21:03 +02:00
fts0tlex.h move to storage/innobase 2015-05-04 19:17:21 +02:00
fts0types.h 5.6.30 2016-04-26 19:05:10 +02:00
fts0types.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
fts0vlc.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
fut0fut.h move to storage/innobase 2015-05-04 19:17:21 +02:00
fut0fut.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
fut0lst.h move to storage/innobase 2015-05-04 19:17:21 +02:00
fut0lst.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
ha0ha.h move to storage/innobase 2015-05-04 19:17:21 +02:00
ha0ha.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
ha0storage.h move to storage/innobase 2015-05-04 19:17:21 +02:00
ha0storage.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
ha_prototypes.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
handler0alter.h 5.6.31 2016-06-21 14:21:03 +02:00
hash0hash.h move to storage/innobase 2015-05-04 19:17:21 +02:00
hash0hash.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
ibuf0ibuf.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
ibuf0ibuf.ic 5.6.27 2015-10-09 17:21:46 +02:00
ibuf0types.h move to storage/innobase 2015-05-04 19:17:21 +02:00
lock0iter.h move to storage/innobase 2015-05-04 19:17:21 +02:00
lock0lock.h A few fixes for VATS in 10.1 2016-10-25 18:57:03 -04:00
lock0lock.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
lock0priv.h Merge branch 'merge-innodb-5.6' into 10.0 2016-06-21 14:58:19 +02:00
lock0priv.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
lock0types.h move to storage/innobase 2015-05-04 19:17:21 +02:00
log0crypt.h MDEV-9793: getting mysqld crypto key from key version failed 2016-03-30 16:09:47 +03:00
log0log.h Fix spelling: shhould -> should 2016-06-01 06:09:13 +00:00
log0log.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
log0recv.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
log0recv.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
mach0data.h 5.6.31 2016-06-21 14:21:03 +02:00
mach0data.ic MDEV-11349 (2/2) Fix some bogus-looking Valgrind warnings 2016-11-25 12:34:02 +02:00
mem0dbg.h move to storage/innobase 2015-05-04 19:17:21 +02:00
mem0dbg.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
mem0mem.h 5.6.31 2016-06-21 14:21:03 +02:00
mem0mem.ic 5.6.31 2016-06-21 14:21:03 +02:00
mem0pool.h move to storage/innobase 2015-05-04 19:17:21 +02:00
mem0pool.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
mtr0log.h move to storage/innobase 2015-05-04 19:17:21 +02:00
mtr0log.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
mtr0mtr.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
mtr0mtr.ic Merge branch 'merge-innodb-5.6' into 10.0 2016-06-21 14:58:19 +02:00
mtr0types.h move to storage/innobase 2015-05-04 19:17:21 +02:00
os0file.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
os0file.ic MDEV-8901: InnoDB: Punch hole is incorrecty done also to log files causing assertion and database corruption 2015-10-06 15:40:26 +03:00
os0once.h move to storage/innobase 2015-05-04 19:17:21 +02:00
os0proc.h move to storage/innobase 2015-05-04 19:17:21 +02:00
os0proc.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
os0sync.h MDEV-10341: InnoDB: Failing assertion: mutex_own(mutex) - mutex_exit_func 2016-08-23 21:24:36 +03:00
os0sync.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
os0thread.h 5.6.31 2016-06-21 14:21:03 +02:00
os0thread.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
page0cur.h 5.6.31 2016-06-21 14:21:03 +02:00
page0cur.ic MDEV-8588: Assertion failure in file ha_innodb.cc line 21140 if at least one encrypted table exists and encryption service is not available 2015-09-04 20:19:45 +03:00
page0page.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
page0page.ic MDEV-9931: InnoDB reads first page of every .ibd file at startup 2016-09-22 16:38:24 +03:00
page0types.h Merge branch 'merge-innodb-5.6' into 10.0 2016-06-21 14:58:19 +02:00
page0zip.h Merge branch 'merge-innodb-5.6' into 10.0 2016-06-21 14:58:19 +02:00
page0zip.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
pars0grm.h move to storage/innobase 2015-05-04 19:17:21 +02:00
pars0opt.h move to storage/innobase 2015-05-04 19:17:21 +02:00
pars0opt.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
pars0pars.h 5.6.31 2016-06-21 14:21:03 +02:00
pars0pars.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
pars0sym.h move to storage/innobase 2015-05-04 19:17:21 +02:00
pars0sym.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
pars0types.h move to storage/innobase 2015-05-04 19:17:21 +02:00
que0que.h move to storage/innobase 2015-05-04 19:17:21 +02:00
que0que.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
que0types.h move to storage/innobase 2015-05-04 19:17:21 +02:00
read0read.h 5.6.31 2016-06-21 14:21:03 +02:00
read0read.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
read0types.h move to storage/innobase 2015-05-04 19:17:21 +02:00
rem0cmp.h 5.6.31 2016-06-21 14:21:03 +02:00
rem0cmp.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
rem0rec.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
rem0rec.ic 5.6.31 2016-06-21 14:21:03 +02:00
rem0types.h move to storage/innobase 2015-05-04 19:17:21 +02:00
row0ext.h move to storage/innobase 2015-05-04 19:17:21 +02:00
row0ext.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
row0ftsort.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
row0import.h 5.6.31 2016-06-21 14:21:03 +02:00
row0import.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
row0ins.h 5.6.31 2016-06-21 14:21:03 +02:00
row0ins.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
row0log.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
row0log.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
row0merge.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
row0mysql.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
row0mysql.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
row0purge.h 5.6.31 2016-06-21 14:21:03 +02:00
row0purge.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
row0quiesce.h 5.6.31 2016-06-21 14:21:03 +02:00
row0quiesce.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
row0row.h 5.6.31 2016-06-21 14:21:03 +02:00
row0row.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
row0sel.h 5.6.31 2016-06-21 14:21:03 +02:00
row0sel.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
row0types.h move to storage/innobase 2015-05-04 19:17:21 +02:00
row0uins.h 5.6.31 2016-06-21 14:21:03 +02:00
row0uins.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
row0umod.h 5.6.31 2016-06-21 14:21:03 +02:00
row0umod.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
row0undo.h move to storage/innobase 2015-05-04 19:17:21 +02:00
row0undo.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
row0upd.h 5.6.31 2016-06-21 14:21:03 +02:00
row0upd.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
row0vers.h 5.6.31 2016-06-21 14:21:03 +02:00
row0vers.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
srv0conc.h move to storage/innobase 2015-05-04 19:17:21 +02:00
srv0mon.h MDEV-9931: InnoDB reads first page of every .ibd file at startup 2016-09-22 16:38:24 +03:00
srv0mon.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
srv0srv.h MDEV-10368: get_latest_version() called too often 2016-12-13 11:51:33 +02:00
srv0srv.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
srv0start.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
sync0arr.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
sync0arr.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
sync0rw.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
sync0rw.ic Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
sync0sync.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
sync0sync.ic Merge branch '10.0' into 10.1 2016-08-25 12:40:09 +02:00
sync0types.h move to storage/innobase 2015-05-04 19:17:21 +02:00
trx0i_s.h move to storage/innobase 2015-05-04 19:17:21 +02:00
trx0purge.h move to storage/innobase 2015-05-04 19:17:21 +02:00
trx0purge.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
trx0rec.h 5.6.31 2016-06-21 14:21:03 +02:00
trx0rec.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
trx0roll.h 5.6.31 2016-06-21 14:21:03 +02:00
trx0roll.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
trx0rseg.h move to storage/innobase 2015-05-04 19:17:21 +02:00
trx0rseg.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
trx0sys.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
trx0sys.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
trx0trx.h MDEV-11236 Failing assertion: state == TRX_STATE_NOT_STARTED 2016-12-02 16:25:47 +02:00
trx0trx.ic MDEV-11236 Failing assertion: state == TRX_STATE_NOT_STARTED 2016-12-02 16:25:47 +02:00
trx0types.h move to storage/innobase 2015-05-04 19:17:21 +02:00
trx0undo.h Merge branch 'merge-innodb-5.6' into 10.0 2016-06-21 14:58:19 +02:00
trx0undo.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
trx0xa.h move to storage/innobase 2015-05-04 19:17:21 +02:00
univ.i Merge branch '10.0' into 10.1 2016-09-28 17:55:28 +02:00
usr0sess.h move to storage/innobase 2015-05-04 19:17:21 +02:00
usr0sess.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
usr0types.h move to storage/innobase 2015-05-04 19:17:21 +02:00
ut0bh.h move to storage/innobase 2015-05-04 19:17:21 +02:00
ut0bh.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
ut0byte.h 5.6.31 2016-06-21 14:21:03 +02:00
ut0byte.ic Remove some unnecessary parentheses 2016-05-26 10:33:17 +00:00
ut0counter.h move to storage/innobase 2015-05-04 19:17:21 +02:00
ut0crc32.h Use POWER8 accelerated crc32 2015-12-15 15:11:17 +11:00
ut0dbg.h 5.6.31 2016-06-21 14:21:03 +02:00
ut0list.h move to storage/innobase 2015-05-04 19:17:21 +02:00
ut0list.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
ut0lst.h move to storage/innobase 2015-05-04 19:17:21 +02:00
ut0mem.h 5.6.31 2016-06-21 14:21:03 +02:00
ut0mem.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
ut0rbt.h move to storage/innobase 2015-05-04 19:17:21 +02:00
ut0rnd.h 5.6.31 2016-06-21 14:21:03 +02:00
ut0rnd.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
ut0sort.h move to storage/innobase 2015-05-04 19:17:21 +02:00
ut0timer.h MDEV-5834: Merge Kakao Defragmentation implementation to MariaDB 10.1 2014-08-06 15:28:58 +03:00
ut0timer.ic MDEV-5834: Merge Kakao Defragmentation implementation to MariaDB 10.1 2014-08-06 15:28:58 +03:00
ut0ut.h Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
ut0ut.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
ut0vec.h move to storage/innobase 2015-05-04 19:17:21 +02:00
ut0vec.ic move to storage/innobase 2015-05-04 19:17:21 +02:00
ut0wqueue.h move to storage/innobase 2015-05-04 19:17:21 +02:00