1
0
mirror of https://github.com/pgbackrest/pgbackrest.git synced 2024-12-14 10:13:05 +02:00
pgbackrest/test
David Steele c88684e2bf Non-blocking TLS implementation.
The prior blocking implementation seemed to be prone to locking up on some (especially recent) kernel versions. Since we were unable to reproduce the issue in a development environment we can only speculate as to the cause, but there is a good chance that blocking sockets were the issue or contributed to the issue.

So move to a non-blocking implementation to hopefully clear up these issues. Testing in production environments that were prone to locking shows that the approach is promising and at the very least not a regression.

The main differences from the blocking version are the non-blocking connect() implementation and handling of WANT_READ/WANT_WRITE retries for all SSL*() functions.

Timeouts in the tests needed to be increased because socket connect() and TLS SSL_connect() were not included in the timeout before. The tests don't run any slower, though. In fact, all platforms but Ubuntu 12.04 worked fine with the shorter timeouts.
2020-04-16 16:05:44 -04:00
..
certificate New test containers with static test certificates. 2018-11-21 18:13:37 -05:00
code-count Move common/object.h to common/type/object.h. 2020-03-30 20:52:57 -04:00
data Automate generation of WAL and pg_control test files. 2017-11-18 20:02:54 -05:00
expect Add SocketClient object. 2020-03-31 12:43:29 -04:00
lib/pgBackRestTest Add UNCONSTIFY() macro. 2020-04-02 16:58:38 -04:00
src Non-blocking TLS implementation. 2020-04-16 16:05:44 -04:00
.gitignore Move coverage results to test/result. 2020-03-14 15:29:42 -04:00
container.yaml Add lz4 compression support. 2020-03-10 14:45:27 -04:00
define.yaml Non-blocking TLS implementation. 2020-04-16 16:05:44 -04:00
test.pl Correct option name in test.pl help. 2020-04-13 14:51:04 -04:00
travis.pl Update packages required for each CI job. 2020-03-26 22:20:09 -04:00
Vagrantfile Add Cirrus CI and Vagrant configuration for FreeBSD and MacOS. 2020-04-16 14:13:53 -04:00