Igor Artamonov
|
92657cf635
|
solution: test ProxyServer
|
2021-10-27 21:19:32 -04:00 |
|
Igor Artamonov
|
89eec9958a
|
problem: Proxy doesn't render internal exceptions to JSON RPC errors
|
2021-10-27 21:18:58 -04:00 |
|
Igor Artamonov
|
133937822c
|
solution: configuration for Websocket proxy
|
2021-10-27 20:34:04 -04:00 |
|
Igor Artamonov
|
dc3c7b1249
|
problem: ktlint
|
2021-10-26 23:18:24 -04:00 |
|
Igor Artamonov
|
bdd25da387
|
solution: Websocket Ethereum proxy
fix: #110
|
2021-10-26 23:03:40 -04:00 |
|
Igor Artamonov
|
6158d10aac
|
Merge pull request #122 from emeraldpay/feat/health-check
|
2021-10-24 18:03:22 -04:00 |
|
Igor Artamonov
|
5f159dd6d7
|
solution: docs for health check
|
2021-10-23 21:05:04 -04:00 |
|
Igor Artamonov
|
7032a9559f
|
problem: lint
|
2021-10-22 22:27:36 -04:00 |
|
Igor Artamonov
|
710f90ddaa
|
problem: formatting
|
2021-10-22 22:19:37 -04:00 |
|
Igor Artamonov
|
5f4a8a4ac4
|
solution: health check with detailed description of health
|
2021-10-22 22:12:48 -04:00 |
|
Igor Artamonov
|
e205985da3
|
solution: health check endpoint
fix: #111
|
2021-10-20 23:10:41 -04:00 |
|
Igor Artamonov
|
a04c1f3e66
|
problem: when an upstream is degrading it's unclear which one
|
2021-10-20 20:34:35 -04:00 |
|
Igor Artamonov
|
94f7fbb9b8
|
problem: inconsistent code style between Intellij IDEA and ktlint
rel: https://github.com/pinterest/ktlint/issues/805
|
2021-10-20 20:22:57 -04:00 |
|
Igor Artamonov
|
04ee74514c
|
Merge pull request #115 from emeraldpay/feat/native-subscribe
|
2021-10-20 12:22:52 -04:00 |
|
Igor Artamonov
|
6261bd1ea7
|
solution: docs for NativeSubscribe
|
2021-10-19 21:59:03 -04:00 |
|
Igor Artamonov
|
983358f5c8
|
solution: use published emerald api
|
2021-10-19 21:19:18 -04:00 |
|
Igor Artamonov
|
52840a1d45
|
solution: native subscription for "syncing"
|
2021-10-19 17:12:36 -04:00 |
|
Igor Artamonov
|
1673732a29
|
problem: doesn't cache recent Tx Receipts
|
2021-10-18 22:30:17 -04:00 |
|
Igor Artamonov
|
06811060cc
|
solution: subscribe to "logs" events
|
2021-10-17 20:41:45 -04:00 |
|
Igor Artamonov
|
e37076936f
|
problem: CompoundReader makes unnecessary requests
|
2021-10-17 19:47:32 -04:00 |
|
Igor Artamonov
|
e76e2bebf5
|
solution: newHeads subsription
|
2021-10-09 21:51:55 -04:00 |
|
Igor Artamonov
|
49bfa163ef
|
solution: base implementation for NativeSubscribe
|
2021-10-04 20:58:25 -04:00 |
|
Igor Artamonov
|
84ca9d7dcf
|
problem: disconnects from WebSocket if multiple upstreams are set
|
2021-09-23 22:27:33 -04:00 |
|
Igor Artamonov
|
bafffe09d8
|
Merge pull request #114 from emeraldpay/feat/calls-with-ws
fix #107
|
2021-09-23 19:26:23 -04:00 |
|
Igor Artamonov
|
ebef8cf27a
|
problem: WS connection still breaks with very large frames
solution: increase default limit and make it configurable
|
2021-09-22 19:35:14 -04:00 |
|
Igor Artamonov
|
bd8c0f7c19
|
solution: mark Upstream status right after WS connect/disconnect
|
2021-09-22 17:08:43 -04:00 |
|
Igor Artamonov
|
1f864bdbe3
|
problem: too slow to validate WS on CI
|
2021-09-21 22:06:44 -04:00 |
|
Igor Artamonov
|
5586a95063
|
problem: unit test
rel: [37e3d4e]
|
2021-09-21 21:54:57 -04:00 |
|
Igor Artamonov
|
37e3d4e252
|
problem: waits to long to reconnect (10 seconds)
solution: use exp backoff, from 100ms to 1 minute
|
2021-09-21 21:41:44 -04:00 |
|
Igor Artamonov
|
16e589ab69
|
problem: drops connection because of large frames
|
2021-09-21 21:07:28 -04:00 |
|
Igor Artamonov
|
e44b2c129d
|
problem: doesn't execute calls after reconnect
|
2021-09-21 20:33:53 -04:00 |
|
Igor Artamonov
|
613c895d75
|
problem: may stick with reconnect if multiple errors happened at the same time
|
2021-09-21 20:28:19 -04:00 |
|
Igor Artamonov
|
9a6b612855
|
solution: ensure it reconnects if WS connection closed or dropped
|
2021-09-21 20:00:16 -04:00 |
|
Igor Artamonov
|
e40c62a728
|
solution: check current height on connect
|
2021-09-20 22:43:00 -04:00 |
|
Igor Artamonov
|
b68da0f801
|
solution: WS-only Ethereum upstream
|
2021-09-20 22:04:25 -04:00 |
|
Igor Artamonov
|
568a045271
|
solution: Ethereum WS connection fetches block through the same WS channel, instead of HTTP RPC
|
2021-09-19 22:52:21 -04:00 |
|
Igor Artamonov
|
817f794c04
|
solution: upgrade Reactor libs
|
2021-09-15 23:21:07 -04:00 |
|
Igor Artamonov
|
1576f1fe64
|
solution: upgrade Kotlin to 1.5
|
2021-09-15 21:30:05 -04:00 |
|
Igor Artamonov
|
199259afdb
|
problem: Docker latest tag is misleading
|
2021-09-07 22:11:51 -04:00 |
|
Igor Artamonov
|
f443b7a297
|
problem: missing height in status log
|
2021-09-07 21:55:55 -04:00 |
|
Igor Artamonov
|
f55370a64e
|
problem: fails to build JSON for some Ethereum blocks
|
2021-09-07 21:45:36 -04:00 |
|
Igor Artamonov
|
a7500fd13c
|
solution: start v0.11
|
2021-09-07 21:42:22 -04:00 |
|
Igor Artamonov
|
407266c5a1
|
solution: release v0.10.0
|
2021-09-06 18:18:50 -04:00 |
|
Igor Artamonov
|
f6134ed470
|
problem: incorrect status updates
|
2021-09-06 17:38:27 -04:00 |
|
Igor Artamonov
|
8c7bb01f80
|
problem: produces repeated status update on same chain when it has many upstreams
|
2021-09-06 17:04:10 -04:00 |
|
 Igor ArtamonovandSpontaneousOverthrow
|
cd21984df8
|
solution: dynamic metrics for JSON RPC endpoint
fix: #100
Co-authored-by: SpontaneousOverthrow <v.rodionov@protonmail.com>
|
2021-09-05 20:16:22 -04:00 |
|
Igor Artamonov
|
a9e03775e2
|
problem: fails to process transactions on Matic network (because of large V value)
solution: upgrade EthereJar where it's fixed
|
2021-09-03 22:16:11 -04:00 |
|
Igor Artamonov
|
9dffe2f6e9
|
solution: support new method eth_feeHistory
|
2021-08-26 21:09:53 -04:00 |
|
Igor Artamonov
|
54dc251c87
|
solution: access log for JSON RPC proxy
|
2021-08-25 16:08:47 -04:00 |
|
Igor Artamonov
|
64d667acad
|
solution: integration test with Rinkeby
|
2021-08-16 22:08:56 -04:00 |
|
Igor Artamonov
|
0f77b57bd0
|
problem: invalid height matcher when block hash is specified
|
2021-08-16 21:59:39 -04:00 |
|
Igor Artamonov
|
827288cdcd
|
solution: organize the integration test suite
|
2021-08-16 19:52:46 -04:00 |
|
Igor Artamonov
|
7cf86129f0
|
problem: routes calls to upstreams that quorum wouldnt accept anyway (not-lagging quorum to lagging upstreams)
solution: select only possible acceptable upstreams before the call
|
2021-08-04 17:00:30 -04:00 |
|
Igor Artamonov
|
2f2a553cd4
|
solution: allow configuring a quorum for custom methods
|
2021-08-04 14:58:28 -04:00 |
|
Igor Artamonov
|
96109d4013
|
problem: gives no status updates if chain is not configured
|
2021-07-31 22:06:02 -04:00 |
|
Igor Artamonov
|
e73920b4c9
|
solution: ci, upgrade gcp actions
|
2021-07-31 15:44:52 -04:00 |
|
Igor Artamonov
|
ec9235afbb
|
solution: revise the readme
|
2021-07-20 22:42:43 -04:00 |
|
Igor Artamonov
|
5490e44caa
|
solution: docs for monitoring with Prometheus
|
2021-07-20 21:59:06 -04:00 |
|
Igor Artamonov
|
bc6d4c0c80
|
Merge pull request #93 from emeraldpay/feat/accesslog
access logging
|
2021-07-19 23:24:04 -04:00 |
|
Igor Artamonov
|
e8fc025966
|
solution: docs for access logging
|
2021-07-19 23:15:31 -04:00 |
|
Igor Artamonov
|
3a12efd0a0
|
solution: test accesslog writer
|
2021-07-19 22:19:48 -04:00 |
|
Igor Artamonov
|
9e49b0e13d
|
solution: access log api version
|
2021-07-19 21:58:17 -04:00 |
|
Igor Artamonov
|
cd9087a425
|
solution: refactor AccessLog handler
|
2021-07-06 14:47:42 -04:00 |
|
Igor Artamonov
|
0d144a44a9
|
problem: NativeCall replies are logged only on complete
solution: add to the log at the moment of reply
|
2021-07-05 21:51:15 -04:00 |
|
Igor Artamonov
|
6cb703ec4e
|
solution: access logging for SubscribeStatus method
|
2021-07-04 18:38:00 -04:00 |
|
Igor Artamonov
|
3ef5a4455c
|
problem: doesn't publish upstream status updates
|
2021-07-04 18:37:17 -04:00 |
|
Igor Artamonov
|
c27217a4ff
|
problem: failing unit tests
rel: [f2bc0f1d9b]
|
2021-07-04 18:36:31 -04:00 |
|
Igor Artamonov
|
ba1e93a965
|
solution: access logging for Describe method
|
2021-07-04 17:33:38 -04:00 |
|
Igor Artamonov
|
50a7177e6a
|
solution: access logging for SubscribeTxStatus method
|
2021-07-03 22:32:46 -04:00 |
|
Igor Artamonov
|
f2bc0f1d9b
|
solution: access logging for GetBalance method
|
2021-06-28 18:41:08 -04:00 |
|
Igor Artamonov
|
0a3053d803
|
solution: access logging for SubscribeBalance method
|
2021-06-28 16:49:09 -04:00 |
|
Igor Artamonov
|
ec043592c4
|
solution: refactoring
|
2021-06-28 13:58:34 -04:00 |
|
Igor Artamonov
|
a541c32104
|
solution: access logging for SubscribeHead method
|
2021-06-27 18:44:41 -04:00 |
|
Igor Artamonov
|
fd26d79f6e
|
solution: save remote client details into access log
|
2021-06-26 22:15:46 -04:00 |
|
Igor Artamonov
|
91ffb0212e
|
problem: fails to respond when requested block doesn't exist
|
2021-06-07 12:28:01 -04:00 |
|
Igor Artamonov
|
4875ade0e9
|
solution: base code for access logging
|
2021-06-03 18:12:46 -04:00 |
|
Igor Artamonov
|
8424288de2
|
problem: unit tests failed because of enabled jdk ssl implementation
|
2021-05-24 22:52:56 -04:00 |
|
Igor Artamonov
|
974a6d7d44
|
problem: lags with head info if WS connection dropped
solution: reconnect to WS after a connection error
|
2021-05-24 21:08:36 -04:00 |
|
Igor Artamonov
|
91edafe531
|
problem: unrecognized algorithm name PBEWithSHA1AndDESede for unit tests
|
2021-05-09 21:43:49 -04:00 |
|
Igor Artamonov
|
42888dfba9
|
problem: emerald packages moved from (dead) bintray to a new host
|
2021-05-09 20:08:58 -04:00 |
|
Igor Artamonov
|
adfc35e994
|
problem: Spring Reactor is too outdated
|
2021-05-05 14:39:43 -04:00 |
|
Igor Artamonov
|
053bdc9549
|
solution: extended monitoring option; monitoring for upstream selection filter
|
2021-04-01 18:14:41 -04:00 |
|
Igor Artamonov
|
0bbcc728c1
|
problem: full block returns transactions in different order
fix: #82
|
2021-03-27 18:49:24 -04:00 |
|
Igor Artamonov
|
3ae5203d98
|
problem: doesn't get head updates from all available heads
solution: ensure all heads are started on multihead start
rel: #67
|
2021-03-27 15:16:58 -04:00 |
|
Igor Artamonov
|
a26cc96ba6
|
solution: improve logging
|
2021-03-26 22:54:18 -04:00 |
|
Igor Artamonov
|
240a8b9a46
|
problem: bitcoin upstream breaks ethereum call selectors
|
2021-03-25 22:27:44 -04:00 |
|
Igor Artamonov
|
17f14987aa
|
solution: integration test with two upstreams
|
2021-03-24 22:52:25 -04:00 |
|
Igor Artamonov
|
be33508bb9
|
problem: doesn't handle upstream error for additionally allowed methods; allowing an existing method redefines its logic
rel: #67
|
2021-03-23 18:39:45 -04:00 |
|
Igor Artamonov
|
51c56acd86
|
solution: improve logging of upstream selection
|
2021-03-22 18:25:26 -04:00 |
|
Igor Artamonov
|
e3a7051897
|
problem: wrong ports for docker
rel: #77
|
2021-03-21 15:18:09 -04:00 |
|
Igor Artamonov
|
50f6d7b2fe
|
problem: doesn't select upstream by available block hash, see EIP-1898
rel: #81
|
2021-03-20 22:34:22 -04:00 |
|
Igor Artamonov
|
c3c1a51a52
|
problem: doesn't parse block selector specified as object EIP-1898
rel: #81
|
2021-03-19 22:04:03 -04:00 |
|
Igor Artamonov
|
c3f0f1f589
|
solution: make sure eth_call works with block ref and error response
|
2021-03-16 17:12:03 -04:00 |
|
Igor Artamonov
|
34c66484f5
|
solution: graceful shutdown if config is not available
|
2021-02-17 20:54:58 -05:00 |
|
Igor Artamonov
|
d60154d893
|
problem: nullpointer stacktrace if json is just "null"
|
2021-02-16 17:15:00 -05:00 |
|
Igor Artamonov
|
73d94879cd
|
problem: wrong name for some of the metrics
|
2021-02-15 23:42:08 -05:00 |
|
Igor Artamonov
|
a97b599908
|
solution: jvm monitoring
|
2021-02-15 23:39:09 -05:00 |
|
Igor Artamonov
|
a14a0e6585
|
problem: cannot enable metrics because of conflicting metric with different set of tags
|
2021-02-11 21:01:40 -05:00 |
|
Igor Artamonov
|
bd6ce103f7
|
solution: metrics for proxy requests
|
2021-02-10 21:25:39 -05:00 |
|
Igor Artamonov
|
81c5f2ef7b
|
solution: metrics for grpc requests
|
2021-02-10 17:53:07 -05:00 |
|