Skip to main content
Version: 1.15.0

Class: CCIPSolanaExecutionBufferIncompleteError

Defined in: errors/specialized.ts:3495

Thrown when a buffered CCIP 2.0 execution is generated before its execution inputs buffer is complete: execute_v2's accounts are resolved on-chain from the buffer, which needs all of its chunks. context.missingChunks is how many are left to write; context.stale is set when the buffer holds other inputs, and must be closed and rewritten first.

Example​

TypeScript
try {
await solanaChain.generateUnsignedExecute({ messageId, payer, forceBuffer: true })
} catch (error) {
if (error instanceof CCIPSolanaExecutionBufferIncompleteError) {
const buffering = await solanaChain.generateUnsignedExecuteBuffer({ messageId, payer })
// sign and send buffering.instructions, then retry
}
}

Extends​

Constructors​

Constructor​

new CCIPSolanaExecutionBufferIncompleteError(context: { buffer: string; bufferId: string; missingChunks: number; stale: boolean; }, options?: CCIPErrorOptions): CCIPSolanaExecutionBufferIncompleteError

Defined in: errors/specialized.ts:3498

Creates a Solana execution inputs buffer incomplete error.

Parameters​

ParameterType
context{ buffer: string; bufferId: string; missingChunks: number; stale: boolean; }
context.bufferstring
context.bufferId?string
context.missingChunks?number
context.stale?boolean
options?CCIPErrorOptions

Returns​

CCIPSolanaExecutionBufferIncompleteError

Overrides​

CCIPError.constructor

Properties​

_isCCIPError​

readonly _isCCIPError: true

Defined in: errors/CCIPError.ts:30

Brand for cross-module identification (dual package hazard).

Inherited from​

CCIPError._isCCIPError


code​

readonly code: CCIPErrorCode

Defined in: errors/CCIPError.ts:32

Machine-readable error code.

Inherited from​

CCIPError.code


context​

readonly context: Record<string, unknown>

Defined in: errors/CCIPError.ts:34

Structured context (IDs, addresses).

Inherited from​

CCIPError.context


isTransient​

readonly isTransient: boolean

Defined in: errors/CCIPError.ts:36

True if retry may succeed.

Inherited from​

CCIPError.isTransient


name​

readonly name: "CCIPSolanaExecutionBufferIncompleteError" = 'CCIPSolanaExecutionBufferIncompleteError'

Defined in: errors/specialized.ts:3496

Overrides​

CCIPError.name


recovery?​

readonly optional recovery?: string

Defined in: errors/CCIPError.ts:40

Recovery suggestion.

Inherited from​

CCIPError.recovery


retryAfterMs?​

readonly optional retryAfterMs?: number

Defined in: errors/CCIPError.ts:38

Retry delay in ms.

Inherited from​

CCIPError.retryAfterMs

Methods​

toJSON()​

toJSON(): Record<string, unknown>

Defined in: errors/CCIPError.ts:105

Serializes the error for logging.

Use this instead of JSON.stringify(error) directly, as Error properties are non-enumerable and would be lost.

Returns​

Record<string, unknown>

An object containing all error properties

Inherited from​

CCIPError.toJSON


from()​

static from(error: unknown, code?: CCIPErrorCode): CCIPError

Defined in: errors/CCIPError.ts:89

Wraps an unknown caught value in a CCIPError.

Useful for normalizing errors in catch blocks.

Parameters​

ParameterTypeDescription
errorunknownThe error to wrap
code?CCIPErrorCodeOptional error code (defaults to 'UNKNOWN')

Returns​

CCIPError

A CCIPError wrapping the original error

Inherited from​

CCIPError.from


isCCIPError()​

static isCCIPError(error: unknown): error is CCIPError

Defined in: errors/CCIPError.ts:73

Type guard for CCIPError.

Prefer this over instanceof to handle the dual package hazard when multiple versions of the SDK may be present.

Parameters​

ParameterTypeDescription
errorunknownThe error to check

Returns​

error is CCIPError

True if the error is a CCIPError instance

Inherited from​

CCIPError.isCCIPError