← Back to team overview

group.of.nepali.translators team mailing list archive

[Bug 1903733] Re: Out of memory issue for websocket client

 

** Description changed:

+ [Impact]
+ 
+ 
+ [Test Case]
+ 
+ 
+ [Where problems could occur]
+ 
+ 
+ [Other Info]
+ 
+ $ git remote -v
+ origin	https://github.com/tornadoweb/tornado.git (fetch)
+ origin	https://github.com/tornadoweb/tornado.git (push)
+ 
+ $ git describe --contains 20becca3
+ v5.1.0b1~28^2~1
+ 
+ $ rmadison python3-tornardo
+  => python3-tornado | 4.2.1-1ubuntu3      | xenial                    
+  python3-tornado | 4.5.3-1             | bionic/universe           
+  => python3-tornado | 4.5.3-1ubuntu0.1    | bionic-updates/universe   
+  python3-tornado | 6.0.3+really5.1.1-3 | focal/universe            
+  python3-tornado | 6.0.4-2             | groovy/universe           
+  python3-tornado | 6.0.4-3             | hirsute/universe         
+  python3-tornado | 6.1.0-1             | hirsute-proposed/universe 
+ 
+ 
+ [Original Description]
+ 
  Tornado has no 'flow control' for websockets. A websocket will receive data as fast as it can, and store the data in a deque. If that data is not consumed as fast as it is written, then that deque will grow in size indefinitely, ultimately leading to a memory error and killing the process.
  Fix is to use a Queue. Read and get messages from the queue on the client side.
  
  Patch file [0]
  Commit history [1]
  GitHub [2]
  Issue [3]
  
  [0] https://patch-diff.githubusercontent.com/raw/tornadoweb/tornado/pull/2351.patch
  [1] https://github.com/tornadoweb/tornado/pull/2351/commits
  [2] https://github.com/tornadoweb/tornado
  [3] https://github.com/tornadoweb/tornado/issues/2341
  
  Will provide test setup at a later point

** Also affects: python-tornado (Ubuntu Groovy)
   Importance: Undecided
       Status: New

** Also affects: python-tornado (Ubuntu Xenial)
   Importance: Undecided
       Status: New

** Also affects: python-tornado (Ubuntu Hirsute)
   Importance: Undecided
     Assignee: Heather Lemon (hypothetical-lemon)
       Status: New

** Also affects: python-tornado (Ubuntu Bionic)
   Importance: Undecided
       Status: New

** Also affects: python-tornado (Ubuntu Focal)
   Importance: Undecided
       Status: New

** Changed in: python-tornado (Ubuntu Hirsute)
       Status: New => Fix Released

** Changed in: python-tornado (Ubuntu Groovy)
       Status: New => Fix Released

** Changed in: python-tornado (Ubuntu Focal)
       Status: New => Fix Released

** Changed in: python-tornado (Ubuntu Hirsute)
     Assignee: Heather Lemon (hypothetical-lemon) => (unassigned)

** Changed in: python-tornado (Ubuntu Bionic)
     Assignee: (unassigned) => Heather Lemon (hypothetical-lemon)

** Changed in: python-tornado (Ubuntu Xenial)
     Assignee: (unassigned) => Heather Lemon (hypothetical-lemon)

** Description changed:

  [Impact]
- 
  
  [Test Case]
  
- 
  [Where problems could occur]
  
+ [Other Info]
  
- [Other Info]
+ Upstream commit(s):
+ https://github.com/tornadoweb/tornado/pull/2351/commits/20becca336caae61cd24f7afba0e177c0a210c70
  
  $ git remote -v
  origin	https://github.com/tornadoweb/tornado.git (fetch)
  origin	https://github.com/tornadoweb/tornado.git (push)
  
  $ git describe --contains 20becca3
  v5.1.0b1~28^2~1
  
  $ rmadison python3-tornardo
-  => python3-tornado | 4.2.1-1ubuntu3      | xenial                    
-  python3-tornado | 4.5.3-1             | bionic/universe           
-  => python3-tornado | 4.5.3-1ubuntu0.1    | bionic-updates/universe   
-  python3-tornado | 6.0.3+really5.1.1-3 | focal/universe            
-  python3-tornado | 6.0.4-2             | groovy/universe           
-  python3-tornado | 6.0.4-3             | hirsute/universe         
-  python3-tornado | 6.1.0-1             | hirsute-proposed/universe 
- 
+  => python3-tornado | 4.2.1-1ubuntu3      | xenial
+  python3-tornado | 4.5.3-1             | bionic/universe
+  => python3-tornado | 4.5.3-1ubuntu0.1    | bionic-updates/universe
+  python3-tornado | 6.0.3+really5.1.1-3 | focal/universe
+  python3-tornado | 6.0.4-2             | groovy/universe
+  python3-tornado | 6.0.4-3             | hirsute/universe
+  python3-tornado | 6.1.0-1             | hirsute-proposed/universe
  
  [Original Description]
  
  Tornado has no 'flow control' for websockets. A websocket will receive data as fast as it can, and store the data in a deque. If that data is not consumed as fast as it is written, then that deque will grow in size indefinitely, ultimately leading to a memory error and killing the process.
  Fix is to use a Queue. Read and get messages from the queue on the client side.
  
  Patch file [0]
  Commit history [1]
  GitHub [2]
  Issue [3]
  
  [0] https://patch-diff.githubusercontent.com/raw/tornadoweb/tornado/pull/2351.patch
  [1] https://github.com/tornadoweb/tornado/pull/2351/commits
  [2] https://github.com/tornadoweb/tornado
  [3] https://github.com/tornadoweb/tornado/issues/2341
  
  Will provide test setup at a later point

-- 
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1903733

Title:
  Out of memory issue for websocket client

Status in python-tornado package in Ubuntu:
  Fix Released
Status in python-tornado source package in Xenial:
  New
Status in python-tornado source package in Bionic:
  New
Status in python-tornado source package in Focal:
  Fix Released
Status in python-tornado source package in Groovy:
  Fix Released
Status in python-tornado source package in Hirsute:
  Fix Released

Bug description:
  [Impact]

  [Test Case]

  [Where problems could occur]

  [Other Info]

  Upstream commit(s):
  https://github.com/tornadoweb/tornado/pull/2351/commits/20becca336caae61cd24f7afba0e177c0a210c70

  $ git remote -v
  origin	https://github.com/tornadoweb/tornado.git (fetch)
  origin	https://github.com/tornadoweb/tornado.git (push)

  $ git describe --contains 20becca3
  v5.1.0b1~28^2~1

  $ rmadison python3-tornardo
   => python3-tornado | 4.2.1-1ubuntu3      | xenial
   python3-tornado | 4.5.3-1             | bionic/universe
   => python3-tornado | 4.5.3-1ubuntu0.1    | bionic-updates/universe
   python3-tornado | 6.0.3+really5.1.1-3 | focal/universe
   python3-tornado | 6.0.4-2             | groovy/universe
   python3-tornado | 6.0.4-3             | hirsute/universe
   python3-tornado | 6.1.0-1             | hirsute-proposed/universe

  [Original Description]

  Tornado has no 'flow control' for websockets. A websocket will receive data as fast as it can, and store the data in a deque. If that data is not consumed as fast as it is written, then that deque will grow in size indefinitely, ultimately leading to a memory error and killing the process.
  Fix is to use a Queue. Read and get messages from the queue on the client side.

  Patch file [0]
  Commit history [1]
  GitHub [2]
  Issue [3]

  [0] https://patch-diff.githubusercontent.com/raw/tornadoweb/tornado/pull/2351.patch
  [1] https://github.com/tornadoweb/tornado/pull/2351/commits
  [2] https://github.com/tornadoweb/tornado
  [3] https://github.com/tornadoweb/tornado/issues/2341

  Will provide test setup at a later point

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/python-tornado/+bug/1903733/+subscriptions