[jira] [Updated] (QPID-2968) Blocking on dead sockets

2016-08-10 Thread Justin Ross (JIRA)

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

Justin Ross updated QPID-2968:
--
Labels: patch  (was: )

> Blocking on dead sockets
> 
>
> Key: QPID-2968
> URL: https://issues.apache.org/jira/browse/QPID-2968
> Project: Qpid
>  Issue Type: Bug
>  Components: Python Client
>Affects Versions: 0.7, 0.8, 0.9, Future
> Environment: Does not matter
>Reporter: Dmitry Konishchev
>Assignee: Rafael H. Schloming
>  Labels: patch
> Attachments: patch
>
>
> * If you open a few connections, and one of them breaks (for example, 
>   due to a network error), another connections can be locked for time, which 
> is 
>   equal to network timeout of the broken connection. This happens due to 
>   working with sockets in blocking mode and due to using one Selector for all 
>   connections. 
> * All connections could become locked forever due to races between 
>   Driver and Selector objects. Driver object removes itself from the Selector 
>   non-atomically and a situation when Driver is alredy closed, but the 
> Selector 
>   refers to it could happen. In this case select() call in the Selector raise 
>   an exeption due to self._transport.fileno() call on Driver where 
>   self._transport is None. The selector doesn't handle errors on select(), so 
>   the selector's thread will be stopped due to unhandled Exception. 
> * There is no checks on EINTR error on os.* calls. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

-
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org



[jira] [Updated] (QPID-2968) Blocking on dead sockets

2016-08-10 Thread Justin Ross (JIRA)

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

Justin Ross updated QPID-2968:
--
Fix Version/s: (was: Future)

> Blocking on dead sockets
> 
>
> Key: QPID-2968
> URL: https://issues.apache.org/jira/browse/QPID-2968
> Project: Qpid
>  Issue Type: Bug
>  Components: Python Client
>Affects Versions: 0.7, 0.8, 0.9, Future
> Environment: Does not matter
>Reporter: Dmitry Konishchev
>Assignee: Rafael H. Schloming
>  Labels: patch
> Attachments: patch
>
>
> * If you open a few connections, and one of them breaks (for example, 
>   due to a network error), another connections can be locked for time, which 
> is 
>   equal to network timeout of the broken connection. This happens due to 
>   working with sockets in blocking mode and due to using one Selector for all 
>   connections. 
> * All connections could become locked forever due to races between 
>   Driver and Selector objects. Driver object removes itself from the Selector 
>   non-atomically and a situation when Driver is alredy closed, but the 
> Selector 
>   refers to it could happen. In this case select() call in the Selector raise 
>   an exeption due to self._transport.fileno() call on Driver where 
>   self._transport is None. The selector doesn't handle errors on select(), so 
>   the selector's thread will be stopped due to unhandled Exception. 
> * There is no checks on EINTR error on os.* calls. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

-
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org



[jira] [Updated] (QPID-2968) Blocking on dead sockets

2011-03-31 Thread Rafael H. Schloming (JIRA)

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

Rafael H. Schloming updated QPID-2968:
--

Fix Version/s: (was: 0.9)

 Blocking on dead sockets
 

 Key: QPID-2968
 URL: https://issues.apache.org/jira/browse/QPID-2968
 Project: Qpid
  Issue Type: Bug
  Components: Python Client
Affects Versions: 0.7, 0.8, 0.9, Future
 Environment: Does not matter
Reporter: Dmitry Konishchev
Assignee: Rafael H. Schloming
 Fix For: Future

 Attachments: patch


 * If you open a few connections, and one of them breaks (for example, 
   due to a network error), another connections can be locked for time, which 
 is 
   equal to network timeout of the broken connection. This happens due to 
   working with sockets in blocking mode and due to using one Selector for all 
   connections. 
 * All connections could become locked forever due to races between 
   Driver and Selector objects. Driver object removes itself from the Selector 
   non-atomically and a situation when Driver is alredy closed, but the 
 Selector 
   refers to it could happen. In this case select() call in the Selector raise 
   an exeption due to self._transport.fileno() call on Driver where 
   self._transport is None. The selector doesn't handle errors on select(), so 
   the selector's thread will be stopped due to unhandled Exception. 
 * There is no checks on EINTR error on os.* calls. 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
Apache Qpid - AMQP Messaging Implementation
Project:  http://qpid.apache.org
Use/Interact: mailto:dev-subscr...@qpid.apache.org



[jira] Updated: (QPID-2968) Blocking on dead sockets

2010-12-04 Thread Robbie Gemmell (JIRA)

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

Robbie Gemmell updated QPID-2968:
-

Fix Version/s: (was: 0.8)
   (was: 0.7)

Removed the Fix For versions 0.7 and 0.8, as the 0.8 release is now finalised.

 Blocking on dead sockets
 

 Key: QPID-2968
 URL: https://issues.apache.org/jira/browse/QPID-2968
 Project: Qpid
  Issue Type: Bug
  Components: Python Client
Affects Versions: Future, 0.9, 0.8, 0.7
 Environment: Does not matter
Reporter: Dmitry Konishchev
 Fix For: Future, 0.9

 Attachments: patch


 * If you open a few connections, and one of them breaks (for example, 
   due to a network error), another connections can be locked for time, which 
 is 
   equal to network timeout of the broken connection. This happens due to 
   working with sockets in blocking mode and due to using one Selector for all 
   connections. 
 * All connections could become locked forever due to races between 
   Driver and Selector objects. Driver object removes itself from the Selector 
   non-atomically and a situation when Driver is alredy closed, but the 
 Selector 
   refers to it could happen. In this case select() call in the Selector raise 
   an exeption due to self._transport.fileno() call on Driver where 
   self._transport is None. The selector doesn't handle errors on select(), so 
   the selector's thread will be stopped due to unhandled Exception. 
 * There is no checks on EINTR error on os.* calls. 

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


-
Apache Qpid - AMQP Messaging Implementation
Project:  http://qpid.apache.org
Use/Interact: mailto:dev-subscr...@qpid.apache.org



[jira] Updated: (QPID-2968) Blocking on dead sockets

2010-12-03 Thread Dmitry Konishchev (JIRA)

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

Dmitry Konishchev updated QPID-2968:


Attachment: patch

The following patch fixes the bugs.

 Blocking on dead sockets
 

 Key: QPID-2968
 URL: https://issues.apache.org/jira/browse/QPID-2968
 Project: Qpid
  Issue Type: Bug
  Components: Python Client
Affects Versions: Future, 0.9, 0.8, 0.7
 Environment: Does not matter
Reporter: Dmitry Konishchev
 Fix For: Future, 0.9, 0.8, 0.7

 Attachments: patch


 * If you open a few connections, and one of them breaks (for example, 
   due to a network error), another connections can be locked for time, which 
 is 
   equal to network timeout of the broken connection. This happens due to 
   working with sockets in blocking mode and due to using one Selector for all 
   connections. 
 * All connections could become locked forever due to races between 
   Driver and Selector objects. Driver object removes itself from the Selector 
   non-atomically and a situation when Driver is alredy closed, but the 
 Selector 
   refers to it could happen. In this case select() call in the Selector raise 
   an exeption due to self._transport.fileno() call on Driver where 
   self._transport is None. The selector doesn't handle errors on select(), so 
   the selector's thread will be stopped due to unhandled Exception. 
 * There is no checks on EINTR error on os.* calls. 

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


-
Apache Qpid - AMQP Messaging Implementation
Project:  http://qpid.apache.org
Use/Interact: mailto:dev-subscr...@qpid.apache.org