The log line is:
encryption: using gcrypt 1.6.5
2.4.10 doesn't behavior like this.
I did some searching in the code base. This PR:
https://github.com/percona/percona-xtrabackup/pull/485
caused the change, i.e. now in 2.4.11, libgcrypt is always initialized, 2.4.10 only does the initialization when the "-d" is specified.
There're two questions about this problem:
- logging libgcrypt version info to stderr seems not neccessary, is this expected, or will it got removed?
- Is it neccessary to initialize libgcrypt at the very beginning of execution?
This problem affects OpenStack Trove mysql restore implementation. Trove use xbstream to restore data, and relys on the empty stderr to ensure the restore is successful. Do we have any better solution to check whether xbstream restores successfully? I did some simple tests(xbstream restore for a second time, the command exits with "Errorcode: 17 - File exists", however the exit code is 0, which does not follow the common convention.
Thanks!