Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add skip_preflight setting for solana rpc #949

Merged
merged 1 commit into from
Feb 19, 2025

Conversation

michaeldjeffrey
Copy link
Contributor

@michaeldjeffrey michaeldjeffrey commented Feb 18, 2025

In Oracle's we have historically had skip_preflight: true for all txns.
There have been updates to helium-lib that we cannot debug if preflight checks are skipped.
This PR turns it into a setting, so it can toggle when we need better errors.

by default we skip_preflight checks, but we get better errors if we can
fail in a preflight
Copy link
Contributor

@andymck andymck left a comment

Choose a reason for hiding this comment

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

so to confirm, the skip_preflight setting will be configured with a value of false and thus the preflight checks will be performed?

And isnt 'false' the default value on the sendTransaction API if not specified ?

@michaeldjeffrey
Copy link
Contributor Author

so to confirm, the skip_preflight setting will be configured with a value of false and thus the preflight checks will be performed?

And isnt 'false' the default value on the sendTransaction API if not specified ?

Good question, I was unclear in my description (has been updated).
Oracles has hardcoded skip_preflight: true where txns are sent.
This was generally safe as we sent those txns often and knew they were constructed properly.

The lastest update from helium-lib changes the Txn type to a VersionedTransaction.
It seems to me that this change should not cause any problems, but something is going wrong, and performing preflight checks is a way that we can get errors from solana that are hopefully better than "The thing didn't happen".

In short, Solana's default is perform preflight checks. Oracle's default was to skip.
Now it's a setting.

@michaeldjeffrey michaeldjeffrey merged commit 22d0393 into main Feb 19, 2025
17 checks passed
@michaeldjeffrey michaeldjeffrey deleted the mj/skip-preflight-setting branch February 19, 2025 16:58
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