-
Notifications
You must be signed in to change notification settings - Fork 111
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[CLIENT-3106] Refactor aerospike.exception initialization code and check if error indicator is set after calling a C-API method #661
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## dev #661 +/- ##
==========================================
- Coverage 81.33% 80.96% -0.38%
==========================================
Files 100 100
Lines 15346 15130 -216
==========================================
- Hits 12482 12250 -232
- Misses 2864 2880 +16 ☔ View full report in Codecov by Sentry. |
This reverts commit 3b376b5.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice! LGTM
Documentation changes:
https://aerospike-python-client--661.org.readthedocs.build/en/661/exception.html#aerospike.exception.QueryAbortedError
https://aerospike-python-client--661.org.readthedocs.build/en/661/exception.html#aerospike.exception.QueryError
https://aerospike-python-client--661.org.readthedocs.build/en/661/exception.html#aerospike.exception.ClusterError
https://aerospike-python-client--661.org.readthedocs.build/en/661/exception.html#aerospike.exception.AdminError
Extra changes:
Notes:
Calling
import aerospike
orfrom aerospike import exception
multiple times is idempotent. Once a module is loaded, it cannot be loaded again just by callingimport
on it (verified this through gdb by adding a breakpoint atAerospikeException_New
. It is only hit once during the tests)All artifacts pass testing: https://github.com/aerospike/aerospike-client-python/actions/runs/10776301993
No memory errors: https://github.com/aerospike/aerospike-client-python/actions/runs/10775987465/job/29881798616
Performance regression testing:
Memory
Dev (baseline): https://github.com/aerospike/aerospike-client-python/actions/runs/10708250636/job/29690214082#step:13:20
Feature branch: https://github.com/aerospike/aerospike-client-python/actions/runs/10775988854/job/29881848296#step:13:20
Time performance:
Doesn't seem to be much of a difference