jetstreamer-firehose
A utility that allows replaying Solana blocks (even all the way back to genesis!) over a geyser plugin or the Jetstreamer plugin runner.
Based on the demo provided by the Old Faithful project in https://github.com/rpcpool/yellowstone-faithful/tree/main/geyser-plugin-runner
Configuration
Environment variables
JETSTREAMER_ARCHIVE_BACKEND(defaulthttp): set tos3to force the new S3 transport even when the base URLs still point athttps://.JETSTREAMER_HTTP_BASE_URL(defaulthttps://files.old-faithful.net): base URL ors3://bucket/prefixfor CAR data.JETSTREAMER_COMPACT_INDEX_BASE_URL(defaulthttps://files.old-faithful.net): override for compact index artifacts; also acceptss3://URIs when mirroring Old Faithful into private storage.JETSTREAMER_ARCHIVE_BASE: shortcut that applies to both CARs and indexes when the more specific knobs are unset.JETSTREAMER_S3_BUCKET,JETSTREAMER_S3_PREFIX,JETSTREAMER_S3_INDEX_PREFIX,JETSTREAMER_S3_REGION,JETSTREAMER_S3_ENDPOINT,JETSTREAMER_S3_ACCESS_KEY,JETSTREAMER_S3_SECRET_KEY,JETSTREAMER_S3_SESSION_TOKEN: credentials and addressing details used when the S3 backend is active.JETSTREAMER_NETWORK(defaultmainnet): network identifier appended to index filenames so you can point the replay engine at other clusters (for exampletestnet).JETSTREAMER_NETWORK_CAPACITY_MB(default1000): assumed network throughput in megabytes per second when sizing the firehose thread pool. Increase or decrease to match your host's effective bandwidth.
Notes:
JETSTREAMER_HTTP_BASE_URLandJETSTREAMER_COMPACT_INDEX_BASE_URLaccept both full HTTP(S) URLs ands3://bucket/...URIs; the latter automatically activates the S3 transport layer.- Changing
JETSTREAMER_NETWORKalso alters the in-memory cache namespace, so you can switch networks without cross-contaminating cached offsets.