Skip to content

geyser: update to ReplicaTransactionInfoV3#6515

Merged
jstarry merged 2 commits intoanza-xyz:masterfrom
jstarry:geyser-tx-v3
Jun 15, 2025
Merged

geyser: update to ReplicaTransactionInfoV3#6515
jstarry merged 2 commits intoanza-xyz:masterfrom
jstarry:geyser-tx-v3

Conversation

@jstarry
Copy link
Copy Markdown

@jstarry jstarry commented Jun 11, 2025

Problem

SanitizedTransaction is a runtime type that should have never been exposed to end users via sdk or geyser. Also, in order to implement SIMD-0192, we will need to be able to commit transactions which cannot be represented as SanitizedTransaction's due to address lookup failures.

Summary of Changes

Introduce a new version (v3) of geyser transaction info using VersionedTransaction instead of SanitizedTransaction

Fixes #

#[repr(C)]
pub struct ReplicaTransactionInfoV3<'a> {
/// The transaction message hash, used for identifying the transaction.
pub message_hash: &'a Hash,
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I changed this from signature to message_hash because the message hash used to only be available from the SanitizedTransaction and because you can get the tx signature from the VersionedTransaction

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To keep the interface more stable, I think it would be simpler for the plugin update by keeping the signature field which is reference. And add this new message_hash.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds good, added here: 56341de

@jstarry jstarry marked this pull request as ready for review June 11, 2025 22:30
@codecov-commenter
Copy link
Copy Markdown

Codecov Report

Attention: Patch coverage is 58.06452% with 13 lines in your changes missing coverage. Please review.

Project coverage is 82.8%. Comparing base (07c4049) to head (e6d4107).
Report is 10 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff            @@
##           master    #6515     +/-   ##
=========================================
- Coverage    82.8%    82.8%   -0.1%     
=========================================
  Files         847      847             
  Lines      379700   379708      +8     
=========================================
- Hits       314697   314488    -209     
- Misses      65003    65220    +217     
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

tao-stones
tao-stones previously approved these changes Jun 12, 2025
Copy link
Copy Markdown

@tao-stones tao-stones left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Motivation and implementation both look good to me. I'll defer to @lijunwangs at the finer points.

Copy link
Copy Markdown

@lijunwangs lijunwangs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@jstarry jstarry merged commit 6b566ba into anza-xyz:master Jun 15, 2025
39 checks passed
@jstarry jstarry deleted the geyser-tx-v3 branch June 15, 2025 03:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants