use miden_node_db::sqlite::WriteTx;
use miden_node_tracing::miden_instrument;
use miden_protocol::block::{BlockHeader, BlockSignatures};
use crate::COMPONENT;
use crate::db::BlockHeaderCommitment;
use crate::errors::DatabaseError;
const SQL: &str = include_str!("insert_block_header.sql");
#[miden_instrument(
target = COMPONENT,
err,
)]
pub(crate) fn insert_block_header(
tx: &WriteTx<'_>,
block_header: &BlockHeader,
signatures: &BlockSignatures,
) -> Result<usize, DatabaseError> {
let commitment = BlockHeaderCommitment::new(block_header).word();
Ok(tx.execute(SQL, &[&block_header.block_num(), block_header, signatures, &commitment])?)
}