diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2022-07-11 21:00:18 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2022-07-11 21:00:18 +0300 |
commit | b817afaa1c148437e1016d1981f138d0c46ccbc8 (patch) | |
tree | 60c77fb81d68200b24c51515f77d2c7cdff75d2b /sql/sql_sequence.cc | |
parent | 4f62dfe676c29437b4a19c4d229e2accd2dda4a6 (diff) | |
download | mariadb-git-b817afaa1c148437e1016d1981f138d0c46ccbc8.tar.gz |
MDEV-28689, MDEV-28690: Remove ctrl_mutex
This reverts the revert 4f62dfe676c29437b4a19c4d229e2accd2dda4a6
and fixes the hang that was introduced when ctrl_mutex was removed.
The test mariabackup.compress_qpress covers this code, but the
test is skipped if a stand-alone qpress executable is not available.
It is not available in many software repositories, possibly because
the code base has not been updated since 2010.
This was tested with an executable that was compile from the source
code at http://www.quicklz.com/qpress-11-source.zip (after adding
a missing #include <unistd.h> for the definition of isatty()).
Compared to the grandparent commit (before the revert), the changes
are as follows:
comp_thread_ctxt_t::done_cond: A separate condition for completed
compression, signaling that thd->to_len has been updated.
compress_write(): Replace some threads[i] with thd.
Reset thd->to_len = 0 after consuming the compressed data.
compress_worker_thread_func(): After consuming the uncompressed
data, set thd->data_avail = FALSE. After compressing, signal
thd->done_cond.
Diffstat (limited to 'sql/sql_sequence.cc')
0 files changed, 0 insertions, 0 deletions