Show More
@@ -28,3 +28,5 b' a47ccfb020cda78c8680e3844aaf0b82b1390f3b' | |||
|
28 | 28 | 347ae9ae544bba8deb417995285287a3b6be1611 v4.10.4 |
|
29 | 29 | 9b257ac49841f850434be0d518baca0827e6c8cc v4.10.5 |
|
30 | 30 | e8bf26eea118694edc4ffe50c6c5aa91022bc434 v4.10.6 |
|
31 | 71fa9274ba59fb982104f0b9b3d0d024c78675f7 v4.11.0 | |
|
32 | 92471577ef25636e5babe8001d47fc8e51521522 v4.11.1 |
@@ -653,7 +653,7 b'' | |||
|
653 | 653 | }; |
|
654 | 654 | }; |
|
655 | 655 | rhodecode-vcsserver = super.buildPythonPackage { |
|
656 |
name = "rhodecode-vcsserver-4.11. |
|
|
656 | name = "rhodecode-vcsserver-4.11.1"; | |
|
657 | 657 | buildInputs = with self; [pytest py pytest-cov pytest-sugar pytest-runner pytest-catchlog pytest-profiling gprof2dot pytest-timeout mock WebTest cov-core coverage configobj]; |
|
658 | 658 | doCheck = true; |
|
659 | 659 | propagatedBuildInputs = with self; [Beaker configobj decorator dulwich hgsubversion hg-evolve infrae.cache mercurial msgpack-python pyramid pyramid-jinja2 pyramid-mako repoze.lru simplejson subprocess32 subvertpy six translationstring WebOb wheel zope.deprecation zope.interface ipdb ipython gevent greenlet gunicorn waitress pytest py pytest-cov pytest-sugar pytest-runner pytest-catchlog pytest-profiling gprof2dot pytest-timeout mock WebTest cov-core coverage]; |
@@ -23,10 +23,13 b' along with git_http_backend.py Project.' | |||
|
23 | 23 | If not, see <http://www.gnu.org/licenses/>. |
|
24 | 24 | """ |
|
25 | 25 | import os |
|
26 | import logging | |
|
26 | 27 | import subprocess32 as subprocess |
|
27 | 28 | from collections import deque |
|
28 | 29 | from threading import Event, Thread |
|
29 | 30 | |
|
31 | log = logging.getLogger(__name__) | |
|
32 | ||
|
30 | 33 | |
|
31 | 34 | class StreamFeeder(Thread): |
|
32 | 35 | """ |
@@ -117,7 +120,7 b' class InputStreamChunker(Thread):' | |||
|
117 | 120 | s = self.source |
|
118 | 121 | t = self.target |
|
119 | 122 | cs = self.chunk_size |
|
120 | ccm = self.chunk_count_max | |
|
123 | chunk_count_max = self.chunk_count_max | |
|
121 | 124 | keep_reading = self.keep_reading |
|
122 | 125 | da = self.data_added |
|
123 | 126 | go = self.go |
@@ -127,14 +130,14 b' class InputStreamChunker(Thread):' | |||
|
127 | 130 | except ValueError: |
|
128 | 131 | b = '' |
|
129 | 132 | |
|
133 | timeout_input = 20 | |
|
130 | 134 | while b and go.is_set(): |
|
131 | if len(t) > ccm: | |
|
135 | if len(t) > chunk_count_max: | |
|
132 | 136 | keep_reading.clear() |
|
133 |
keep_reading.wait( |
|
|
134 | ||
|
135 | if not keep_reading.wait(10): | |
|
136 | raise Exception( | |
|
137 | "Timed out while waiting for input to be read.") | |
|
137 | keep_reading.wait(timeout_input) | |
|
138 | if len(t) > chunk_count_max + timeout_input: | |
|
139 | log.error("Timed out while waiting for input from subprocess.") | |
|
140 | os._exit(-1) # this will cause the worker to recycle itself | |
|
138 | 141 | |
|
139 | 142 | t.append(b) |
|
140 | 143 | da.set() |
General Comments 0
You need to be logged in to leave comments.
Login now