distributed-system-analysis / pbench

A benchmarking and performance analysis framework
http://distributed-system-analysis.github.io/pbench/
GNU General Public License v3.0
188 stars 108 forks source link

Don't leave datasets in WORKING state #3568

Closed dbutenhof closed 1 year ago

dbutenhof commented 1 year ago

PBENCH-1286

There were leaks in the ElasticBulkBase where errors could cause the code to miss the Sync.update() or Sync.error() calls that would change the transitional WORKING state to either OK or FAILURE. Clean this up with an enclosing try block. Make sure we always attach a useful Audit message on failure so we can track this better.

Also (separate but somewhat related), during ops review we observed many "user error" failures where some indication in the server log about the cause would have simplified analysis. We'd previously decided not to log "user errors" but given our experience the extra logs are more useful than annoying; so _dispatch will now log at WARNING level any APIAbort termination.