Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
927913bd02
|
||
|
|
290fa1844d
|
||
|
|
b6ed8d7d8f
|
||
|
|
4905fe4fc2
|
@@ -1,3 +1,6 @@
|
|||||||
|
* 0.3.3
|
||||||
|
- Include shep persistent state bootstrap sync
|
||||||
|
- Add chainsyncer extras
|
||||||
* 0.3.2
|
* 0.3.2
|
||||||
- Implement rocksdb backend
|
- Implement rocksdb backend
|
||||||
* 0.3.1
|
* 0.3.1
|
||||||
|
|||||||
@@ -1,9 +1,12 @@
|
|||||||
# standard imports
|
# standard imports
|
||||||
import uuid
|
import uuid
|
||||||
|
import logging
|
||||||
|
|
||||||
# local imports
|
# local imports
|
||||||
from chainsyncer.error import FilterDone
|
from chainsyncer.error import FilterDone
|
||||||
|
|
||||||
|
logg = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
class SyncSession:
|
class SyncSession:
|
||||||
|
|
||||||
@@ -29,6 +32,7 @@ class SyncSession:
|
|||||||
def filter(self, conn, block, tx):
|
def filter(self, conn, block, tx):
|
||||||
self.session_store.connect()
|
self.session_store.connect()
|
||||||
for fltr in self.filters:
|
for fltr in self.filters:
|
||||||
|
logg.debug('executing filter {}'.format(fltr))
|
||||||
self.item.advance()
|
self.item.advance()
|
||||||
interrupt = fltr.filter(conn, block, tx)
|
interrupt = fltr.filter(conn, block, tx)
|
||||||
if not self.item.release(interrupt=interrupt):
|
if not self.item.release(interrupt=interrupt):
|
||||||
|
|||||||
@@ -121,7 +121,7 @@ class SyncItem:
|
|||||||
def release(self, interrupt=False):
|
def release(self, interrupt=False):
|
||||||
if self.skip_filter:
|
if self.skip_filter:
|
||||||
return False
|
return False
|
||||||
if interrupt:
|
if interrupt == True:
|
||||||
self.filter_state.unset(self.state_key, self.filter_state.from_name('LOCK'))
|
self.filter_state.unset(self.state_key, self.filter_state.from_name('LOCK'))
|
||||||
self.filter_state.set(self.state_key, self.filter_state.from_name('INTERRUPT'))
|
self.filter_state.set(self.state_key, self.filter_state.from_name('INTERRUPT'))
|
||||||
self.filter_state.set(self.state_key, self.filter_state.from_name('DONE'))
|
self.filter_state.set(self.state_key, self.filter_state.from_name('DONE'))
|
||||||
|
|||||||
@@ -2,4 +2,4 @@ confini~=0.6.0
|
|||||||
semver==2.13.0
|
semver==2.13.0
|
||||||
hexathon~=0.1.5
|
hexathon~=0.1.5
|
||||||
chainlib>=0.1.0b1,<0.2.0
|
chainlib>=0.1.0b1,<0.2.0
|
||||||
shep>=0.2.1rc1,<0.3.0
|
shep~=0.2.2
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
[metadata]
|
[metadata]
|
||||||
name = chainsyncer
|
name = chainsyncer
|
||||||
version = 0.3.2
|
version = 0.3.3
|
||||||
description = Generic blockchain syncer driver
|
description = Generic blockchain syncer driver
|
||||||
author = Louis Holbrook
|
author = Louis Holbrook
|
||||||
author_email = dev@holbrook.no
|
author_email = dev@holbrook.no
|
||||||
|
|||||||
Reference in New Issue
Block a user