Skip to content

Commit 2d92199

Browse files
author
Neil
authored
Merge pull request #91 from shsmith/master
move sleep outside semaphore (issue 88)
2 parents b1e8012 + 62eded5 commit 2d92199

3 files changed

Lines changed: 11 additions & 5 deletions

File tree

RELEASE-NOTES

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
version 0.9.19
2+
--------------
3+
4+
- move sleep outside semaphore (issue 88)
5+
16
version 0.9.18
27
--------------
38

server/block_processor.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,9 @@ async def main_loop(self, caught_up_event):
8989
while True:
9090
try:
9191
with await self.semaphore:
92-
await self._prefetch_blocks(caught_up_event.is_set())
92+
fetched = await self._prefetch_blocks(caught_up_event.is_set())
93+
if not fetched:
94+
await asyncio.sleep(5)
9395
await self.refill_event.wait()
9496
except DaemonError as e:
9597
self.logger.info('ignoring daemon error: {}'.format(e))
@@ -113,8 +115,7 @@ async def _prefetch_blocks(self, mempool):
113115
if not count:
114116
self.cache.put_nowait(([], 0))
115117
self.caught_up = True
116-
await asyncio.sleep(5)
117-
return
118+
return False
118119

119120
first = self.fetched_height + 1
120121
hex_hashes = await self.daemon.block_hex_hashes(first, count)
@@ -140,7 +141,7 @@ async def _prefetch_blocks(self, mempool):
140141
self.fetched_height += count
141142

142143
self.refill_event.clear()
143-
144+
return True
144145

145146
class ChainError(Exception):
146147
'''Raised on error processing blocks.'''

server/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
VERSION = "ElectrumX 0.9.18"
1+
VERSION = "ElectrumX 0.9.19"

0 commit comments

Comments
 (0)