MCPcopy Create free account
hub / github.com/apache/paimon-rust / truncate_partitions

Method truncate_partitions

crates/paimon/src/table/table_commit.rs:234–254  ·  view source on GitHub ↗

Drop specific partitions (OVERWRITE with only deletes).

(
        &self,
        partitions: Vec<HashMap<String, Option<Datum>>>,
    )

Source from the content-addressed store, hash-verified

232
233 /// Drop specific partitions (OVERWRITE with only deletes).
234 pub async fn truncate_partitions(
235 &self,
236 partitions: Vec<HashMap<String, Option<Datum>>>,
237 ) -> Result<()> {
238 if partitions.is_empty() {
239 return Ok(());
240 }
241
242 let partition_fields = self.table.schema().partition_fields();
243 let partition_filter = PartitionFilter::from_partition_set(
244 self.partitions_to_bytes(&partitions),
245 &partition_fields,
246 )?;
247
248 self.try_commit(CommitEntriesPlan::Overwrite {
249 partition_filter: Some(partition_filter),
250 new_entries: vec![],
251 new_index_entries: vec![],
252 })
253 .await
254 }
255
256 fn partitions_to_bytes(
257 &self,

Callers 3

handle_truncate_tableMethod · 0.80
test_drop_partitionsFunction · 0.80

Calls 5

partition_fieldsMethod · 0.80
partitions_to_bytesMethod · 0.80
try_commitMethod · 0.80
is_emptyMethod · 0.45
schemaMethod · 0.45

Tested by 1

test_drop_partitionsFunction · 0.64