Igor Artamonov
|
c2636cd81e
|
problem: Proxy fails to serialize JSON
reason: expects full JSON response from upstream, which is replaces with result field only
|
2020-06-29 22:44:44 -04:00 |
|
Igor Artamonov
|
04958784ec
|
problem: tries to connect to Redis even if specified as disabled
|
2020-06-29 21:49:01 -04:00 |
|
Igor Artamonov
|
03b6d6472c
|
solution: start v0.8
|
2020-05-27 19:11:41 -04:00 |
|
Igor Artamonov
|
e26b92b51b
|
solution: release v0.7.0
|
2020-05-27 18:04:57 -04:00 |
|
Igor Artamonov
|
21748b0da3
|
solution: improve texts
|
2020-05-27 17:56:55 -04:00 |
|
Igor Artamonov
|
04371d41cc
|
solution: log format more clear for ops
|
2020-05-27 17:50:54 -04:00 |
|
Igor Artamonov
|
3ff61b735a
|
problem: confusing stack trace when cannot connect to Redis
|
2020-05-27 17:44:14 -04:00 |
|
Igor Artamonov
|
aaf79ad643
|
solution: make more clear how to setup round-robin
rel: #7
|
2020-05-27 15:50:51 -04:00 |
|
Igor Artamonov
|
ef32308868
|
problem: outdated config examples
rel: #7
|
2020-05-27 15:23:46 -04:00 |
|
Igor Artamonov
|
0894b98081
|
Merge pull request #14 from emeraldpay/feat/quorum-for-direct
problem: quorum is not applied for internal reads
|
2020-05-26 22:51:47 -04:00 |
|
Igor Artamonov
|
948c34a0c7
|
problem: quorum is not applied for internal reads
|
2020-05-26 22:43:58 -04:00 |
|
Igor Artamonov
|
5584858e44
|
problem: single invalid response from upstream breaks whole batch
solution: handle http and json errors and convert to RPC errors
|
2020-05-25 18:30:55 -04:00 |
|
Igor Artamonov
|
d7bb121ef0
|
problem: getblockhash (block by height) method is not available on bitcoin
|
2020-05-25 16:59:57 -04:00 |
|
Igor Artamonov
|
b35a450f04
|
problem: typo
|
2020-05-24 20:46:51 -04:00 |
|
Igor Artamonov
|
cf003254ac
|
Merge pull request #12 from emeraldpay/ci/coverage
solution: coverage report
|
2020-05-24 20:42:32 -04:00 |
|
Igor Artamonov
|
f4450ceecb
|
solution: coverage report
|
2020-05-24 20:38:05 -04:00 |
|
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
|
2cfdf392ad
|
Merge pull request #9 from MysticRyuujin/patch-1
Fix Gitter Chat Link
|
2020-05-17 20:16:36 -04:00 |
|
Igor Artamonov
|
b796dd375e
|
Merge pull request #6 from emeraldpay/feat/normal-request-flow
refactor request flow
|
2020-05-16 23:07:06 -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
|
3729aa040e
|
problem: hard to find failing tests on CI
|
2020-05-13 22:55:19 -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
|
0f5c6c70a4
|
problem: gradle configuration warnings
|
2020-05-02 22:17:14 -04:00 |
|
Igor Artamonov
|
ba2967f85f
|
solution: update Reactor
|
2020-04-30 23:43:52 -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
|
a6d14fcf22
|
problem: makes full rebuild on unit tests run, because it calls codegen which requires clean
|
2020-04-27 21:06:25 -04:00 |
|
Igor Artamonov
|
7dd90d2783
|
Merge pull request #5 from emeraldpay/feat/bitcoin
Bitcoin support
|
2020-04-27 21:03:39 -04:00 |
|
Igor Artamonov
|
cfcb0bffff
|
solution: update docs with info about Bitcoin support
|
2020-04-27 20:56:06 -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
|
0ae9d8ec3c
|
solution: start v0.7
|
2020-04-10 18:27:55 -04:00 |
|
Igor Artamonov
|
e3b512ca80
|
solution: release v0.6.0
|
2020-04-09 21:26:55 -04:00 |
|
Igor Artamonov
|
a82926ced5
|
solution: better explain the idea in readme
|
2020-04-09 21:24:44 -04:00 |
|
Igor Artamonov
|
6ab4eb366a
|
solution: upload dist to releases when created
|
2020-04-09 20:25:41 -04:00 |
|
Igor Artamonov
|
33028a5050
|
solution: more clear intro to the project
|
2020-03-29 20:56:04 -04:00 |
|
Igor Artamonov
|
0e8ab7dd06
|
Merge pull request #4 from emeraldpay/docs/reference
solution: config reference doc
|
2020-03-26 23:10:51 -04:00 |
|
Igor Artamonov
|
b5a40774d4
|
solution: config reference doc
|
2020-03-26 23:07:18 -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
|
7455949541
|
problem: integration test fails with "Cannot find '.git' directory"
|
2020-03-18 22:18:03 -04:00 |
|
Igor Artamonov
|
6cbaf664a6
|
problem: build failure on clean project
|
2020-03-18 21:14:37 -04:00 |
|
Igor Artamonov
|
32249bff32
|
solution: banner on run
|
2020-03-18 21:09:59 -04:00 |
|
Igor Artamonov
|
2aa78a96c5
|
solution: start version v0.6
|
2020-03-18 20:46:02 -04:00 |
|
Igor Artamonov
|
3975f1b3c2
|
solution: v0.5
|
2020-03-15 20:58:01 -04:00 |
|
Igor Artamonov
|
7e255d837a
|
solution: publish to docker on github release
|
2020-03-15 20:57:19 -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
|
67ba1457fa
|
solution: roadmap
|
2020-03-13 15:10:20 -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 |
|
Igor Artamonov
|
38bb9a0fa5
|
problem: caching is not verified
|
2019-12-30 00:21:54 -05:00 |
|
Igor Artamonov
|
d1585287b0
|
solution: revise for the latest etherjar
|
2019-11-13 21:35:51 -05:00 |
|
Igor Artamonov
|
84024be68d
|
solution: development instructions
|
2019-11-13 21:33:20 -05:00 |
|
Igor Artamonov
|
9ca9f4e8ae
|
problem: unhandled error for second call if first had failed
|
2019-11-08 18:54:52 -05:00 |
|
Igor Artamonov
|
559a464252
|
solution: revise for the latest etherjar
|
2019-11-08 18:53:50 -05:00 |
|
Igor Artamonov
|
9c07b18912
|
problem: exception stacktrace in logs
|
2019-11-05 22:19:40 -05:00 |
|
Igor Artamonov
|
2a93b9efa3
|
problem: stuck if upstream returned null
|
2019-11-05 22:11:47 -05:00 |
|
Igor Artamonov
|
90648ecd8c
|
solution: revise for the latest etherjar
|
2019-10-26 23:33:12 -04:00 |
|
Igor Artamonov
|
bc6fd4d1db
|
solution: minot changes to docs
|
2019-10-25 21:36:42 -04:00 |
|
Igor Artamonov
|
6aed2395b6
|
problem: tx broadcast breaks call (and causes timeout) if it's already broadcasted
|
2019-10-17 19:29:27 -04:00 |
|
Igor Artamonov
|
ff9bcefe25
|
solution: better handle for minor upstream errors
|
2019-10-16 20:58:57 -04:00 |
|
Igor Artamonov
|
cd1a7d1b91
|
solution: update to latest etherjar with updated blockjson model
|
2019-10-16 16:03:52 -04:00 |
|
Igor Artamonov
|
cdb631dbf8
|
problem: chain backed by single grpc upstream is unavailable
|
2019-10-16 00:03:24 -04:00 |
|