GenServer Call timeout when connected in circle

Hi @benwilson512 @tty @OvermindDL1 , Thank you so much for helping. It means a lot.

I just checked my code. After hours of debugging, I found out that I am actually creating a deadlock. I cant share the entire code here because I have to submit my project. My project was to implement a chord protocol. My genservers are arranged in the circle, and all of GenServers are connected to not only their neighbours but also other GenServers according to some specifications ( I will not bore you by getting into the nitty gritties of the algorithm).

That is why when I use “GenServer.call” , then the deadlock occurs and the all the servers hung up.

I think the best way to acheive this is to use Task.async, in order to query different GenServers accordingly as suggested by @tty

1 Like