Commit Graph

54 Commits

Author SHA1 Message Date
galactus 681334197f
Adding custom tpu send transaction example (#380)
* Adding an example for custom tpu send transaction

* Fixing the custom tpu example

* Optimizing SentTransactionInfo, and calculating TPS

* Reverting unwanted changes

* After groovies review
2024-04-02 14:26:54 +02:00
godmodegalactus e7edd14eab
Commit missing changes 2024-03-21 18:19:36 +01:00
godmodegalactus f219e5eee1
Minor updates to block information store 2024-03-21 16:44:17 +01:00
Godmode Galactus 8c56d6a4e8
Fixing commitments for accounts response 2024-03-20 20:43:25 +01:00
galactus 722d8bf2a7
Making get program account compatible with mango v4 (#355)
* getPA should return value with no context

* Setting context depending on config

* Fix clippy
2024-03-11 17:05:50 +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
galactus 49bb7ff9f3
Implementing account on demand (#338)
* Implementing account on demand

* Resubscribing accounts after every sometime

* Changing account stream commitment to processed instead

* Fixing account on demand, and account subscription bugs

* Changing variable name for commitment from confirmed to processed

* Some account optimizations

* Adding get balance call

* Changes after groovies review.

* On demand accounts subscribe first then delete old subscription
2024-02-28 15:40:11 +01:00
galactus 0ab947b7d7
Updating jsonrpsee and fixing cors (#332)
* Updating json rpsee and fixing CORS

* Fixing cors and updating jsonrpsee and fixing a bug in address lookup table store

* Adding rpc errors, and fixing groovies comments

* for moment get performance data from rpc client
2024-02-21 14:55:44 +01:00
galactus bcc3c37346
Accounts support (#327)
* Slitting rpc and pubsub services, adding few class and rpc, pubsub callbacks for accounts

* Implementing account storage and service writing some tests

* Chainging to interface, adding new tests

* Implementing accounts related rpc endpoints

* Adding tests for account filters

* Minor bug fixed and errors

* Fixing issue with get program accounts

* Implementing subscription

* use auto reconnect (#329)

* groovie comments part_1

* Fixing tests, fixing groovies comments

* Adding workspace to test filters, minor changes

---------

Co-authored-by: Groovie | Mango <95291500+grooviegermanikus@users.noreply.github.com>
2024-02-14 19:20:25 +01:00
Groovie | Mango fae4cecc0e
Improvement/saving blocks use lookup tables (#318)
block store basic implementation
2024-02-05 20:20:15 +01:00
galactus 9e031902e3
Implementing missing endpoints (#316)
* Implementing missing endpoints

* Adding slot subscription, and implementing prio fee method

* Changes after groovie and anikets review
2024-02-02 16:42:42 +01:00
galactus 27b1e6ad16
Calculating prio fees by account (#310)
* Calculating readable and writable accounts for transaction and saving in transaction info, declaration of primary strutures

Implementing calculation of prioritization by accounts

Optimize calculation of prioritization fees stats (#301)

* Optimize calculation of prioritization fees stats

* comment on arrays in response

* Fix the calculation of supp

* Fix fmt

---------

Co-authored-by: GroovieGermanikus <groovie@mango.markets>

Implementing calculation of prioritization by accounts

Adding endpoint methods for prioritization fees by account

* Implement account stats subscription

* Fixing the serialization and deserialization of last

* Changes after groovies review
2024-02-01 18:49: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
galactus de26490e9c
Squash and merging all the commits from groovies branch groovie/post… (#300)
* Squash and merging all the commits from  groovies branch groovie/postgres_saving_blocksII

* Ingore tests which require postgres
2024-01-22 15:22:11 +01:00
galactus 4d4019264e
Fixing message too long and overflow panics (#288) 2024-01-18 15:11:29 +01:00
godmodegalactus 2498950583
Reconnecing to block stream and slot stream incase of error 2024-01-12 14:33:00 +01:00
galactus d91e2e9316
disable geyser stakes and votes for refactoring (#268) 2024-01-11 14:37:06 +01:00
musitdev 5a24c2bb4d set stake_vote optional and integrate leader schedule and vote in send Tx 2024-01-03 10:25:45 +01:00
musitdev faa5d1a12c rebase from main 2024-01-03 10:23:17 +01:00
musitdev 93ab67db18 test leader and vote RPC calls 2024-01-03 10:21:06 +01:00
musitdev 5c64a151c2 test getvoteaccount. Correct some bugs 2024-01-03 10:20:18 +01:00
musitdev 69754a019a start get_leader_slot, update for get_vote_account 2024-01-03 10:20:18 +01:00
musitdev b3317667a6 first impl for RPC get_vote_accounts 2024-01-03 10:20:18 +01:00
musitdev 3e4c81c567 Stake and vote management. Integration of the main loop in current architecture 2024-01-03 10:20:14 +01:00
aniketfuryrocks b7c9c7e55f fmt 2023-10-30 10:38:16 +05:30
aniketfuryrocks d68ba7e3f0 implement rpc methods with a todo!() clause 2023-10-30 10:38:16 +05:30
godmodegalactus fe3509c7ee
after musitdev review 2023-10-06 10:44:39 +02:00
galactus f9dfcf4891
Merge pull request #223 from blockworks-foundation/epoch_integration
Epoch integration
2023-10-04 20:29:57 +02:00
godmodegalactus 53fc6b482a
Update counters only if transactions are sent by literpc 2023-10-04 17:29:12 +02:00
musitdev 178da3cc00 use commitment config for RPC call 2023-10-04 17:11:08 +02:00
musitdev c6aba8f396 Epoch integration 2023-10-04 11:28:18 +02:00
godmodegalactus 7ef29e1af6
implementing history, block storage method
changes after groovies review
2023-09-21 15:39:25 +02:00
godmodegalactus 255b9de7f5
fixing tests, cargo fmt 2023-09-20 17:01:23 +02:00
godmodegalactus 7f3d3303b7
checking for transaction confirmation and blockheight before sending the transaction 2023-09-20 16:57:01 +02:00
Godmode Galactus aff1c78d12
restructuring core library into multiple directories 2023-09-13 17:15:28 +02:00
Godmode Galactus 2f4cb1f839
Revert "disable prometheus to check performance impact of prometheus on fly"
This reverts commit 2945153bd2.
2023-09-09 17:43:51 +02:00
Godmode Galactus 2945153bd2
disable prometheus to check performance impact of prometheus on fly 2023-09-07 12:30:46 +02:00
Godmode Galactus a418fe7fc7
Refactoring the code from gyser branch and merging into master 2023-08-31 12:34:13 +02:00
GroovieGermanikus a8863cd74d code format lite-rpc 2023-08-02 15:22:59 +02:00
GroovieGermanikus 20c2710202 cargo fix 2023-07-29 11:26:21 +02:00
GroovieGermanikus f2dbdd8dea add cli option 2023-07-26 23:33:49 +02:00
GroovieGermanikus 9ab08d241b fix compile issues 2023-07-21 18:08:32 +02:00
GroovieGermanikus 0490e557de merge integration test branch into proxy branch 2023-07-20 13:45:54 +02:00
GroovieGermanikus 77c801ff45 proxy forwarding works 2023-06-26 22:10:06 +02:00
GroovieGermanikus eb33095778 introduce proxy request 2023-06-26 08:05:18 +02:00
Godmode Galactus 0eeea15b1a
moving part of the code responsible to manage send and confirm transactions from bridge to its owns service 2023-06-13 10:58:21 +02:00
Godmode Galactus 9ff5af67c7
cargo fmt 2023-06-13 10:58:20 +02:00
Godmode Galactus 3995d6ee39
removing dependency of jsonrpsee for core and services 2023-06-13 10:58:19 +02:00
aniketfuryrocks 56acfccc62
tpu service 2023-06-12 06:11:49 +05:30
aniketfuryrocks 2bc65f9ec6
block_processor and bridge 2023-06-12 05:45:40 +05:30