- 04 Apr, 2020 12 commits
-
-
Otto Kekäläinen authored
This fixes Lintian errors and warnings: E: mariadb-client-10.5: manpage-not-compressed usr/share/man/man1/mariadb-analyze.1 E: mariadb-client-10.5: manpage-not-compressed usr/share/man/man1/mariadb-optimize.1 E: mariadb-client-10.5: manpage-not-compressed usr/share/man/man1/mariadb-repair.1 E: mariadb-client-10.5: manpage-not-compressed usr/share/man/man1/mysqlanalyze.1 E: mariadb-client-10.5: manpage-not-compressed usr/share/man/man1/mysqloptimize.1 E: mariadb-client-10.5: manpage-not-compressed usr/share/man/man1/mysqlrepair.1 W: mariadb-client-10.5: binary-without-manpage usr/bin/mariadb-conv W: libmariadb-dev: binary-without-manpage usr/bin/mariadb_config If the binary name is mariadb_config, the manpage needs to be mariadb_config.1. Also run 'wrap-and-sort -a -v' to get lists in correct order. In addition, sort .gitignore and remove duplicate lines.
-
Otto Kekäläinen authored
The dpkg-buildpackage has by default sensible values for --jobs and --try-jobs, and it also inherits whatever 'parallel' is set in DEB_BUILD_OPTIONS. Overriding it here should not be needed and removing it is better, since it allows build systems to control the level or parallel builds via DEB_BUILD_OPTIONS if they want, which they often do (e.g. to avoid CPU congestion or overheating laptops).
-
Otto Kekäläinen authored
Make package have sensible control file relations to mysql-8.0. Also some cleanup: - Remove obsolete versioned control relationships. When the package name already has a version older than current package, the extra version is obsolete. - Remove obsolete postinst script that was empty - Remove priority "extra" which is deprecated, use "optional" that applies for the whole source package instead.
-
Otto Kekäläinen authored
The current debian/control file and other packaging of 10.5 targets the latest Debian unstable. In autobake-deb.sh there are automatic build adaptations for older Debian/Ubuntu releases. Some adaptations were for Debian versions prior to Jessie and Ubuntu versions prior to Trusty. Those distro releases are no longer supported anyway, so these should be cleaned away now in the 10.5 release cycle. Summary: - Debian Jessie has libcrack2 release 2.9.2-1, no need to have adaptations for any older environments - Debian Jessie has libpcre3-dev release 2:8.35-3.3, no need to consider older versions - Systemd has been available since Debian Jessie, no need to consider that a Debian/Ubuntu environment would not have it available adaptations for environments for anything older
-
Elena Stepanova authored
-
Sergey Vojtovich authored
Regression after bfdd30d3. Initialize addition TABLE_LIST members which are used by subsequent close_cached_tables() call.
-
Sergey Vojtovich authored
-
Sergey Vojtovich authored
It isn't an "option" anymore.
-
Sergey Vojtovich authored
-
Sergey Vojtovich authored
Make it static, coding style cleanup, declare consistently with all callers (same ifdefs).
-
Sergey Vojtovich authored
-
- 03 Apr, 2020 17 commits
-
-
Aleksey Midenkov authored
-
Aleksey Midenkov authored
- Ignore system-invisible fields (as well as for setting default value); - Handle rename of system time and period fields.
-
Aleksey Midenkov authored
-
Aleksey Midenkov authored
libmariadb revision updated.
-
Sergey Vojtovich authored
-
Marko Mäkelä authored
This bug was introduced by MDEV-15528 commit a35b4ae8. In the case that I analyzed, we failed to apply an EXTENDED,INSERT_REUSE_REDUNDANT redo log record whose preceding record points to unallocated area after PAGE_HEAP_TOP. Had we properly written the FREE_PAGE record for the page, recovery would have processed it, because during the checkpoint, the log had been completely written past the LSN of the missed write. fseg_free_page_low(): Always invoke mtr_t::free(). The other call is in fsp_free_page().
-
Daniel Black authored
-
Sergey Vojtovich authored
Let auto repair table and truncate table routines flush TABLE_SHARE directly. Part of MDEV-17882 - Cleanup refresh version
-
Sergey Vojtovich authored
TDC_RT_REMOVE_ALL -> tdc_remove_table(). Some occurrences replaced with TDC_element::flush() (whenver TABLE_SHARE is available). TDC_RT_REMOVE_NOT_OWN[_KEEP_SHARE] -> TDC_element::flush(). These modes assume that current thread owns TABLE_SHARE reference, which means we can avoid hash lookup and flush unused TABLE instances directly. TDC_RT_REMOVE_UNUSED -> TDC_element::flush_unused(). Only [ab]used by mysql_admin_table() currently. Should be removed eventually. Part of MDEV-17882 - Cleanup refresh version
-
Sergey Vojtovich authored
As tc_purge() never marks share flushed, let tdc_remove_table() do it directly. Part of MDEV-17882 - Cleanup refresh version
-
Sergey Vojtovich authored
Aim of this patch is to remove tdc_remove_table(TDC_RT_REMOVE_UNUSED), which was mistakenly introduced by 055a3334. InnoDB allows only one open TABLE instance while performing table truncation. To fulfill this requirement: 1. MDL_EXCLUSIVE has to be acquired to block concurrent threads from accessing given table 2. cached TABLE instances have to be flushed 3. another InnoDB requirement is such that TABLE_SHARE and remaining TABLE instance have to be invalidated and re-opened after truncation This goes more or less inline with what regular TRUNCATE TABLE does. Alternative solution would be handler::ha_delete_all_rows(), but InnoDB doesn't implement it unfortunately. Part of MDEV-17882 - Cleanup refresh version
-
Sergey Vojtovich authored
Let DROP SERVER and ALTER SERVER perform fair affected tables flushing. That is acquire MDL_EXCLUSIVE and do tdc_remove_table(TDC_RT_REMOVE_ALL). Aim of this patch is elimination of another inconsistent use of TDC_RT_REMOVE_UNUSED. It fixes (to some extent) a problem described in the beginning of sql_server.cc, when close_cached_connection_tables() interferes with concurrent transaction. A better fix should probably introduce proper MDL locks for server objects? Part of MDEV-17882 - Cleanup refresh version
-
Sergey Vojtovich authored
Removed redundant tdc_remove_table(TDC_RT_REMOVE_ALL). Share was marked flushed by preceding wait_while_table_is_used() and eventually flushed by close_all_tables_for_name(). Part of MDEV-17882 - Cleanup refresh version
-
Sergey Vojtovich authored
close_all_tables_for_name() is always preceded by wait_while_table_is_used(), which makes tdc_remove_table() redundant. The only (now fixed) exception was close_cached_tables(). Part of MDEV-17882 - Cleanup refresh version
-
Sergey Vojtovich authored
Rather than flushing caches with tdc_remove_table(TDC_RT_REMOVE_UNUSED) flush them with extra(HA_EXTRA_FLUSH) instead. This goes inline with regular FTWRL. Part of MDEV-17882 - Cleanup refresh version
-
Marko Mäkelä authored
The template parameter mtr_t::OPT refers to optional, not optimized. Also the default parameter mtr_t::NORMAL refers to optimized writes. The name MAYBE_NOP would be more descriptive, conveying the idea that a write to a durable page might not actually have any effect.
-
Marko Mäkelä authored
mtr_t::log_write(): Fix an off-by-one error.
-
- 02 Apr, 2020 7 commits
-
-
Daniel Black authored
MDEV-18851: multiple sized large page support (linux)
-
Sergei Golubchik authored
MDEV-22113 SIGSEGV, ASAN use-after-poison, Assertion `next_insert_id == 0' in handler::ha_external_lock if the lookup_handler is allocated on the THD's memroot, it may not live long enough to be deleted in handler::ha_external_lock()
-
Daniel Black authored
Prevent errors like on FreeBSD [ 56%] Linking CXX shared module ha_test_sql_discovery.so cd /usr/home/dan/build-mariadb-server-10.5/storage/test_sql_discovery && /usr/local/bin/cmake -E cmake_link_script CMakeFiles/test_sql_discovery.dir/link.txt --verbose=1 /usr/bin/c++ -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -DNDEBUG -D_FORTIFY_SOURCE=2 -DDBUG_OFF -shared -o ha_test_sql_discovery.so CMakeFiles/test_sql_discovery.dir/test_sql_discovery.cc.o -lpthread ../../libservices/libmysqlservices.a -lmysqld -lpthread /usr/bin/ld: error: unable to find library -lmysqld Also tested on OpenIndiana successfully. Closes #1480
-
Rasmus Johansson authored
-
Otto Kekäläinen authored
Ubuntu Bionic 18.04 LTS will be around until 2023 while Xenial is only to 2021. Thus Bionic is much more suitable as the Travis-CI default build environment for the 10.5 branch. For now, still keep one Xenial build to ensure backwards compatibility. Disable main.udf test until MDEV-21976 is addressed.
-
Otto Kekäläinen authored
Number of jobs dropped from 23 -> 17 and build time from 8-10 hours to 3-4 hours. Drop GCC 6 and Clang 6 from build dependencies and version 6 is dropped from the jobs matrix. Also ignore arm64 and ppc64le on Bionic builds since they sporadically fail.
-
Marko Mäkelä authored
innodb_buffer_pool_evict_uncompressed(): Remove the mutex acquisition that was inadvertently added in 1a6f708e.
-
- 01 Apr, 2020 4 commits
-
-
Marko Mäkelä authored
In MDEV-12353, the calls to mtr_t::memo_modify_page() were accidentally removed along with mlog_open_and_write_index() and its callers. Let us resurrect the function to enable better debug checks. mtr_t::flag_modified(): Renamed from mtr_t::set_modified() and made private. mtr_t::set_modified(): Take const buf_block_t& as a parameter. In several mtr_t member functions, replace const buf_page_t& parameters with const buf_block_t&, so that we can pass the parameter to set_modified(). mtr_t::modify(): Add a MTR_MEMO_MODIFY entry for a block that is guaranteed to be modified in the mini-transaction.
-
Marko Mäkelä authored
page_zip_clear_rec(): Explicitly initialize len in non-debug builds to avoid a warning about possibly invalid memset() length.
-
Marko Mäkelä authored
copy_keys_from_share(): Use reinterpret_cast instead of manipulating a reference to a type-punned pointer. This cleans up after the cleanup commit 0515577d.
-
Marko Mäkelä authored
In commit a5584b13 some scrubbing-related status variables were removed along with the background scrubbing code. The status variable INNODB_ENCRYPTION_NUM_KEY_REQUESTS was inadvertently removed as part of that. innodb_status_variables[]: Restore "encryption_num_key_requests". We introduce the test innodb.innodb_status_variables in order to catch similar regressions in the future.
-