Riordan Panayides
0d41c04de5
Snapshot all program ids in fills
2023-01-19 02:44:54 +00:00
Riordan Panayides
393e10c440
Disable serum fill change/drop detection, rename connector metrics
2023-01-18 19:39:53 +00:00
Riordan Panayides
464946dc16
Switch mack to mango-v4/dev, add dedup queue metric, fix orderbook checkpoint
2023-01-05 20:18:56 +00:00
Riordan Panayides
49bcdeee77
Use new geyser plugin, add orderbook service
2022-12-16 11:00:42 +00:00
Riordan Panayides
e2729306b8
cargo fmt
2022-10-07 11:46:19 +01:00
Riordan Panayides
2881378b7f
Refactor metrics
2022-10-07 11:44:53 +01:00
Riordan Panayides
1d1f462cf6
Rename count metrics
2022-10-06 01:33:07 +01:00
riordanp
2f09d0a8f2
Add docker build and fly deployment actions ( #2 )
...
* Test dockerfile with caching
* Fix action
* Remove tags
* Use sccache release
* Use max mode
* idk
* Try no runtime build
* Use cargo-chef
* Test rebuild
* Revert "Test rebuild"
This reverts commit d7e1654c63
.
* Publish image to GCR
* Trigger build
* Read config from env
* Fix typo
* Bind to correct address
* Lint
* Add fly config
* Switch trigger branch to main
* Use both common branch names
2022-09-20 23:01:24 +02:00
Riordan Panayides
3dfb430416
Add zstd decoding
2022-08-25 11:51:38 +01:00
Riordan Panayides
f39fcdfba9
Fix lib for 1.10 compatibility
2022-08-24 13:47:16 +01:00
Christian Kamm
c2f0c0ac05
Fix write_version sanity checking for 1.9
...
In 1.9, the write_version will no longer be strictly monotonic across
accounts.
2022-03-28 15:37:53 +02:00
Christian Kamm
cdf6d54156
Config: Separate out source config
...
We want to be able to not have a postgres target
2022-03-23 08:51:17 +01:00
Christian Kamm
42f07d58a6
Keep slot, write_version etc as u64, convert only for postgres
...
This makes the conversion to i64 something that's local to the postgres
target, and doesn't affect unrelated code.
2022-03-23 08:18:02 +01:00
Christian Kamm
83e9c54fc0
Fix talking to older plugins
...
The previous commit only looked like it worked due to stale generated
code.
2022-03-23 08:16:02 +01:00
Christian Kamm
2b1bf634c7
grpc proto: Change back to AccountsDb name to avoid incompatibility
...
Existing plugin deployments must continue to work with the new version
of the connector.
2022-03-22 12:54:38 +01:00
Linus Kendall
b6cefddef2
Compatibility fixes for 1.9
...
- Renamed to geyser everywhere and updated the crates
- Changed FullRpcClient to AccountsDataClient
2022-03-22 08:36:59 +00:00
Christian Kamm
f25c49d983
Configurable max account write queue size
2022-03-16 11:04:30 +01:00
Christian Kamm
80423fdac9
Track "is_selected" to denote closed/reused accounts
2022-01-28 10:12:01 +01:00
Christian Kamm
3f242aa3b6
Fix startup issue around rooted slots
2022-01-04 10:14:30 +01:00
Christian Kamm
f0c26bb8fb
Fix write_version from multiple servers and startup
...
Each node has an internal write_version counter. To deduplicate events
and produce a consistent database snapshot independent of the internal
count, we map it a per-slot-and-pubkey write version.
To do this correctly, we can only process account writes for slots where
all account writes will be received. This is a problem during startup,
where it's unclear what slots we have missed data for.
To make startup easier, let the plugin keep track of the highest slot
number that account writes have happened for, and send it when a new
consumer connects.
2022-01-03 10:36:11 +01:00
Christian Kamm
4236805b29
Fix problem with write_version being node-specific
...
To work around that, build our own write_version based on the number of
writes to a pubkey each slot.
2021-12-20 16:08:36 +01:00
Christian Kamm
76e14d0300
Fix initial snapshot #1
...
Previously the initial snapshot could be returned for a discarded slot.
Now a finalized-commitment snapshot is retrieved.
2021-12-13 16:48:33 +01:00
Christian Kamm
17d6787bf1
Add TLS domain name argument
2021-11-30 17:15:41 +01:00
Christian Kamm
b65815e4d4
gRPC: Optionally use TLS
2021-11-18 14:21:17 +01:00
Christian Kamm
dbfbae1a49
Delay snapshot more, add metric on slot insertion queue
2021-11-15 15:49:59 +01:00
Christian Kamm
8f6bd7bc22
Postgres: Allow parallel slot update connections
...
It would be nicer if many of the writes could happen on the same
connection. Separate connections are only necessary if transactions are
used.
2021-11-15 15:28:18 +01:00
Christian Kamm
3a0e2535f0
Use anyhow::Result over Result<T, anyhow::Error>
2021-11-09 14:27:09 +01:00
Christian Kamm
0cdee40851
Metrics cleanup
2021-11-09 14:23:55 +01:00
Christian Kamm
4d5f0c5d10
Basic metrics
2021-11-09 09:00:00 +01:00
Christian Kamm
029cbd2fb5
Allow multiple grpc sources
2021-11-08 15:48:50 +01:00
Christian Kamm
f43aaf0f55
Don't process old account writes
...
This will help when receiving data from multiple validator nodes
2021-11-08 15:31:35 +01:00
Christian Kamm
35c0c5da23
Fix delayed snapshots
...
The snapshot was requested too early before.
2021-11-08 14:26:37 +01:00
Christian Kamm
a17f142875
Use enum for slot status
2021-11-08 12:44:01 +01:00
Christian Kamm
0424c3c9d6
grpc configurability
2021-11-08 11:42:22 +01:00
Christian Kamm
cbe9e16b62
Configurable program id
2021-11-08 09:57:56 +01:00
Christian Kamm
e67dd6c235
Split into connector library, and raw and mango binaries
2021-11-08 09:45:41 +01:00