- 26 Jan, 2020 2 commits
-
-
Elena Stepanova authored
-
Sergei Petrunia authored
-
- 25 Jan, 2020 1 commit
-
-
Oleksandr Byelkin authored
-
- 24 Jan, 2020 8 commits
-
-
Sergei Petrunia authored
[Variant 2 of the fix: collect the attached conditions] Problem: make_join_select() has a section of code which starts with "We plan to scan all rows. Check again if we should use an index." the code in that section will [unnecessarily] re-run the range optimizer using this condition: condition_attached_to_current_table AND current_table's_ON_expr Note that the original invocation of range optimizer in make_join_statistics was done using the whole select's WHERE condition. Taking the whole select's WHERE condition and using multiple-equalities allowed the range optimizer to infer more range restrictions. The fix: - Do range optimization using a condition that is an AND of this table's condition and all of the previous tables' conditions. - Also, fix the range optimizer to prefer SEL_ARGs with type=KEY_RANGE over SEL_ARGS with type=MAYBE_KEY, regardless of the key part. Computing key_and( SEL_ARG(type=MAYBE_KEY key_part=1), SEL_ARG(type=KEY_RANGE, key_part=2) ) will now produce the SEL_ARG with type=KEY_RANGE.
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Marko Mäkelä authored
-
Sujatha authored
MDEV-21490: binlog tests fail with valgrind: Conditional jump or move depends on uninitialised value in sql_ex_info::init Problem: ======= P1) Conditional jump or move depends on uninitialised value(s) sql_ex_info::init(char const*, char const*, bool) (log_event.cc:3083) code: All the following variables are not initialized. ---- return ((cached_new_format != -1) ? cached_new_format : (cached_new_format=(field_term_len > 1 || enclosed_len > 1 || line_term_len > 1 || line_start_len > 1 || escaped_len > 1))); P2) Conditional jump or move depends on uninitialised value(s) Rows_log_event::Rows_log_event(char const*, unsigned int, Format_description_log_event const*) (log_event.cc:9571) Code: Uninitialized values is reported for 'var_header_len' variable. ---- if (var_header_len < 2 || event_len < static_cast<unsigned int>(var_header_len + (post_start - buf))) P3) Conditional jump or move depends on uninitialised value(s) Table_map_log_event::pack_info(Protocol*) (log_event.cc:11553) code:'m_table_id' is uninitialized. ---- void Table_map_log_event::pack_info(Protocol *protocol) ... size_t bytes= my_snprintf(buf, sizeof(buf), "table_id: %lu (%s.%s)", m_table_id, m_dbnam, m_tblnam); Fix: === P1 - Fix) Initialize cached_new_format,field_term_len, enclosed_len, line_term_len, line_start_len, escaped_len members in default constructor. P2 - Fix) "var_header_len" is initialized by reading the event buffer. In case of an invalid event the buffer will contain invalid data. Hence added a check to validate the event data. If event_len is smaller than valid header length return immediately. P3 - Fix) 'm_table_id' within Table_map_log_event is initialized by reading data from the event buffer. Use 'VALIDATE_BYTES_READ' macro to validate the current state of the buffer. If it is invalid return immediately.
-
- 23 Jan, 2020 6 commits
-
-
Sergei Golubchik authored
this test needs a *server* and tries to connect with $MYSQL to it
-
Alexey Botchkov authored
PCRE reports small frame size working with ASAN, so the test has to be ready for the minimlas possible size.
-
Marko Mäkelä authored
This is the only symlink in the repository. Symlinks can cause trouble when using file systems or operating systems that do not support them. Also remove the unused file DartConfig.cmake that refers to the script.
-
Marko Mäkelä authored
cmake -DWITH_INNODB_EXTRA_DEBUG:BOOL=ON was broken ever since commit 8777458a (MDEV-6076 Persistent AUTO_INCREMENT for InnoDB). There is a race condition between page reads that call page_zip_validate() (while holding clustered index root page S-latch) and writes that update PAGE_ROOT_AUTO_INC (with buf_block_t::lock SX-latch, compatible with S-latch). page_zip_validate_low(): Skip the PAGE_ROOT_AUTO_INC field on clustered index root pages in order to avoid false positives.
-
Vlad Lesin authored
Post-push fix. aria_pack_mdev14183 test is unstable. The fix is the following: 1. Disable the test for embedded server. 2. Create non-"transactional" Aria table in the test, as aria_pack does not support "transactional" Aria tables.
-
Sergei Golubchik authored
tests for --ssl-verify-server-cert with system CA and with incorrect hostname
-
- 22 Jan, 2020 1 commit
-
-
Jan Lindström authored
This is 10.4 version. Idea is to create monitor thread for both donor and joiner that will periodically if needed extend systemd timeout while SST is being processed. In 10.4 actual SST is executed by running SST script and exchanging messages on pipe using blocking fgets. This fix starts monitoring thread before SST script is started and we stop monitoring thread when SST has been completed.
-
- 21 Jan, 2020 12 commits
-
-
Oleksandr Byelkin authored
-
Sergei Golubchik authored
MDEV-21249 MariaDB 10.3.10 When referring to bigint to generate timestamp data in the virtual generated column, the value of the generated column does not change when the time zone changes FROM_UNIXTIME() depends on @@time_zone, so it's VCOL_SESSION_FUNC
-
Marko Mäkelä authored
This bug is a cousin of MDEV-18719 and MDEV-20190, which failed to relax a debug assertion in one more code path. row_log_table_apply_convert_mrec(): Use dict_col_t::same_format() and ignore all format-agnostic flags in the assertions.
-
Andrei Elkin authored
Parallel slave server shutdown found to be hanging in close_connections() triggered by shutdown due to a slave worker thread would not be notified to exit in case the worker was sitting idle. Fixed with destroying the worker pool earlier that is in slave_prepare_for_shutdown() when all their driver threads have already left. A test file is added to simulate the bug condition as well as check multi-sourced and not-idle worker cases.
-
Vlad Lesin authored
Column definition order in st_maria_share::columndef can differ from order of fields in record(see also st_maria_share::column_nr, st_maria_columndef::column_nr, _ma_column_nr_write(), _ma_column_nr_read()). This was not taken into account in aria_pack tool. The fix is to initialize elements of HUFF_COUNTS array in the correct order.
-
Alice Sherepa authored
-
Alice Sherepa authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Julius Goryavsky authored
Setting "streamfmt=mbstream" in the "[sst]" section causes SST to fail because the format automatically switches to 'tar' by default (insead of mbstream). To fix this, we need to add mbstream to the list of valid values for the format, making it synonymous with xbstream. This must be done both in the SST script and when parsing the options of the corresponding utilities.
-
Vladislav Vaintroub authored
There is a warning about inconsistency between function definition and prototype. See https://github.com/wolfSSL/wolfssl/issues/2752 Disable specific MSVC warning for now.
-
Oleksandr Byelkin authored
-
- 20 Jan, 2020 10 commits
-
-
Sergei Golubchik authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Marko Mäkelä authored
-
Jan Lindström authored
Add mutex protection while we calculate required slave thread change and create them. Add error handling.
-
Marko Mäkelä authored
The MDEV-17062 fix in commit c4195305 was omitted.
-
Jan Lindström authored
Add wait conditions to make sure correct number of rows have been replicated.
-
Julius Goryavsky authored
If the initialization of the wsrep provider failed, in some cases the internal variable wrep_inited indicating that the initialization has already been completed is still set to "1", which then leads to confusion in the initialization status. To solve the problem, we should set this variable to "1" only if the wsrep provider initialization really completed successfully. An earlier issue has already been fixed for branch 10.4, and this patch contains a fix for earlier versions (where Galera 3.x is used).
-