Skip to content

Commit 7af4596

Browse files
authored
Bumping object version to 0.8 (#4757)
1 parent 0868894 commit 7af4596

File tree

28 files changed

+1004
-115
lines changed

28 files changed

+1004
-115
lines changed

quickwit/quickwit-config/src/index_config/serialize.rs

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -29,23 +29,24 @@ use crate::{
2929
};
3030

3131
/// Alias for the latest serialization format.
32-
type IndexConfigForSerialization = IndexConfigV0_7;
32+
type IndexConfigForSerialization = IndexConfigV0_8;
3333

3434
#[derive(Clone, Debug, Serialize, Deserialize, utoipa::ToSchema)]
3535
#[serde(tag = "version")]
3636
pub(crate) enum VersionedIndexConfig {
37-
#[serde(rename = "0.7")]
37+
#[serde(rename = "0.8")]
3838
// Retro compatibility
3939
#[serde(alias = "0.4")]
4040
#[serde(alias = "0.5")]
4141
#[serde(alias = "0.6")]
42-
V0_7(IndexConfigV0_7),
42+
#[serde(alias = "0.7")]
43+
V0_8(IndexConfigV0_8),
4344
}
4445

4546
impl From<VersionedIndexConfig> for IndexConfigForSerialization {
4647
fn from(versioned_config: VersionedIndexConfig) -> IndexConfigForSerialization {
4748
match versioned_config {
48-
VersionedIndexConfig::V0_7(v0_6) => v0_6,
49+
VersionedIndexConfig::V0_8(v0_8) => v0_8,
4950
}
5051
}
5152
}
@@ -109,7 +110,7 @@ impl IndexConfigForSerialization {
109110

110111
impl From<IndexConfig> for VersionedIndexConfig {
111112
fn from(index_config: IndexConfig) -> Self {
112-
VersionedIndexConfig::V0_7(index_config.into())
113+
VersionedIndexConfig::V0_8(index_config.into())
113114
}
114115
}
115116

@@ -118,14 +119,14 @@ impl TryFrom<VersionedIndexConfig> for IndexConfig {
118119

119120
fn try_from(versioned_index_config: VersionedIndexConfig) -> anyhow::Result<Self> {
120121
match versioned_index_config {
121-
VersionedIndexConfig::V0_7(v0_6) => v0_6.build_and_validate(None),
122+
VersionedIndexConfig::V0_8(v0_8) => v0_8.build_and_validate(None),
122123
}
123124
}
124125
}
125126

126127
#[derive(Clone, Debug, Serialize, Deserialize, utoipa::ToSchema)]
127128
#[serde(deny_unknown_fields)]
128-
pub struct IndexConfigV0_7 {
129+
pub struct IndexConfigV0_8 {
129130
pub index_id: String,
130131
#[schema(value_type = String)]
131132
#[serde(default)]
@@ -140,9 +141,9 @@ pub struct IndexConfigV0_7 {
140141
pub retention_policy_opt: Option<RetentionPolicy>,
141142
}
142143

143-
impl From<IndexConfig> for IndexConfigV0_7 {
144+
impl From<IndexConfig> for IndexConfigV0_8 {
144145
fn from(index_config: IndexConfig) -> Self {
145-
IndexConfigV0_7 {
146+
IndexConfigV0_8 {
146147
index_id: index_config.index_id,
147148
index_uri: Some(index_config.index_uri),
148149
doc_mapping: index_config.doc_mapping,

quickwit/quickwit-config/src/index_template/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ use anyhow::ensure;
2323
use quickwit_common::uri::Uri;
2424
use quickwit_proto::types::IndexId;
2525
use serde::{Deserialize, Serialize};
26-
pub use serialize::{IndexTemplateV0_7, VersionedIndexTemplate};
26+
pub use serialize::{IndexTemplateV0_8, VersionedIndexTemplate};
2727

2828
use crate::index_config::validate_index_config;
2929
use crate::{

quickwit/quickwit-config/src/index_template/serialize.rs

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -26,13 +26,14 @@ use crate::{DocMapping, IndexingSettings, RetentionPolicy, SearchSettings};
2626
#[derive(Clone, Debug, Serialize, Deserialize, utoipa::ToSchema)]
2727
#[serde(tag = "version")]
2828
pub enum VersionedIndexTemplate {
29-
#[serde(rename = "0.7")]
30-
V0_7(IndexTemplateV0_7),
29+
#[serde(rename = "0.8")]
30+
#[serde(alias = "0.7")]
31+
V0_8(IndexTemplateV0_8),
3132
}
3233

3334
#[derive(Clone, Debug, Serialize, Deserialize, utoipa::ToSchema)]
3435
#[serde(deny_unknown_fields)]
35-
pub struct IndexTemplateV0_7 {
36+
pub struct IndexTemplateV0_8 {
3637
#[schema(value_type = String)]
3738
pub template_id: IndexTemplateId,
3839
#[schema(value_type = Vec<String>)]
@@ -56,36 +57,36 @@ pub struct IndexTemplateV0_7 {
5657
impl From<VersionedIndexTemplate> for IndexTemplate {
5758
fn from(versioned_index_template: VersionedIndexTemplate) -> Self {
5859
match versioned_index_template {
59-
VersionedIndexTemplate::V0_7(v0_7) => v0_7.into(),
60+
VersionedIndexTemplate::V0_8(v0_8) => v0_8.into(),
6061
}
6162
}
6263
}
6364

6465
impl From<IndexTemplate> for VersionedIndexTemplate {
6566
fn from(index_template: IndexTemplate) -> Self {
66-
VersionedIndexTemplate::V0_7(index_template.into())
67+
VersionedIndexTemplate::V0_8(index_template.into())
6768
}
6869
}
6970

70-
impl From<IndexTemplateV0_7> for IndexTemplate {
71-
fn from(index_template_v0_7: IndexTemplateV0_7) -> Self {
71+
impl From<IndexTemplateV0_8> for IndexTemplate {
72+
fn from(index_template_v0_8: IndexTemplateV0_8) -> Self {
7273
IndexTemplate {
73-
template_id: index_template_v0_7.template_id,
74-
index_id_patterns: index_template_v0_7.index_id_patterns,
75-
index_root_uri: index_template_v0_7.index_root_uri,
76-
priority: index_template_v0_7.priority,
77-
description: index_template_v0_7.description,
78-
doc_mapping: index_template_v0_7.doc_mapping,
79-
indexing_settings: index_template_v0_7.indexing_settings,
80-
search_settings: index_template_v0_7.search_settings,
81-
retention_policy_opt: index_template_v0_7.retention,
74+
template_id: index_template_v0_8.template_id,
75+
index_id_patterns: index_template_v0_8.index_id_patterns,
76+
index_root_uri: index_template_v0_8.index_root_uri,
77+
priority: index_template_v0_8.priority,
78+
description: index_template_v0_8.description,
79+
doc_mapping: index_template_v0_8.doc_mapping,
80+
indexing_settings: index_template_v0_8.indexing_settings,
81+
search_settings: index_template_v0_8.search_settings,
82+
retention_policy_opt: index_template_v0_8.retention,
8283
}
8384
}
8485
}
8586

86-
impl From<IndexTemplate> for IndexTemplateV0_7 {
87+
impl From<IndexTemplate> for IndexTemplateV0_8 {
8788
fn from(index_template: IndexTemplate) -> Self {
88-
IndexTemplateV0_7 {
89+
IndexTemplateV0_8 {
8990
template_id: index_template.template_id,
9091
index_id_patterns: index_template.index_id_patterns,
9192
index_root_uri: index_template.index_root_uri,

quickwit/quickwit-config/src/lib.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ mod templating;
4444
pub use cluster_config::ClusterConfig;
4545
// We export that one for backward compatibility.
4646
// See #2048
47-
use index_config::serialize::{IndexConfigV0_7, VersionedIndexConfig};
47+
use index_config::serialize::{IndexConfigV0_8, VersionedIndexConfig};
4848
pub use index_config::{
4949
build_doc_mapper, load_index_config_from_user_config, DocMapping, IndexConfig,
5050
IndexingResources, IndexingSettings, RetentionPolicy, SearchSettings,
@@ -60,7 +60,7 @@ pub use source_config::{
6060
};
6161
use tracing::warn;
6262

63-
use crate::index_template::IndexTemplateV0_7;
63+
use crate::index_template::IndexTemplateV0_8;
6464
pub use crate::index_template::{IndexTemplate, IndexTemplateId, VersionedIndexTemplate};
6565
use crate::merge_policy_config::{
6666
ConstWriteAmplificationMergePolicyConfig, MergePolicyConfig, StableLogMergePolicyConfig,
@@ -90,9 +90,9 @@ pub use crate::storage_config::{
9090
SourceConfigV0_7,
9191
SourceConfigV0_8,
9292
VersionedIndexConfig,
93-
IndexConfigV0_7,
93+
IndexConfigV0_8,
9494
VersionedIndexTemplate,
95-
IndexTemplateV0_7,
95+
IndexTemplateV0_8,
9696
SourceInputFormat,
9797
SourceParams,
9898
FileSourceParams,

quickwit/quickwit-config/src/node_config/serialize.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -149,18 +149,19 @@ pub async fn load_node_config_with_env(
149149
#[derive(Debug, Deserialize)]
150150
#[serde(tag = "version")]
151151
enum VersionedNodeConfig {
152-
#[serde(rename = "0.7")]
152+
#[serde(rename = "0.8")]
153153
// Retro compatibility.
154+
#[serde(alias = "0.7")]
154155
#[serde(alias = "0.6")]
155156
#[serde(alias = "0.5")]
156157
#[serde(alias = "0.4")]
157-
V0_7(NodeConfigBuilder),
158+
V0_8(NodeConfigBuilder),
158159
}
159160

160161
impl From<VersionedNodeConfig> for NodeConfigBuilder {
161162
fn from(versioned_node_config: VersionedNodeConfig) -> Self {
162163
match versioned_node_config {
163-
VersionedNodeConfig::V0_7(node_config_builder) => node_config_builder,
164+
VersionedNodeConfig::V0_8(node_config_builder) => node_config_builder,
164165
}
165166
}
166167
}

quickwit/quickwit-metastore/src/backward_compatibility_tests/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ use crate::{IndexMetadata, SplitMetadata};
4646
/// #[serde(rename="0.2")]
4747
/// V0_2(MyResourceV1) //< there was no change in this version.
4848
/// }
49-
const GLOBAL_QUICKWIT_RESOURCE_VERSION: &str = "0.7";
49+
const GLOBAL_QUICKWIT_RESOURCE_VERSION: &str = "0.8";
5050

5151
/// This test makes sure that the resource is using the current `GLOBAL_QUICKWIT_RESOURCE_VERSION`.
5252
fn test_global_version<T: Serialize>(serializable: &T) -> anyhow::Result<()> {

quickwit/quickwit-metastore/src/lib.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ use std::ops::Range;
4444
pub use error::MetastoreResolverError;
4545
pub use metastore::control_plane_metastore::ControlPlaneMetastore;
4646
pub use metastore::file_backed::FileBackedMetastore;
47-
pub(crate) use metastore::index_metadata::serialize::{IndexMetadataV0_7, VersionedIndexMetadata};
47+
pub(crate) use metastore::index_metadata::serialize::{IndexMetadataV0_8, VersionedIndexMetadata};
4848
#[cfg(feature = "postgres")]
4949
pub use metastore::postgres::PostgresqlMetastore;
5050
pub use metastore::{
@@ -58,16 +58,16 @@ pub use metastore_resolver::MetastoreResolver;
5858
use quickwit_common::is_disjoint;
5959
use quickwit_doc_mapper::tag_pruning::TagFilterAst;
6060
pub use split_metadata::{Split, SplitInfo, SplitMaturity, SplitMetadata, SplitState};
61-
pub(crate) use split_metadata_version::{SplitMetadataV0_7, VersionedSplitMetadata};
61+
pub(crate) use split_metadata_version::{SplitMetadataV0_8, VersionedSplitMetadata};
6262

6363
#[derive(utoipa::OpenApi)]
6464
#[openapi(components(schemas(
6565
Split,
6666
SplitState,
6767
VersionedIndexMetadata,
68-
IndexMetadataV0_7,
68+
IndexMetadataV0_8,
6969
VersionedSplitMetadata,
70-
SplitMetadataV0_7,
70+
SplitMetadataV0_8,
7171
)))]
7272
/// Schema used for the OpenAPI generation which are apart of this crate.
7373
pub struct MetastoreApiSchemas;

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

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -34,30 +34,31 @@ use crate::{IndexMetadata, Split};
3434
#[derive(Clone, Debug, Serialize, Deserialize)]
3535
#[serde(tag = "version")]
3636
pub(crate) enum VersionedFileBackedIndex {
37-
#[serde(rename = "0.7")]
37+
#[serde(rename = "0.8")]
3838
// Retro compatibility.
39+
#[serde(alias = "0.7")]
3940
#[serde(alias = "0.6")]
4041
#[serde(alias = "0.5")]
4142
#[serde(alias = "0.4")]
42-
V0_7(FileBackedIndexV0_7),
43+
V0_8(FileBackedIndexV0_8),
4344
}
4445

4546
impl From<FileBackedIndex> for VersionedFileBackedIndex {
4647
fn from(index: FileBackedIndex) -> Self {
47-
VersionedFileBackedIndex::V0_7(index.into())
48+
VersionedFileBackedIndex::V0_8(index.into())
4849
}
4950
}
5051

5152
impl From<VersionedFileBackedIndex> for FileBackedIndex {
5253
fn from(index: VersionedFileBackedIndex) -> Self {
5354
match index {
54-
VersionedFileBackedIndex::V0_7(v0_6) => v0_6.into(),
55+
VersionedFileBackedIndex::V0_8(v0_8) => v0_8.into(),
5556
}
5657
}
5758
}
5859

5960
#[derive(Clone, Debug, Serialize, Deserialize)]
60-
pub(crate) struct FileBackedIndexV0_7 {
61+
pub(crate) struct FileBackedIndexV0_8 {
6162
#[serde(rename = "index")]
6263
metadata: IndexMetadata,
6364
splits: Vec<Split>,
@@ -68,7 +69,7 @@ pub(crate) struct FileBackedIndexV0_7 {
6869
delete_tasks: Vec<DeleteTask>,
6970
}
7071

71-
impl From<FileBackedIndex> for FileBackedIndexV0_7 {
72+
impl From<FileBackedIndex> for FileBackedIndexV0_8 {
7273
fn from(index: FileBackedIndex) -> Self {
7374
let splits = index
7475
.splits
@@ -104,8 +105,8 @@ impl From<FileBackedIndex> for FileBackedIndexV0_7 {
104105
}
105106
}
106107

107-
impl From<FileBackedIndexV0_7> for FileBackedIndex {
108-
fn from(mut index: FileBackedIndexV0_7) -> Self {
108+
impl From<FileBackedIndexV0_8> for FileBackedIndex {
109+
fn from(mut index: FileBackedIndexV0_8) -> Self {
109110
// if the index is otel-traces-v0_6, convert set bytes fields input and output format to hex
110111
// to be compatible with the v0_6 version.
111112
// TODO: remove after 0.8 release.

quickwit/quickwit-metastore/src/metastore/file_backed/manifest.rs

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -74,46 +74,47 @@ pub(crate) struct Manifest {
7474
#[derive(Clone, Debug, Serialize, Deserialize)]
7575
#[serde(tag = "version")]
7676
enum VersionedManifest {
77-
#[serde(rename = "0.7")]
78-
V0_7(ManifestV0_7),
77+
#[serde(rename = "0.8")]
78+
#[serde(alias = "0.7")]
79+
V0_8(ManifestV0_8),
7980
}
8081

8182
impl From<Manifest> for VersionedManifest {
8283
fn from(manifest: Manifest) -> Self {
83-
VersionedManifest::V0_7(manifest.into())
84+
VersionedManifest::V0_8(manifest.into())
8485
}
8586
}
8687

8788
impl From<VersionedManifest> for Manifest {
8889
fn from(versioned_manifest: VersionedManifest) -> Self {
8990
match versioned_manifest {
90-
VersionedManifest::V0_7(manifest) => manifest.into(),
91+
VersionedManifest::V0_8(manifest) => manifest.into(),
9192
}
9293
}
9394
}
9495

9596
#[derive(Clone, Debug, Serialize, Deserialize)]
96-
struct ManifestV0_7 {
97+
struct ManifestV0_8 {
9798
indexes: BTreeMap<IndexId, IndexStatus>,
9899
templates: Vec<IndexTemplate>,
99100
}
100101

101-
impl From<Manifest> for ManifestV0_7 {
102+
impl From<Manifest> for ManifestV0_8 {
102103
fn from(manifest: Manifest) -> Self {
103104
let templates = manifest
104105
.templates
105106
.into_values()
106107
.sorted_unstable_by(|left, right| left.template_id.cmp(&right.template_id))
107108
.collect();
108-
ManifestV0_7 {
109+
ManifestV0_8 {
109110
indexes: manifest.indexes,
110111
templates,
111112
}
112113
}
113114
}
114115

115-
impl From<ManifestV0_7> for Manifest {
116-
fn from(manifest: ManifestV0_7) -> Self {
116+
impl From<ManifestV0_8> for Manifest {
117+
fn from(manifest: ManifestV0_8) -> Self {
117118
let indexes = manifest.indexes.into_iter().collect();
118119
let templates = manifest
119120
.templates

0 commit comments

Comments
 (0)