tests: disable fsync/fdatasync for rabbitmq (if any)#92645
tests: disable fsync/fdatasync for rabbitmq (if any)#92645azat wants to merge 1 commit intoClickHouse:masterfrom
Conversation
|
TIL that strace can inject. I always used it to just trace 🙄 This PR[2025-12-19 11:48:31] test_storage_rabbitmq/test.py::test_rabbitmq_select[0] Latest PR that brings back RabbitMQ[2025-12-18 21:25:27] test_storage_rabbitmq/test.py::test_rabbitmq_select[0] So, it seems the overhead of injecting with strace is bigger than the gain of mocking fsync/fdatasync |
Thanks for checking it! Interesting though, I would expect that the overhead should be almost zero, since it should replace only fsync/fdatasync, and injecting return value should be fast, I've also tested it with MinIO locally and although it does not help (due to O_DSYNC usage in MinIO) it did not make things slower Will check later |
Maybe it is a margin of error for rabbitmq? |
|
But I don't see any improvements on CI either, will close for now. |
Yes, it was on the AWS dev machine with NVME disks
Yeah, that was the last part of my comment. This PR 19min, PR that brough rabbitmq back to life 14:30min. We're probably missing something, or just using strace to inject even those two mock syscalls is not as negligible as it looks like. Very nice idea to test this, in any case. |
Changelog category (leave one):
Note sure that it has a lot, but want to try
Note, I've tried the same for MinIO to make it faster, but it uses
openat(O_DSYNC)andstraceis not smart enough for this