{"action":"created","issue":{"url":"https://api.github.com/repos/zeromq/jeromq/issues/624","repository_url":"https://api.github.com/repos/zeromq/jeromq","labels_url":"https://api.github.com/repos/zeromq/jeromq/issues/624/labels{/name}","comments_url":"https://api.github.com/repos/zeromq/jeromq/issues/624/comments","events_url":"https://api.github.com/repos/zeromq/jeromq/issues/624/events","html_url":"https://github.com/zeromq/jeromq/issues/624","id":380584119,"node_id":"MDU6SXNzdWUzODA1ODQxMTk=","number":624,"title":"ZMQ messages not arriving at destination","user":{"login":"kmualem","id":12835124,"node_id":"MDQ6VXNlcjEyODM1MTI0","avatar_url":"https://avatars0.githubusercontent.com/u/12835124?v=4","gravatar_id":"","url":"https://api.github.com/users/kmualem","html_url":"https://github.com/kmualem","followers_url":"https://api.github.com/users/kmualem/followers","following_url":"https://api.github.com/users/kmualem/following{/other_user}","gists_url":"https://api.github.com/users/kmualem/gists{/gist_id}","starred_url":"https://api.github.com/users/kmualem/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kmualem/subscriptions","organizations_url":"https://api.github.com/users/kmualem/orgs","repos_url":"https://api.github.com/users/kmualem/repos","events_url":"https://api.github.com/users/kmualem/events{/privacy}","received_events_url":"https://api.github.com/users/kmualem/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":13,"created_at":"2018-11-14T08:22:17Z","updated_at":"2018-12-04T08:00:59Z","closed_at":"2018-11-18T19:23:36Z","author_association":"NONE","body":"Hi Guys,\r\n\r\nWe have a very strange and critical problem that I need your help!\r\nThe scenario is that we send a message in client application and for some reason, it didn't arrive to the server application.\r\n\r\n- We use version 0.4.3\r\n- In the client application, we use DEALER socket (TCP)\r\n- In the server application, we have a ROUTER socket and Reactor thread that catches the incoming events. \r\n- In the client application we have one Zcontext and each thread that sends a message from the client creates a shadow socket, creates the DEALER socket, s**end the message to the server and waits 5 sec for ACK message from the server.**\r\n\r\nPart of the client code:\r\n`\r\nZMsg msg = createMessage() ;\r\nmsg.send(socket);\r\nsocket.setReceiveTimeOut(5000);\r\nresponse = socket.recvStr(); \r\n`\r\nIn case that we didn't get answer from the server, we assume that there is a network / load issues on the server. **BUT in our case! we don't see the message in the server side at all!**\r\n\r\nWe have some traffic captures and I need your help in order to understand the problem.\r\n**In a good scenario, we see that the client push data to server:**\r\nC->S [SYN]\r\nS->C [SYN, ACK]\r\nC->S [ACK]\r\n**C->S [PSH, ACK]**\r\nS->C [ACK]\r\nS-C [PSH, ACK]\r\nC->S [ACK]\r\nC->S [PSH, ACK\r\n...\r\n**In a bad scenario, which we don't see traffic in the server and not getting ACK message in the client:**\r\nC->S [SYN]\r\nS->C [SYN, ACK]\r\nC->S [ACK]\r\n**S-C [PSH, ACK]**\r\nC->S [ACK]\r\n **C->S [RST, ACK]**\r\nThe reset from the client is after the timeout of 5 min.. that we didn't get ACK response.\r\nThen, we close the socket in the client with linger 0\r\n\r\nCan you please help? \r\nWhat can be the reason that the messages don't arrive to the server ?\r\n\r\nThanks!\r\nKobi.\r\n"},"comment":{"url":"https://api.github.com/repos/zeromq/jeromq/issues/comments/444006333","html_url":"https://github.com/zeromq/jeromq/issues/624#issuecomment-444006333","issue_url":"https://api.github.com/repos/zeromq/jeromq/issues/624","id":444006333,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0NDAwNjMzMw==","user":{"login":"kmualem","id":12835124,"node_id":"MDQ6VXNlcjEyODM1MTI0","avatar_url":"https://avatars0.githubusercontent.com/u/12835124?v=4","gravatar_id":"","url":"https://api.github.com/users/kmualem","html_url":"https://github.com/kmualem","followers_url":"https://api.github.com/users/kmualem/followers","following_url":"https://api.github.com/users/kmualem/following{/other_user}","gists_url":"https://api.github.com/users/kmualem/gists{/gist_id}","starred_url":"https://api.github.com/users/kmualem/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kmualem/subscriptions","organizations_url":"https://api.github.com/users/kmualem/orgs","repos_url":"https://api.github.com/users/kmualem/repos","events_url":"https://api.github.com/users/kmualem/events{/privacy}","received_events_url":"https://api.github.com/users/kmualem/received_events","type":"User","site_admin":false},"created_at":"2018-12-04T08:00:59Z","updated_at":"2018-12-04T08:00:59Z","author_association":"NONE","body":"Ok... So, I added a retries mechanism, I have a loop of 3 retries, In each iteration, I'm destroying the socket and create it again...  **BUT sometimes this is not helpful and I still don't see the messages in the server side!**\r\n\r\nWhen sending the message, I'm waiting 2.5 sec to get a response back from the SERVER (waiting for ACK) in case that there is no response, there is a sleep of 1.5 sec then destory and re-create of the socket.. and send again.\r\n\r\nI need your advise again.. I don't understand what is the next step and will appreciate your help.\r\nThis is a production environment, so if there will be no solution, unfortunately.. I will have to think about a different messaging framework :(\r\n\r\nThanks."}}
{"actor":{"display_login":"kmualem"}}