Traps exceptions thrown by callbacks and logs a warning
Implements a maximum wait time during close()
The second change involves the introduction of a new WriteOption: max_close_wait. The default is set to 5 minutes, but can be overriden in the same manner as other write options.
Note: in order to allow the failure to be tested safely, pytest-timeout has been added as a test dependency.
Closes #558
Proposed Changes
Introduces two levels of deadlock protection
close()
The second change involves the introduction of a new WriteOption:
max_close_wait
. The default is set to 5 minutes, but can be overriden in the same manner as other write options.Note: in order to allow the failure to be tested safely,
pytest-timeout
has been added as a test dependency.Checklist
pytest tests
completes successfully