MCPcopy Create free account
hub / github.com/MaterializeInc/materialize / execute

Method execute

src/clusterd-test-driver/src/script.rs:715–1114  ·  view source on GitHub ↗

Execute a single command, returning its golden output text.

(&mut self, cmd: Command)

Source from the content-addressed store, hash-verified

713
714 /// Execute a single command, returning its golden output text.
715 pub async fn execute(&mut self, cmd: Command) -> anyhow::Result<String> {
716 match cmd {
717 Command::DefineSchema { name, columns } => {
718 let desc = relation_desc(&columns)?;
719 self.schemas.insert(name, desc);
720 Ok("ok".to_string())
721 }
722 Command::WriteSingleTs {
723 shard,
724 schema,
725 ts,
726 count,
727 start,
728 row_bytes,
729 } => {
730 let desc = self.resolve_schema(&schema)?;
731 let shard = self.shard_id(&shard);
732 let pad = row_bytes.unwrap_or(DEFAULT_ROW_BYTES);
733 let batch = synth_rows(&desc, start, count, pad);
734 write_rows_single_ts(&self.client, shard, &desc, &batch, Timestamp::from(ts))
735 .await?;
736 Ok(format!("wrote {count}"))
737 }
738 Command::WriteSpread {
739 shard,
740 schema,
741 count,
742 n_ts,
743 start,
744 row_bytes,
745 } => {
746 let desc = self.resolve_schema(&schema)?;
747 let shard = self.shard_id(&shard);
748 let pad = row_bytes.unwrap_or(DEFAULT_ROW_BYTES);
749 let batch = synth_rows(&desc, start, count, pad);
750 write_rows_spread(&self.client, shard, &desc, &batch, n_ts).await?;
751 Ok(format!("wrote {count}"))
752 }
753 Command::WriteRows {
754 shard,
755 schema,
756 ts,
757 rows,
758 } => {
759 let desc = self.resolve_schema(&schema)?;
760 let batch = rows_from_tokens(&desc, &rows)?;
761 let written = batch.len();
762 let shard = self.shard_id(&shard);
763 write_rows_single_ts(&self.client, shard, &desc, &batch, Timestamp::from(ts))
764 .await?;
765 Ok(format!("wrote {written}"))
766 }
767 Command::DefineIndex {
768 source_id,
769 index_id,
770 shard,
771 schema,
772 key,

Callers 1

runFunction · 0.45

Calls 15

relation_descFunction · 0.85
synth_rowsFunction · 0.85
write_rows_single_tsFunction · 0.85
write_rows_spreadFunction · 0.85
rows_from_tokensFunction · 0.85
index_dataflowFunction · 0.85
register_catalog_objectFunction · 0.85
try_parse_mirFunction · 0.85
remap_getsFunction · 0.85
up_to_antichainFunction · 0.85
render_rowsFunction · 0.85
render_updatesFunction · 0.85

Tested by

no test coverage detected