Closed mikehb closed 10 months ago
It works fine if the sleep_for was added
I am not seeing memory allocation failures when I run the test with sleep_for commented out, but I am seeing strange behavior. Things seem to work until I terminate the client program, but at that point the server seems to go into an infinite loop sending requests but never actually attempting to read responses. Thus, it doesn't detect that the client has ended so it sends yet more requests. Could commenting out the sleep_for result in this infinite sending behavior? Is there any limit on the number of outstanding requests that can exist on the server at once? If this number gets high enough, it's possible that kernel resources will get exhausted, which could explain the memory allocations failures you are seeing (the errors in your logs are coming from the kernel, not from grpc_homa).
-John-
On Sun, Oct 15, 2023 at 11:34 PM mikehb @.***> wrote:
It works fine if the sleep_for was added
— Reply to this email directly, view it on GitHub https://github.com/PlatformLab/grpc_homa/issues/14#issuecomment-1763818131, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACOOUCWJXV2VOCE7WUDGK6TX7TIQ5AVCNFSM6AAAAAA6BU47WOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONRTHAYTQMJTGE . You are receiving this because you are subscribed to this thread.Message ID: @.***>
I just write this test program to see if there is any issue with homa and grpc_homa. There won't be infinite loop of sending requests in my application, but a bust of sending requests may happen in the real world. My linux host get stuck when the infinite loop exists and I have to reboot my linux host. This issue didn't happen when I switched to TCP.
There are a few places where poor application behavior can cause Homa to exhaust kernel resources. This is on my list of things to fix, eventually.
-John-
homa.tar.gz
Comment the sleep_for statement in homa_test.cpp