#[non_exhaustive]pub enum NodeSupervisorError {
Show 56 variants
LocalFundingState {
path: PathBuf,
reason: String,
},
InvalidLocalAirdropConfig {
reason: &'static str,
},
InvalidProtocolOverride {
source: ProtocolTokenWidthError,
},
ConfiguredPathMissing {
path: PathBuf,
},
ConfiguredPathNotExecutable {
path: PathBuf,
},
HogdDevNotFound,
CurrentExe {
source: Error,
},
Spawn {
program: String,
source: Error,
},
InvalidBootstrapManifestConfig {
reason: String,
},
BootstrapManifestTempDir {
source: Error,
},
BootstrapManifestSerialize {
source: Error,
},
BootstrapManifestWrite {
path: PathBuf,
source: Error,
},
MissingStdout {
program: String,
},
MissingStderr {
program: String,
},
ReadinessTimeout {
program: String,
timeout: Duration,
},
ReadinessTooLarge {
program: String,
max_bytes: usize,
},
ExitedBeforeReady {
program: String,
status: ExitStatus,
},
ReadinessRead {
program: String,
source: Error,
},
InvalidReadinessJson {
program: String,
line: String,
source: Error,
},
InvalidReadinessSchemaVersion {
program: String,
expected: u32,
actual: u32,
},
InvalidReadinessStatus {
program: String,
status: String,
},
RuntimeManifestRead {
program: String,
path: String,
source: Error,
},
RuntimeManifestUnsafePermissions {
program: String,
path: String,
reason: String,
},
InvalidRuntimeManifestHash {
program: String,
hash: String,
},
RuntimeManifestHashMismatch {
program: String,
path: String,
expected: String,
actual: String,
},
InvalidRuntimeManifest {
program: String,
reason: String,
},
RuntimeNetworkHashMismatch {
expected: NetworkHashText,
observed: NetworkHashText,
},
RuntimeProtocolMismatch {
expected: String,
observed: Option<String>,
},
Signal {
program: String,
signal: ChildSignal,
source: Error,
},
Status {
program: String,
source: Error,
},
Wait {
program: String,
source: Error,
},
Stop {
program: String,
source: Error,
},
RpcBind {
address: String,
source: Error,
},
RpcNofileLimit {
target: u64,
source: Error,
},
RpcNofileHardLimit {
target: u64,
hard: u64,
},
RpcLocalAddr {
source: Error,
},
StopSignal {
source: Error,
},
SchedulerConnect {
endpoint: SocketAddr,
source: ConnectError,
},
SchedulerGatewayConnect {
endpoint: SocketAddr,
source: ConnectError,
},
SchedulerNetworkHashMismatch {
expected: NetworkHashText,
observed: NetworkHashText,
},
SchedulerPlaneTipMismatch {
coordinator: String,
gateway: String,
},
SchedulerRpc {
op: &'static str,
source: RpcError,
},
SchedulerGatewayRpc {
op: &'static str,
source: RpcError,
},
SchedulerRejected {
op: &'static str,
result: String,
},
IndexerConnect {
endpoint: SocketAddr,
source: ConnectError,
},
IndexerRpc {
op: &'static str,
error: String,
},
DbGatewayConnect {
endpoint: SocketAddr,
source: ConnectError,
},
DbGatewayRpc {
op: &'static str,
error: String,
},
ViewGatewayConnect {
endpoint: SocketAddr,
source: ConnectError,
},
ViewGatewayRpc {
op: &'static str,
error: String,
},
ProtocolIntroRejected {
service: &'static str,
outcome: i32,
outcome_name: &'static str,
is_protocol_mismatch: bool,
protocol: String,
expected_protocol: Option<String>,
},
PidFile {
path: PathBuf,
source: Error,
},
LocalNodeAlreadyRunning {
path: PathBuf,
pid: Option<u32>,
},
ShutdownIncomplete {
program: String,
process_group: Option<i32>,
},
PersistentStateUnsupported,
DataDir {
path: PathBuf,
source: Error,
},
}Expand description
Errors returned by the node supervisor.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
LocalFundingState
The chain’s private faucet state cannot be safely loaded or persisted.
Fields
InvalidLocalAirdropConfig
Local airdrop resource or transfer configuration is invalid.
InvalidProtocolOverride
The configured protocol override is not the wire width of a token.
Fields
source: ProtocolTokenWidthErrorWhy the text cannot name a protocol token.
ConfiguredPathMissing
A configured binary path does not exist.
ConfiguredPathNotExecutable
A configured binary path exists but is not executable.
HogdDevNotFound
The supervisor could not locate a devnode binary.
CurrentExe
The supervisor could not determine its current executable path.
Spawn
The supervisor could not start the configured child process.
InvalidBootstrapManifestConfig
The configured hogd-dev bootstrap manifest request could not be represented.
BootstrapManifestTempDir
The supervisor could not create a private bootstrap-manifest directory.
BootstrapManifestSerialize
The supervisor could not serialize the bootstrap manifest.
BootstrapManifestWrite
The supervisor could not write the bootstrap manifest file.
MissingStdout
The child process was spawned without a stdout pipe.
MissingStderr
The child process was spawned without a stderr pipe.
ReadinessTimeout
The child process did not report readiness before the startup timeout.
ReadinessTooLarge
The child process wrote a readiness line exceeding the configured cap.
ExitedBeforeReady
The child process exited before reporting readiness.
ReadinessRead
The supervisor could not read the readiness line.
InvalidReadinessJson
The child process wrote malformed readiness JSON.
Fields
InvalidReadinessSchemaVersion
The child process wrote a readiness line with an unsupported schema.
Fields
InvalidReadinessStatus
The child process wrote a readiness line with an unexpected status.
RuntimeManifestRead
The supervisor could not read the readiness runtime manifest.
Fields
RuntimeManifestUnsafePermissions
The advertised runtime manifest path or permissions are unsafe.
Fields
InvalidRuntimeManifestHash
The child process advertised a malformed runtime manifest hash.
RuntimeManifestHashMismatch
The runtime manifest bytes did not match the advertised hash.
Fields
InvalidRuntimeManifest
The runtime manifest could not be parsed or projected.
RuntimeNetworkHashMismatch
The runtime manifest advertised a different network than the bootstrap request.
Fields
expected: NetworkHashTextNetwork hash requested in the bootstrap manifest.
observed: NetworkHashTextNetwork hash advertised by the runtime manifest.
RuntimeProtocolMismatch
The runtime manifest advertised a different protocol token than requested.
Fields
Signal
The supervisor could not signal the child process group.
Fields
signal: ChildSignalSignal sent to the child process group.
Status
The supervisor could not query the child process state.
Wait
The supervisor could not wait for the child process to exit.
Stop
The supervisor could not request child process termination.
RpcBind
The supervisor could not bind the JSON-RPC server to its listen address.
RpcNofileLimit
The supervisor could not raise the process file-descriptor limit for JSON-RPC.
RpcNofileHardLimit
The configured JSON-RPC connection budget exceeds the hard file-descriptor limit.
RpcLocalAddr
The supervisor could not read the JSON-RPC server’s bound address.
StopSignal
The supervisor stop signal failed.
SchedulerConnect
The supervisor could not connect to hogd-dev’s SchedulerCoord x23 endpoint.
Fields
endpoint: SocketAddrSchedulerCoord endpoint advertised by hogd-dev readiness.
source: ConnectErrorx23 connection error.
SchedulerGatewayConnect
The supervisor could not connect to hogd-dev’s SchedGateway x23 endpoint.
Fields
endpoint: SocketAddrSchedGateway endpoint advertised by hogd-dev readiness.
source: ConnectErrorx23 connection error.
SchedulerNetworkHashMismatch
The scheduler tip belongs to a different network than the runtime manifest.
Fields
expected: NetworkHashTextNetwork hash advertised by the runtime manifest.
observed: NetworkHashTextNetwork hash observed in the scheduler tip proposal header.
SchedulerPlaneTipMismatch
The coordinator and public scheduler gateway advertised different startup tips.
Fields
SchedulerRpc
A hogd-dev scheduler RPC failed.
SchedulerGatewayRpc
A hogd-dev scheduler gateway RPC failed during startup.
SchedulerRejected
The scheduler rejected a startup operation.
IndexerConnect
The supervisor could not connect to hogd-dev’s IndexerBlockExplorer x23 endpoint.
Fields
endpoint: SocketAddrIndexerBlockExplorer endpoint advertised by hogd-dev readiness.
source: ConnectErrorx23 connection error.
IndexerRpc
A hogd-dev indexer RPC failed during startup probing.
DbGatewayConnect
The supervisor could not connect to hogd-dev’s DbGateway x23 endpoint.
Fields
endpoint: SocketAddrDbGateway endpoint advertised by hogd-dev readiness.
source: ConnectErrorx23 connection error.
DbGatewayRpc
A hogd-dev DbGateway RPC failed during startup probing.
ViewGatewayConnect
The supervisor could not connect to hogd-dev’s ViewGateway x23 endpoint.
Fields
endpoint: SocketAddrViewGateway endpoint advertised by hogd-dev readiness.
source: ConnectErrorx23 connection error.
ViewGatewayRpc
A hogd-dev ViewGateway RPC failed during startup probing.
ProtocolIntroRejected
An x23 service rejected the intro handshake with protocol details.
Fields
PidFile
The supervisor could not operate on the hogd-dev PID file.
Fields
LocalNodeAlreadyRunning
Another managed local node appears to be running.
Fields
ShutdownIncomplete
Forced shutdown did not conclusively stop the supervised process group.
Fields
PersistentStateUnsupported
Persistent local-node lifecycle guarantees require Unix process groups.
DataDir
The supervisor could not prepare a private persistent data directory.
Trait Implementations§
Source§impl Debug for NodeSupervisorError
impl Debug for NodeSupervisorError
Source§impl Display for NodeSupervisorError
impl Display for NodeSupervisorError
Source§impl Error for NodeSupervisorError
impl Error for NodeSupervisorError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()