From 5650eadf42f930d9824f7d5af2b5433d29a81102 Mon Sep 17 00:00:00 2001 From: Mahdi Dibaiee Date: Tue, 22 Oct 2024 21:42:37 +0100 Subject: [PATCH] assemble: set default flush_interval to 24h --- ...ivate__test__ops_collection_partition.snap | 1 + crates/assemble/src/lib.rs | 6 +- ...lection_schema_contains_flow_document.snap | 7 +- ...n_is_skipped_when_shards_are_disabled.snap | 21 +++- ..._tests__disabled_bindings_are_ignored.snap | 42 ++++++- .../scenario_tests__golden_all_visits.snap | 112 +++++++++++++++--- ...zation_constraints_on_excluded_fields.snap | 14 ++- ...tion_not_created_for_empty_properties.snap | 7 +- .../snapshots/transition_tests__inserts.snap | 35 +++++- ..._update_collection_becomes_derivation.snap | 7 +- .../snapshots/transition_tests__updates.snap | 35 +++++- .../TestBuildCatalog-all-collections | 4 +- 12 files changed, 246 insertions(+), 45 deletions(-) diff --git a/crates/activate/src/snapshots/activate__test__ops_collection_partition.snap b/crates/activate/src/snapshots/activate__test__ops_collection_partition.snap index cb64637df8..6d34f84ec2 100644 --- a/crates/activate/src/snapshots/activate__test__ops_collection_partition.snap +++ b/crates/activate/src/snapshots/activate__test__ops_collection_partition.snap @@ -21,6 +21,7 @@ expression: "json!([\"list_req\", list_req, \"spec\", spec])" "flags": 4, "fragment": { "compressionCodec": "GZIP", + "flushInterval": "86400s", "length": "536870912", "pathPostfixTemplate": "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", "refreshInterval": "300s", diff --git a/crates/assemble/src/lib.rs b/crates/assemble/src/lib.rs index a4834aaf0b..ab658c5fb7 100644 --- a/crates/assemble/src/lib.rs +++ b/crates/assemble/src/lib.rs @@ -119,8 +119,8 @@ pub fn partition_template( // Use a supplied compression codec. Or, if none, then default to gzip. let compression_codec = compression_codec(codec.unwrap_or(models::CompressionCodec::Gzip)); - // If an explicit flush interval isn't provided, then don't set one. - let flush_interval = flush_interval.map(Into::into); + // If an explicit flush interval isn't provided, default to 24 hours + let flush_interval = flush_interval.unwrap_or(std::time::Duration::from_secs(24 * 3600)).into(); // If a fragment length isn't set, default and then map MB to bytes. let length = (length.unwrap_or(512) as i64) << 20; @@ -156,7 +156,7 @@ pub fn partition_template( replication, fragment: Some(broker::journal_spec::Fragment { compression_codec: compression_codec as i32, - flush_interval, + flush_interval: Some(flush_interval), length, path_postfix_template, refresh_interval, diff --git a/crates/validation/tests/snapshots/scenario_tests__collection_schema_contains_flow_document.snap b/crates/validation/tests/snapshots/scenario_tests__collection_schema_contains_flow_document.snap index a9d4b56c03..fa8cc0511f 100644 --- a/crates/validation/tests/snapshots/scenario_tests__collection_schema_contains_flow_document.snap +++ b/crates/validation/tests/snapshots/scenario_tests__collection_schema_contains_flow_document.snap @@ -173,7 +173,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), diff --git a/crates/validation/tests/snapshots/scenario_tests__connector_validation_is_skipped_when_shards_are_disabled.snap b/crates/validation/tests/snapshots/scenario_tests__connector_validation_is_skipped_when_shards_are_disabled.snap index afc3697c84..8d4b68cb72 100644 --- a/crates/validation/tests/snapshots/scenario_tests__connector_validation_is_skipped_when_shards_are_disabled.snap +++ b/crates/validation/tests/snapshots/scenario_tests__connector_validation_is_skipped_when_shards_are_disabled.snap @@ -230,7 +230,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -564,7 +569,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -835,7 +845,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), diff --git a/crates/validation/tests/snapshots/scenario_tests__disabled_bindings_are_ignored.snap b/crates/validation/tests/snapshots/scenario_tests__disabled_bindings_are_ignored.snap index a46122b8a9..750d1df534 100644 --- a/crates/validation/tests/snapshots/scenario_tests__disabled_bindings_are_ignored.snap +++ b/crates/validation/tests/snapshots/scenario_tests__disabled_bindings_are_ignored.snap @@ -360,7 +360,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -666,7 +671,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -876,7 +886,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -1211,7 +1226,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -1381,7 +1401,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -1915,7 +1940,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), diff --git a/crates/validation/tests/snapshots/scenario_tests__golden_all_visits.snap b/crates/validation/tests/snapshots/scenario_tests__golden_all_visits.snap index bb742b924a..53fb7d6460 100644 --- a/crates/validation/tests/snapshots/scenario_tests__golden_all_visits.snap +++ b/crates/validation/tests/snapshots/scenario_tests__golden_all_visits.snap @@ -285,7 +285,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -743,7 +748,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -966,7 +976,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -1360,7 +1375,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -1590,7 +1610,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -1809,7 +1834,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -2059,7 +2089,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -3065,7 +3100,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -3909,7 +3949,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -4158,7 +4203,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -4578,7 +4628,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -4838,7 +4893,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -5242,7 +5302,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -5478,7 +5543,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -5782,7 +5852,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -6307,7 +6382,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), diff --git a/crates/validation/tests/snapshots/scenario_tests__materialization_constraints_on_excluded_fields.snap b/crates/validation/tests/snapshots/scenario_tests__materialization_constraints_on_excluded_fields.snap index 3aefa736a7..d3711f9b41 100644 --- a/crates/validation/tests/snapshots/scenario_tests__materialization_constraints_on_excluded_fields.snap +++ b/crates/validation/tests/snapshots/scenario_tests__materialization_constraints_on_excluded_fields.snap @@ -229,7 +229,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -522,7 +527,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), diff --git a/crates/validation/tests/snapshots/scenario_tests__projection_not_created_for_empty_properties.snap b/crates/validation/tests/snapshots/scenario_tests__projection_not_created_for_empty_properties.snap index bdf9b6e1bd..bdf99ec213 100644 --- a/crates/validation/tests/snapshots/scenario_tests__projection_not_created_for_empty_properties.snap +++ b/crates/validation/tests/snapshots/scenario_tests__projection_not_created_for_empty_properties.snap @@ -194,7 +194,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), diff --git a/crates/validation/tests/snapshots/transition_tests__inserts.snap b/crates/validation/tests/snapshots/transition_tests__inserts.snap index 9b9299a68f..09818240b5 100644 --- a/crates/validation/tests/snapshots/transition_tests__inserts.snap +++ b/crates/validation/tests/snapshots/transition_tests__inserts.snap @@ -229,7 +229,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -563,7 +568,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -799,7 +809,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -997,7 +1012,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -1412,7 +1432,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), diff --git a/crates/validation/tests/snapshots/transition_tests__update_collection_becomes_derivation.snap b/crates/validation/tests/snapshots/transition_tests__update_collection_becomes_derivation.snap index 0b13cf5d02..bad70b656b 100644 --- a/crates/validation/tests/snapshots/transition_tests__update_collection_becomes_derivation.snap +++ b/crates/validation/tests/snapshots/transition_tests__update_collection_becomes_derivation.snap @@ -303,7 +303,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), diff --git a/crates/validation/tests/snapshots/transition_tests__updates.snap b/crates/validation/tests/snapshots/transition_tests__updates.snap index 14404567d3..e3ca2574b6 100644 --- a/crates/validation/tests/snapshots/transition_tests__updates.snap +++ b/crates/validation/tests/snapshots/transition_tests__updates.snap @@ -229,7 +229,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -597,7 +602,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -855,7 +865,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -1053,7 +1068,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), @@ -1525,7 +1545,12 @@ Outcome { }, ), retention: None, - flush_interval: None, + flush_interval: Some( + Duration { + seconds: 86400, + nanos: 0, + }, + ), path_postfix_template: "utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}", }, ), diff --git a/go/bindings/.snapshots/TestBuildCatalog-all-collections b/go/bindings/.snapshots/TestBuildCatalog-all-collections index da498fc4de..95d12b694d 100644 --- a/go/bindings/.snapshots/TestBuildCatalog-all-collections +++ b/go/bindings/.snapshots/TestBuildCatalog-all-collections @@ -1,4 +1,4 @@ ([]*flow.CollectionSpec) (len=2) { - (*flow.CollectionSpec)(name:"a/collection" write_schema_json:"{\"$id\":\"file:///build.flow.yaml?ptr=/collections/a~1collection/schema\",\"properties\":{\"a_key\":{\"type\":\"string\"},\"a_val\":{\"type\":\"integer\"}},\"required\":[\"a_key\"],\"type\":\"object\"}" key:"/a_key" uuid_ptr:"/_meta/uuid" projections: > projections: exists:MUST > > projections: > > projections: > projections: title:"Flow Publication Time" description:"Flow publication date-time of this document" exists:MUST > > ack_template_json:"{\"_meta\":{\"ack\":true,\"uuid\":\"DocUUIDPlaceholder-329Bb50aa48EAa9ef\"}}" partition_template: labels: labels: labels: > fragment: path_postfix_template:"utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}" > flags:4 max_append_rate:4194304 > ), - (*flow.CollectionSpec)(name:"a/derivation" write_schema_json:"{\"$id\":\"file:///build.flow.yaml?ptr=/collections/a~1derivation/schema\",\"properties\":{\"a_key\":{\"type\":\"string\"}},\"required\":[\"a_key\"],\"type\":\"object\"}" key:"/a_key" uuid_ptr:"/_meta/uuid" projections: > projections: exists:MUST > > projections: > projections: title:"Flow Publication Time" description:"Flow publication date-time of this document" exists:MUST > > ack_template_json:"{\"_meta\":{\"ack\":true,\"uuid\":\"DocUUIDPlaceholder-329Bb50aa48EAa9ef\"}}" partition_template: labels: labels: labels: > fragment: path_postfix_template:"utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}" > flags:4 max_append_rate:4194304 > derivation: > projections: exists:MUST > > projections: > > projections: > projections: title:"Flow Publication Time" description:"Flow publication date-time of this document" exists:MUST > > ack_template_json:"{\"_meta\":{\"ack\":true,\"uuid\":\"DocUUIDPlaceholder-329Bb50aa48EAa9ef\"}}" partition_template: labels: labels: labels: > fragment: path_postfix_template:"utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}" > flags:4 max_append_rate:4194304 > > partition_selector: > exclude:<> > lambda_config_json:"null" journal_read_suffix:"derive/a/derivation/swizzle" > shard_template: labels: labels: labels: labels: labels: > ring_buffer_size:65536 read_channel_size:4096 > recovery_log_template: labels: labels: labels: labels: > fragment: > flags:4 max_append_rate:4194304 > > ) + (*flow.CollectionSpec)(name:"a/collection" write_schema_json:"{\"$id\":\"file:///build.flow.yaml?ptr=/collections/a~1collection/schema\",\"properties\":{\"a_key\":{\"type\":\"string\"},\"a_val\":{\"type\":\"integer\"}},\"required\":[\"a_key\"],\"type\":\"object\"}" key:"/a_key" uuid_ptr:"/_meta/uuid" projections: > projections: exists:MUST > > projections: > > projections: > projections: title:"Flow Publication Time" description:"Flow publication date-time of this document" exists:MUST > > ack_template_json:"{\"_meta\":{\"ack\":true,\"uuid\":\"DocUUIDPlaceholder-329Bb50aa48EAa9ef\"}}" partition_template: labels: labels: labels: > fragment: flush_interval: path_postfix_template:"utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}" > flags:4 max_append_rate:4194304 > ), + (*flow.CollectionSpec)(name:"a/derivation" write_schema_json:"{\"$id\":\"file:///build.flow.yaml?ptr=/collections/a~1derivation/schema\",\"properties\":{\"a_key\":{\"type\":\"string\"}},\"required\":[\"a_key\"],\"type\":\"object\"}" key:"/a_key" uuid_ptr:"/_meta/uuid" projections: > projections: exists:MUST > > projections: > projections: title:"Flow Publication Time" description:"Flow publication date-time of this document" exists:MUST > > ack_template_json:"{\"_meta\":{\"ack\":true,\"uuid\":\"DocUUIDPlaceholder-329Bb50aa48EAa9ef\"}}" partition_template: labels: labels: labels: > fragment: flush_interval: path_postfix_template:"utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}" > flags:4 max_append_rate:4194304 > derivation: > projections: exists:MUST > > projections: > > projections: > projections: title:"Flow Publication Time" description:"Flow publication date-time of this document" exists:MUST > > ack_template_json:"{\"_meta\":{\"ack\":true,\"uuid\":\"DocUUIDPlaceholder-329Bb50aa48EAa9ef\"}}" partition_template: labels: labels: labels: > fragment: flush_interval: path_postfix_template:"utc_date={{.Spool.FirstAppendTime.Format \"2006-01-02\"}}/utc_hour={{.Spool.FirstAppendTime.Format \"15\"}}" > flags:4 max_append_rate:4194304 > > partition_selector: > exclude:<> > lambda_config_json:"null" journal_read_suffix:"derive/a/derivation/swizzle" > shard_template: labels: labels: labels: labels: labels: > ring_buffer_size:65536 read_channel_size:4096 > recovery_log_template: labels: labels: labels: labels: > fragment: > flags:4 max_append_rate:4194304 > > ) }