Skip to content

Commit d5dae8a

Browse files
committed
review: parquet_file singular, proto doc link, fix metastore accessor
1 parent ad00c2f commit d5dae8a

3 files changed

Lines changed: 14 additions & 13 deletions

File tree

quickwit/quickwit-metastore/src/metastore/file_backed/file_backed_index/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -981,7 +981,7 @@ fn metrics_split_matches_query(split: &StoredMetricsSplit, query: &ListMetricsSp
981981

982982
// Filter by compaction scope
983983
if let Some(ws) = query.window_start
984-
&& split.metadata.window_start != Some(ws)
984+
&& split.metadata.window_start() != Some(ws)
985985
{
986986
return false;
987987
}

quickwit/quickwit-parquet-engine/src/split/metadata.rs

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -160,8 +160,8 @@ pub struct MetricsSplitMetadata {
160160
/// When this split was created.
161161
pub created_at: SystemTime,
162162

163-
/// Parquet file path(s) relative to storage root.
164-
pub parquet_files: Vec<String>,
163+
/// Parquet file path relative to storage root.
164+
pub parquet_file: String,
165165

166166
/// Time window as `[start, start + duration)` in epoch seconds.
167167
/// None for pre-Phase-31 splits (backward compat).
@@ -175,7 +175,8 @@ pub struct MetricsSplitMetadata {
175175
/// 0 for newly ingested splits.
176176
pub num_merge_ops: u32,
177177

178-
/// RowKeys (sort-key min/max boundaries) as proto bytes.
178+
/// RowKeys (sort-key min/max boundaries) as serialized proto bytes
179+
/// ([`sortschema::RowKeys`](../../quickwit-proto/protos/event_store_sortschema/event_store_sortschema.proto)).
179180
/// None for pre-Phase-31 splits or splits without sort schema.
180181
pub row_keys_proto: Option<Vec<u8>>,
181182

@@ -198,7 +199,7 @@ struct MetricsSplitMetadataSerde {
198199
low_cardinality_tags: HashMap<String, HashSet<String>>,
199200
high_cardinality_tag_keys: HashSet<String>,
200201
created_at: SystemTime,
201-
parquet_files: Vec<String>,
202+
parquet_file: String,
202203

203204
#[serde(default, skip_serializing_if = "Option::is_none")]
204205
window_start: Option<i64>,
@@ -235,7 +236,7 @@ impl From<MetricsSplitMetadataSerde> for MetricsSplitMetadata {
235236
low_cardinality_tags: s.low_cardinality_tags,
236237
high_cardinality_tag_keys: s.high_cardinality_tag_keys,
237238
created_at: s.created_at,
238-
parquet_files: s.parquet_files,
239+
parquet_file: s.parquet_file,
239240
window,
240241
sort_fields: s.sort_fields,
241242
num_merge_ops: s.num_merge_ops,
@@ -261,7 +262,7 @@ impl From<MetricsSplitMetadata> for MetricsSplitMetadataSerde {
261262
low_cardinality_tags: m.low_cardinality_tags,
262263
high_cardinality_tag_keys: m.high_cardinality_tag_keys,
263264
created_at: m.created_at,
264-
parquet_files: m.parquet_files,
265+
parquet_file: m.parquet_file,
265266
window_start,
266267
window_duration_secs,
267268
sort_fields: m.sort_fields,
@@ -351,7 +352,7 @@ pub struct MetricsSplitMetadataBuilder {
351352
metric_names: HashSet<String>,
352353
low_cardinality_tags: HashMap<String, HashSet<String>>,
353354
high_cardinality_tag_keys: HashSet<String>,
354-
parquet_files: Vec<String>,
355+
parquet_file: String,
355356
window_start: Option<i64>,
356357
window_duration_secs: u32,
357358
sort_fields: String,
@@ -425,8 +426,8 @@ impl MetricsSplitMetadataBuilder {
425426
self
426427
}
427428

428-
pub fn add_parquet_file(mut self, path: impl Into<String>) -> Self {
429-
self.parquet_files.push(path.into());
429+
pub fn parquet_file(mut self, path: impl Into<String>) -> Self {
430+
self.parquet_file = path.into();
430431
self
431432
}
432433

@@ -500,7 +501,7 @@ impl MetricsSplitMetadataBuilder {
500501
low_cardinality_tags: self.low_cardinality_tags,
501502
high_cardinality_tag_keys: self.high_cardinality_tag_keys,
502503
created_at: SystemTime::now(),
503-
parquet_files: self.parquet_files,
504+
parquet_file: self.parquet_file,
504505
window,
505506
sort_fields: self.sort_fields,
506507
num_merge_ops: self.num_merge_ops,
@@ -626,7 +627,7 @@ mod tests {
626627
"low_cardinality_tags": {},
627628
"high_cardinality_tag_keys": [],
628629
"created_at": {"secs_since_epoch": 1700000000, "nanos_since_epoch": 0},
629-
"parquet_files": ["split1.parquet"]
630+
"parquet_file": "split1.parquet"
630631
}"#;
631632

632633
let metadata: MetricsSplitMetadata =

quickwit/quickwit-parquet-engine/src/storage/split_writer.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ impl ParquetSplitWriter {
122122
.size_bytes(0)
123123
.sort_fields(self.writer.sort_fields_string())
124124
.window_duration_secs(window_duration)
125-
.add_parquet_file(filename);
125+
.parquet_file(filename);
126126

127127
if let Some(ws) = window_start_secs {
128128
builder = builder.window_start_secs(ws);

0 commit comments

Comments
 (0)