group.of.nepali.translators team mailing list archive
-
group.of.nepali.translators team
-
Mailing list archive
-
Message #37476
[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