split_by_tx_size

Function split_by_tx_size 

Source
pub fn split_by_tx_size(
    instructions: Vec<Instruction>,
    payer: &Pubkey,
    max_size: Option<usize>,
) -> Result<Vec<Vec<Instruction>>, InstructionTooLargeError>
Expand description

Split instructions into groups that fit within transaction size limits.

Signer count is derived from instruction AccountMeta.is_signer flags plus the payer.

§Arguments

  • instructions - Instructions to split
  • payer - Fee payer pubkey (always counted as a signer)
  • max_size - Max tx size (defaults to PACKET_DATA_SIZE)

§Errors

Returns InstructionTooLargeError if any single instruction alone exceeds max_size.