This repository has been archived by the owner on Jan 22, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 923
Expand on Accounts schema in GraphQL #1831
Labels
Comments
This was referenced Nov 11, 2023
buffalojoec
added a commit
that referenced
this issue
Nov 28, 2023
This PR attempts to revise the accounts schema, as per #1831.
buffalojoec
added a commit
that referenced
this issue
Feb 22, 2024
This commit re-works the schema to deal with `encoding` and `dataSlice` directly on the `data` field, rather than an `account` query at the top-level. With this particular commit, the number of RPC calls to resolve a wide range of queries is likely increased - such as multiple `data` fields on `programAccounts`. However, the subsequent commits in this stack will seek to remedy this. Specifically, the next commit introduces better account resolvers, which may lessen the RPC calls for `account` queries by way of cache hits, but the commit after that will introduce the revamped batch loader, which provides significant optimizations to the number and timing of RPC calls. Further up the stack are more changes to ensure the other queries, like `programAccounts`, get to share in the benefits of similar optimizations. Closes #1831
Because there has been no activity on this issue for 7 days since it was closed, it has been automatically locked. Please open a new issue if it requires a follow up. |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Making this issue to track discussions on the new Accounts schema in GraphQL.
The revised Account schema should (potentially) make use of interfaces in the following manner - as discussed in this comment:
In doing so, we'll need to ensure field names don't collide. This means, for example, changing
owner
toownerProgram
in the rootAccount
type.Developers also shouldn't need to do spread syntax on nested account queries, but this will require careful consideration of encoded nested account data (
base58
, etc.). See this comment for more context.The text was updated successfully, but these errors were encountered: