Igor Artamonov
|
cca8593a48
|
problem: may request balance from a lagging node
|
2020-05-24 20:16:14 -04:00 |
|
Igor Artamonov
|
47eb126a75
|
problem: used slow JDK TLS
|
2020-05-24 13:03:00 -04:00 |
|
Igor Artamonov
|
4a698f8c09
|
solution: update libs to the latest
|
2020-05-21 20:48:33 -04:00 |
|
Igor Artamonov
|
2fc6896a83
|
solution: refactoring, make ObjectMapper as a global object, not bean
|
2020-05-18 19:23:48 -04:00 |
|
Igor Artamonov
|
c742a62090
|
problem: race condition on a new block on head
|
2020-05-16 22:59:07 -04:00 |
|
Igor Artamonov
|
8d49856ffd
|
problem: sporadic unit-test failure
|
2020-05-16 17:17:21 -04:00 |
|
Igor Artamonov
|
1d947aeb9d
|
problem: unnecessary logging
|
2020-05-16 17:08:40 -04:00 |
|
Igor Artamonov
|
114f109722
|
solution: individual class for quorum based requests
|
2020-05-15 21:06:32 -04:00 |
|
Igor Artamonov
|
73f55d8d81
|
problem: routed api is not executed first
|
2020-05-14 23:47:59 -04:00 |
|
Igor Artamonov
|
af4aba69e7
|
problem: hardcoded methods are not called
|
2020-05-14 22:37:46 -04:00 |
|
Igor Artamonov
|
bbc21684ae
|
solution: refactoring, more clean class names
|
2020-05-14 00:12:38 -04:00 |
|
Igor Artamonov
|
98330b8772
|
problem: CI tests fail
|
2020-05-13 23:24:21 -04:00 |
|
Igor Artamonov
|
042408b4e6
|
solution: refactor and redesign API access, now with AggregateUpstream providing base direct/routed apis, plus actual chain upstreams providing specific readers
|
2020-05-13 22:29:21 -04:00 |
|
Igor Artamonov
|
a539ad3b84
|
solution: JSON RPC client that treats result as raw
|
2020-05-09 22:54:41 -04:00 |
|
Igor Artamonov
|
0ef46b2980
|
problem: different places to fetch from upstream
solution: single access reader for Ethereum upstreams
|
2020-05-04 21:51:42 -04:00 |
|
Igor Artamonov
|
3a13fb3bd5
|
problem: sporadic unit-test failure
|
2020-05-03 20:06:11 -04:00 |
|
Igor Artamonov
|
3fcc2e6d52
|
problem: Ethereum Address tracking has complex non-reactive logic
|
2020-05-03 13:55:14 -04:00 |
|
Igor Artamonov
|
549b8b1b5d
|
problem: Ethereum Tx tracking has complex non-reactive logic
|
2020-04-30 23:42:51 -04:00 |
|
Igor Artamonov
|
605c817149
|
solution: actualize copyrights and license
|
2020-04-27 21:49:01 -04:00 |
|
Igor Artamonov
|
bd58ba9774
|
problem: bitcoin mempool can be queries too often
solution: introduce data access wrappers, in this case caching mempool state in memory
|
2020-04-27 00:05:02 -04:00 |
|
Igor Artamonov
|
c9082b3cd0
|
problem: unit test failure
|
2020-04-26 20:43:46 -04:00 |
|
Igor Artamonov
|
101578aa5f
|
solution: methods configuration for bitcoin
|
2020-04-26 20:35:19 -04:00 |
|
Igor Artamonov
|
63e5fb8824
|
problem: unit test failure
|
2020-04-26 19:58:42 -04:00 |
|
Igor Artamonov
|
2de5d8d8e4
|
problem: native-call doesn't accept bitcoin calls
|
2020-04-24 00:04:53 -04:00 |
|
Igor Artamonov
|
f827f5a97a
|
problem: critical bitcoin methods are not enabled by default
|
2020-04-24 00:04:10 -04:00 |
|
Igor Artamonov
|
7ab21f9281
|
problem: no quorum details for bitcoin describe
|
2020-04-23 23:30:32 -04:00 |
|
Igor Artamonov
|
a41230a00a
|
solution: track Bitcoin transactions
|
2020-04-22 22:54:27 -04:00 |
|
Igor Artamonov
|
548154609d
|
solution: subscribe to bitcoin address balance
|
2020-04-20 21:43:49 -04:00 |
|
Igor Artamonov
|
322d9ac480
|
problem: Kotlin class mocking randomly fails
solution: upgrade testing libs, and open the class
|
2020-04-20 21:42:53 -04:00 |
|
Igor Artamonov
|
4f0b32f705
|
solution: working rpc to get bitcoin address balance
|
2020-04-19 20:47:16 -04:00 |
|
Igor Artamonov
|
ba996a8d2b
|
solution: initial implementation for Bitcoin upstreams
|
2020-04-18 22:26:30 -04:00 |
|
Igor Artamonov
|
51b25ab55d
|
problem: redis cached makes JSON parsing only to extract metadata, ineffective
solution: encode in protobuf with metadata included
|
2020-04-16 23:05:13 -04:00 |
|
Igor Artamonov
|
9cf1827fe1
|
problem: keeps data (block/tx) as business object, which requires special treating
solution: keep as bytes (json string) + meta
|
2020-04-14 00:25:25 -04:00 |
|
Igor Artamonov
|
0ab68ea782
|
solution: refactor upstreams to make them blockchain specific
|
2020-04-11 22:55:47 -04:00 |
|
Igor Artamonov
|
695b38f702
|
problem: using "upstreams" on two levels of config is confusing
|
2020-03-23 23:41:32 -04:00 |
|
Igor Artamonov
|
014461520e
|
problem: reading yaml to both plain properties and structured objects is a mess
solution: use just objects for configs
|
2020-03-23 22:54:52 -04:00 |
|
Igor Artamonov
|
d4bd180e23
|
solution: allow TLS configuration for proxy
|
2020-03-20 20:22:01 -04:00 |
|
Igor Artamonov
|
26f8dd294e
|
solution: basic implementation for Proxy endpoint
|
2020-03-19 23:34:32 -04:00 |
|
Igor Artamonov
|
32249bff32
|
solution: banner on run
|
2020-03-18 21:09:59 -04:00 |
|
Igor Artamonov
|
6392b6bebd
|
solution: setup CI
|
2020-03-15 16:48:31 -04:00 |
|
Igor Artamonov
|
35cb35fe0a
|
solution: Redis caching
|
2020-03-14 22:25:27 -04:00 |
|
Igor Artamonov
|
46cf08c6a2
|
solution: Redis cache for transactions
|
2020-03-11 23:02:30 -04:00 |
|
Igor Artamonov
|
83649ad631
|
solution: Redis cache for blocks
|
2020-03-10 23:45:00 -04:00 |
|
Igor Artamonov
|
2816b5b8fc
|
solution: refactoring
|
2020-02-24 22:14:24 -05:00 |
|
Igor Artamonov
|
b255bed3a1
|
solution: use caching for WS head
|
2020-02-23 23:54:30 -05:00 |
|
Igor Artamonov
|
81ccfef068
|
solution: warn if WS is not configured for an upstream
|
2020-02-23 22:01:11 -05:00 |
|
Igor Artamonov
|
3c2e61af7d
|
solution: use existing caches to respond to full block request
|
2020-02-09 00:24:41 -05:00 |
|
Igor Artamonov
|
d551d95a3f
|
solution: cache requested transactions
|
2020-02-07 23:51:28 -05:00 |
|
Igor Artamonov
|
d13397260f
|
problem: doesn't use cache for block-by-height requests
|
2020-02-07 20:21:05 -05:00 |
|
Igor Artamonov
|
d69ee41e7a
|
problem: unnecessary exceptions in logs when an unavailable blockchain is requested
|
2019-12-30 22:22:30 -05:00 |
|