-
Notifications
You must be signed in to change notification settings - Fork 4.5k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Use protobufs to store confirmed blocks in BigTable (#12526)
* Use protobufs to store confirmed blocks in BigTable * Cleanup * Reorganize proto * Clean up use statements * Split out function for unit testing * s/utils/convert Co-authored-by: Tyera Eulberg <[email protected]> (cherry picked from commit ce598c5)
- Loading branch information
Showing
7 changed files
with
707 additions
and
23 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,95 @@ | ||
#[derive(Clone, PartialEq, ::prost::Message)] | ||
pub struct ConfirmedBlock { | ||
#[prost(string, tag = "1")] | ||
pub previous_blockhash: std::string::String, | ||
#[prost(string, tag = "2")] | ||
pub blockhash: std::string::String, | ||
#[prost(uint64, tag = "3")] | ||
pub parent_slot: u64, | ||
#[prost(message, repeated, tag = "4")] | ||
pub transactions: ::std::vec::Vec<ConfirmedTransaction>, | ||
#[prost(message, repeated, tag = "5")] | ||
pub rewards: ::std::vec::Vec<Reward>, | ||
#[prost(message, optional, tag = "6")] | ||
pub block_time: ::std::option::Option<UnixTimestamp>, | ||
} | ||
#[derive(Clone, PartialEq, ::prost::Message)] | ||
pub struct ConfirmedTransaction { | ||
#[prost(message, optional, tag = "1")] | ||
pub transaction: ::std::option::Option<Transaction>, | ||
#[prost(message, optional, tag = "2")] | ||
pub meta: ::std::option::Option<TransactionStatusMeta>, | ||
} | ||
#[derive(Clone, PartialEq, ::prost::Message)] | ||
pub struct Transaction { | ||
#[prost(bytes, repeated, tag = "1")] | ||
pub signatures: ::std::vec::Vec<std::vec::Vec<u8>>, | ||
#[prost(message, optional, tag = "2")] | ||
pub message: ::std::option::Option<Message>, | ||
} | ||
#[derive(Clone, PartialEq, ::prost::Message)] | ||
pub struct Message { | ||
#[prost(message, optional, tag = "1")] | ||
pub header: ::std::option::Option<MessageHeader>, | ||
#[prost(bytes, repeated, tag = "2")] | ||
pub account_keys: ::std::vec::Vec<std::vec::Vec<u8>>, | ||
#[prost(bytes, tag = "3")] | ||
pub recent_blockhash: std::vec::Vec<u8>, | ||
#[prost(message, repeated, tag = "4")] | ||
pub instructions: ::std::vec::Vec<CompiledInstruction>, | ||
} | ||
#[derive(Clone, PartialEq, ::prost::Message)] | ||
pub struct MessageHeader { | ||
#[prost(uint32, tag = "1")] | ||
pub num_required_signatures: u32, | ||
#[prost(uint32, tag = "2")] | ||
pub num_readonly_signed_accounts: u32, | ||
#[prost(uint32, tag = "3")] | ||
pub num_readonly_unsigned_accounts: u32, | ||
} | ||
#[derive(Clone, PartialEq, ::prost::Message)] | ||
pub struct TransactionStatusMeta { | ||
#[prost(message, optional, tag = "1")] | ||
pub err: ::std::option::Option<TransactionError>, | ||
#[prost(uint64, tag = "2")] | ||
pub fee: u64, | ||
#[prost(uint64, repeated, tag = "3")] | ||
pub pre_balances: ::std::vec::Vec<u64>, | ||
#[prost(uint64, repeated, tag = "4")] | ||
pub post_balances: ::std::vec::Vec<u64>, | ||
#[prost(message, repeated, tag = "5")] | ||
pub inner_instructions: ::std::vec::Vec<InnerInstructions>, | ||
} | ||
#[derive(Clone, PartialEq, ::prost::Message)] | ||
pub struct TransactionError { | ||
#[prost(bytes, tag = "1")] | ||
pub err: std::vec::Vec<u8>, | ||
} | ||
#[derive(Clone, PartialEq, ::prost::Message)] | ||
pub struct InnerInstructions { | ||
#[prost(uint32, tag = "1")] | ||
pub index: u32, | ||
#[prost(message, repeated, tag = "2")] | ||
pub instructions: ::std::vec::Vec<CompiledInstruction>, | ||
} | ||
#[derive(Clone, PartialEq, ::prost::Message)] | ||
pub struct CompiledInstruction { | ||
#[prost(uint32, tag = "1")] | ||
pub program_id_index: u32, | ||
#[prost(bytes, tag = "2")] | ||
pub accounts: std::vec::Vec<u8>, | ||
#[prost(bytes, tag = "3")] | ||
pub data: std::vec::Vec<u8>, | ||
} | ||
#[derive(Clone, PartialEq, ::prost::Message)] | ||
pub struct Reward { | ||
#[prost(string, tag = "1")] | ||
pub pubkey: std::string::String, | ||
#[prost(int64, tag = "2")] | ||
pub lamports: i64, | ||
} | ||
#[derive(Clone, PartialEq, ::prost::Message)] | ||
pub struct UnixTimestamp { | ||
#[prost(int64, tag = "1")] | ||
pub timestamp: i64, | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.