Groovie | Mango
69d7dbb123
optimize mapping of produced block ( #382 )
...
optimize mapping of produced block
2024-04-03 10:40:53 +02:00
godmodegalactus
91cf06436a
Changing exit signal from notify to broadcast channel in grpc multiplexer
2024-04-02 14:45:41 +02:00
godmodegalactus
1e956a2b4f
Revert "Replacing notify by cancellation token to correctly shutdown tasks"
...
This reverts commit d1abc345cf
.
2024-03-28 11:49:20 +01:00
godmodegalactus
02229060cf
Revert "Fix clippy fmt"
...
This reverts commit bac036ceaa
.
2024-03-28 11:49:17 +01:00
godmodegalactus
bac036ceaa
Fix clippy fmt
2024-03-28 09:12:12 +01:00
godmodegalactus
d1abc345cf
Replacing notify by cancellation token to correctly shutdown tasks
2024-03-28 09:09:42 +01:00
godmodegalactus
dfe8d972eb
Porting back the exit notify change
2024-03-27 17:57:40 +01:00
godmodegalactus
7d39a947ac
Minor changes, increasing default lite-rpc limits
2024-03-26 17:36:11 +01:00
Groovie | Mango
cd9df11501
use geyser blockmeta to progress finalizedslot ( #367 )
...
introduce BlockInfo on a new BlockInfoStream; maps from yellowstone BlockMeta
fix: last_finalized_slot must progress unconditionally
2024-03-22 19:22:38 +01:00
galactus
defdc20dd5
Getting finalized meta before processed main ( #366 )
...
* Use jemalloc
* Solving issue of finalized meta after processed block (#365 )
* Solving issue of finalized meta after processed block
* Fixing the broken test
* Minor changes
---------
Co-authored-by: Christian Kamm <mail@ckamm.de>
2024-03-22 12:30:14 +01:00
godmodegalactus
50b81135c3
Merge branch 'production'
2024-03-18 20:01:02 +01:00
godmodegalactus
85fcb6097e
Adding some more metrics for quic tpu, and changing some parameters
2024-03-18 17:25:52 +01:00
galactus
33ad19ed47
Removing verbose log for grpc multiplexing ( #354 )
2024-03-11 13:48:15 +01:00
Groovie | Mango
18a0ab7062
from grpc block ProduceBlock mapping - Performance+Typing ( #348 )
...
* remove all Pubkey::default();
1. the value does not make sense
2. we can safely assume that bytes can be deserialized
* use Signature instead of String
* use solana_sdk:#️⃣ :Hash for blockhash
* store VersionedMessage instead of serialized bas64 string
* refactor compute_budget extraction
* fix test data
* simplify map_compute_budget_instructions
* fmt
---------
Co-authored-by: godmodegalactus <godmodegalactus@gmail.com>
2024-03-01 17:21:48 +01:00
Groovie | Mango
2c42a536b6
Improve/geyser replace streams ( #330 )
...
* add env ENABLE_INSTRUMENT_TRACING to enable tracing
* add tracing dependency
* example tracings
* log recent_processed_blocks.len
* bound channels
* replace fastestwins with task version
* revert fake error
* fix meta stream
* disble almost all
* disable more
* keep slot channel up
* log memory usage using CAP
* log CAP memory usage
* add span tracing to mutliplex tasks
* merge
* fix import
* remove useless spans
* fix span logger
* log emitted data from multiplexer
* improve naming of mpsc from autoconnection task
* WIP: use task/mpsc autoconnect for full blocks
* use task/mpsc autoconnect for block meta too
* tag the channels
* add spans
* bump to use updated geyser-grpc-connector with mpsc
* remove unused functions
* extract constant
* split plugger for one and many downstreams
* clippy+fmt
* use task for slots too
* remove broadcast intermediate channel
2024-02-15 21:49:15 +01:00
Groovie | Mango
67641f6d40
fix bug causing endless geyser restart loops ( #324 )
...
fix restart logic
2024-02-12 11:53:52 +01:00
Groovie | Mango
38da1ed987
Improvement/check block sequencing ( #299 )
...
use grpc multiplex and improve sequencing
2024-02-07 15:51:22 +01:00
galactus
7e7992bbc3
Fixing memory issue ( #320 )
2024-02-06 10:08:18 +01:00
galactus
bc7d89ce4e
Production ( #313 )
...
* fix: panic on geyser close, multiplex bug
https://github.com/blockworks-foundation/geyser-grpc-connector/issues/3
* update Cargo.lock
* reverting cargo.lock
* Fix issues with grpc and postgres
* Solving merge issues
* Fixing cargo fmt
* Increase finish quic timeout (#280 ) (#281 )
* integrate geyser slot subscription (#283 )
* Increase finish quic timeout (#280 )
* Moving geyser slot subscription from stream to channels (#282 )
* Moving geyser slot subscription from stream to channels
* Closing all the slot subscription tasks incase of restart
* Making slot channel unbounded (bug)
* remove block_debug_listen
caused a panic - need more time to investigate
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] thread 'tokio-runtime-worker' panicked at cluster-endpoints/src/grpc_inspect.rs:59:21:
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] Error receiving block: Closed
2024-01-17T20:31:42.922 app[683d392fd45368] ams [info] 2024-01-17T20:31:42.912597Z ERROR lite_rpc: Services quit unexpectedly Err(cluster endpoint failure (Err(JoinError::Panic(Id(20), ...)), 1, [JoinHandle { id: Id(19) }, JoinHandle { id: Id(23) }])
* Update cargolock file
* Fixing clippy removing grpc_inspect
* merging main with production (#290 )
* remove block_debug_listen (#286 )
* remove block_debug_listen
caused a panic - need more time to investigate
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] thread 'tokio-runtime-worker' panicked at cluster-endpoints/src/grpc_inspect.rs:59:21:
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] Error receiving block: Closed
2024-01-17T20:31:42.922 app[683d392fd45368] ams [info] 2024-01-17T20:31:42.912597Z ERROR lite_rpc: Services quit unexpectedly Err(cluster endpoint failure (Err(JoinError::Panic(Id(20), ...)), 1, [JoinHandle { id: Id(19) }, JoinHandle { id: Id(23) }])
* clippy
* Fixing message too long and overflow panics (#288 )
* Update geyser grpc connector commit (#289 )
---------
Co-authored-by: Groovie | Mango <95291500+grooviegermanikus@users.noreply.github.com>
* Merging MTU changes and setting up transportation config (#293 )
* remove block_debug_listen (#286 )
* remove block_debug_listen
caused a panic - need more time to investigate
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] thread 'tokio-runtime-worker' panicked at cluster-endpoints/src/grpc_inspect.rs:59:21:
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] Error receiving block: Closed
2024-01-17T20:31:42.922 app[683d392fd45368] ams [info] 2024-01-17T20:31:42.912597Z ERROR lite_rpc: Services quit unexpectedly Err(cluster endpoint failure (Err(JoinError::Panic(Id(20), ...)), 1, [JoinHandle { id: Id(19) }, JoinHandle { id: Id(23) }])
* clippy
* Fixing message too long and overflow panics (#288 )
* Update geyser grpc connector commit (#289 )
* Updating the transport config to match with solana endpoint (#292 )
* Updating the transport config to match with solana endpoint
* Setting max MTU after groovies comments
---------
Co-authored-by: Groovie | Mango <95291500+grooviegermanikus@users.noreply.github.com>
* Making block subscription processed and moving confirmed block subscr… (#291 )
* Making block subscription processed and moving confirmed block subscription to meta
* Sending both processed and confirmed blocks, if block has already been confirmed
* Minor bug, subscribing to processed blocks instead of confirmed (#295 )
* reduce log
* Restart connection if any stream fails (#306 )
* Main into production 01/02/2024 (#312 )
* Production into main (#303 )
* fix: panic on geyser close, multiplex bug
https://github.com/blockworks-foundation/geyser-grpc-connector/issues/3
* update Cargo.lock
* reverting cargo.lock
* Fix issues with grpc and postgres
* Solving merge issues
* Fixing cargo fmt
* Increase finish quic timeout (#280 ) (#281 )
* integrate geyser slot subscription (#283 )
* Increase finish quic timeout (#280 )
* Moving geyser slot subscription from stream to channels (#282 )
* Moving geyser slot subscription from stream to channels
* Closing all the slot subscription tasks incase of restart
* Making slot channel unbounded (bug)
* remove block_debug_listen
caused a panic - need more time to investigate
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] thread 'tokio-runtime-worker' panicked at cluster-endpoints/src/grpc_inspect.rs:59:21:
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] Error receiving block: Closed
2024-01-17T20:31:42.922 app[683d392fd45368] ams [info] 2024-01-17T20:31:42.912597Z ERROR lite_rpc: Services quit unexpectedly Err(cluster endpoint failure (Err(JoinError::Panic(Id(20), ...)), 1, [JoinHandle { id: Id(19) }, JoinHandle { id: Id(23) }])
* Update cargolock file
* Fixing clippy removing grpc_inspect
* merging main with production (#290 )
* remove block_debug_listen (#286 )
* remove block_debug_listen
caused a panic - need more time to investigate
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] thread 'tokio-runtime-worker' panicked at cluster-endpoints/src/grpc_inspect.rs:59:21:
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] Error receiving block: Closed
2024-01-17T20:31:42.922 app[683d392fd45368] ams [info] 2024-01-17T20:31:42.912597Z ERROR lite_rpc: Services quit unexpectedly Err(cluster endpoint failure (Err(JoinError::Panic(Id(20), ...)), 1, [JoinHandle { id: Id(19) }, JoinHandle { id: Id(23) }])
* clippy
* Fixing message too long and overflow panics (#288 )
* Update geyser grpc connector commit (#289 )
---------
Co-authored-by: Groovie | Mango <95291500+grooviegermanikus@users.noreply.github.com>
* Merging MTU changes and setting up transportation config (#293 )
* remove block_debug_listen (#286 )
* remove block_debug_listen
caused a panic - need more time to investigate
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] thread 'tokio-runtime-worker' panicked at cluster-endpoints/src/grpc_inspect.rs:59:21:
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] Error receiving block: Closed
2024-01-17T20:31:42.922 app[683d392fd45368] ams [info] 2024-01-17T20:31:42.912597Z ERROR lite_rpc: Services quit unexpectedly Err(cluster endpoint failure (Err(JoinError::Panic(Id(20), ...)), 1, [JoinHandle { id: Id(19) }, JoinHandle { id: Id(23) }])
* clippy
* Fixing message too long and overflow panics (#288 )
* Update geyser grpc connector commit (#289 )
* Updating the transport config to match with solana endpoint (#292 )
* Updating the transport config to match with solana endpoint
* Setting max MTU after groovies comments
---------
Co-authored-by: Groovie | Mango <95291500+grooviegermanikus@users.noreply.github.com>
* Making block subscription processed and moving confirmed block subscr… (#291 )
* Making block subscription processed and moving confirmed block subscription to meta
* Sending both processed and confirmed blocks, if block has already been confirmed
* Minor bug, subscribing to processed blocks instead of confirmed (#295 )
---------
Co-authored-by: Groovie | Mango <95291500+grooviegermanikus@users.noreply.github.com>
Co-authored-by: GroovieGermanikus <groovie@mango.markets>
* Restart connection if any stream fails
* Updating to version 0.2.4
* Updating the change logs
* Fixing all the sub overflows by using saturating sub (#309 )
* Fixing by cu computation adding more tests to check by CU (#311 )
* Fixing by cu computation adding more tests to check by CU
* Adding more tests
---------
Co-authored-by: Groovie | Mango <95291500+grooviegermanikus@users.noreply.github.com>
Co-authored-by: GroovieGermanikus <groovie@mango.markets>
---------
Co-authored-by: Groovie | Mango <95291500+grooviegermanikus@users.noreply.github.com>
Co-authored-by: GroovieGermanikus <groovie@mango.markets>
2024-02-01 15:16:24 +01:00
galactus
60388667f5
Main into production 01/02/2024 ( #312 )
...
* Production into main (#303 )
* fix: panic on geyser close, multiplex bug
https://github.com/blockworks-foundation/geyser-grpc-connector/issues/3
* update Cargo.lock
* reverting cargo.lock
* Fix issues with grpc and postgres
* Solving merge issues
* Fixing cargo fmt
* Increase finish quic timeout (#280 ) (#281 )
* integrate geyser slot subscription (#283 )
* Increase finish quic timeout (#280 )
* Moving geyser slot subscription from stream to channels (#282 )
* Moving geyser slot subscription from stream to channels
* Closing all the slot subscription tasks incase of restart
* Making slot channel unbounded (bug)
* remove block_debug_listen
caused a panic - need more time to investigate
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] thread 'tokio-runtime-worker' panicked at cluster-endpoints/src/grpc_inspect.rs:59:21:
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] Error receiving block: Closed
2024-01-17T20:31:42.922 app[683d392fd45368] ams [info] 2024-01-17T20:31:42.912597Z ERROR lite_rpc: Services quit unexpectedly Err(cluster endpoint failure (Err(JoinError::Panic(Id(20), ...)), 1, [JoinHandle { id: Id(19) }, JoinHandle { id: Id(23) }])
* Update cargolock file
* Fixing clippy removing grpc_inspect
* merging main with production (#290 )
* remove block_debug_listen (#286 )
* remove block_debug_listen
caused a panic - need more time to investigate
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] thread 'tokio-runtime-worker' panicked at cluster-endpoints/src/grpc_inspect.rs:59:21:
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] Error receiving block: Closed
2024-01-17T20:31:42.922 app[683d392fd45368] ams [info] 2024-01-17T20:31:42.912597Z ERROR lite_rpc: Services quit unexpectedly Err(cluster endpoint failure (Err(JoinError::Panic(Id(20), ...)), 1, [JoinHandle { id: Id(19) }, JoinHandle { id: Id(23) }])
* clippy
* Fixing message too long and overflow panics (#288 )
* Update geyser grpc connector commit (#289 )
---------
Co-authored-by: Groovie | Mango <95291500+grooviegermanikus@users.noreply.github.com>
* Merging MTU changes and setting up transportation config (#293 )
* remove block_debug_listen (#286 )
* remove block_debug_listen
caused a panic - need more time to investigate
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] thread 'tokio-runtime-worker' panicked at cluster-endpoints/src/grpc_inspect.rs:59:21:
2024-01-17T20:31:42.913 app[683d392fd45368] ams [info] Error receiving block: Closed
2024-01-17T20:31:42.922 app[683d392fd45368] ams [info] 2024-01-17T20:31:42.912597Z ERROR lite_rpc: Services quit unexpectedly Err(cluster endpoint failure (Err(JoinError::Panic(Id(20), ...)), 1, [JoinHandle { id: Id(19) }, JoinHandle { id: Id(23) }])
* clippy
* Fixing message too long and overflow panics (#288 )
* Update geyser grpc connector commit (#289 )
* Updating the transport config to match with solana endpoint (#292 )
* Updating the transport config to match with solana endpoint
* Setting max MTU after groovies comments
---------
Co-authored-by: Groovie | Mango <95291500+grooviegermanikus@users.noreply.github.com>
* Making block subscription processed and moving confirmed block subscr… (#291 )
* Making block subscription processed and moving confirmed block subscription to meta
* Sending both processed and confirmed blocks, if block has already been confirmed
* Minor bug, subscribing to processed blocks instead of confirmed (#295 )
---------
Co-authored-by: Groovie | Mango <95291500+grooviegermanikus@users.noreply.github.com>
Co-authored-by: GroovieGermanikus <groovie@mango.markets>
* Restart connection if any stream fails
* Updating to version 0.2.4
* Updating the change logs
* Fixing all the sub overflows by using saturating sub (#309 )
* Fixing by cu computation adding more tests to check by CU (#311 )
* Fixing by cu computation adding more tests to check by CU
* Adding more tests
---------
Co-authored-by: Groovie | Mango <95291500+grooviegermanikus@users.noreply.github.com>
Co-authored-by: GroovieGermanikus <groovie@mango.markets>
2024-02-01 15:08:47 +01:00
galactus
118f5435e3
Fixing all the sub overflows by using saturating sub ( #309 )
2024-01-30 15:24:35 +01:00
galactus
64e86862c1
Restart connection if any stream fails ( #306 )
2024-01-26 22:49:10 +01:00
godmodegalactus
6c61e64948
Restart connection if any stream fails
2024-01-26 22:25:19 +01:00
GroovieGermanikus
847ce74ab6
reduce log
2024-01-26 19:46:51 +01:00
Groovie | Mango
7171b524f0
Feature/block priofees ( #274 )
...
* boilerplate
* add dummy endpoint
* simple logic with highes block
* endpoint works
* remove cu calculus
* log get_latest_block startup timing
* websocket subscription basics
* WIP
* propagate fees via channel
* cleanup
* use broadcast sender
* proper handling of broadcast channel issues
* rename stuff
* move to dedicated crate
* cleanup deps
* move data definition
* hide private types
* percentile math
* code format
* integrated stats by cu
* add cu stats
* restart inline asserts
* warn about DashMap access
* switch to BTreeMap
* remove vote transactions from calculus
* return vec
* array
* flat format
* reformat
* split arrays
* rename keys
* enable experimental tag
* code format
* more logging
* reset log level
* rename websocket method to blockPrioritizationFeesSubscribe
* HACK: use processed blocks
* add is_vote_transaction
* do not fail if fees goes down
* udp message size example
* imrpove 100 handling
* simplify inital sort
* Revert "HACK: use processed blocks"
This reverts commit ff17d9475c
.
* add percentile test case
* add per block cu_consumed+tx_count(nonvote)
* fix supid cleanup bug
* add TxAggregateStats
* add by_cu test
* add alternative cu percentlie impl
* cleanup cu tests
* add check for step
* saturating_sub
* remove useless file
* add is_vote to history crate
* fix fmt+clippy (nightly)
* clippy
* clippy
* clippy
* clippy
2024-01-25 10:29:14 +01:00
Groovie | Mango
705a08c2c6
fix some namings ( #298 )
...
* fix some namings
* clipp
* make run_clippy_fmt.sh executable
2024-01-23 08:17:48 +01:00
galactus
0c5aa196c1
Minor bug, subscribing to processed blocks instead of confirmed ( #295 )
2024-01-22 10:54:39 +01:00
galactus
33cca71d49
Making block subscription processed and moving confirmed block subscr… ( #291 )
...
* Making block subscription processed and moving confirmed block subscription to meta
* Sending both processed and confirmed blocks, if block has already been confirmed
2024-01-21 13:56:40 +01:00
galactus
d589d90999
Moving geyser slot subscription from stream to channels ( #284 )
...
Closing all the slot subscription tasks incase of restart
Making slot channel unbounded because of errors
2024-01-17 19:45:10 +01:00
galactus
cfb5e1ac66
Moving geyser slot subscription from stream to channels ( #282 )
...
* Moving geyser slot subscription from stream to channels
* Closing all the slot subscription tasks incase of restart
2024-01-17 15:17:49 +01:00
galactus
36c62763c0
Fixing merging of confirmed block streams ( #276 )
2024-01-16 10:13:12 +01:00
galactus
6f61d89743
Fixing the performance issue with geyser multiplexing ( #275 )
2024-01-15 20:22:59 +01:00
godmodegalactus
c3da6ad1b6
cargo fmt and clippy issues
2024-01-12 14:40:48 +01:00
godmodegalactus
3f69de5247
Resarting geyser slot and block stream in case they disconnect
2024-01-12 14:21:54 +01:00
GroovieGermanikus
079ff113c4
fix cleanup logic
2024-01-08 14:51:32 +01:00
GroovieGermanikus
8996a97424
change .send error handling on broadcast channel
2024-01-08 14:21:05 +01:00
GroovieGermanikus
dc0c60ff05
rename count
2024-01-08 14:18:43 +01:00
GroovieGermanikus
e5e7545553
->32
2024-01-08 14:15:42 +01:00
GroovieGermanikus
9ef773c129
refactoring
2024-01-08 14:14:59 +01:00
godmodegalactus
e42db51d21
Reduce network by only fetching block meta instead of whole block
2024-01-08 12:11:48 +01:00
Groovie | Mango
5cfb6de72a
grpc multiplexing integrate ( #255 )
...
allow multiple GRPC sources
2023-12-22 14:42:20 +01:00