mariadb/storage/innobase
Marko Mäkelä b1f2d3a8c8 MDEV-21256: Replace the 64-bit LCG with a 32-bit Galois LFSR
We should not need anywhere near 32 bits of entropy, so we might
just limit ourselves to a 32-bit random number generator.

Also, it might be cheaper to use exclusive-or, bit shifting and
conditional jumps, instead of multiplication and addition.

We use relaxed atomic operations on the global random number generator
state in order in an attempt to silence any warnings about race conditions.
There is an obvious race condition between the load and store in
ut_rnd_gen(), but we do not think that it matters much that the
state of the random number generator could 'stutter'.

This change seems makes the 'uncompress_ops' nondeterministic
in innodb_zip.cmp_per_index after the restart. It looks like
there is an inherent race condition in the test, because the
table could be opened for InnoDB statistics recalculation
already before innodb_cmp_per_index_enabled was set. We might
end up having uncompress_ops anywhere between 0 and 9, or perhaps
even more. Let us remove that part of the test.
2019-12-10 16:59:34 +02:00
..
btr MDEV-21024: Clean up IMPORT TABLESPACE 2019-11-11 14:14:26 +02:00
buf MDEV-21069 Crash on DROP TABLE if the data file is corrupted 2019-11-19 00:07:06 +02:00
data MDEV-19292 "Row size too large" error when creating table with lots columns when row format is DYNAMIC or COMPRESSED 2019-07-05 17:02:21 +03:00
dict MDEV-21256: Simplify ut_rnd_interval() 2019-12-10 16:58:28 +02:00
eval MDEV-21254 Remove unused keywords from the InnoDB SQL parser 2019-12-09 12:32:04 +02:00
fil MDEV-20813: Do not rotate keys for unallocated pages 2019-10-14 17:26:21 +03:00
fsp MDEV-21024: Cleanup XDES_CLEAN_BIT 2019-11-11 14:18:50 +02:00
fts Merge 10.1 to 10.2 2019-10-25 17:33:39 +03:00
fut Merge 10.1 into 10.2 2019-05-13 17:54:04 +03:00
gis MDEV-21256: Reduce the use of ut_rnd_gen_next_ulint() 2019-12-10 16:58:28 +02:00
ha Merge 10.1 into 10.2 2019-05-13 17:54:04 +03:00
handler MDEV-20832 Don't print "row size too large" warnings in error log if innodb_strict_mode=OFF and log_warnings<=2 2019-11-20 19:48:03 +07:00
ibuf MDEV-21152 Bogus debug assertion btr_pcur_is_after_last_in_tree() in ibuf code 2019-11-26 16:32:51 +02:00
include MDEV-21256: Replace the 64-bit LCG with a 32-bit Galois LFSR 2019-12-10 16:59:34 +02:00
lock MDEV-20483 trx_lock_t::table_locks is not a subset of trx_lock_t::trx_locks 2019-09-17 19:54:55 +05:30
log MDEV-14602: Cleanup recv_dblwr_t::find_page() 2019-11-12 14:41:24 +02:00
mach Merge 10.1 into 10.2 2019-05-13 17:54:04 +03:00
mem Clean up ut_strlcpy(), ut_strlcpy_rev() 2019-10-30 06:42:51 +02:00
mtr Clean up mtr_t::commit() further 2019-11-13 09:51:28 +02:00
mysql-test/storage_engine Fix for MDEV-17449, typo in error message (#1146) 2019-03-24 21:24:28 +04:00
os Merge branch '10.1' into 10.2 2019-12-03 14:45:06 +01:00
page MDEV-21256: Simplify ut_rnd_interval() 2019-12-10 16:58:28 +02:00
pars MDEV-21254 Remove unused keywords from the InnoDB SQL parser 2019-12-09 12:32:04 +02:00
que Fix CMAKE_BUILD_TYPE=Debug 2019-10-11 18:36:08 +03:00
read MVCC::view_close(): Correct comments 2019-09-04 09:42:38 +03:00
rem Merge 10.1 into 10.2 2019-05-13 17:54:04 +03:00
row MDEV-21069 Crash on DROP TABLE if the data file is corrupted 2019-11-19 00:07:06 +02:00
srv Fix -std=c++98 -Wzero-length-array 2019-10-11 21:26:16 +03:00
sync MDEV-21256: Simplify ut_rnd_interval() 2019-12-10 16:58:28 +02:00
trx Clean up ut_strlcpy(), ut_strlcpy_rev() 2019-10-30 06:42:51 +02:00
ut MDEV-21256: Replace the 64-bit LCG with a 32-bit Galois LFSR 2019-12-10 16:59:34 +02:00
.clang-format add .clang-format file for InnoDB 2019-10-29 21:56:24 +03:00
bzip2.cmake Merge 10.1 into 10.2 2019-05-13 17:54:04 +03:00
CMakeLists.txt Merge 10.1 into 10.2 2019-07-25 12:14:27 +03:00
compile-innodb Merge branch '5.5' into 10.1 2019-05-11 22:19:05 +03:00
COPYING.Google move to storage/innobase 2015-05-04 19:17:21 +02:00
COPYING.Percona move to storage/innobase 2015-05-04 19:17:21 +02:00
innodb.cmake Merge 10.1 into 10.2 2019-03-27 12:26:11 +02:00
lz4.cmake Merge 10.1 into 10.2 2019-05-13 17:54:04 +03:00
lzma.cmake Merge 10.1 into 10.2 2019-05-13 17:54:04 +03:00
lzo.cmake Merge 10.1 into 10.2 2019-05-13 17:54:04 +03:00
plugin_exports Solaris compilation failure: xtradb is linked in statically, ha_innodb.so needs 2014-05-01 14:05:52 +02:00
snappy.cmake Merge 10.1 into 10.2 2019-05-13 17:54:04 +03:00