* Rpc: Add custom error for BigTable data not found (#14762)
* Expose not-found bigtable error
* Add custom rpc error for bigtable data not found
* Return custom rpc error when bigtable block is not found
* Generalize long-term storage
(cherry picked from commit 71e9958e06
)
# Conflicts:
# client/src/rpc_custom_error.rs
* Fix conflicts
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
Co-authored-by: Tyera Eulberg <tyera@solana.com>
BigTable Setup
Development Environment
The Cloud BigTable emulator can be used during development/test. See https://cloud.google.com/bigtable/docs/emulator for general setup information.
Process:
- Run
gcloud beta emulators bigtable start
in the background - Run
$(gcloud beta emulators bigtable env-init)
to establish theBIGTABLE_EMULATOR_HOST
environment variable - Run
./init-bigtable.sh
to configure the emulator - Develop/test
Production Environment
Export a standard GOOGLE_APPLICATION_CREDENTIALS
environment variable to your
service account credentials. The project should contain a BigTable instance
called solana-ledger
that has been initialized by running the ./init-bigtable.sh
script.
Depending on what operation mode is required, either the
https://www.googleapis.com/auth/bigtable.data
or
https://www.googleapis.com/auth/bigtable.data.readonly
OAuth scope will be
requested using the provided credentials.