linera-io/linera-protocol · error · ChainClientError
The chain client isn't owner on chain {0}
Error message
The chain client isn't owner on chain {0} What it means
Error "The chain client isn't owner on chain {0}" thrown in linera-io/linera-protocol.
Source
Thrown at linera-core/src/client/chain_client/mod.rs:827
///
/// Returns the chain info if the owner can propose on this chain (either because they are
/// an owner, or because `open_multi_leader_rounds` is enabled).
#[instrument(level = "trace")]
pub async fn prepare_for_owner(&self, owner: AccountOwner) -> Result<Box<ChainInfo>, Error> {
ensure!(
self.has_key_for(&owner).await?,
Error::CannotFindKeyForChain(self.chain_id)
);
// Ensure we have the chain description blob.
self.client
.get_chain_description_blob(self.chain_id)
.await?;
// Get chain info.
let info = self.chain_info().await?;
// Validate that the owner can propose on this chain.
ensure!(
info.manager
.ownership
.can_propose_in_multi_leader_round(&owner),
Error::NotAnOwner(self.chain_id)
);
Ok(info)
}
/// Prepares the chain for the next operation, i.e. makes sure we have synchronized it up to
/// its current height.
#[instrument(level = "trace")]
pub async fn prepare_chain(&self) -> Result<Box<ChainInfo>, Error> {
#[cfg(with_metrics)]
let _latency = super::metrics::PREPARE_CHAIN_LATENCY.measure_latency();
let mut info = self.synchronize_to_known_height().await?;
View on GitHub (pinned to 6c226ddcb3)
Solutions
- Ensure the client owns (or co-owns) chain {0}: use `linera open-chain` with the appropriate owner, or switch to a wallet that owns the chain.
- If the operation requires ownership, delegate or transfer ownership first; otherwise use a read-only variant of the operation.
- Verify you are using the intended wallet/default chain (`linera wallet show`, `linera set-default`).
When it happens
Trigger: An owner-only operation is requested on a chain where the client's identity is not an owner.
Common situations: Attempting to propose a block or execute an owner-gated command with a wallet that holds no ownership of the chain.
AI-assisted analysis of linera-io/linera-protocol@6c226ddcb3 (2026-08-22).
Data as JSON: /api/errors/93c1ab94d8c65914.
Report an issue: GitHub.