fix #1775 plugin: fd mariabackup add support mariadb 11+#1835
Conversation
47faaff to
60b8a57
Compare
4a74dd9 to
60b8a57
Compare
sduehr
left a comment
There was a problem hiding this comment.
Only a trivial change requested and a question about a comment.
Is the updated plugin compatible with the old one, so restore of backups taken with the old version are still restorable or is a new full required after update? If yes, then we should document that.
Should we document that the changed plugin needs MariaDB >= 10.5? Should still work with 10.3 (it's EOL anyway) but would need to set some options, as it doesn't yet have the commands mariadb-backup and mariadb.
For the case of Database engine upgrade from 10.3 to 10.5, it was clear to me that user need to run a new full just after the upgrade. And previous backups are dooms as the would imply new db upgrade process. I was not expecting to be compatible with eol mariadb 10.3 ( this plugin will be in use with bareos 24) but this can be discussed of course. |
|
Manually tested with |
1cb69c1 to
5f220a9
Compare
|
@sduehr kindly ping : could finish the review for a definitive merge? |
5f220a9 to
d0a2f8d
Compare
d0a2f8d to
864e936
Compare
sduehr
left a comment
There was a problem hiding this comment.
When getting the LSN, error handling should be improved as I suggested.
core/src/plugins/filed/python/mariabackup/bareos-fd-mariabackup.py
Outdated
Show resolved
Hide resolved
core/src/plugins/filed/python/mariabackup/bareos-fd-mariabackup.py
Outdated
Show resolved
Hide resolved
- cmake introduce consistent cmake variable MARIADB_BACKUP_BINARY instead of MARIABACKUP_BINARY - cmake replace all call of mysql cmd to their mariadb equivalent Mariadb >11 start echoing deprecated warning. + mysql -> mariadb + mysqld -> mariadbd + mariabackup -> mariadb-backup - split testrunner to setup,cleanup,default - fileset replace hardcoded mysql by @MARIADB_CLIENT_BINARY@ - add function check_plugin_mariadb_version() this is needed to pick the right stream filename depending of the version. (xbstream or mbstream) - refactor start_backup_job() function - add function get_lsn_by_command() - add function parse_innodb_status(res) which can be used by cmd and mysqlclient - re-add self.restorecommand init in parse_plugin_definition so restore directory is new for each file - reword xbstream to mbstream expect for the protocol name - improve logging placement statements - use black for formating - fix my.cnf usage mariadb package hard require python3-mysqlclient module on SUSE. The code using this module is then used during testing; to be able to connect to the right instance we need to provide a default config file. Signed-off-by: Bruno Friedmann <bruno.friedmann@bareos.com>
864e936 to
e9bf764
Compare
Co-authored-by: sduehr <stephan.duehr@bareos.com>
plugin: fd mariabackup add support for MariaDB 11+
note the code may still be improved by applying pylint recommandation and fixing todo
Please check
If you have any questions or problems, please give a comment in the PR.
Helpful documentation and best practices
Checklist for the reviewer of the PR (will be processed by the Bareos team)
Make sure you check/merge the PR using
devtools/pr-toolto have some simple automated checks run and a proper changelog record added.General
Source code quality
Tests