Indexes
Indexes will be needed to map Solana’s block numbers, transaction signatures and addresses to their respective Content Identifiers. These indexes will be developed as part of this project. There are three content identifier indexes kinds that the Old Faithful index generation can provide:
- slot-to-cid: Lookup a CID based on a slot number
- tx-to-cid: Lookup a CID based on a transaction signature
- cid-to-offset: Index for a specific CAR file, used by the local rpc server (see above) to find CIDs in a car file
- sig-exists: Index for quick checking whether a specific signature exists in an epoch or not.
In addition to these Old Faithful supports an index called gsfa
that maps Solana addresses to a list of transaction signatures.
Index generation
Once the radiance tooling has been used to prepare a car file (or if you have downloaded a car file externally) you can generate indexes from this car file by using the faithful-cli
:
NAME:
faithful index
USAGE:
faithful index command [command options] [arguments...]
DESCRIPTION:
Create various kinds of indexes for CAR files.
COMMANDS:
cid-to-offset
slot-to-cid
sig-to-cid
all
gsfa
sig-exists
help, h Shows a list of commands or help for one command
OPTIONS:
--help, -h show help
For example, to generate the three indexes cid-to-offset, slot-to-cid, sig-to-cid, sig-exists you would run:
faithful-cli index all epoch-107.car .
This would generate the indexes in the current dir for epoch-107.
The optional GSFA index would need to be run separately as follows:
faithful-cli index gsfa epoch-107.car .