[jira] Updated: (ZOOKEEPER-562) c client can flood server with pings if tcp send queue filled

2009-11-19 Thread Patrick Hunt (JIRA)

 [ 
https://issues.apache.org/jira/browse/ZOOKEEPER-562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Patrick Hunt updated ZOOKEEPER-562:
---

Fix Version/s: 3.1.2

 c client can flood server with pings if tcp send queue filled
 -

 Key: ZOOKEEPER-562
 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-562
 Project: Zookeeper
  Issue Type: Bug
  Components: c client
Affects Versions: 3.2.1
Reporter: Patrick Hunt
Assignee: Benjamin Reed
Priority: Blocker
 Fix For: 3.2.2, 3.3.0, 3.1.2

 Attachments: ZOOKEEPER-562.patch


 The c client can flood the server with pings if the tcp queue is filled.
 Say the cluster is overloaded and shuts down the recv processing
 a c client can send a ping, but since last_send is only updated on successful 
 pushing of data into the 
 socket, if flush_send_queue fails to send any data (send_buffer returns 0) 
 then last_send is not updated
 and zookeeper_interest will again send a ping the next time it is woken - 
 which could be 0 if recv_to is close
 to 0, easily could happen if server is not sending data to the client.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Updated: (ZOOKEEPER-562) c client can flood server with pings if tcp send queue filled

2009-10-29 Thread Mahadev konar (JIRA)

 [ 
https://issues.apache.org/jira/browse/ZOOKEEPER-562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mahadev konar updated ZOOKEEPER-562:


  Resolution: Fixed
Hadoop Flags: [Reviewed]
  Status: Resolved  (was: Patch Available)

I just committed this to 3.2 branch and trunk.

 c client can flood server with pings if tcp send queue filled
 -

 Key: ZOOKEEPER-562
 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-562
 Project: Zookeeper
  Issue Type: Bug
  Components: c client
Affects Versions: 3.2.1
Reporter: Patrick Hunt
Assignee: Benjamin Reed
Priority: Blocker
 Fix For: 3.2.2, 3.3.0

 Attachments: ZOOKEEPER-562.patch


 The c client can flood the server with pings if the tcp queue is filled.
 Say the cluster is overloaded and shuts down the recv processing
 a c client can send a ping, but since last_send is only updated on successful 
 pushing of data into the 
 socket, if flush_send_queue fails to send any data (send_buffer returns 0) 
 then last_send is not updated
 and zookeeper_interest will again send a ping the next time it is woken - 
 which could be 0 if recv_to is close
 to 0, easily could happen if server is not sending data to the client.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Updated: (ZOOKEEPER-562) c client can flood server with pings if tcp send queue filled

2009-10-28 Thread Patrick Hunt (JIRA)

 [ 
https://issues.apache.org/jira/browse/ZOOKEEPER-562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Patrick Hunt updated ZOOKEEPER-562:
---

Release Note: Basically the problem here is that the client gets confused, 
it tries to send a ping to the server but since the tcp queue is full it's 
unable to do so. The logic responsible for sending occasional pings based on 
the timeout gets confused by this, and ends up flooding the server with pings. 
Eventually this clears up, however it can result in increased load on the 
server and instability for the effected client.

 c client can flood server with pings if tcp send queue filled
 -

 Key: ZOOKEEPER-562
 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-562
 Project: Zookeeper
  Issue Type: Bug
  Components: c client
Affects Versions: 3.2.1
Reporter: Patrick Hunt
Assignee: Benjamin Reed
Priority: Blocker
 Fix For: 3.2.2, 3.3.0

 Attachments: ZOOKEEPER-562.patch


 The c client can flood the server with pings if the tcp queue is filled.
 Say the cluster is overloaded and shuts down the recv processing
 a c client can send a ping, but since last_send is only updated on successful 
 pushing of data into the 
 socket, if flush_send_queue fails to send any data (send_buffer returns 0) 
 then last_send is not updated
 and zookeeper_interest will again send a ping the next time it is woken - 
 which could be 0 if recv_to is close
 to 0, easily could happen if server is not sending data to the client.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Updated: (ZOOKEEPER-562) c client can flood server with pings if tcp send queue filled

2009-10-26 Thread Benjamin Reed (JIRA)

 [ 
https://issues.apache.org/jira/browse/ZOOKEEPER-562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benjamin Reed updated ZOOKEEPER-562:


Status: Patch Available  (was: Open)

 c client can flood server with pings if tcp send queue filled
 -

 Key: ZOOKEEPER-562
 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-562
 Project: Zookeeper
  Issue Type: Bug
  Components: c client
Affects Versions: 3.2.1
Reporter: Patrick Hunt
Assignee: Benjamin Reed
Priority: Blocker
 Fix For: 3.2.2, 3.3.0

 Attachments: ZOOKEEPER-562.patch


 The c client can flood the server with pings if the tcp queue is filled.
 Say the cluster is overloaded and shuts down the recv processing
 a c client can send a ping, but since last_send is only updated on successful 
 pushing of data into the 
 socket, if flush_send_queue fails to send any data (send_buffer returns 0) 
 then last_send is not updated
 and zookeeper_interest will again send a ping the next time it is woken - 
 which could be 0 if recv_to is close
 to 0, easily could happen if server is not sending data to the client.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Updated: (ZOOKEEPER-562) c client can flood server with pings if tcp send queue filled

2009-10-26 Thread Benjamin Reed (JIRA)

 [ 
https://issues.apache.org/jira/browse/ZOOKEEPER-562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benjamin Reed updated ZOOKEEPER-562:


Attachment: ZOOKEEPER-562.patch

this patch fixes the problem by only sending a ping if there isn't something 
already queued. the test checks for clients sending gratuitous pings.

 c client can flood server with pings if tcp send queue filled
 -

 Key: ZOOKEEPER-562
 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-562
 Project: Zookeeper
  Issue Type: Bug
  Components: c client
Affects Versions: 3.2.1
Reporter: Patrick Hunt
Assignee: Benjamin Reed
Priority: Blocker
 Fix For: 3.2.2, 3.3.0

 Attachments: ZOOKEEPER-562.patch


 The c client can flood the server with pings if the tcp queue is filled.
 Say the cluster is overloaded and shuts down the recv processing
 a c client can send a ping, but since last_send is only updated on successful 
 pushing of data into the 
 socket, if flush_send_queue fails to send any data (send_buffer returns 0) 
 then last_send is not updated
 and zookeeper_interest will again send a ping the next time it is woken - 
 which could be 0 if recv_to is close
 to 0, easily could happen if server is not sending data to the client.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.