| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
| |
Use microsecond_interval_timer()
or my_interval_timer() [in nanoseconds] instead.
|
|\ |
|
| |\ |
|
| |/
| |
| |
| |
| |
| | |
Valgrind started supporting CRC32 instruction starting with version
3.6.1, released in 2011. Thus remove the fallback to software
implementation in case running under Valgrind.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is motivated by PS-5221 in
percona/percona-server@2817c561fce9e20a83b13272ac45fd333467715d
The coarser-precision ut_time() will still refer to the
system clock, meaning that bad things can happen if the
real time clock is adjusted backwards.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There is one directly applicable change to InnoDB:
commit 739f5239f12904247d2a61f9880ea1fafbedc332 in the
5.5 branch will be merged before the next MariaDB releases.
Another potentially applicable change will be tracked
separately as MDEV-20126.
Thus, here we only update the InnoDB version number and do
not change anything else.
|
| |
| |
| |
| | |
This is follow-up to d36c107a6b7f9e9bc9425072f2ac13afd2334069
|
| | |
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is a regression due to MDEV-16515 that affects some versions in
the MariaDB 10.1 server series starting with 10.1.35, and possibly
all versions starting with 10.2.17, 10.3.8, and 10.4.0.
The idea of MDEV-16515 is to allow DROP TABLE to be interrupted,
in case it was stuck due to some concurrent activity. We already
made some cases of internal DROP TABLE immune to kill in MDEV-18237,
MDEV-16647, MDEV-17470. We must include the cleanup of
CREATE TABLE...SELECT in the list of such internal DROP TABLE.
ha_innobase::delete_table(): Pass create_failed=true if the current
SQL statement is CREATE, so that the table will be dropped.
row_drop_table_for_mysql(): If create_failed=true, do not allow
the operation to be interrupted.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is the race between DELETE and INSERT (or other any two operations accessing to the table).
What should happen in good case:
1. ALTER TABLE is issued. vc_templ->default_rec is initialized with temporary share's default_fields
2. temporary share is freed, but datadict is still there, with garbage in vc_templ->default_rec
3. DELETE is issued. It is first after ALTER TABLE finished.
4. ha_innobase::open() is called, ib_table->get_ref_count() should be one
5. we reinitialize vc_templ, so no garbage anymore
What actually happens:
3. DELETE is issued.
4. ha_innobase::open() is called and ib_table->get_ref_count() is 1
5. INSERT (or SELECT etc.) is issued in parallel
6. ha_innobase::open() is called and ib_table->get_ref_count() is 1
7. we check ib_table->get_ref_count() and it is 2 in both threads when we want reinitialize vc_templ
8. garbage is there
Fix:
* Do not store pointers to SHARE memory in table dict, copy it instead.
* But then we don't need to refresh it each time when refcount=1.
|
| | |
|
| |
| |
| |
| | |
checking as the tests for Galera (continuation of MDEV-18565 task)
|
| | |
|
| | |
|
| |
| |
| |
| | |
Make it to work on Windows, too.
|
| |
| |
| |
| | |
Rewrite the unportable sed/shell code in Perl.
|
| |
| |
| |
| | |
Store REDZONE_SIZE poined bytes before every allocated chunk of memory
|
|\ \
| |/ |
|
| | |
|
| |
| |
| |
| | |
The embedded server does not HAVE_PSI_STAGE_INTERFACE.
|
| |
| |
| |
| | |
row_merge_read_clustered_index(): fix one more place with buf and merge_buf[i]
|
|\ \
| |/ |
|
| |
| |
| |
| | |
The results are nondeterministic on MariaDB Server 10.1.
|
| | |
|
| |
| |
| |
| | |
row_merge_read_clustered_index(): make buf always equals to merge_buf[i]
|
|\ \
| |/
| |
| |
| | |
MDEV-20094 was filed for the unexpected result differences for the test
innodb.check_ibd_filesize.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
"COMMIT", if use "mysqlbinlog ... | mysql ..."
Problem:
=======
Executing command, "mysqlbinlog --read-from-remote-server --host='xx.xx.xx.xx'
--port=3306 --user=xxx --password=xxx --database=mysql --to-last-log
mysql-bin.000001 --start-position=1098699 --stop-never |mysql -uxxx -pxxx", we
found that last data read from remote couldn't commit.
Analysis:
========
The purpose of 'Write_on_release_cache' is that the contents of the Cache will
automatically be written to a dedicated result file on destruction. Flush
operation on the result file is controlled by a flag 'FLUSH_F'. Events which
require force flush upon their destruction will have to enable this
'Write_on_release_cache::FLUSH_F'. At present the 'FLUSH_F' flag is defined as
an enum as shown below.
enum flag
{
FLUSH_F
};
Since 'FLUSH_F' is the first member without initialization it get the default
value '0'. Because of this the following flush condition never succeeds.
if (m_flags & FLUSH_F)
fflush(m_file);
At present the file gets flushed only during my_fclose(result_file) operation.
When continuous streaming is enabled through --stop-never option it never gets
flushed and hence events are not replicated.
Fix:
===
Initialize the enum value to non zero value.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
=======
Checksum fields can have value as zero. In that case, InnoDB falsely
consider that page should be all zeroes. It leads to wrong detection of page
corruption.
Solution:
========
Remove the condition that checks if checksum fields are zero then
page should be all zeroes.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
that was lost in c54271723c6
remove zlib/libxml2 workaround in CONNECT
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
also get rid of
chown: cannot access ‘/var/lib/mysql’: No such file or directory
before someone reports a bug that
MariaDB server or backup RPM install assumes mysql datadir exists
followup for bee24fe1818
|
| |
| |
| |
| |
| |
| | |
tables on master with syntax unsupported on slave
Add only test case for MDEV , because MDEV-19653 already fixed the issue.
|
| |
| |
| |
| | |
uninitialized variable when wsrep_provider is not initialized correctly, set to 'none' or when wsrep is switched off
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently, running mtr with an incorrect (for example, new or
obsolete) version of wsrep_provider (for example, with the 26
version of libgalera_smm.so) leads to the failure of tests in
several suites with vague error diagnostics.
As for the galera_3nodes suite, the mtr also does not effectively
check all the prerequisites after merge with MDEV-18426 fixes.
For example, tests that using mariabackup do not check for presence
of ss and socat/nc. This is due to improper handling of relative
paths in mtr scripts.
In addition, some tests in different suites can be run without
setting the environment variables such as MTR_GALERA_TFMT, XBSTREAM,
and so on.
To eliminate all these issues, this patch makes the following changes:
1. Added auxiliary wsrep_mtr_check utility (which located in the
mysql-test/lib/My/SafeProcess subdirectory), which compares the
versions of the wsrep API that used by the server and by the wsrep
provider library, and it does this comparison safely, without
accessing the API if the versions do not match.
2. All checks related to the presence of mariabackup and utilities
that necessary for its operation transferred from the local directories
of different mtr suites (from the suite.pm files) to the main suite.pm
file. This not only reduces the amount of code and eliminates duplication
of identical code fragments, but also avoids problems due to the inability
of mtr to consider relative paths to include files when checking skip
combinations.
3. Setting the values of auxiliary environment variables that
are necessary for Galera, SST scripts and mariabackup (to work
properly) is moved to the main mysql-test-run.pl script, so as
not to duplicate this code in different suites, and to avoid
partial corrections of the same errors for different suites
(while other suites remain uncorrected).
4. Fixed duplication of the have_file_key_management.inc and
have_filekeymanagement.inc files between different suites,
these checks are also transferred to the top level.
5. Added garbd presence check and garbd path variable.
https://jira.mariadb.org/browse/MDEV-18565
|
| |
| |
| |
| | |
It uses slave_gtid_info=optimized which is not supported in MariaDB
|
| |
| |
| |
| | |
It requires @@enable_blind_replace which MariaDB doesn't support
|
| |
| |
| |
| | |
It requires slave_exec_mode='SEMI_STRICT'
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fix this patch (two csets before):
Disable rocksdb.shutdown test
It was introduced by this patch in fb/mysql-5.6:
Author: Yoshinori Matsunobu <yoshinori@fb.com>
Date: Mon Jun 10 14:09:28 2019 -0700
Extending SHUTDOWN query to support read_only/aborting
Summary:
This diff extends SHUTDOWN query to support the following
features.
- Aborting with any specified exit code (range is 0..255).
If nothing is specified or 0 is given, it does default clean
shutdown. If 1+ is given, exits with the given error code
immediately. This is helpful to shutting down instance
even if it is stuck somewhere.
MariaDB doesn't support SHUTDOWN statement or have any other way
to exit the server process.
|
| |
| |
| |
| | |
Part #2: also replace error text in SHOW WARNINGS
|