Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix usage of WaitEventSetWait() with timeout (#10947)
WaitEventSetWait() returns the number of "events" that happened, and only that many events in the WaitEvent array are updated. When the timeout is reached, it returns 0 and does not modify the WaitEvent array at all. We were reading 'event.events' without checking the return value, which would be uninitialized when the timeout was hit. No test included, as this is harmless at the moment. But this caused the test I'm including in PR #10882 to fail. That PR changes the logic to loop back to retry the PQgetCopyData() call if WL_SOCKET_READABLE was set. Currently, making an extra call to PQconsumeInput() is harmless, but with that change in logic, it turns into a busy-wait.
- Loading branch information
40acb0c
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.
7840 tests run: 7439 passed, 13 failed, 388 skipped (full report)
Failures on Postgres 16
test_throughput[github-actions-selfhosted-50-pipelining_config7-30-100-128-batchable {'max_batch_size': 1, 'execution': 'tasks', 'mode': 'pipelined'}]
: release-x86-64-with-lfctest_throughput[github-actions-selfhosted-50-pipelining_config8-30-100-128-batchable {'max_batch_size': 2, 'execution': 'concurrent-futures', 'mode': 'pipelined'}]
: release-x86-64-with-lfctest_throughput[github-actions-selfhosted-50-pipelining_config9-30-100-128-batchable {'max_batch_size': 2, 'execution': 'tasks', 'mode': 'pipelined'}]
: release-x86-64-with-lfctest_throughput[github-actions-selfhosted-50-pipelining_config10-30-100-128-batchable {'max_batch_size': 4, 'execution': 'concurrent-futures', 'mode': 'pipelined'}]
: release-x86-64-with-lfctest_throughput[github-actions-selfhosted-50-pipelining_config11-30-100-128-batchable {'max_batch_size': 4, 'execution': 'tasks', 'mode': 'pipelined'}]
: release-x86-64-with-lfctest_throughput[github-actions-selfhosted-50-pipelining_config12-30-100-128-batchable {'max_batch_size': 8, 'execution': 'concurrent-futures', 'mode': 'pipelined'}]
: release-x86-64-with-lfctest_throughput[github-actions-selfhosted-50-pipelining_config13-30-100-128-batchable {'max_batch_size': 8, 'execution': 'tasks', 'mode': 'pipelined'}]
: release-x86-64-with-lfctest_throughput[github-actions-selfhosted-50-pipelining_config14-30-100-128-batchable {'max_batch_size': 16, 'execution': 'concurrent-futures', 'mode': 'pipelined'}]
: release-x86-64-with-lfctest_throughput[github-actions-selfhosted-50-pipelining_config15-30-100-128-batchable {'max_batch_size': 16, 'execution': 'tasks', 'mode': 'pipelined'}]
: release-x86-64-with-lfctest_throughput[github-actions-selfhosted-50-pipelining_config16-30-100-128-batchable {'max_batch_size': 32, 'execution': 'concurrent-futures', 'mode': 'pipelined'}]
: release-x86-64-with-lfctest_throughput[github-actions-selfhosted-50-pipelining_config17-30-100-128-batchable {'max_batch_size': 32, 'execution': 'tasks', 'mode': 'pipelined'}]
: release-x86-64-with-lfctest_throughput[github-actions-selfhosted-50-pipelining_config5-30-100-128-batchable {'mode': 'serial'}]
: release-x86-64-with-lfctest_throughput[github-actions-selfhosted-50-pipelining_config6-30-100-128-batchable {'max_batch_size': 1, 'execution': 'concurrent-futures', 'mode': 'pipelined'}]
: release-x86-64-with-lfcFlaky tests (6)
Postgres 17
test_branching_with_pgbench[flat-1-10]
: release-arm64-with-lfctest_migration_to_cold_secondary
: release-arm64-with-lfctest_storage_controller_s3_time_travel_recovery
: release-x86-64-without-lfctest_multiple_subscription_branching
: release-x86-64-with-lfc, debug-x86-64-without-lfctest_branched_from_many_empty_parents_size
: debug-x86-64-without-lfcCode coverage* (full report)
functions
:32.8% (8631 of 26294 functions)
lines
:48.6% (72620 of 149326 lines)
* collected from Rust tests only
40acb0c at 2025-02-24T21:11:37.802Z :recycle: