- 07 Apr, 2020 4 commits
-
-
Rasmus Johansson authored
Changed wording in error messages from MySQL to MariaDB. In cases where the word server could be used instead it was done. Tests that have these errors recorded were updated.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
In a multi-batch recovery, we must ensure that INIT_PAGE and especially the MDEV-15528 FREE_PAGE records will be taken properly into account. Writing a FREE_PAGE record gives the server permission to omit a page write. If recovery insists on applying log to a page whose page flush has been omitted, then the consistency checks in the application of high-level redo log records (appending an undo log record, inserting or deleting an index record) will likely fail. mlog_init_t::add(): Return whether the state was changed. mlog_init_t::will_avoid_read(): Determine whether a page read will be avoided and whether older log records can be safely skipped. recv_sys_t::parse(): Even if store==STORE_NO, process the records INIT_PAGE and FREE_PAGE. While processing them, we can delete older redo log records for the page. If store!=STORE_NO, we can directly skip redo log recods of other types if mlog_init indicates that the page will be freed or initialized by at a later LSN. This fix was developed in cooperation with Thirunarayanan Balathandayuthapani.
-
Daniel Black authored
Also executable can change for jemalloc.
-
- 06 Apr, 2020 3 commits
-
-
Daniel Black authored
-
Elena Stepanova authored
Comma is reported not to work on older systems/ASAN versions
-
Aleksey Midenkov authored
ADD default history partitions generates wrong partition name, f.ex. p2 instead of p1. Gap in sequence of partition names leads to ha_partition::open_read_partitions() fail on inexistent name. Manual fixing such broken table requires: 1. create empty table by any name (t_empty) with correct number of partitions; 2. stop the server; 3. rename data files (.myd, .myi or .ibd) of broken table to t_empty fixing the partition sequence (#p2 to #p1, #p3 to #p2); 4. start the server; 5. drop the broken table; 6. rename t_empty to correct table name.
-
- 05 Apr, 2020 8 commits
-
-
Sergey Vojtovich authored
-
Daniel Black authored
Order to avoid prototypes: my_get_large_page_sizes my_next_large_page my_init_large_pages my_large_malloc my_large_free
-
Daniel Black authored
-
Daniel Black authored
-
Daniel Black authored
For platforms != Windows and without MMAP.
-
Daniel Black authored
-
Daniel Black authored
Consolidated single page size implementations by populating my_large_page_sizes with a single page size.
-
Daniel Black authored
-
- 04 Apr, 2020 16 commits
-
-
Otto Kekäläinen authored
-
Otto Kekäläinen authored
The package libcurl4-dev is a virtual package, and no package with that name actually exists. Depend on libcurl4-openssl-dev as the primary option in case no libcurl4-dev providing package has been installed, and if some of them (libcurl4-gnutls-dev, libcurl4-nss-dev, libcurl4-openssl-dev ) are installed, they also satisfy the dependency via the virtual package. The Travis-CI still runs on libcurl3-dev as Travis-CI also runs Ubuntu Xenial which does not yet have libcurl4 available. This complements commit 2e0a40bd.
-
Otto Kekäläinen authored
The package libdbd-mariadb-perl has been available in Debian September 2018, so it is already included since Debian Buster and Ubuntu Disco. Use it as the primary Recommends for MariaDB client binaries, but keep the MySQL variant as a fall-back in case this package gets backported to older releases that did not yet have it. This change was done in downstream Debian packaging in https://salsa.debian.org/mariadb-team/mariadb-10.4/-/commit/bb4ad78bc10a1b52558c4c30600a02e30c4ce0a9
-
Otto Kekäläinen authored
Don't include variables that are empty and unused.
-
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 9 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
-