Skip to content

Port account_fetcher.rs to mango-feeds #5

Description

@grooviegermanikus

A account/cain data retrieval utility has been implemented in Rust in the course of mango-v4 project.

Problem:

Maintaining and replicating account state is cumbersome to implement and imposes risk of high traffic on RPC-Nodes.

Proposed solution:

Take the Rust account_fetcher.rs and *chain_data_fetcher.rs' util and make it reusable as part of mango-feeds-connector.

Features:

  • RPC sync client to request accounts without delay
  • Stream-based async account replicate
  • Read-Caching Wrapper

note: chain_data_fetcher.rs is about account state - all other data (e.g. slot) is required to implement the replication

Architecture:

  • must not depend on anchor or mango - anchor/-mango-related convenience methods must go into mango-client
  • support only async (although sync would sometimes make more sense)

Milestones:

  1. Design a Rust ABI based on research of current users of account_fetcher.rs.
  2. Extract account store interface and refactor existing in-memory as a reference implementation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions