From 7bdc41d5e05910ce9778abc25246c5021dc290f8 Mon Sep 17 00:00:00 2001 From: Victoria Xia Date: Tue, 12 Oct 2021 07:04:01 -0700 Subject: [PATCH] feat: enable ROWPARTITION and ROWOFFSET pseudo columns (KLIP-50) (#8245) --- .../io/confluent/ksql/util/KsqlConfig.java | 2 +- .../ksql/schema/ksql/LogicalSchemaTest.java | 12 +- .../ksql/engine/rewrite/AstSanitizerTest.java | 2 + .../rewrite/DataSourceExtractorTest.java | 1 + .../ExpressionEvaluatorParityTest.java | 4 +- .../SelectValueMapperIntegrationTest.java | 4 +- .../physical/PhysicalPlanBuilderTest.java | 4 +- .../ksql/planner/LogicalPlannerTest.java | 4 + .../ksql/planner/plan/AggregateNodeTest.java | 2 +- .../ksql/planner/plan/DataSourceNodeTest.java | 1 + .../planner/plan/FinalProjectNodeTest.java | 1 + .../ksql/planner/plan/JoinNodeTest.java | 9 +- .../ksql/planner/plan/LogicRewriterTest.java | 1 + .../planner/plan/PullQueryRewriterTest.java | 1 + .../planner/plan/QueryProjectNodeTest.java | 12 +- .../planner/plan/UserRepartitionNodeTest.java | 1 + .../DefaultSchemaInjectorFunctionalTest.java | 4 + .../ksql/structured/SchemaKTableTest.java | 2 + .../ksql/test/planned/PlannedTestUtils.java | 5 +- .../7.1.0_1633125901561/plan.json | 166 ++++ .../7.1.0_1633125901561/spec.json | 152 ++++ .../7.1.0_1633125901561/topology | 13 + .../7.1.0_1633125901614/plan.json | 166 ++++ .../7.1.0_1633125901614/spec.json | 152 ++++ .../7.1.0_1633125901614/topology | 13 + .../7.1.0_1633125901669/plan.json | 166 ++++ .../7.1.0_1633125901669/spec.json | 174 +++++ .../7.1.0_1633125901669/topology | 13 + .../7.1.0_1633125901714/plan.json | 166 ++++ .../7.1.0_1633125901714/spec.json | 174 +++++ .../7.1.0_1633125901714/topology | 13 + .../7.1.0_1633125901799/plan.json | 166 ++++ .../7.1.0_1633125901799/spec.json | 226 ++++++ .../7.1.0_1633125901799/topology | 13 + .../7.1.0_1633125901853/plan.json | 166 ++++ .../7.1.0_1633125901853/spec.json | 179 +++++ .../7.1.0_1633125901853/topology | 13 + .../7.1.0_1633125901765/plan.json | 166 ++++ .../7.1.0_1633125901765/spec.json | 110 +++ .../7.1.0_1633125901765/topology | 13 + .../7.1.0_1633125902336/plan.json | 166 ++++ .../7.1.0_1633125902336/spec.json | 112 +++ .../7.1.0_1633125902336/topology | 13 + .../7.1.0_1633125902295/plan.json | 166 ++++ .../7.1.0_1633125902295/spec.json | 112 +++ .../7.1.0_1633125902295/topology | 13 + .../7.1.0_1633125902185/plan.json | 166 ++++ .../7.1.0_1633125902185/spec.json | 110 +++ .../7.1.0_1633125902185/topology | 13 + .../7.1.0_1633125902273/plan.json | 166 ++++ .../7.1.0_1633125902273/spec.json | 164 ++++ .../7.1.0_1633125902273/topology | 13 + .../7.1.0_1633125902316/plan.json | 166 ++++ .../7.1.0_1633125902316/spec.json | 112 +++ .../7.1.0_1633125902316/topology | 13 + .../7.1.0_1633125901970/plan.json | 166 ++++ .../7.1.0_1633125901970/spec.json | 192 +++++ .../7.1.0_1633125901970/topology | 13 + .../7.1.0_1633125901884/plan.json | 166 ++++ .../7.1.0_1633125901884/spec.json | 110 +++ .../7.1.0_1633125901884/topology | 13 + .../7.1.0_1633125901919/plan.json | 166 ++++ .../7.1.0_1633125901919/spec.json | 174 +++++ .../7.1.0_1633125901919/topology | 13 + .../7.1.0_1633125902001/plan.json | 166 ++++ .../7.1.0_1633125902001/spec.json | 110 +++ .../7.1.0_1633125902001/topology | 13 + .../7.1.0_1633125902037/plan.json | 166 ++++ .../7.1.0_1633125902037/spec.json | 164 ++++ .../7.1.0_1633125902037/topology | 13 + .../7.1.0_1633125902062/plan.json | 166 ++++ .../7.1.0_1633125902062/spec.json | 110 +++ .../7.1.0_1633125902062/topology | 13 + .../7.1.0_1633125902097/plan.json | 166 ++++ .../7.1.0_1633125902097/spec.json | 164 ++++ .../7.1.0_1633125902097/topology | 13 + .../7.1.0_1633125902121/plan.json | 166 ++++ .../7.1.0_1633125902121/spec.json | 110 +++ .../7.1.0_1633125902121/topology | 13 + .../7.1.0_1633125902156/plan.json | 166 ++++ .../7.1.0_1633125902156/spec.json | 164 ++++ .../7.1.0_1633125902156/topology | 13 + .../7.1.0_1633125901013/plan.json | 166 ++++ .../7.1.0_1633125901013/spec.json | 138 ++++ .../7.1.0_1633125901013/topology | 13 + .../7.1.0_1633125901047/plan.json | 166 ++++ .../7.1.0_1633125901047/spec.json | 170 +++++ .../7.1.0_1633125901047/topology | 13 + .../7.1.0_1633125901207/plan.json | 166 ++++ .../7.1.0_1633125901207/spec.json | 100 +++ .../7.1.0_1633125901207/topology | 13 + .../7.1.0_1633125901079/plan.json | 166 ++++ .../7.1.0_1633125901079/spec.json | 123 +++ .../7.1.0_1633125901079/topology | 13 + .../7.1.0_1633125901142/plan.json | 166 ++++ .../7.1.0_1633125901142/spec.json | 114 +++ .../7.1.0_1633125901142/topology | 13 + .../7.1.0_1633125898233/plan.json | 166 ++++ .../7.1.0_1633125898233/spec.json | 173 +++++ .../7.1.0_1633125898233/topology | 13 + .../7.1.0_1633125901180/plan.json | 166 ++++ .../7.1.0_1633125901180/spec.json | 98 +++ .../7.1.0_1633125901180/topology | 13 + .../7.1.0_1633125901272/plan.json | 173 +++++ .../7.1.0_1633125901272/spec.json | 140 ++++ .../7.1.0_1633125901272/topology | 16 + .../7.1.0_1633125901323/plan.json | 173 +++++ .../7.1.0_1633125901323/spec.json | 152 ++++ .../7.1.0_1633125901323/topology | 16 + .../7.1.0_1633125901353/plan.json | 166 ++++ .../7.1.0_1633125901353/spec.json | 134 ++++ .../7.1.0_1633125901353/topology | 13 + .../7.1.0_1633125901379/plan.json | 166 ++++ .../7.1.0_1633125901379/spec.json | 158 ++++ .../7.1.0_1633125901379/topology | 13 + .../7.1.0_1633125901455/plan.json | 166 ++++ .../7.1.0_1633125901455/spec.json | 108 +++ .../7.1.0_1633125901455/topology | 13 + .../7.1.0_1633125901405/plan.json | 166 ++++ .../7.1.0_1633125901405/spec.json | 108 +++ .../7.1.0_1633125901405/topology | 13 + .../7.1.0_1633125901510/plan.json | 166 ++++ .../7.1.0_1633125901510/spec.json | 108 +++ .../7.1.0_1633125901510/topology | 13 + .../7.1.0_1633125902923/plan.json | 170 +++++ .../7.1.0_1633125902923/spec.json | 105 +++ .../7.1.0_1633125902923/topology | 13 + .../7.1.0_1633125902879/plan.json | 170 +++++ .../7.1.0_1633125902879/spec.json | 105 +++ .../7.1.0_1633125902879/topology | 13 + .../7.1.0_1633125902902/plan.json | 170 +++++ .../7.1.0_1633125902902/spec.json | 105 +++ .../7.1.0_1633125902902/topology | 13 + .../7.1.0_1633125902943/plan.json | 170 +++++ .../7.1.0_1633125902943/spec.json | 111 +++ .../7.1.0_1633125902943/topology | 13 + .../7.1.0_1633125902405/plan.json | 166 ++++ .../7.1.0_1633125902405/spec.json | 99 +++ .../7.1.0_1633125902405/topology | 13 + .../7.1.0_1633125902482/plan.json | 213 ++++++ .../7.1.0_1633125902482/spec.json | 142 ++++ .../7.1.0_1633125902482/topology | 40 + .../7.1.0_1633125902722/plan.json | 257 +++++++ .../7.1.0_1633125902722/spec.json | 189 +++++ .../7.1.0_1633125902722/topology | 45 ++ .../7.1.0_1633125902361/plan.json | 166 ++++ .../7.1.0_1633125902361/spec.json | 100 +++ .../7.1.0_1633125902361/topology | 13 + .../7.1.0_1633125902431/plan.json | 173 +++++ .../7.1.0_1633125902431/spec.json | 101 +++ .../7.1.0_1633125902431/topology | 16 + .../7.1.0_1633125902384/plan.json | 166 ++++ .../7.1.0_1633125902384/spec.json | 99 +++ .../7.1.0_1633125902384/topology | 13 + .../7.1.0_1633125903360/plan.json | 212 ++++++ .../7.1.0_1633125903360/spec.json | 205 +++++ .../7.1.0_1633125903360/topology | 25 + .../7.1.0_1633125903105/plan.json | 212 ++++++ .../7.1.0_1633125903105/spec.json | 205 +++++ .../7.1.0_1633125903105/topology | 25 + .../7.1.0_1633125903232/plan.json | 212 ++++++ .../7.1.0_1633125903232/spec.json | 205 +++++ .../7.1.0_1633125903232/topology | 25 + .../7.1.0_1633125902969/plan.json | 212 ++++++ .../7.1.0_1633125902969/spec.json | 161 ++++ .../7.1.0_1633125902969/topology | 25 + .../7.1.0_1633125904474/plan.json | 182 +++++ .../7.1.0_1633125904474/spec.json | 184 +++++ .../7.1.0_1633125904474/topology | 13 + .../7.1.0_1633125904455/plan.json | 182 +++++ .../7.1.0_1633125904455/spec.json | 185 +++++ .../7.1.0_1633125904455/topology | 13 + .../7.1.0_1633125904306/plan.json | 182 +++++ .../7.1.0_1633125904306/spec.json | 163 ++++ .../7.1.0_1633125904306/topology | 13 + .../7.1.0_1633125904287/plan.json | 182 +++++ .../7.1.0_1633125904287/spec.json | 164 ++++ .../7.1.0_1633125904287/topology | 13 + .../7.1.0_1633125904231/plan.json | 182 +++++ .../7.1.0_1633125904231/spec.json | 159 ++++ .../7.1.0_1633125904231/topology | 13 + .../7.1.0_1633125904212/plan.json | 182 +++++ .../7.1.0_1633125904212/spec.json | 160 ++++ .../7.1.0_1633125904212/topology | 13 + .../7.1.0_1633125904418/plan.json | 182 +++++ .../7.1.0_1633125904418/spec.json | 184 +++++ .../7.1.0_1633125904418/topology | 13 + .../7.1.0_1633125904436/plan.json | 182 +++++ .../7.1.0_1633125904436/spec.json | 182 +++++ .../7.1.0_1633125904436/topology | 13 + .../7.1.0_1633125904398/plan.json | 182 +++++ .../7.1.0_1633125904398/spec.json | 190 +++++ .../7.1.0_1633125904398/topology | 13 + .../7.1.0_1633125904342/plan.json | 182 +++++ .../7.1.0_1633125904342/spec.json | 163 ++++ .../7.1.0_1633125904342/topology | 13 + .../7.1.0_1633125904324/plan.json | 182 +++++ .../7.1.0_1633125904324/spec.json | 164 ++++ .../7.1.0_1633125904324/topology | 13 + .../7.1.0_1633125904268/plan.json | 182 +++++ .../7.1.0_1633125904268/spec.json | 175 +++++ .../7.1.0_1633125904268/topology | 13 + .../7.1.0_1633125904554/plan.json | 184 +++++ .../7.1.0_1633125904554/spec.json | 149 ++++ .../7.1.0_1633125904554/topology | 13 + .../7.1.0_1633125904535/plan.json | 182 +++++ .../7.1.0_1633125904535/spec.json | 170 +++++ .../7.1.0_1633125904535/topology | 13 + .../7.1.0_1633125904250/plan.json | 182 +++++ .../7.1.0_1633125904250/spec.json | 176 +++++ .../7.1.0_1633125904250/topology | 13 + .../7.1.0_1633125904379/plan.json | 182 +++++ .../7.1.0_1633125904379/spec.json | 163 ++++ .../7.1.0_1633125904379/topology | 13 + .../7.1.0_1633125904361/plan.json | 182 +++++ .../7.1.0_1633125904361/spec.json | 164 ++++ .../7.1.0_1633125904361/topology | 13 + .../7.1.0_1633125904516/plan.json | 182 +++++ .../7.1.0_1633125904516/spec.json | 208 +++++ .../7.1.0_1633125904516/topology | 13 + .../7.1.0_1633125904494/plan.json | 182 +++++ .../7.1.0_1633125904494/spec.json | 213 ++++++ .../7.1.0_1633125904494/topology | 13 + .../7.1.0_1633125903716/plan.json | 167 ++++ .../7.1.0_1633125903716/spec.json | 139 ++++ .../7.1.0_1633125903716/topology | 13 + .../7.1.0_1633125903776/plan.json | 167 ++++ .../7.1.0_1633125903776/spec.json | 121 +++ .../7.1.0_1633125903776/topology | 13 + .../7.1.0_1633125903739/plan.json | 167 ++++ .../7.1.0_1633125903739/spec.json | 121 +++ .../7.1.0_1633125903739/topology | 13 + .../7.1.0_1633125903793/plan.json | 167 ++++ .../7.1.0_1633125903793/spec.json | 168 +++++ .../7.1.0_1633125903793/topology | 13 + .../7.1.0_1633125903830/plan.json | 167 ++++ .../7.1.0_1633125903830/spec.json | 142 ++++ .../7.1.0_1633125903830/topology | 13 + .../7.1.0_1633125903813/plan.json | 167 ++++ .../7.1.0_1633125903813/spec.json | 142 ++++ .../7.1.0_1633125903813/topology | 13 + .../7.1.0_1633125903485/plan.json | 168 +++++ .../7.1.0_1633125903485/spec.json | 120 +++ .../7.1.0_1633125903485/topology | 13 + .../7.1.0_1633125903676/plan.json | 168 +++++ .../7.1.0_1633125903676/spec.json | 112 +++ .../7.1.0_1633125903676/topology | 13 + .../7.1.0_1633125903985/plan.json | 167 ++++ .../7.1.0_1633125903985/spec.json | 161 ++++ .../7.1.0_1633125903985/topology | 13 + .../7.1.0_1633125903966/plan.json | 167 ++++ .../7.1.0_1633125903966/spec.json | 166 ++++ .../7.1.0_1633125903966/topology | 13 + .../7.1.0_1633125903757/plan.json | 167 ++++ .../7.1.0_1633125903757/spec.json | 175 +++++ .../7.1.0_1633125903757/topology | 13 + .../7.1.0_1633125903695/plan.json | 168 +++++ .../7.1.0_1633125903695/spec.json | 142 ++++ .../7.1.0_1633125903695/topology | 13 + .../7.1.0_1633125903884/plan.json | 167 ++++ .../7.1.0_1633125903884/spec.json | 164 ++++ .../7.1.0_1633125903884/topology | 13 + .../7.1.0_1633125903924/plan.json | 167 ++++ .../7.1.0_1633125903924/spec.json | 234 ++++++ .../7.1.0_1633125903924/topology | 13 + .../7.1.0_1633125903848/plan.json | 168 +++++ .../7.1.0_1633125903848/spec.json | 142 ++++ .../7.1.0_1633125903848/topology | 13 + .../7.1.0_1633125904004/plan.json | 167 ++++ .../7.1.0_1633125904004/spec.json | 185 +++++ .../7.1.0_1633125904004/topology | 13 + .../7.1.0_1633125903903/plan.json | 167 ++++ .../7.1.0_1633125903903/spec.json | 174 +++++ .../7.1.0_1633125903903/topology | 13 + .../7.1.0_1633125903946/plan.json | 167 ++++ .../7.1.0_1633125903946/spec.json | 231 ++++++ .../7.1.0_1633125903946/topology | 13 + .../7.1.0_1633125903866/plan.json | 168 +++++ .../7.1.0_1633125903866/spec.json | 153 ++++ .../7.1.0_1633125903866/topology | 13 + .../7.1.0_1633125904023/plan.json | 167 ++++ .../7.1.0_1633125904023/spec.json | 199 +++++ .../7.1.0_1633125904023/topology | 13 + .../7.1.0_1633125904146/plan.json | 165 ++++ .../7.1.0_1633125904146/spec.json | 126 ++++ .../7.1.0_1633125904146/topology | 13 + .../7.1.0_1633125904071/plan.json | 165 ++++ .../7.1.0_1633125904071/spec.json | 140 ++++ .../7.1.0_1633125904071/topology | 13 + .../7.1.0_1633125904128/plan.json | 165 ++++ .../7.1.0_1633125904128/spec.json | 153 ++++ .../7.1.0_1633125904128/topology | 13 + .../7.1.0_1633125904162/plan.json | 165 ++++ .../7.1.0_1633125904162/spec.json | 165 ++++ .../7.1.0_1633125904162/topology | 13 + .../7.1.0_1633125904091/plan.json | 165 ++++ .../7.1.0_1633125904091/spec.json | 135 ++++ .../7.1.0_1633125904091/topology | 13 + .../7.1.0_1633125904110/plan.json | 165 ++++ .../7.1.0_1633125904110/spec.json | 152 ++++ .../7.1.0_1633125904110/topology | 13 + .../7.1.0_1633125904185/plan.json | 166 ++++ .../7.1.0_1633125904185/spec.json | 174 +++++ .../7.1.0_1633125904185/topology | 13 + .../7.1.0_1633125904043/plan.json | 165 ++++ .../7.1.0_1633125904043/spec.json | 174 +++++ .../7.1.0_1633125904043/topology | 13 + .../7.1.0_1633125904713/plan.json | 173 +++++ .../7.1.0_1633125904713/spec.json | 142 ++++ .../7.1.0_1633125904713/topology | 16 + .../7.1.0_1633125904598/plan.json | 173 +++++ .../7.1.0_1633125904598/spec.json | 149 ++++ .../7.1.0_1633125904598/topology | 16 + .../7.1.0_1633125904618/plan.json | 173 +++++ .../7.1.0_1633125904618/spec.json | 149 ++++ .../7.1.0_1633125904618/topology | 16 + .../7.1.0_1633125904575/plan.json | 173 +++++ .../7.1.0_1633125904575/spec.json | 149 ++++ .../7.1.0_1633125904575/topology | 16 + .../7.1.0_1633125904676/plan.json | 173 +++++ .../7.1.0_1633125904676/spec.json | 132 ++++ .../7.1.0_1633125904676/topology | 16 + .../7.1.0_1633125904657/plan.json | 173 +++++ .../7.1.0_1633125904657/spec.json | 138 ++++ .../7.1.0_1633125904657/topology | 16 + .../7.1.0_1633125904639/plan.json | 173 +++++ .../7.1.0_1633125904639/spec.json | 149 ++++ .../7.1.0_1633125904639/topology | 16 + .../7.1.0_1633125904739/plan.json | 173 +++++ .../7.1.0_1633125904739/spec.json | 149 ++++ .../7.1.0_1633125904739/topology | 16 + .../7.1.0_1633125904695/plan.json | 173 +++++ .../7.1.0_1633125904695/spec.json | 135 ++++ .../7.1.0_1633125904695/topology | 16 + .../7.1.0_1633125904758/plan.json | 166 ++++ .../7.1.0_1633125904758/spec.json | 102 +++ .../7.1.0_1633125904758/topology | 13 + .../7.1.0_1633125905430/plan.json | 166 ++++ .../7.1.0_1633125905430/spec.json | 118 +++ .../7.1.0_1633125905430/topology | 13 + .../7.1.0_1633125905160/plan.json | 166 ++++ .../7.1.0_1633125905160/spec.json | 181 +++++ .../7.1.0_1633125905160/topology | 13 + .../7.1.0_1633125904785/plan.json | 166 ++++ .../7.1.0_1633125904785/spec.json | 148 ++++ .../7.1.0_1633125904785/topology | 13 + .../7.1.0_1633125905090/plan.json | 166 ++++ .../7.1.0_1633125905090/spec.json | 124 +++ .../7.1.0_1633125905090/topology | 13 + .../7.1.0_1633125905125/plan.json | 166 ++++ .../7.1.0_1633125905125/spec.json | 143 ++++ .../7.1.0_1633125905125/topology | 13 + .../7.1.0_1633125905238/plan.json | 166 ++++ .../7.1.0_1633125905238/spec.json | 146 ++++ .../7.1.0_1633125905238/topology | 13 + .../7.1.0_1633125905254/plan.json | 166 ++++ .../7.1.0_1633125905254/spec.json | 148 ++++ .../7.1.0_1633125905254/topology | 13 + .../7.1.0_1633125905334/plan.json | 166 ++++ .../7.1.0_1633125905334/spec.json | 146 ++++ .../7.1.0_1633125905334/topology | 13 + .../7.1.0_1633125905351/plan.json | 166 ++++ .../7.1.0_1633125905351/spec.json | 148 ++++ .../7.1.0_1633125905351/topology | 13 + .../7.1.0_1633125904971/plan.json | 166 ++++ .../7.1.0_1633125904971/spec.json | 124 +++ .../7.1.0_1633125904971/topology | 13 + .../7.1.0_1633125905019/plan.json | 166 ++++ .../7.1.0_1633125905019/spec.json | 143 ++++ .../7.1.0_1633125905019/topology | 13 + .../7.1.0_1633125905457/plan.json | 166 ++++ .../7.1.0_1633125905457/spec.json | 146 ++++ .../7.1.0_1633125905457/topology | 13 + .../7.1.0_1633125905515/plan.json | 166 ++++ .../7.1.0_1633125905515/spec.json | 140 ++++ .../7.1.0_1633125905515/topology | 13 + .../7.1.0_1633125905200/plan.json | 166 ++++ .../7.1.0_1633125905200/spec.json | 181 +++++ .../7.1.0_1633125905200/topology | 13 + .../7.1.0_1633125904879/plan.json | 166 ++++ .../7.1.0_1633125904879/spec.json | 148 ++++ .../7.1.0_1633125904879/topology | 13 + .../7.1.0_1633125905485/plan.json | 166 ++++ .../7.1.0_1633125905485/spec.json | 146 ++++ .../7.1.0_1633125905485/topology | 13 + .../7.1.0_1633125905696/plan.json | 165 ++++ .../7.1.0_1633125905696/spec.json | 102 +++ .../7.1.0_1633125905696/topology | 13 + .../7.1.0_1633125905747/plan.json | 165 ++++ .../7.1.0_1633125905747/spec.json | 102 +++ .../7.1.0_1633125905747/topology | 13 + .../7.1.0_1633125905666/plan.json | 165 ++++ .../7.1.0_1633125905666/spec.json | 102 +++ .../7.1.0_1633125905666/topology | 13 + .../7.1.0_1633125905723/plan.json | 165 ++++ .../7.1.0_1633125905723/spec.json | 102 +++ .../7.1.0_1633125905723/topology | 13 + .../7.1.0_1633125905772/plan.json | 166 ++++ .../7.1.0_1633125905772/spec.json | 226 ++++++ .../7.1.0_1633125905772/topology | 13 + .../7.1.0_1633125905790/plan.json | 166 ++++ .../7.1.0_1633125905790/spec.json | 226 ++++++ .../7.1.0_1633125905790/topology | 13 + .../7.1.0_1633125905592/plan.json | 166 ++++ .../7.1.0_1633125905592/spec.json | 139 ++++ .../7.1.0_1633125905592/topology | 13 + .../7.1.0_1633125905531/plan.json | 166 ++++ .../7.1.0_1633125905531/spec.json | 94 +++ .../7.1.0_1633125905531/topology | 13 + .../7.1.0_1633125905544/plan.json | 166 ++++ .../7.1.0_1633125905544/spec.json | 98 +++ .../7.1.0_1633125905544/topology | 13 + .../7.1.0_1633125905558/plan.json | 165 ++++ .../7.1.0_1633125905558/spec.json | 102 +++ .../7.1.0_1633125905558/topology | 13 + .../7.1.0_1633125905609/plan.json | 166 ++++ .../7.1.0_1633125905609/spec.json | 106 +++ .../7.1.0_1633125905609/topology | 13 + .../7.1.0_1633125905649/plan.json | 173 +++++ .../7.1.0_1633125905649/spec.json | 132 ++++ .../7.1.0_1633125905649/topology | 16 + .../7.1.0_1633125905632/plan.json | 166 ++++ .../7.1.0_1633125905632/spec.json | 151 ++++ .../7.1.0_1633125905632/topology | 13 + .../7.1.0_1633125906039/plan.json | 217 ++++++ .../7.1.0_1633125906039/spec.json | 185 +++++ .../7.1.0_1633125906039/topology | 28 + .../7.1.0_1633125905808/plan.json | 166 ++++ .../7.1.0_1633125905808/spec.json | 122 +++ .../7.1.0_1633125905808/topology | 13 + .../7.1.0_1633125905961/plan.json | 166 ++++ .../7.1.0_1633125905961/spec.json | 176 +++++ .../7.1.0_1633125905961/topology | 13 + .../7.1.0_1633125905938/plan.json | 166 ++++ .../7.1.0_1633125905938/spec.json | 110 +++ .../7.1.0_1633125905938/topology | 13 + .../7.1.0_1633125905889/plan.json | 166 ++++ .../7.1.0_1633125905889/spec.json | 122 +++ .../7.1.0_1633125905889/topology | 13 + .../7.1.0_1633125905913/plan.json | 166 ++++ .../7.1.0_1633125905913/spec.json | 122 +++ .../7.1.0_1633125905913/topology | 13 + .../7.1.0_1633125905838/plan.json | 166 ++++ .../7.1.0_1633125905838/spec.json | 125 +++ .../7.1.0_1633125905838/topology | 13 + .../7.1.0_1633125905864/plan.json | 166 ++++ .../7.1.0_1633125905864/spec.json | 124 +++ .../7.1.0_1633125905864/topology | 13 + .../7.1.0_1633125905987/plan.json | 166 ++++ .../7.1.0_1633125905987/spec.json | 96 +++ .../7.1.0_1633125905987/topology | 13 + .../7.1.0_1633125906011/plan.json | 166 ++++ .../7.1.0_1633125906011/spec.json | 96 +++ .../7.1.0_1633125906011/topology | 13 + .../7.1.0_1633125906251/plan.json | 166 ++++ .../7.1.0_1633125906251/spec.json | 98 +++ .../7.1.0_1633125906251/topology | 13 + .../7.1.0_1633125906209/plan.json | 166 ++++ .../7.1.0_1633125906209/spec.json | 98 +++ .../7.1.0_1633125906209/topology | 13 + .../7.1.0_1633125906232/plan.json | 166 ++++ .../7.1.0_1633125906232/spec.json | 98 +++ .../7.1.0_1633125906232/topology | 13 + .../7.1.0_1633125906195/plan.json | 166 ++++ .../7.1.0_1633125906195/spec.json | 98 +++ .../7.1.0_1633125906195/topology | 13 + .../7.1.0_1633125906178/plan.json | 165 ++++ .../7.1.0_1633125906178/spec.json | 98 +++ .../7.1.0_1633125906178/topology | 13 + .../7.1.0_1633125906460/plan.json | 166 ++++ .../7.1.0_1633125906460/spec.json | 98 +++ .../7.1.0_1633125906460/topology | 13 + .../7.1.0_1633125906476/plan.json | 166 ++++ .../7.1.0_1633125906476/spec.json | 110 +++ .../7.1.0_1633125906476/topology | 13 + .../7.1.0_1633125906557/plan.json | 166 ++++ .../7.1.0_1633125906557/spec.json | 213 ++++++ .../7.1.0_1633125906557/topology | 13 + .../7.1.0_1633125906515/plan.json | 166 ++++ .../7.1.0_1633125906515/spec.json | 196 +++++ .../7.1.0_1633125906515/topology | 13 + .../7.1.0_1633125906653/plan.json | 166 ++++ .../7.1.0_1633125906653/spec.json | 140 ++++ .../7.1.0_1633125906653/topology | 13 + .../7.1.0_1633125906616/plan.json | 166 ++++ .../7.1.0_1633125906616/spec.json | 140 ++++ .../7.1.0_1633125906616/topology | 13 + .../7.1.0_1633125906494/plan.json | 166 ++++ .../7.1.0_1633125906494/spec.json | 172 +++++ .../7.1.0_1633125906494/topology | 13 + .../7.1.0_1633125906636/plan.json | 166 ++++ .../7.1.0_1633125906636/spec.json | 140 ++++ .../7.1.0_1633125906636/topology | 13 + .../7.1.0_1633125906322/plan.json | 166 ++++ .../7.1.0_1633125906322/spec.json | 106 +++ .../7.1.0_1633125906322/topology | 13 + .../7.1.0_1633125906300/plan.json | 166 ++++ .../7.1.0_1633125906300/spec.json | 102 +++ .../7.1.0_1633125906300/topology | 13 + .../7.1.0_1633125906286/plan.json | 166 ++++ .../7.1.0_1633125906286/spec.json | 102 +++ .../7.1.0_1633125906286/topology | 13 + .../7.1.0_1633125906270/plan.json | 165 ++++ .../7.1.0_1633125906270/spec.json | 100 +++ .../7.1.0_1633125906270/topology | 13 + .../7.1.0_1633125906397/plan.json | 166 ++++ .../7.1.0_1633125906397/spec.json | 94 +++ .../cast_-_no_op/7.1.0_1633125906397/topology | 13 + .../7.1.0_1633125906424/plan.json | 166 ++++ .../7.1.0_1633125906424/spec.json | 103 +++ .../7.1.0_1633125906424/topology | 13 + .../7.1.0_1633125906537/plan.json | 166 ++++ .../7.1.0_1633125906537/spec.json | 196 +++++ .../7.1.0_1633125906537/topology | 13 + .../7.1.0_1633125906343/plan.json | 165 ++++ .../7.1.0_1633125906343/spec.json | 101 +++ .../7.1.0_1633125906343/topology | 13 + .../7.1.0_1633125906372/plan.json | 166 ++++ .../7.1.0_1633125906372/spec.json | 104 +++ .../7.1.0_1633125906372/topology | 13 + .../7.1.0_1633125906358/plan.json | 166 ++++ .../7.1.0_1633125906358/spec.json | 104 +++ .../7.1.0_1633125906358/topology | 13 + .../7.1.0_1633125906672/plan.json | 166 ++++ .../7.1.0_1633125906672/spec.json | 179 +++++ .../7.1.0_1633125906672/topology | 13 + .../7.1.0_1633125906691/plan.json | 166 ++++ .../7.1.0_1633125906691/spec.json | 146 ++++ .../7.1.0_1633125906691/topology | 13 + .../7.1.0_1633125906707/plan.json | 166 ++++ .../7.1.0_1633125906707/spec.json | 215 ++++++ .../7.1.0_1633125906707/topology | 13 + .../7.1.0_1633125906727/plan.json | 166 ++++ .../7.1.0_1633125906727/spec.json | 182 +++++ .../7.1.0_1633125906727/topology | 13 + .../7.1.0_1633125906743/plan.json | 166 ++++ .../7.1.0_1633125906743/spec.json | 158 ++++ .../7.1.0_1633125906743/topology | 13 + .../7.1.0_1633125906760/plan.json | 166 ++++ .../7.1.0_1633125906760/spec.json | 101 +++ .../7.1.0_1633125906760/topology | 13 + .../7.1.0_1633125908614/plan.json | 212 ++++++ .../7.1.0_1633125908614/spec.json | 169 +++++ .../7.1.0_1633125908614/topology | 25 + .../7.1.0_1633125908719/plan.json | 212 ++++++ .../7.1.0_1633125908719/spec.json | 174 +++++ .../7.1.0_1633125908719/topology | 25 + .../7.1.0_1633125913394/plan.json | 229 ++++++ .../7.1.0_1633125913394/spec.json | 215 ++++++ .../7.1.0_1633125913394/topology | 43 ++ .../7.1.0_1633125913641/plan.json | 229 ++++++ .../7.1.0_1633125913641/spec.json | 222 ++++++ .../7.1.0_1633125913641/topology | 43 ++ .../7.1.0_1633125909721/plan.json | 212 ++++++ .../7.1.0_1633125909721/spec.json | 151 ++++ .../7.1.0_1633125909721/topology | 25 + .../7.1.0_1633125915420/plan.json | 229 ++++++ .../7.1.0_1633125915420/spec.json | 191 +++++ .../7.1.0_1633125915420/topology | 43 ++ .../7.1.0_1633125909450/plan.json | 212 ++++++ .../7.1.0_1633125909450/spec.json | 169 +++++ .../7.1.0_1633125909450/topology | 25 + .../7.1.0_1633125909571/plan.json | 212 ++++++ .../7.1.0_1633125909571/spec.json | 174 +++++ .../7.1.0_1633125909571/topology | 25 + .../7.1.0_1633125914939/plan.json | 229 ++++++ .../7.1.0_1633125914939/spec.json | 215 ++++++ .../7.1.0_1633125914939/topology | 43 ++ .../7.1.0_1633125915204/plan.json | 229 ++++++ .../7.1.0_1633125915204/spec.json | 222 ++++++ .../7.1.0_1633125915204/topology | 43 ++ .../7.1.0_1633125907667/plan.json | 212 ++++++ .../7.1.0_1633125907667/spec.json | 226 ++++++ .../7.1.0_1633125907667/topology | 25 + .../7.1.0_1633125907820/plan.json | 212 ++++++ .../7.1.0_1633125907820/spec.json | 169 +++++ .../7.1.0_1633125907820/topology | 25 + .../7.1.0_1633125907972/plan.json | 212 ++++++ .../7.1.0_1633125907972/spec.json | 174 +++++ .../7.1.0_1633125907972/topology | 25 + .../7.1.0_1633125911515/plan.json | 229 ++++++ .../7.1.0_1633125911515/spec.json | 304 ++++++++ .../7.1.0_1633125911515/topology | 43 ++ .../7.1.0_1633125911818/plan.json | 229 ++++++ .../7.1.0_1633125911818/spec.json | 215 ++++++ .../7.1.0_1633125911818/topology | 43 ++ .../7.1.0_1633125912101/plan.json | 229 ++++++ .../7.1.0_1633125912101/spec.json | 222 ++++++ .../7.1.0_1633125912101/topology | 43 ++ .../7.1.0_1633125906777/plan.json | 212 ++++++ .../7.1.0_1633125906777/spec.json | 226 ++++++ .../7.1.0_1633125906777/topology | 25 + .../7.1.0_1633125906888/plan.json | 212 ++++++ .../7.1.0_1633125906888/spec.json | 169 +++++ .../7.1.0_1633125906888/topology | 25 + .../7.1.0_1633125907039/plan.json | 212 ++++++ .../7.1.0_1633125907039/spec.json | 174 +++++ .../7.1.0_1633125907039/topology | 25 + .../7.1.0_1633125909854/plan.json | 229 ++++++ .../7.1.0_1633125909854/spec.json | 304 ++++++++ .../7.1.0_1633125909854/topology | 43 ++ .../7.1.0_1633125910162/plan.json | 229 ++++++ .../7.1.0_1633125910162/spec.json | 215 ++++++ .../7.1.0_1633125910162/topology | 43 ++ .../7.1.0_1633125910445/plan.json | 229 ++++++ .../7.1.0_1633125910445/spec.json | 222 ++++++ .../7.1.0_1633125910445/topology | 43 ++ .../7.1.0_1633125907209/plan.json | 212 ++++++ .../7.1.0_1633125907209/spec.json | 226 ++++++ .../7.1.0_1633125907209/topology | 25 + .../7.1.0_1633125907351/plan.json | 212 ++++++ .../7.1.0_1633125907351/spec.json | 169 +++++ .../7.1.0_1633125907351/topology | 25 + .../7.1.0_1633125907506/plan.json | 212 ++++++ .../7.1.0_1633125907506/spec.json | 174 +++++ .../7.1.0_1633125907506/topology | 25 + .../7.1.0_1633125910659/plan.json | 229 ++++++ .../7.1.0_1633125910659/spec.json | 304 ++++++++ .../7.1.0_1633125910659/topology | 43 ++ .../7.1.0_1633125910947/plan.json | 229 ++++++ .../7.1.0_1633125910947/spec.json | 215 ++++++ .../7.1.0_1633125910947/topology | 43 ++ .../7.1.0_1633125911218/plan.json | 229 ++++++ .../7.1.0_1633125911218/spec.json | 222 ++++++ .../7.1.0_1633125911218/topology | 43 ++ .../7.1.0_1633125908115/plan.json | 212 ++++++ .../7.1.0_1633125908115/spec.json | 238 ++++++ .../7.1.0_1633125908115/topology | 25 + .../7.1.0_1633125908277/plan.json | 212 ++++++ .../7.1.0_1633125908277/spec.json | 181 +++++ .../7.1.0_1633125908277/topology | 25 + .../7.1.0_1633125908444/plan.json | 212 ++++++ .../7.1.0_1633125908444/spec.json | 186 +++++ .../7.1.0_1633125908444/topology | 25 + .../7.1.0_1633125912407/plan.json | 229 ++++++ .../7.1.0_1633125912407/spec.json | 322 ++++++++ .../7.1.0_1633125912407/topology | 43 ++ .../7.1.0_1633125912743/plan.json | 229 ++++++ .../7.1.0_1633125912743/spec.json | 233 ++++++ .../7.1.0_1633125912743/topology | 43 ++ .../7.1.0_1633125913052/plan.json | 229 ++++++ .../7.1.0_1633125913052/spec.json | 240 ++++++ .../7.1.0_1633125913052/topology | 43 ++ .../7.1.0_1633125909154/plan.json | 212 ++++++ .../7.1.0_1633125909154/spec.json | 169 +++++ .../7.1.0_1633125909154/topology | 25 + .../7.1.0_1633125909299/plan.json | 212 ++++++ .../7.1.0_1633125909299/spec.json | 174 +++++ .../7.1.0_1633125909299/topology | 25 + .../7.1.0_1633125914412/plan.json | 229 ++++++ .../7.1.0_1633125914412/spec.json | 215 ++++++ .../7.1.0_1633125914412/topology | 43 ++ .../7.1.0_1633125914674/plan.json | 229 ++++++ .../7.1.0_1633125914674/spec.json | 222 ++++++ .../7.1.0_1633125914674/topology | 43 ++ .../7.1.0_1633125908864/plan.json | 212 ++++++ .../7.1.0_1633125908864/spec.json | 169 +++++ .../7.1.0_1633125908864/topology | 25 + .../7.1.0_1633125908994/plan.json | 212 ++++++ .../7.1.0_1633125908994/spec.json | 174 +++++ .../7.1.0_1633125908994/topology | 25 + .../7.1.0_1633125913857/plan.json | 229 ++++++ .../7.1.0_1633125913857/spec.json | 215 ++++++ .../7.1.0_1633125913857/topology | 43 ++ .../7.1.0_1633125914145/plan.json | 229 ++++++ .../7.1.0_1633125914145/spec.json | 222 ++++++ .../7.1.0_1633125914145/topology | 43 ++ .../7.1.0_1633125915591/plan.json | 212 ++++++ .../7.1.0_1633125915591/spec.json | 148 ++++ .../7.1.0_1633125915591/topology | 25 + .../7.1.0_1633125918744/plan.json | 212 ++++++ .../7.1.0_1633125918744/spec.json | 166 ++++ .../7.1.0_1633125918744/topology | 25 + .../7.1.0_1633125918450/plan.json | 212 ++++++ .../7.1.0_1633125918450/spec.json | 169 +++++ .../7.1.0_1633125918450/topology | 25 + .../7.1.0_1633125918579/plan.json | 212 ++++++ .../7.1.0_1633125918579/spec.json | 174 +++++ .../7.1.0_1633125918579/topology | 25 + .../7.1.0_1633125918147/plan.json | 212 ++++++ .../7.1.0_1633125918147/spec.json | 169 +++++ .../7.1.0_1633125918147/topology | 25 + .../7.1.0_1633125918292/plan.json | 212 ++++++ .../7.1.0_1633125918292/spec.json | 174 +++++ .../7.1.0_1633125918292/topology | 25 + .../7.1.0_1633125917879/plan.json | 212 ++++++ .../7.1.0_1633125917879/spec.json | 169 +++++ .../7.1.0_1633125917879/topology | 25 + .../7.1.0_1633125917999/plan.json | 212 ++++++ .../7.1.0_1633125917999/spec.json | 174 +++++ .../7.1.0_1633125917999/topology | 25 + .../7.1.0_1633125917621/plan.json | 212 ++++++ .../7.1.0_1633125917621/spec.json | 169 +++++ .../7.1.0_1633125917621/topology | 25 + .../7.1.0_1633125917747/plan.json | 212 ++++++ .../7.1.0_1633125917747/spec.json | 174 +++++ .../7.1.0_1633125917747/topology | 25 + .../7.1.0_1633125916632/plan.json | 212 ++++++ .../7.1.0_1633125916632/spec.json | 226 ++++++ .../7.1.0_1633125916632/topology | 25 + .../7.1.0_1633125916809/plan.json | 212 ++++++ .../7.1.0_1633125916809/spec.json | 169 +++++ .../7.1.0_1633125916809/topology | 25 + .../7.1.0_1633125916927/plan.json | 212 ++++++ .../7.1.0_1633125916927/spec.json | 174 +++++ .../7.1.0_1633125916927/topology | 25 + .../7.1.0_1633125915717/plan.json | 212 ++++++ .../7.1.0_1633125915717/spec.json | 226 ++++++ .../7.1.0_1633125915717/topology | 25 + .../7.1.0_1633125915869/plan.json | 212 ++++++ .../7.1.0_1633125915869/spec.json | 169 +++++ .../7.1.0_1633125915869/topology | 25 + .../7.1.0_1633125916023/plan.json | 212 ++++++ .../7.1.0_1633125916023/spec.json | 174 +++++ .../7.1.0_1633125916023/topology | 25 + .../7.1.0_1633125916184/plan.json | 212 ++++++ .../7.1.0_1633125916184/spec.json | 226 ++++++ .../7.1.0_1633125916184/topology | 25 + .../7.1.0_1633125916336/plan.json | 212 ++++++ .../7.1.0_1633125916336/spec.json | 169 +++++ .../7.1.0_1633125916336/topology | 25 + .../7.1.0_1633125916473/plan.json | 212 ++++++ .../7.1.0_1633125916473/spec.json | 174 +++++ .../7.1.0_1633125916473/topology | 25 + .../7.1.0_1633125917083/plan.json | 212 ++++++ .../7.1.0_1633125917083/spec.json | 239 ++++++ .../7.1.0_1633125917083/topology | 25 + .../7.1.0_1633125917268/plan.json | 212 ++++++ .../7.1.0_1633125917268/spec.json | 182 +++++ .../7.1.0_1633125917268/topology | 25 + .../7.1.0_1633125917433/plan.json | 212 ++++++ .../7.1.0_1633125917433/spec.json | 187 +++++ .../7.1.0_1633125917433/topology | 25 + .../7.1.0_1633125918866/plan.json | 212 ++++++ .../7.1.0_1633125918866/spec.json | 148 ++++ .../7.1.0_1633125918866/topology | 25 + .../7.1.0_1633125919058/plan.json | 166 ++++ .../7.1.0_1633125919058/spec.json | 149 ++++ .../7.1.0_1633125919058/topology | 13 + .../7.1.0_1633125919096/plan.json | 166 ++++ .../7.1.0_1633125919096/spec.json | 146 ++++ .../7.1.0_1633125919096/topology | 13 + .../7.1.0_1633125918991/plan.json | 166 ++++ .../7.1.0_1633125918991/spec.json | 229 ++++++ .../7.1.0_1633125918991/topology | 13 + .../7.1.0_1633125919159/plan.json | 166 ++++ .../7.1.0_1633125919159/spec.json | 112 +++ .../7.1.0_1633125919159/topology | 13 + .../7.1.0_1633125919189/plan.json | 166 ++++ .../7.1.0_1633125919189/spec.json | 110 +++ .../7.1.0_1633125919189/topology | 13 + .../7.1.0_1633125919175/plan.json | 166 ++++ .../7.1.0_1633125919175/spec.json | 110 +++ .../7.1.0_1633125919175/topology | 13 + .../7.1.0_1633125919143/plan.json | 166 ++++ .../7.1.0_1633125919143/spec.json | 146 ++++ .../7.1.0_1633125919143/topology | 13 + .../7.1.0_1633125919127/plan.json | 166 ++++ .../7.1.0_1633125919127/spec.json | 146 ++++ .../7.1.0_1633125919127/topology | 13 + .../7.1.0_1633125919203/plan.json | 166 ++++ .../7.1.0_1633125919203/spec.json | 110 +++ .../7.1.0_1633125919203/topology | 13 + .../7.1.0_1633125919219/plan.json | 166 ++++ .../7.1.0_1633125919219/spec.json | 98 +++ .../7.1.0_1633125919219/topology | 13 + .../7.1.0_1633125919248/plan.json | 166 ++++ .../7.1.0_1633125919248/spec.json | 110 +++ .../7.1.0_1633125919248/topology | 13 + .../7.1.0_1633125919235/plan.json | 166 ++++ .../7.1.0_1633125919235/spec.json | 110 +++ .../7.1.0_1633125919235/topology | 13 + .../7.1.0_1633125920610/plan.json | 213 ++++++ .../7.1.0_1633125920610/spec.json | 207 +++++ .../7.1.0_1633125920610/topology | 40 + .../7.1.0_1633125920457/plan.json | 212 ++++++ .../7.1.0_1633125920457/spec.json | 168 +++++ .../7.1.0_1633125920457/topology | 40 + .../7.1.0_1633125919270/plan.json | 212 ++++++ .../7.1.0_1633125919270/spec.json | 145 ++++ .../7.1.0_1633125919270/topology | 25 + .../7.1.0_1633125919510/plan.json | 212 ++++++ .../7.1.0_1633125919510/spec.json | 157 ++++ .../7.1.0_1633125919510/topology | 25 + .../7.1.0_1633125919381/plan.json | 212 ++++++ .../7.1.0_1633125919381/spec.json | 145 ++++ .../7.1.0_1633125919381/topology | 25 + .../7.1.0_1633125919666/plan.json | 229 ++++++ .../7.1.0_1633125919666/spec.json | 191 +++++ .../7.1.0_1633125919666/topology | 43 ++ .../7.1.0_1633125919945/plan.json | 229 ++++++ .../7.1.0_1633125919945/spec.json | 187 +++++ .../7.1.0_1633125919945/topology | 43 ++ .../7.1.0_1633125920206/plan.json | 236 ++++++ .../7.1.0_1633125920206/spec.json | 187 +++++ .../7.1.0_1633125920206/topology | 52 ++ .../7.1.0_1633125921069/plan.json | 166 ++++ .../7.1.0_1633125921069/spec.json | 103 +++ .../7.1.0_1633125921069/topology | 13 + .../7.1.0_1633125921171/plan.json | 166 ++++ .../7.1.0_1633125921171/spec.json | 98 +++ .../7.1.0_1633125921171/topology | 13 + .../7.1.0_1633125921147/plan.json | 165 ++++ .../7.1.0_1633125921147/spec.json | 102 +++ .../7.1.0_1633125921147/topology | 13 + .../7.1.0_1633125921134/plan.json | 166 ++++ .../7.1.0_1633125921134/spec.json | 98 +++ .../7.1.0_1633125921134/topology | 13 + .../7.1.0_1633125921189/plan.json | 212 ++++++ .../7.1.0_1633125921189/spec.json | 149 ++++ .../7.1.0_1633125921189/topology | 25 + .../7.1.0_1633125921093/plan.json | 166 ++++ .../7.1.0_1633125921093/spec.json | 102 +++ .../7.1.0_1633125921093/topology | 13 + .../7.1.0_1633125921113/plan.json | 166 ++++ .../7.1.0_1633125921113/spec.json | 101 +++ .../7.1.0_1633125921113/topology | 13 + .../7.1.0_1633125921337/plan.json | 198 +++++ .../7.1.0_1633125921337/spec.json | 138 ++++ .../7.1.0_1633125921337/topology | 22 + .../7.1.0_1633125921275/plan.json | 190 +++++ .../7.1.0_1633125921275/spec.json | 132 ++++ .../7.1.0_1633125921275/topology | 22 + .../7.1.0_1633125920879/plan.json | 166 ++++ .../7.1.0_1633125920879/spec.json | 99 +++ .../7.1.0_1633125920879/topology | 13 + .../7.1.0_1633125920905/plan.json | 165 ++++ .../7.1.0_1633125920905/spec.json | 107 +++ .../7.1.0_1633125920905/topology | 13 + .../7.1.0_1633125920862/plan.json | 166 ++++ .../7.1.0_1633125920862/spec.json | 99 +++ .../7.1.0_1633125920862/topology | 13 + .../7.1.0_1633125920839/plan.json | 166 ++++ .../7.1.0_1633125920839/spec.json | 112 +++ .../7.1.0_1633125920839/topology | 13 + .../7.1.0_1633125920968/plan.json | 166 ++++ .../7.1.0_1633125920968/spec.json | 152 ++++ .../7.1.0_1633125920968/topology | 13 + .../7.1.0_1633125920944/plan.json | 166 ++++ .../7.1.0_1633125920944/spec.json | 103 +++ .../7.1.0_1633125920944/topology | 13 + .../7.1.0_1633125921049/plan.json | 166 ++++ .../7.1.0_1633125921049/spec.json | 102 +++ .../7.1.0_1633125921049/topology | 13 + .../7.1.0_1633125921027/plan.json | 166 ++++ .../7.1.0_1633125921027/spec.json | 103 +++ .../7.1.0_1633125921027/topology | 13 + .../7.1.0_1633125921007/plan.json | 166 ++++ .../7.1.0_1633125921007/spec.json | 103 +++ .../7.1.0_1633125921007/topology | 13 + .../7.1.0_1633125920982/plan.json | 165 ++++ .../7.1.0_1633125920982/spec.json | 122 +++ .../7.1.0_1633125920982/topology | 13 + .../7.1.0_1633125921417/plan.json | 173 +++++ .../7.1.0_1633125921417/spec.json | 142 ++++ .../7.1.0_1633125921417/topology | 16 + .../7.1.0_1633125921456/plan.json | 173 +++++ .../7.1.0_1633125921456/spec.json | 123 +++ .../7.1.0_1633125921456/topology | 16 + .../7.1.0_1633125921436/plan.json | 173 +++++ .../7.1.0_1633125921436/spec.json | 122 +++ .../7.1.0_1633125921436/topology | 16 + .../7.1.0_1633125921393/plan.json | 173 +++++ .../7.1.0_1633125921393/spec.json | 136 ++++ .../7.1.0_1633125921393/topology | 16 + .../7.1.0_1633125921491/plan.json | 166 ++++ .../7.1.0_1633125921491/spec.json | 156 ++++ .../7.1.0_1633125921491/topology | 13 + .../7.1.0_1633125921479/plan.json | 166 ++++ .../7.1.0_1633125921479/spec.json | 102 +++ .../7.1.0_1633125921479/topology | 13 + .../7.1.0_1633125921698/plan.json | 166 ++++ .../7.1.0_1633125921698/spec.json | 212 ++++++ .../7.1.0_1633125921698/topology | 13 + .../7.1.0_1633125921506/plan.json | 166 ++++ .../7.1.0_1633125921506/spec.json | 110 +++ .../7.1.0_1633125921506/topology | 13 + .../7.1.0_1633125921682/plan.json | 166 ++++ .../7.1.0_1633125921682/spec.json | 212 ++++++ .../7.1.0_1633125921682/topology | 13 + .../7.1.0_1633125921519/plan.json | 166 ++++ .../7.1.0_1633125921519/spec.json | 114 +++ .../7.1.0_1633125921519/topology | 13 + .../7.1.0_1633125921766/plan.json | 173 +++++ .../7.1.0_1633125921766/spec.json | 162 ++++ .../7.1.0_1633125921766/topology | 16 + .../7.1.0_1633125921534/plan.json | 166 ++++ .../7.1.0_1633125921534/spec.json | 165 ++++ .../7.1.0_1633125921534/topology | 13 + .../7.1.0_1633125921554/plan.json | 166 ++++ .../7.1.0_1633125921554/spec.json | 182 +++++ .../7.1.0_1633125921554/topology | 13 + .../7.1.0_1633125921577/plan.json | 166 ++++ .../7.1.0_1633125921577/spec.json | 180 +++++ .../7.1.0_1633125921577/topology | 13 + .../7.1.0_1633125921596/plan.json | 166 ++++ .../7.1.0_1633125921596/spec.json | 260 +++++++ .../7.1.0_1633125921596/topology | 13 + .../7.1.0_1633125921782/plan.json | 165 ++++ .../7.1.0_1633125921782/spec.json | 136 ++++ .../7.1.0_1633125921782/topology | 13 + .../7.1.0_1633125921616/plan.json | 166 ++++ .../7.1.0_1633125921616/spec.json | 199 +++++ .../7.1.0_1633125921616/topology | 13 + .../7.1.0_1633125921749/plan.json | 173 +++++ .../7.1.0_1633125921749/spec.json | 156 ++++ .../7.1.0_1633125921749/topology | 16 + .../7.1.0_1633125921732/plan.json | 166 ++++ .../7.1.0_1633125921732/spec.json | 177 +++++ .../7.1.0_1633125921732/topology | 13 + .../7.1.0_1633125921715/plan.json | 166 ++++ .../7.1.0_1633125921715/spec.json | 238 ++++++ .../7.1.0_1633125921715/topology | 13 + .../7.1.0_1633125921649/plan.json | 166 ++++ .../7.1.0_1633125921649/spec.json | 199 +++++ .../7.1.0_1633125921649/topology | 13 + .../7.1.0_1633125921665/plan.json | 166 ++++ .../7.1.0_1633125921665/spec.json | 199 +++++ .../7.1.0_1633125921665/topology | 13 + .../7.1.0_1633125921633/plan.json | 166 ++++ .../7.1.0_1633125921633/spec.json | 199 +++++ .../7.1.0_1633125921633/topology | 13 + .../7.1.0_1633125921802/plan.json | 166 ++++ .../7.1.0_1633125921802/spec.json | 94 +++ .../7.1.0_1633125921802/topology | 13 + .../7.1.0_1633125921816/plan.json | 166 ++++ .../7.1.0_1633125921816/spec.json | 168 +++++ .../7.1.0_1633125921816/topology | 13 + .../7.1.0_1633125921832/plan.json | 166 ++++ .../7.1.0_1633125921832/spec.json | 179 +++++ .../7.1.0_1633125921832/topology | 13 + .../7.1.0_1633125921849/plan.json | 166 ++++ .../7.1.0_1633125921849/spec.json | 151 ++++ .../7.1.0_1633125921849/topology | 13 + .../7.1.0_1633125921898/plan.json | 166 ++++ .../7.1.0_1633125921898/spec.json | 179 +++++ .../7.1.0_1633125921898/topology | 13 + .../7.1.0_1633125921867/plan.json | 166 ++++ .../7.1.0_1633125921867/spec.json | 102 +++ .../7.1.0_1633125921867/topology | 13 + .../7.1.0_1633125921882/plan.json | 166 ++++ .../7.1.0_1633125921882/spec.json | 156 ++++ .../7.1.0_1633125921882/topology | 13 + .../7.1.0_1633125921928/plan.json | 166 ++++ .../7.1.0_1633125921928/spec.json | 158 ++++ .../7.1.0_1633125921928/topology | 13 + .../7.1.0_1633125921986/plan.json | 166 ++++ .../7.1.0_1633125921986/spec.json | 170 +++++ .../7.1.0_1633125921986/topology | 13 + .../7.1.0_1633125921915/plan.json | 166 ++++ .../7.1.0_1633125921915/spec.json | 94 +++ .../7.1.0_1633125921915/topology | 13 + .../7.1.0_1633125922003/plan.json | 166 ++++ .../7.1.0_1633125922003/spec.json | 102 +++ .../7.1.0_1633125922003/topology | 13 + .../7.1.0_1633125922376/plan.json | 166 ++++ .../7.1.0_1633125922376/spec.json | 236 ++++++ .../7.1.0_1633125922376/topology | 13 + .../7.1.0_1633125922030/plan.json | 166 ++++ .../7.1.0_1633125922030/spec.json | 171 +++++ .../7.1.0_1633125922030/topology | 13 + .../7.1.0_1633125921942/plan.json | 166 ++++ .../7.1.0_1633125921942/spec.json | 98 +++ .../7.1.0_1633125921942/topology | 13 + .../7.1.0_1633125921973/plan.json | 166 ++++ .../7.1.0_1633125921973/spec.json | 158 ++++ .../7.1.0_1633125921973/topology | 13 + .../7.1.0_1633125922016/plan.json | 166 ++++ .../7.1.0_1633125922016/spec.json | 110 +++ .../7.1.0_1633125922016/topology | 13 + .../7.1.0_1633125922356/plan.json | 166 ++++ .../7.1.0_1633125922356/spec.json | 236 ++++++ .../7.1.0_1633125922356/topology | 13 + .../7.1.0_1633125921954/plan.json | 166 ++++ .../7.1.0_1633125921954/spec.json | 102 +++ .../7.1.0_1633125921954/topology | 13 + .../7.1.0_1633125922074/plan.json | 166 ++++ .../7.1.0_1633125922074/spec.json | 114 +++ .../7.1.0_1633125922074/topology | 13 + .../7.1.0_1633125922110/plan.json | 166 ++++ .../7.1.0_1633125922110/spec.json | 215 ++++++ .../7.1.0_1633125922110/topology | 13 + .../7.1.0_1633125922168/plan.json | 166 ++++ .../7.1.0_1633125922168/spec.json | 189 +++++ .../7.1.0_1633125922168/topology | 13 + .../7.1.0_1633125922129/plan.json | 166 ++++ .../7.1.0_1633125922129/spec.json | 188 +++++ .../7.1.0_1633125922129/topology | 13 + .../7.1.0_1633125922149/plan.json | 166 ++++ .../7.1.0_1633125922149/spec.json | 193 +++++ .../7.1.0_1633125922149/topology | 13 + .../7.1.0_1633125922221/plan.json | 166 ++++ .../7.1.0_1633125922221/spec.json | 215 ++++++ .../7.1.0_1633125922221/topology | 13 + .../7.1.0_1633125922258/plan.json | 166 ++++ .../7.1.0_1633125922258/spec.json | 223 ++++++ .../7.1.0_1633125922258/topology | 13 + .../7.1.0_1633125922395/plan.json | 166 ++++ .../7.1.0_1633125922395/spec.json | 236 ++++++ .../7.1.0_1633125922395/topology | 13 + .../7.1.0_1633125922298/plan.json | 166 ++++ .../7.1.0_1633125922298/spec.json | 223 ++++++ .../7.1.0_1633125922298/topology | 13 + .../7.1.0_1633125922318/plan.json | 166 ++++ .../7.1.0_1633125922318/spec.json | 223 ++++++ .../7.1.0_1633125922318/topology | 13 + .../7.1.0_1633125922337/plan.json | 166 ++++ .../7.1.0_1633125922337/spec.json | 223 ++++++ .../7.1.0_1633125922337/topology | 13 + .../7.1.0_1633125922415/plan.json | 166 ++++ .../7.1.0_1633125922415/spec.json | 201 +++++ .../7.1.0_1633125922415/topology | 13 + .../7.1.0_1633125922239/plan.json | 166 ++++ .../7.1.0_1633125922239/spec.json | 215 ++++++ .../7.1.0_1633125922239/topology | 13 + .../7.1.0_1633125922202/plan.json | 166 ++++ .../7.1.0_1633125922202/spec.json | 215 ++++++ .../7.1.0_1633125922202/topology | 13 + .../7.1.0_1633125922092/plan.json | 166 ++++ .../7.1.0_1633125922092/spec.json | 158 ++++ .../7.1.0_1633125922092/topology | 13 + .../7.1.0_1633125922279/plan.json | 166 ++++ .../7.1.0_1633125922279/spec.json | 223 ++++++ .../7.1.0_1633125922279/topology | 13 + .../7.1.0_1633125922184/plan.json | 166 ++++ .../7.1.0_1633125922184/spec.json | 215 ++++++ .../7.1.0_1633125922184/topology | 13 + .../7.1.0_1633125922459/plan.json | 166 ++++ .../7.1.0_1633125922459/spec.json | 110 +++ .../7.1.0_1633125922459/topology | 13 + .../7.1.0_1633125922434/plan.json | 166 ++++ .../7.1.0_1633125922434/spec.json | 118 +++ .../7.1.0_1633125922434/topology | 13 + .../7.1.0_1633125922496/plan.json | 166 ++++ .../7.1.0_1633125922496/spec.json | 110 +++ .../7.1.0_1633125922496/topology | 13 + .../7.1.0_1633125922471/plan.json | 166 ++++ .../7.1.0_1633125922471/spec.json | 110 +++ .../7.1.0_1633125922471/topology | 13 + .../7.1.0_1633125922446/plan.json | 166 ++++ .../7.1.0_1633125922446/spec.json | 110 +++ .../7.1.0_1633125922446/topology | 13 + .../7.1.0_1633125922484/plan.json | 166 ++++ .../7.1.0_1633125922484/spec.json | 110 +++ .../7.1.0_1633125922484/topology | 13 + .../7.1.0_1633125922546/plan.json | 168 +++++ .../7.1.0_1633125922546/spec.json | 97 +++ .../7.1.0_1633125922546/topology | 13 + .../7.1.0_1633125922534/plan.json | 166 ++++ .../7.1.0_1633125922534/spec.json | 102 +++ .../7.1.0_1633125922534/topology | 13 + .../7.1.0_1633125922726/plan.json | 165 ++++ .../7.1.0_1633125922726/spec.json | 94 +++ .../7.1.0_1633125922726/topology | 13 + .../7.1.0_1633125922508/plan.json | 166 ++++ .../7.1.0_1633125922508/spec.json | 116 +++ .../7.1.0_1633125922508/topology | 13 + .../7.1.0_1633125922520/plan.json | 184 +++++ .../7.1.0_1633125922520/spec.json | 115 +++ .../7.1.0_1633125922520/topology | 13 + .../7.1.0_1633125922704/plan.json | 230 ++++++ .../7.1.0_1633125922704/spec.json | 146 ++++ .../7.1.0_1633125922704/topology | 13 + .../7.1.0_1633125922558/plan.json | 166 ++++ .../7.1.0_1633125922558/spec.json | 126 ++++ .../7.1.0_1633125922558/topology | 13 + .../7.1.0_1633125922591/plan.json | 172 +++++ .../7.1.0_1633125922591/spec.json | 124 +++ .../7.1.0_1633125922591/topology | 13 + .../7.1.0_1633125922575/plan.json | 172 +++++ .../7.1.0_1633125922575/spec.json | 106 +++ .../7.1.0_1633125922575/topology | 13 + .../7.1.0_1633125922610/plan.json | 172 +++++ .../7.1.0_1633125922610/spec.json | 107 +++ .../7.1.0_1633125922610/topology | 13 + .../7.1.0_1633125922648/plan.json | 178 +++++ .../7.1.0_1633125922648/spec.json | 138 ++++ .../7.1.0_1633125922648/topology | 13 + .../7.1.0_1633125922667/plan.json | 178 +++++ .../7.1.0_1633125922667/spec.json | 138 ++++ .../7.1.0_1633125922667/topology | 13 + .../7.1.0_1633125922686/plan.json | 178 +++++ .../7.1.0_1633125922686/spec.json | 138 ++++ .../7.1.0_1633125922686/topology | 13 + .../7.1.0_1633125922629/plan.json | 178 +++++ .../7.1.0_1633125922629/spec.json | 138 ++++ .../7.1.0_1633125922629/topology | 13 + .../7.1.0_1633125922738/plan.json | 192 +++++ .../7.1.0_1633125922738/spec.json | 94 +++ .../7.1.0_1633125922738/topology | 13 + .../7.1.0_1633125922751/plan.json | 173 +++++ .../7.1.0_1633125922751/spec.json | 94 +++ .../7.1.0_1633125922751/topology | 13 + .../7.1.0_1633125922763/plan.json | 192 +++++ .../7.1.0_1633125922763/spec.json | 94 +++ .../7.1.0_1633125922763/topology | 13 + .../7.1.0_1633125922777/plan.json | 212 ++++++ .../7.1.0_1633125922777/spec.json | 233 ++++++ .../7.1.0_1633125922777/topology | 25 + .../7.1.0_1633125923754/plan.json | 212 ++++++ .../7.1.0_1633125923754/spec.json | 145 ++++ .../7.1.0_1633125923754/topology | 25 + .../7.1.0_1633125923823/plan.json | 212 ++++++ .../7.1.0_1633125923823/spec.json | 221 ++++++ .../7.1.0_1633125923823/topology | 25 + .../7.1.0_1633125924056/plan.json | 212 ++++++ .../7.1.0_1633125924056/spec.json | 145 ++++ .../7.1.0_1633125924056/topology | 25 + .../7.1.0_1633125923953/plan.json | 212 ++++++ .../7.1.0_1633125923953/spec.json | 145 ++++ .../7.1.0_1633125923953/topology | 25 + .../7.1.0_1633125924189/plan.json | 216 ++++++ .../7.1.0_1633125924189/spec.json | 208 +++++ .../7.1.0_1633125924189/topology | 28 + .../7.1.0_1633125924532/plan.json | 216 ++++++ .../7.1.0_1633125924532/spec.json | 208 +++++ .../7.1.0_1633125924532/topology | 28 + .../7.1.0_1633125924816/plan.json | 216 ++++++ .../7.1.0_1633125924816/spec.json | 208 +++++ .../7.1.0_1633125924816/topology | 28 + .../7.1.0_1633125924324/plan.json | 216 ++++++ .../7.1.0_1633125924324/spec.json | 208 +++++ .../7.1.0_1633125924324/topology | 28 + .../7.1.0_1633125924629/plan.json | 216 ++++++ .../7.1.0_1633125924629/spec.json | 208 +++++ .../7.1.0_1633125924629/topology | 28 + .../7.1.0_1633125924434/plan.json | 216 ++++++ .../7.1.0_1633125924434/spec.json | 208 +++++ .../7.1.0_1633125924434/topology | 28 + .../7.1.0_1633125924720/plan.json | 216 ++++++ .../7.1.0_1633125924720/spec.json | 208 +++++ .../7.1.0_1633125924720/topology | 28 + .../7.1.0_1633125923053/plan.json | 212 ++++++ .../7.1.0_1633125923053/spec.json | 145 ++++ .../7.1.0_1633125923053/topology | 25 + .../7.1.0_1633125923289/plan.json | 212 ++++++ .../7.1.0_1633125923289/spec.json | 145 ++++ .../7.1.0_1633125923289/topology | 25 + .../7.1.0_1633125922936/plan.json | 212 ++++++ .../7.1.0_1633125922936/spec.json | 145 ++++ .../7.1.0_1633125922936/topology | 25 + .../7.1.0_1633125923166/plan.json | 212 ++++++ .../7.1.0_1633125923166/spec.json | 145 ++++ .../7.1.0_1633125923166/topology | 25 + .../7.1.0_1633125923674/plan.json | 212 ++++++ .../7.1.0_1633125923674/spec.json | 157 ++++ .../7.1.0_1633125923674/topology | 25 + .../7.1.0_1633125923598/plan.json | 212 ++++++ .../7.1.0_1633125923598/spec.json | 157 ++++ .../7.1.0_1633125923598/topology | 25 + .../7.1.0_1633125923518/plan.json | 212 ++++++ .../7.1.0_1633125923518/spec.json | 157 ++++ .../7.1.0_1633125923518/topology | 25 + .../7.1.0_1633125923421/plan.json | 212 ++++++ .../7.1.0_1633125923421/spec.json | 157 ++++ .../7.1.0_1633125923421/topology | 25 + .../7.1.0_1633125926414/plan.json | 166 ++++ .../7.1.0_1633125926414/spec.json | 98 +++ .../7.1.0_1633125926414/topology | 13 + .../7.1.0_1633125925793/plan.json | 264 +++++++ .../7.1.0_1633125925793/spec.json | 235 ++++++ .../7.1.0_1633125925793/topology | 39 + .../7.1.0_1633125925982/plan.json | 244 ++++++ .../7.1.0_1633125925982/spec.json | 174 +++++ .../7.1.0_1633125925982/topology | 39 + .../7.1.0_1633125926101/plan.json | 244 ++++++ .../7.1.0_1633125926101/spec.json | 174 +++++ .../7.1.0_1633125926101/topology | 39 + .../7.1.0_1633125926247/plan.json | 244 ++++++ .../7.1.0_1633125926247/spec.json | 176 +++++ .../7.1.0_1633125926247/topology | 39 + .../7.1.0_1633125925768/plan.json | 175 +++++ .../7.1.0_1633125925768/spec.json | 127 ++++ .../7.1.0_1633125925768/topology | 13 + .../7.1.0_1633125925944/plan.json | 166 ++++ .../7.1.0_1633125925944/spec.json | 98 +++ .../7.1.0_1633125925944/topology | 13 + .../7.1.0_1633125926354/plan.json | 166 ++++ .../7.1.0_1633125926354/spec.json | 98 +++ .../7.1.0_1633125926354/topology | 13 + .../7.1.0_1633125926366/plan.json | 166 ++++ .../7.1.0_1633125926366/spec.json | 102 +++ .../7.1.0_1633125926366/topology | 13 + .../7.1.0_1633125926388/plan.json | 166 ++++ .../7.1.0_1633125926388/spec.json | 103 +++ .../7.1.0_1633125926388/topology | 13 + .../7.1.0_1633125926428/plan.json | 165 ++++ .../7.1.0_1633125926428/spec.json | 114 +++ .../7.1.0_1633125926428/topology | 13 + .../7.1.0_1633125925751/plan.json | 166 ++++ .../7.1.0_1633125925751/spec.json | 131 ++++ .../7.1.0_1633125925751/topology | 13 + .../7.1.0_1633125925602/plan.json | 165 ++++ .../7.1.0_1633125925602/spec.json | 140 ++++ .../7.1.0_1633125925602/topology | 13 + .../7.1.0_1633125925573/plan.json | 165 ++++ .../7.1.0_1633125925573/spec.json | 98 +++ .../7.1.0_1633125925573/topology | 13 + .../7.1.0_1633125925585/plan.json | 165 ++++ .../7.1.0_1633125925585/spec.json | 162 ++++ .../7.1.0_1633125925585/topology | 13 + .../7.1.0_1633125925617/plan.json | 165 ++++ .../7.1.0_1633125925617/spec.json | 102 +++ .../7.1.0_1633125925617/topology | 13 + .../7.1.0_1633125925360/plan.json | 166 ++++ .../7.1.0_1633125925360/spec.json | 131 ++++ .../7.1.0_1633125925360/topology | 13 + .../7.1.0_1633125925295/plan.json | 166 ++++ .../7.1.0_1633125925295/spec.json | 94 +++ .../7.1.0_1633125925295/topology | 13 + .../7.1.0_1633125925318/plan.json | 166 ++++ .../7.1.0_1633125925318/spec.json | 98 +++ .../7.1.0_1633125925318/topology | 13 + .../7.1.0_1633125925342/plan.json | 166 ++++ .../7.1.0_1633125925342/spec.json | 141 ++++ .../7.1.0_1633125925342/topology | 13 + .../7.1.0_1633125925306/plan.json | 166 ++++ .../7.1.0_1633125925306/spec.json | 94 +++ .../7.1.0_1633125925306/topology | 13 + .../7.1.0_1633125925373/plan.json | 166 ++++ .../7.1.0_1633125925373/spec.json | 102 +++ .../7.1.0_1633125925373/topology | 13 + .../7.1.0_1633125925191/plan.json | 166 ++++ .../7.1.0_1633125925191/spec.json | 131 ++++ .../7.1.0_1633125925191/topology | 13 + .../7.1.0_1633125925150/plan.json | 166 ++++ .../7.1.0_1633125925150/spec.json | 94 +++ .../7.1.0_1633125925150/topology | 13 + .../7.1.0_1633125925163/plan.json | 166 ++++ .../7.1.0_1633125925163/spec.json | 98 +++ .../7.1.0_1633125925163/topology | 13 + .../7.1.0_1633125925175/plan.json | 166 ++++ .../7.1.0_1633125925175/spec.json | 138 ++++ .../7.1.0_1633125925175/topology | 13 + .../7.1.0_1633125925204/plan.json | 166 ++++ .../7.1.0_1633125925204/spec.json | 102 +++ .../7.1.0_1633125925204/topology | 13 + .../7.1.0_1633125925465/plan.json | 165 ++++ .../7.1.0_1633125925465/spec.json | 98 +++ .../7.1.0_1633125925465/topology | 13 + .../7.1.0_1633125925476/plan.json | 165 ++++ .../7.1.0_1633125925476/spec.json | 159 ++++ .../7.1.0_1633125925476/topology | 13 + .../7.1.0_1633125925438/plan.json | 166 ++++ .../7.1.0_1633125925438/spec.json | 131 ++++ .../7.1.0_1633125925438/topology | 13 + .../7.1.0_1633125925387/plan.json | 166 ++++ .../7.1.0_1633125925387/spec.json | 94 +++ .../7.1.0_1633125925387/topology | 13 + .../7.1.0_1633125925411/plan.json | 166 ++++ .../7.1.0_1633125925411/spec.json | 98 +++ .../7.1.0_1633125925411/topology | 13 + .../7.1.0_1633125925423/plan.json | 166 ++++ .../7.1.0_1633125925423/spec.json | 141 ++++ .../7.1.0_1633125925423/topology | 13 + .../7.1.0_1633125925399/plan.json | 166 ++++ .../7.1.0_1633125925399/spec.json | 94 +++ .../7.1.0_1633125925399/topology | 13 + .../7.1.0_1633125925452/plan.json | 166 ++++ .../7.1.0_1633125925452/spec.json | 102 +++ .../7.1.0_1633125925452/topology | 13 + .../7.1.0_1633125925268/plan.json | 166 ++++ .../7.1.0_1633125925268/spec.json | 131 ++++ .../7.1.0_1633125925268/topology | 13 + .../7.1.0_1633125925217/plan.json | 166 ++++ .../7.1.0_1633125925217/spec.json | 94 +++ .../7.1.0_1633125925217/topology | 13 + .../7.1.0_1633125925240/plan.json | 166 ++++ .../7.1.0_1633125925240/spec.json | 98 +++ .../7.1.0_1633125925240/topology | 13 + .../7.1.0_1633125925252/plan.json | 166 ++++ .../7.1.0_1633125925252/spec.json | 141 ++++ .../7.1.0_1633125925252/topology | 13 + .../7.1.0_1633125925229/plan.json | 166 ++++ .../7.1.0_1633125925229/spec.json | 94 +++ .../7.1.0_1633125925229/topology | 13 + .../7.1.0_1633125925282/plan.json | 166 ++++ .../7.1.0_1633125925282/spec.json | 102 +++ .../7.1.0_1633125925282/topology | 13 + .../7.1.0_1633125925644/plan.json | 165 ++++ .../7.1.0_1633125925644/spec.json | 185 +++++ .../7.1.0_1633125925644/topology | 13 + .../7.1.0_1633125925631/plan.json | 165 ++++ .../7.1.0_1633125925631/spec.json | 102 +++ .../7.1.0_1633125925631/topology | 13 + .../7.1.0_1633125925659/plan.json | 165 ++++ .../7.1.0_1633125925659/spec.json | 106 +++ .../7.1.0_1633125925659/topology | 13 + .../7.1.0_1633125925545/plan.json | 166 ++++ .../7.1.0_1633125925545/spec.json | 131 ++++ .../7.1.0_1633125925545/topology | 13 + .../7.1.0_1633125925492/plan.json | 166 ++++ .../7.1.0_1633125925492/spec.json | 94 +++ .../7.1.0_1633125925492/topology | 13 + .../7.1.0_1633125925515/plan.json | 166 ++++ .../7.1.0_1633125925515/spec.json | 98 +++ .../7.1.0_1633125925515/topology | 13 + .../7.1.0_1633125925528/plan.json | 166 ++++ .../7.1.0_1633125925528/spec.json | 138 ++++ .../7.1.0_1633125925528/topology | 13 + .../7.1.0_1633125925504/plan.json | 166 ++++ .../7.1.0_1633125925504/spec.json | 94 +++ .../7.1.0_1633125925504/topology | 13 + .../7.1.0_1633125925559/plan.json | 166 ++++ .../7.1.0_1633125925559/spec.json | 102 +++ .../7.1.0_1633125925559/topology | 13 + .../7.1.0_1633125925722/plan.json | 165 ++++ .../7.1.0_1633125925722/spec.json | 175 +++++ .../7.1.0_1633125925722/topology | 13 + .../7.1.0_1633125925673/plan.json | 165 ++++ .../7.1.0_1633125925673/spec.json | 104 +++ .../7.1.0_1633125925673/topology | 13 + .../7.1.0_1633125925686/plan.json | 165 ++++ .../7.1.0_1633125925686/spec.json | 201 +++++ .../7.1.0_1633125925686/topology | 13 + .../7.1.0_1633125925738/plan.json | 165 ++++ .../7.1.0_1633125925738/spec.json | 108 +++ .../7.1.0_1633125925738/topology | 13 + .../7.1.0_1633125924963/plan.json | 167 ++++ .../7.1.0_1633125924963/spec.json | 120 +++ .../7.1.0_1633125924963/topology | 13 + .../7.1.0_1633125925136/plan.json | 166 ++++ .../7.1.0_1633125925136/spec.json | 126 ++++ .../7.1.0_1633125925136/topology | 13 + .../7.1.0_1633125925110/plan.json | 166 ++++ .../7.1.0_1633125925110/spec.json | 98 +++ .../7.1.0_1633125925110/topology | 13 + .../7.1.0_1633125925122/plan.json | 166 ++++ .../7.1.0_1633125925122/spec.json | 102 +++ .../7.1.0_1633125925122/topology | 13 + .../7.1.0_1633125924934/plan.json | 165 ++++ .../7.1.0_1633125924934/spec.json | 126 ++++ .../7.1.0_1633125924934/topology | 13 + .../7.1.0_1633125924997/plan.json | 165 ++++ .../7.1.0_1633125924997/spec.json | 129 ++++ .../7.1.0_1633125924997/topology | 13 + .../7.1.0_1633125924981/plan.json | 165 ++++ .../7.1.0_1633125924981/spec.json | 102 +++ .../7.1.0_1633125924981/topology | 13 + .../7.1.0_1633125925049/plan.json | 166 ++++ .../7.1.0_1633125925049/spec.json | 126 ++++ .../7.1.0_1633125925049/topology | 13 + .../7.1.0_1633125925077/plan.json | 166 ++++ .../7.1.0_1633125925077/spec.json | 129 ++++ .../7.1.0_1633125925077/topology | 13 + .../7.1.0_1633125925063/plan.json | 166 ++++ .../7.1.0_1633125925063/spec.json | 102 +++ .../7.1.0_1633125925063/topology | 13 + .../7.1.0_1633125925093/plan.json | 166 ++++ .../7.1.0_1633125925093/spec.json | 129 ++++ .../7.1.0_1633125925093/topology | 13 + .../7.1.0_1633125925032/plan.json | 165 ++++ .../7.1.0_1633125925032/spec.json | 100 +++ .../7.1.0_1633125925032/topology | 13 + .../7.1.0_1633125926476/plan.json | 166 ++++ .../7.1.0_1633125926476/spec.json | 146 ++++ .../7.1.0_1633125926476/topology | 13 + .../7.1.0_1633125926445/plan.json | 166 ++++ .../7.1.0_1633125926445/spec.json | 114 +++ .../7.1.0_1633125926445/topology | 13 + .../7.1.0_1633125926462/plan.json | 166 ++++ .../7.1.0_1633125926462/spec.json | 146 ++++ .../7.1.0_1633125926462/topology | 13 + .../7.1.0_1633125926517/plan.json | 166 ++++ .../7.1.0_1633125926517/spec.json | 128 ++++ .../7.1.0_1633125926517/topology | 13 + .../7.1.0_1633125926538/plan.json | 166 ++++ .../7.1.0_1633125926538/spec.json | 128 ++++ .../7.1.0_1633125926538/topology | 13 + .../7.1.0_1633125926490/plan.json | 166 ++++ .../7.1.0_1633125926490/spec.json | 310 ++++++++ .../7.1.0_1633125926490/topology | 13 + .../7.1.0_1633125926558/plan.json | 166 ++++ .../7.1.0_1633125926558/spec.json | 114 +++ .../7.1.0_1633125926558/topology | 13 + .../7.1.0_1633125926644/plan.json | 173 +++++ .../7.1.0_1633125926644/spec.json | 140 ++++ .../7.1.0_1633125926644/topology | 16 + .../7.1.0_1633125926657/plan.json | 173 +++++ .../7.1.0_1633125926657/spec.json | 134 ++++ .../7.1.0_1633125926657/topology | 16 + .../7.1.0_1633125926580/plan.json | 173 +++++ .../7.1.0_1633125926580/spec.json | 170 +++++ .../7.1.0_1633125926580/topology | 16 + .../7.1.0_1633125926615/plan.json | 173 +++++ .../7.1.0_1633125926615/spec.json | 119 +++ .../7.1.0_1633125926615/topology | 16 + .../7.1.0_1633125926594/plan.json | 173 +++++ .../7.1.0_1633125926594/spec.json | 110 +++ .../7.1.0_1633125926594/topology | 16 + .../7.1.0_1633125926711/plan.json | 166 ++++ .../7.1.0_1633125926711/spec.json | 110 +++ .../7.1.0_1633125926711/topology | 13 + .../7.1.0_1633125926672/plan.json | 166 ++++ .../7.1.0_1633125926672/spec.json | 114 +++ .../7.1.0_1633125926672/topology | 13 + .../7.1.0_1633125926693/plan.json | 166 ++++ .../7.1.0_1633125926693/spec.json | 125 +++ .../7.1.0_1633125926693/topology | 13 + .../7.1.0_1633125926821/plan.json | 166 ++++ .../7.1.0_1633125926821/spec.json | 246 ++++++ .../7.1.0_1633125926821/topology | 13 + .../7.1.0_1633125926730/plan.json | 166 ++++ .../7.1.0_1633125926730/spec.json | 122 +++ .../7.1.0_1633125926730/topology | 13 + .../7.1.0_1633125926769/plan.json | 166 ++++ .../7.1.0_1633125926769/spec.json | 164 ++++ .../7.1.0_1633125926769/topology | 13 + .../7.1.0_1633125926747/plan.json | 166 ++++ .../7.1.0_1633125926747/spec.json | 191 +++++ .../7.1.0_1633125926747/topology | 13 + .../7.1.0_1633125926793/plan.json | 166 ++++ .../7.1.0_1633125926793/spec.json | 255 +++++++ .../7.1.0_1633125926793/topology | 13 + .../7.1.0_1633125936768/plan.json | 278 +++++++ .../7.1.0_1633125936768/spec.json | 296 ++++++++ .../7.1.0_1633125936768/topology | 67 ++ .../7.1.0_1633125936258/plan.json | 310 ++++++++ .../7.1.0_1633125936258/spec.json | 432 +++++++++++ .../7.1.0_1633125936258/topology | 67 ++ .../7.1.0_1633125935286/plan.json | 278 +++++++ .../7.1.0_1633125935286/spec.json | 296 ++++++++ .../7.1.0_1633125935286/topology | 67 ++ .../7.1.0_1633125935764/plan.json | 274 +++++++ .../7.1.0_1633125935764/spec.json | 290 +++++++ .../7.1.0_1633125935764/topology | 67 ++ .../7.1.0_1633125933429/plan.json | 274 +++++++ .../7.1.0_1633125933429/spec.json | 286 +++++++ .../7.1.0_1633125933429/topology | 67 ++ .../7.1.0_1633125933809/plan.json | 274 +++++++ .../7.1.0_1633125933809/spec.json | 234 ++++++ .../7.1.0_1633125933809/topology | 67 ++ .../7.1.0_1633125932285/plan.json | 274 +++++++ .../7.1.0_1633125932285/spec.json | 289 +++++++ .../7.1.0_1633125932285/topology | 67 ++ .../7.1.0_1633125932781/plan.json | 274 +++++++ .../7.1.0_1633125932781/spec.json | 342 +++++++++ .../7.1.0_1633125932781/topology | 67 ++ .../7.1.0_1633125927928/plan.json | 278 +++++++ .../7.1.0_1633125927928/spec.json | 325 ++++++++ .../7.1.0_1633125927928/topology | 67 ++ .../7.1.0_1633125926849/plan.json | 274 +++++++ .../7.1.0_1633125926849/spec.json | 289 +++++++ .../7.1.0_1633125926849/topology | 67 ++ .../7.1.0_1633125929052/plan.json | 274 +++++++ .../7.1.0_1633125929052/spec.json | 289 +++++++ .../7.1.0_1633125929052/topology | 67 ++ .../7.1.0_1633125928409/plan.json | 278 +++++++ .../7.1.0_1633125928409/spec.json | 396 ++++++++++ .../7.1.0_1633125928409/topology | 67 ++ .../7.1.0_1633125927348/plan.json | 274 +++++++ .../7.1.0_1633125927348/spec.json | 342 +++++++++ .../7.1.0_1633125927348/topology | 67 ++ .../7.1.0_1633125929645/plan.json | 274 +++++++ .../7.1.0_1633125929645/spec.json | 342 +++++++++ .../7.1.0_1633125929645/topology | 67 ++ .../7.1.0_1633125930417/plan.json | 274 +++++++ .../7.1.0_1633125930417/spec.json | 289 +++++++ .../7.1.0_1633125930417/topology | 67 ++ .../7.1.0_1633125931618/plan.json | 274 +++++++ .../7.1.0_1633125931618/spec.json | 289 +++++++ .../7.1.0_1633125931618/topology | 67 ++ .../7.1.0_1633125931056/plan.json | 274 +++++++ .../7.1.0_1633125931056/spec.json | 289 +++++++ .../7.1.0_1633125931056/topology | 67 ++ .../7.1.0_1633125934862/plan.json | 274 +++++++ .../7.1.0_1633125934862/spec.json | 266 +++++++ .../7.1.0_1633125934862/topology | 67 ++ .../7.1.0_1633125934541/plan.json | 274 +++++++ .../7.1.0_1633125934541/spec.json | 232 ++++++ .../7.1.0_1633125934541/topology | 67 ++ .../7.1.0_1633125934144/plan.json | 274 +++++++ .../7.1.0_1633125934144/spec.json | 258 +++++++ .../7.1.0_1633125934144/topology | 67 ++ .../7.1.0_1633125937284/plan.json | 358 +++++++++ .../7.1.0_1633125937284/spec.json | 365 +++++++++ .../7.1.0_1633125937284/topology | 90 +++ .../7.1.0_1633125938487/plan.json | 358 +++++++++ .../7.1.0_1633125938487/spec.json | 365 +++++++++ .../7.1.0_1633125938487/topology | 90 +++ .../7.1.0_1633125939671/plan.json | 358 +++++++++ .../7.1.0_1633125939671/spec.json | 368 +++++++++ .../7.1.0_1633125939671/topology | 90 +++ .../7.1.0_1633125939062/plan.json | 358 +++++++++ .../7.1.0_1633125939062/spec.json | 371 +++++++++ .../7.1.0_1633125939062/topology | 90 +++ .../7.1.0_1633125940079/plan.json | 358 +++++++++ .../7.1.0_1633125940079/spec.json | 365 +++++++++ .../7.1.0_1633125940079/topology | 90 +++ .../7.1.0_1633125937862/plan.json | 358 +++++++++ .../7.1.0_1633125937862/spec.json | 359 +++++++++ .../7.1.0_1633125937862/topology | 90 +++ .../7.1.0_1633125940457/plan.json | 173 +++++ .../7.1.0_1633125940457/spec.json | 134 ++++ .../7.1.0_1633125940457/topology | 16 + .../7.1.0_1633125940473/plan.json | 173 +++++ .../7.1.0_1633125940473/spec.json | 134 ++++ .../7.1.0_1633125940473/topology | 16 + .../7.1.0_1633125940577/plan.json | 166 ++++ .../7.1.0_1633125940577/spec.json | 151 ++++ .../7.1.0_1633125940577/topology | 13 + .../7.1.0_1633125940857/plan.json | 166 ++++ .../7.1.0_1633125940857/spec.json | 137 ++++ .../7.1.0_1633125940857/topology | 13 + .../7.1.0_1633125940641/plan.json | 166 ++++ .../7.1.0_1633125940641/spec.json | 97 +++ .../7.1.0_1633125940641/topology | 13 + .../7.1.0_1633125940592/plan.json | 166 ++++ .../7.1.0_1633125940592/spec.json | 101 +++ .../7.1.0_1633125940592/topology | 13 + .../7.1.0_1633125940618/plan.json | 166 ++++ .../7.1.0_1633125940618/spec.json | 101 +++ .../7.1.0_1633125940618/topology | 13 + .../7.1.0_1633125940629/plan.json | 166 ++++ .../7.1.0_1633125940629/spec.json | 101 +++ .../7.1.0_1633125940629/topology | 13 + .../7.1.0_1633125940605/plan.json | 166 ++++ .../7.1.0_1633125940605/spec.json | 101 +++ .../7.1.0_1633125940605/topology | 13 + .../7.1.0_1633125940745/plan.json | 168 +++++ .../7.1.0_1633125940745/spec.json | 123 +++ .../7.1.0_1633125940745/topology | 13 + .../7.1.0_1633125940776/plan.json | 184 +++++ .../7.1.0_1633125940776/spec.json | 167 ++++ .../7.1.0_1633125940776/topology | 22 + .../7.1.0_1633125940652/plan.json | 168 +++++ .../7.1.0_1633125940652/spec.json | 100 +++ .../7.1.0_1633125940652/topology | 13 + .../7.1.0_1633125940663/plan.json | 184 +++++ .../7.1.0_1633125940663/spec.json | 126 ++++ .../7.1.0_1633125940663/topology | 22 + .../7.1.0_1633125940895/plan.json | 166 ++++ .../7.1.0_1633125940895/spec.json | 110 +++ .../7.1.0_1633125940895/topology | 13 + .../7.1.0_1633125940910/plan.json | 166 ++++ .../7.1.0_1633125940910/spec.json | 110 +++ .../7.1.0_1633125940910/topology | 13 + .../7.1.0_1633125940924/plan.json | 166 ++++ .../7.1.0_1633125940924/spec.json | 245 ++++++ .../7.1.0_1633125940924/topology | 13 + .../7.1.0_1633125940944/plan.json | 166 ++++ .../7.1.0_1633125940944/spec.json | 137 ++++ .../7.1.0_1633125940944/topology | 13 + .../7.1.0_1633125940981/plan.json | 172 +++++ .../7.1.0_1633125940981/spec.json | 96 +++ .../7.1.0_1633125940981/topology | 16 + .../7.1.0_1633125941096/plan.json | 166 ++++ .../7.1.0_1633125941096/spec.json | 99 +++ .../7.1.0_1633125941096/topology | 13 + .../7.1.0_1633125941023/plan.json | 166 ++++ .../7.1.0_1633125941023/spec.json | 100 +++ .../7.1.0_1633125941023/topology | 13 + .../7.1.0_1633125941042/plan.json | 166 ++++ .../7.1.0_1633125941042/spec.json | 100 +++ .../7.1.0_1633125941042/topology | 13 + .../7.1.0_1633125941059/plan.json | 166 ++++ .../7.1.0_1633125941059/spec.json | 100 +++ .../7.1.0_1633125941059/topology | 13 + .../7.1.0_1633125941007/plan.json | 166 ++++ .../7.1.0_1633125941007/spec.json | 100 +++ .../7.1.0_1633125941007/topology | 13 + .../7.1.0_1633125941110/plan.json | 166 ++++ .../7.1.0_1633125941110/spec.json | 131 ++++ .../7.1.0_1633125941110/topology | 13 + .../7.1.0_1633125941075/plan.json | 166 ++++ .../7.1.0_1633125941075/spec.json | 128 ++++ .../7.1.0_1633125941075/topology | 13 + .../7.1.0_1633125962363/plan.json | 241 ++++++ .../7.1.0_1633125962363/spec.json | 333 ++++++++ .../7.1.0_1633125962363/topology | 40 + .../7.1.0_1633125962069/plan.json | 241 ++++++ .../7.1.0_1633125962069/spec.json | 268 +++++++ .../7.1.0_1633125962069/topology | 40 + .../7.1.0_1633125962230/plan.json | 241 ++++++ .../7.1.0_1633125962230/spec.json | 290 +++++++ .../7.1.0_1633125962230/topology | 40 + .../7.1.0_1633125962545/plan.json | 220 ++++++ .../7.1.0_1633125962545/spec.json | 178 +++++ .../7.1.0_1633125962545/topology | 40 + .../7.1.0_1633125962642/plan.json | 220 ++++++ .../7.1.0_1633125962642/spec.json | 187 +++++ .../7.1.0_1633125962642/topology | 40 + .../7.1.0_1633125962738/plan.json | 226 ++++++ .../7.1.0_1633125962738/spec.json | 207 +++++ .../7.1.0_1633125962738/topology | 40 + .../7.1.0_1633125954315/plan.json | 213 ++++++ .../7.1.0_1633125954315/spec.json | 139 ++++ .../7.1.0_1633125954315/topology | 40 + .../7.1.0_1633125962831/plan.json | 219 ++++++ .../7.1.0_1633125962831/spec.json | 162 ++++ .../7.1.0_1633125962831/topology | 25 + .../7.1.0_1633125958937/plan.json | 213 ++++++ .../7.1.0_1633125958937/spec.json | 169 +++++ .../7.1.0_1633125958937/topology | 40 + .../7.1.0_1633125959118/plan.json | 229 ++++++ .../7.1.0_1633125959118/spec.json | 207 +++++ .../7.1.0_1633125959118/topology | 43 ++ .../7.1.0_1633125959430/plan.json | 213 ++++++ .../7.1.0_1633125959430/spec.json | 169 +++++ .../7.1.0_1633125959430/topology | 40 + .../7.1.0_1633125956363/plan.json | 213 ++++++ .../7.1.0_1633125956363/spec.json | 161 ++++ .../7.1.0_1633125956363/topology | 40 + .../7.1.0_1633125956570/plan.json | 229 ++++++ .../7.1.0_1633125956570/spec.json | 199 +++++ .../7.1.0_1633125956570/topology | 43 ++ .../7.1.0_1633125943942/plan.json | 213 ++++++ .../7.1.0_1633125943942/spec.json | 185 +++++ .../7.1.0_1633125943942/topology | 40 + .../7.1.0_1633125960178/plan.json | 213 ++++++ .../7.1.0_1633125960178/spec.json | 153 ++++ .../7.1.0_1633125960178/topology | 40 + .../7.1.0_1633125947258/plan.json | 215 ++++++ .../7.1.0_1633125947258/spec.json | 177 +++++ .../7.1.0_1633125947258/topology | 40 + .../7.1.0_1633125947411/plan.json | 213 ++++++ .../7.1.0_1633125947411/spec.json | 165 ++++ .../7.1.0_1633125947411/topology | 40 + .../7.1.0_1633125947527/plan.json | 222 ++++++ .../7.1.0_1633125947527/spec.json | 168 +++++ .../7.1.0_1633125947527/topology | 49 ++ .../7.1.0_1633125954434/plan.json | 213 ++++++ .../7.1.0_1633125954434/spec.json | 169 +++++ .../7.1.0_1633125954434/topology | 40 + .../7.1.0_1633125954665/plan.json | 229 ++++++ .../7.1.0_1633125954665/spec.json | 199 +++++ .../7.1.0_1633125954665/topology | 43 ++ .../7.1.0_1633125951212/plan.json | 213 ++++++ .../7.1.0_1633125951212/spec.json | 169 +++++ .../7.1.0_1633125951212/topology | 40 + .../7.1.0_1633125958648/plan.json | 213 ++++++ .../7.1.0_1633125958648/spec.json | 177 +++++ .../7.1.0_1633125958648/topology | 40 + .../7.1.0_1633125958782/plan.json | 213 ++++++ .../7.1.0_1633125958782/spec.json | 174 +++++ .../7.1.0_1633125958782/topology | 40 + .../7.1.0_1633125944096/plan.json | 213 ++++++ .../7.1.0_1633125944096/spec.json | 180 +++++ .../7.1.0_1633125944096/topology | 40 + .../7.1.0_1633125947956/plan.json | 212 ++++++ .../7.1.0_1633125947956/spec.json | 161 ++++ .../7.1.0_1633125947956/topology | 25 + .../7.1.0_1633125948095/plan.json | 212 ++++++ .../7.1.0_1633125948095/spec.json | 232 ++++++ .../7.1.0_1633125948095/topology | 25 + .../7.1.0_1633125948272/plan.json | 212 ++++++ .../7.1.0_1633125948272/spec.json | 181 +++++ .../7.1.0_1633125948272/topology | 25 + .../7.1.0_1633125948403/plan.json | 212 ++++++ .../7.1.0_1633125948403/spec.json | 186 +++++ .../7.1.0_1633125948403/topology | 25 + .../7.1.0_1633125955018/plan.json | 213 ++++++ .../7.1.0_1633125955018/spec.json | 169 +++++ .../7.1.0_1633125955018/topology | 40 + .../7.1.0_1633125955251/plan.json | 229 ++++++ .../7.1.0_1633125955251/spec.json | 199 +++++ .../7.1.0_1633125955251/topology | 43 ++ .../7.1.0_1633125951060/plan.json | 213 ++++++ .../7.1.0_1633125951060/spec.json | 169 +++++ .../7.1.0_1633125951060/topology | 40 + .../7.1.0_1633125951401/plan.json | 213 ++++++ .../7.1.0_1633125951401/spec.json | 254 +++++++ .../7.1.0_1633125951401/topology | 40 + .../7.1.0_1633125951598/plan.json | 213 ++++++ .../7.1.0_1633125951598/spec.json | 189 +++++ .../7.1.0_1633125951598/topology | 40 + .../7.1.0_1633125951777/plan.json | 213 ++++++ .../7.1.0_1633125951777/spec.json | 195 +++++ .../7.1.0_1633125951777/topology | 40 + .../7.1.0_1633125951949/plan.json | 229 ++++++ .../7.1.0_1633125951949/spec.json | 199 +++++ .../7.1.0_1633125951949/topology | 43 ++ .../7.1.0_1633125948711/plan.json | 213 ++++++ .../7.1.0_1633125948711/spec.json | 169 +++++ .../7.1.0_1633125948711/topology | 40 + .../7.1.0_1633125948954/plan.json | 215 ++++++ .../7.1.0_1633125948954/spec.json | 293 +++++++ .../7.1.0_1633125948954/topology | 40 + .../7.1.0_1633125949161/plan.json | 215 ++++++ .../7.1.0_1633125949161/spec.json | 212 ++++++ .../7.1.0_1633125949161/topology | 40 + .../7.1.0_1633125949343/plan.json | 215 ++++++ .../7.1.0_1633125949343/spec.json | 218 ++++++ .../7.1.0_1633125949343/topology | 40 + .../7.1.0_1633125949704/plan.json | 229 ++++++ .../7.1.0_1633125949704/spec.json | 203 +++++ .../7.1.0_1633125949704/topology | 43 ++ .../7.1.0_1633125950307/plan.json | 233 ++++++ .../7.1.0_1633125950307/spec.json | 359 +++++++++ .../7.1.0_1633125950307/topology | 43 ++ .../7.1.0_1633125950543/plan.json | 233 ++++++ .../7.1.0_1633125950543/spec.json | 256 +++++++ .../7.1.0_1633125950543/topology | 43 ++ .../7.1.0_1633125950768/plan.json | 233 ++++++ .../7.1.0_1633125950768/spec.json | 263 +++++++ .../7.1.0_1633125950768/topology | 43 ++ .../7.1.0_1633125949989/plan.json | 229 ++++++ .../7.1.0_1633125949989/spec.json | 203 +++++ .../7.1.0_1633125949989/topology | 43 ++ .../7.1.0_1633125948837/plan.json | 213 ++++++ .../7.1.0_1633125948837/spec.json | 153 ++++ .../7.1.0_1633125948837/topology | 40 + .../7.1.0_1633125953086/plan.json | 213 ++++++ .../7.1.0_1633125953086/spec.json | 177 +++++ .../7.1.0_1633125953086/topology | 40 + .../7.1.0_1633125953282/plan.json | 229 ++++++ .../7.1.0_1633125953282/spec.json | 199 +++++ .../7.1.0_1633125953282/topology | 43 ++ .../7.1.0_1633125943764/plan.json | 222 ++++++ .../7.1.0_1633125943764/spec.json | 184 +++++ .../7.1.0_1633125943764/topology | 49 ++ .../7.1.0_1633125943406/plan.json | 215 ++++++ .../7.1.0_1633125943406/spec.json | 208 +++++ .../7.1.0_1633125943406/topology | 40 + .../7.1.0_1633125943593/plan.json | 215 ++++++ .../7.1.0_1633125943593/spec.json | 208 +++++ .../7.1.0_1633125943593/topology | 40 + .../7.1.0_1633125948547/plan.json | 213 ++++++ .../7.1.0_1633125948547/spec.json | 199 +++++ .../7.1.0_1633125948547/topology | 40 + .../7.1.0_1633125953552/plan.json | 229 ++++++ .../7.1.0_1633125953552/spec.json | 199 +++++ .../7.1.0_1633125953552/topology | 43 ++ .../7.1.0_1633125953995/plan.json | 212 ++++++ .../7.1.0_1633125953995/spec.json | 183 +++++ .../7.1.0_1633125953995/topology | 40 + .../7.1.0_1633125953835/plan.json | 212 ++++++ .../7.1.0_1633125953835/spec.json | 183 +++++ .../7.1.0_1633125953835/topology | 40 + .../7.1.0_1633125954155/plan.json | 212 ++++++ .../7.1.0_1633125954155/spec.json | 162 ++++ .../7.1.0_1633125954155/topology | 25 + .../7.1.0_1633125958254/plan.json | 213 ++++++ .../7.1.0_1633125958254/spec.json | 171 +++++ .../7.1.0_1633125958254/topology | 40 + .../7.1.0_1633125958371/plan.json | 229 ++++++ .../7.1.0_1633125958371/spec.json | 203 +++++ .../7.1.0_1633125958371/topology | 43 ++ .../7.1.0_1633125944245/plan.json | 215 ++++++ .../7.1.0_1633125944245/spec.json | 228 ++++++ .../7.1.0_1633125944245/topology | 40 + .../7.1.0_1633125944640/plan.json | 213 ++++++ .../7.1.0_1633125944640/spec.json | 225 ++++++ .../7.1.0_1633125944640/topology | 40 + .../7.1.0_1633125945096/plan.json | 218 ++++++ .../7.1.0_1633125945096/spec.json | 218 ++++++ .../7.1.0_1633125945096/topology | 40 + .../7.1.0_1633125945329/plan.json | 224 ++++++ .../7.1.0_1633125945329/spec.json | 230 ++++++ .../7.1.0_1633125945329/topology | 40 + .../7.1.0_1633125944848/plan.json | 218 ++++++ .../7.1.0_1633125944848/spec.json | 273 +++++++ .../7.1.0_1633125944848/topology | 40 + .../7.1.0_1633125945785/plan.json | 213 ++++++ .../7.1.0_1633125945785/spec.json | 271 +++++++ .../7.1.0_1633125945785/topology | 40 + .../7.1.0_1633125945569/plan.json | 213 ++++++ .../7.1.0_1633125945569/spec.json | 205 +++++ .../7.1.0_1633125945569/topology | 40 + .../7.1.0_1633125946010/plan.json | 218 ++++++ .../7.1.0_1633125946010/spec.json | 273 +++++++ .../7.1.0_1633125946010/topology | 40 + .../7.1.0_1633125946544/plan.json | 233 ++++++ .../7.1.0_1633125946544/spec.json | 240 ++++++ .../7.1.0_1633125946544/topology | 43 ++ .../7.1.0_1633125946840/plan.json | 229 ++++++ .../7.1.0_1633125946840/spec.json | 234 ++++++ .../7.1.0_1633125946840/topology | 43 ++ .../7.1.0_1633125946385/plan.json | 220 ++++++ .../7.1.0_1633125946385/spec.json | 251 ++++++ .../7.1.0_1633125946385/topology | 43 ++ .../7.1.0_1633125947814/plan.json | 213 ++++++ .../7.1.0_1633125947814/spec.json | 171 +++++ .../7.1.0_1633125947814/topology | 40 + .../7.1.0_1633125944439/plan.json | 215 ++++++ .../7.1.0_1633125944439/spec.json | 237 ++++++ .../7.1.0_1633125944439/topology | 40 + .../7.1.0_1633125961937/plan.json | 220 ++++++ .../7.1.0_1633125961937/spec.json | 175 +++++ .../7.1.0_1633125961937/topology | 40 + .../7.1.0_1633125960418/plan.json | 320 ++++++++ .../7.1.0_1633125960418/spec.json | 487 ++++++++++++ .../7.1.0_1633125960418/topology | 78 ++ .../7.1.0_1633125941126/plan.json | 212 ++++++ .../7.1.0_1633125941126/spec.json | 155 ++++ .../7.1.0_1633125941126/topology | 25 + .../7.1.0_1633125947134/plan.json | 215 ++++++ .../7.1.0_1633125947134/spec.json | 147 ++++ .../7.1.0_1633125947134/topology | 40 + .../7.1.0_1633125959596/plan.json | 213 ++++++ .../7.1.0_1633125959596/spec.json | 149 ++++ .../7.1.0_1633125959596/topology | 40 + .../7.1.0_1633125959961/plan.json | 213 ++++++ .../7.1.0_1633125959961/spec.json | 112 +++ .../7.1.0_1633125959961/topology | 40 + .../7.1.0_1633125959741/plan.json | 229 ++++++ .../7.1.0_1633125959741/spec.json | 175 +++++ .../7.1.0_1633125959741/topology | 43 ++ .../7.1.0_1633125960037/plan.json | 229 ++++++ .../7.1.0_1633125960037/spec.json | 138 ++++ .../7.1.0_1633125960037/topology | 43 ++ .../7.1.0_1633125960317/plan.json | 212 ++++++ .../7.1.0_1633125960317/spec.json | 154 ++++ .../7.1.0_1633125960317/topology | 25 + .../7.1.0_1633125941816/plan.json | 213 ++++++ .../7.1.0_1633125941816/spec.json | 189 +++++ .../7.1.0_1633125941816/topology | 40 + .../7.1.0_1633125942009/plan.json | 229 ++++++ .../7.1.0_1633125942009/spec.json | 215 ++++++ .../7.1.0_1633125942009/topology | 43 ++ .../7.1.0_1633125941631/plan.json | 213 ++++++ .../7.1.0_1633125941631/spec.json | 189 +++++ .../7.1.0_1633125941631/topology | 40 + .../7.1.0_1633125942286/plan.json | 213 ++++++ .../7.1.0_1633125942286/spec.json | 189 +++++ .../7.1.0_1633125942286/topology | 40 + .../7.1.0_1633125942471/plan.json | 229 ++++++ .../7.1.0_1633125942471/spec.json | 215 ++++++ .../7.1.0_1633125942471/topology | 43 ++ .../7.1.0_1633125947654/plan.json | 213 ++++++ .../7.1.0_1633125947654/spec.json | 171 +++++ .../7.1.0_1633125947654/topology | 40 + .../7.1.0_1633125942731/plan.json | 212 ++++++ .../7.1.0_1633125942731/spec.json | 165 ++++ .../7.1.0_1633125942731/topology | 40 + .../7.1.0_1633125955650/plan.json | 213 ++++++ .../7.1.0_1633125955650/spec.json | 169 +++++ .../7.1.0_1633125955650/topology | 40 + .../7.1.0_1633125955881/plan.json | 229 ++++++ .../7.1.0_1633125955881/spec.json | 219 ++++++ .../7.1.0_1633125955881/topology | 43 ++ .../7.1.0_1633125941445/plan.json | 213 ++++++ .../7.1.0_1633125941445/spec.json | 204 +++++ .../7.1.0_1633125941445/topology | 40 + .../7.1.0_1633125943259/plan.json | 213 ++++++ .../7.1.0_1633125943259/spec.json | 199 +++++ .../7.1.0_1633125943259/topology | 40 + .../7.1.0_1633125943023/plan.json | 220 ++++++ .../7.1.0_1633125943023/spec.json | 173 +++++ .../7.1.0_1633125943023/topology | 49 ++ .../7.1.0_1633125943161/plan.json | 213 ++++++ .../7.1.0_1633125943161/spec.json | 181 +++++ .../7.1.0_1633125943161/topology | 40 + .../7.1.0_1633125942868/plan.json | 213 ++++++ .../7.1.0_1633125942868/spec.json | 179 +++++ .../7.1.0_1633125942868/topology | 40 + .../7.1.0_1633125941202/plan.json | 219 ++++++ .../7.1.0_1633125941202/spec.json | 161 ++++ .../7.1.0_1633125941202/topology | 49 ++ .../7.1.0_1633125941301/plan.json | 213 ++++++ .../7.1.0_1633125941301/spec.json | 189 +++++ .../7.1.0_1633125941301/topology | 40 + .../7.1.0_1633125961798/plan.json | 225 ++++++ .../7.1.0_1633125961798/spec.json | 213 ++++++ .../7.1.0_1633125961798/topology | 43 ++ .../7.1.0_1633125961690/plan.json | 245 ++++++ .../7.1.0_1633125961690/spec.json | 355 +++++++++ .../7.1.0_1633125961690/topology | 28 + .../7.1.0_1633125961558/plan.json | 224 ++++++ .../7.1.0_1633125961558/spec.json | 213 ++++++ .../7.1.0_1633125961558/topology | 28 + .../7.1.0_1633125960821/plan.json | 315 ++++++++ .../7.1.0_1633125960821/spec.json | 250 ++++++ .../7.1.0_1633125960821/topology | 69 ++ .../7.1.0_1633125952212/plan.json | 213 ++++++ .../7.1.0_1633125952212/spec.json | 153 ++++ .../7.1.0_1633125952212/topology | 40 + .../7.1.0_1633125952364/plan.json | 229 ++++++ .../7.1.0_1633125952364/spec.json | 199 +++++ .../7.1.0_1633125952364/topology | 43 ++ .../7.1.0_1633125952641/plan.json | 213 ++++++ .../7.1.0_1633125952641/spec.json | 161 ++++ .../7.1.0_1633125952641/topology | 40 + .../7.1.0_1633125952821/plan.json | 229 ++++++ .../7.1.0_1633125952821/spec.json | 195 +++++ .../7.1.0_1633125952821/topology | 43 ++ .../7.1.0_1633125957893/plan.json | 220 ++++++ .../7.1.0_1633125957893/spec.json | 157 ++++ .../7.1.0_1633125957893/topology | 49 ++ .../7.1.0_1633125958077/plan.json | 213 ++++++ .../7.1.0_1633125958077/spec.json | 169 +++++ .../7.1.0_1633125958077/topology | 40 + .../7.1.0_1633125956913/plan.json | 220 ++++++ .../7.1.0_1633125956913/spec.json | 165 ++++ .../7.1.0_1633125956913/topology | 49 ++ .../7.1.0_1633125957186/plan.json | 236 ++++++ .../7.1.0_1633125957186/spec.json | 210 ++++++ .../7.1.0_1633125957186/topology | 52 ++ .../7.1.0_1633125957695/plan.json | 220 ++++++ .../7.1.0_1633125957695/spec.json | 169 +++++ .../7.1.0_1633125957695/topology | 49 ++ .../7.1.0_1633125957480/plan.json | 220 ++++++ .../7.1.0_1633125957480/spec.json | 161 ++++ .../7.1.0_1633125957480/topology | 49 ++ .../7.1.0_1633125949538/plan.json | 213 ++++++ .../7.1.0_1633125949538/spec.json | 169 +++++ .../7.1.0_1633125949538/topology | 40 + .../7.1.0_1633125961051/plan.json | 212 ++++++ .../7.1.0_1633125961051/spec.json | 165 ++++ .../7.1.0_1633125961051/topology | 40 + .../7.1.0_1633125961337/plan.json | 229 ++++++ .../7.1.0_1633125961337/spec.json | 191 +++++ .../7.1.0_1633125961337/topology | 43 ++ .../7.1.0_1633125961189/plan.json | 217 ++++++ .../7.1.0_1633125961189/spec.json | 194 +++++ .../7.1.0_1633125961189/topology | 43 ++ .../7.1.0_1633125963004/plan.json | 219 ++++++ .../7.1.0_1633125963004/spec.json | 161 ++++ .../7.1.0_1633125963004/topology | 34 + .../7.1.0_1633125962904/plan.json | 224 ++++++ .../7.1.0_1633125962904/spec.json | 165 ++++ .../7.1.0_1633125962904/topology | 37 + .../7.1.0_1633125963604/plan.json | 229 ++++++ .../7.1.0_1633125963604/spec.json | 399 ++++++++++ .../7.1.0_1633125963604/topology | 43 ++ .../7.1.0_1633125963934/plan.json | 229 ++++++ .../7.1.0_1633125963934/spec.json | 260 +++++++ .../7.1.0_1633125963934/topology | 43 ++ .../7.1.0_1633125964219/plan.json | 229 ++++++ .../7.1.0_1633125964219/spec.json | 267 +++++++ .../7.1.0_1633125964219/topology | 43 ++ .../7.1.0_1633125963114/plan.json | 212 ++++++ .../7.1.0_1633125963114/spec.json | 276 +++++++ .../7.1.0_1633125963114/topology | 25 + .../7.1.0_1633125963281/plan.json | 212 ++++++ .../7.1.0_1633125963281/spec.json | 193 +++++ .../7.1.0_1633125963281/topology | 25 + .../7.1.0_1633125963448/plan.json | 212 ++++++ .../7.1.0_1633125963448/spec.json | 198 +++++ .../7.1.0_1633125963448/topology | 25 + .../7.1.0_1633125965563/plan.json | 218 ++++++ .../7.1.0_1633125965563/spec.json | 277 +++++++ .../7.1.0_1633125965563/topology | 43 ++ .../7.1.0_1633125965652/plan.json | 178 +++++ .../7.1.0_1633125965652/spec.json | 226 ++++++ .../7.1.0_1633125965652/topology | 13 + .../7.1.0_1633125965189/plan.json | 217 ++++++ .../7.1.0_1633125965189/spec.json | 210 ++++++ .../7.1.0_1633125965189/topology | 28 + .../7.1.0_1633125965667/plan.json | 222 ++++++ .../7.1.0_1633125965667/spec.json | 207 +++++ .../7.1.0_1633125965667/topology | 43 ++ .../7.1.0_1633125964831/plan.json | 217 ++++++ .../7.1.0_1633125964831/spec.json | 280 +++++++ .../7.1.0_1633125964831/topology | 28 + .../7.1.0_1633125964507/plan.json | 217 ++++++ .../7.1.0_1633125964507/spec.json | 320 ++++++++ .../7.1.0_1633125964507/topology | 28 + .../7.1.0_1633125965326/plan.json | 217 ++++++ .../7.1.0_1633125965326/spec.json | 187 +++++ .../7.1.0_1633125965326/topology | 28 + .../7.1.0_1633125965436/plan.json | 217 ++++++ .../7.1.0_1633125965436/spec.json | 219 ++++++ .../7.1.0_1633125965436/topology | 28 + .../7.1.0_1633125965836/plan.json | 244 ++++++ .../7.1.0_1633125965836/spec.json | 172 +++++ .../7.1.0_1633125965836/topology | 39 + .../7.1.0_1633125965948/plan.json | 244 ++++++ .../7.1.0_1633125965948/spec.json | 172 +++++ .../7.1.0_1633125965948/topology | 39 + .../7.1.0_1633125966093/plan.json | 244 ++++++ .../7.1.0_1633125966093/spec.json | 172 +++++ .../7.1.0_1633125966093/topology | 39 + .../7.1.0_1633125965777/plan.json | 166 ++++ .../7.1.0_1633125965777/spec.json | 100 +++ .../7.1.0_1633125965777/topology | 13 + .../7.1.0_1633125965818/plan.json | 166 ++++ .../7.1.0_1633125965818/spec.json | 100 +++ .../7.1.0_1633125965818/topology | 13 + .../7.1.0_1633125966415/plan.json | 166 ++++ .../7.1.0_1633125966415/spec.json | 100 +++ .../7.1.0_1633125966415/topology | 13 + .../7.1.0_1633125966237/plan.json | 244 ++++++ .../7.1.0_1633125966237/spec.json | 172 +++++ .../7.1.0_1633125966237/topology | 39 + .../7.1.0_1633125966378/plan.json | 166 ++++ .../7.1.0_1633125966378/spec.json | 100 +++ .../7.1.0_1633125966378/topology | 13 + .../7.1.0_1633125966665/plan.json | 172 +++++ .../7.1.0_1633125966665/spec.json | 153 ++++ .../7.1.0_1633125966665/topology | 16 + .../7.1.0_1633125966707/plan.json | 172 +++++ .../7.1.0_1633125966707/spec.json | 114 +++ .../7.1.0_1633125966707/topology | 16 + .../7.1.0_1633125966688/plan.json | 172 +++++ .../7.1.0_1633125966688/spec.json | 114 +++ .../7.1.0_1633125966688/topology | 16 + .../7.1.0_1633125966535/plan.json | 172 +++++ .../7.1.0_1633125966535/spec.json | 228 ++++++ .../7.1.0_1633125966535/topology | 16 + .../7.1.0_1633125966470/plan.json | 177 +++++ .../7.1.0_1633125966470/spec.json | 133 ++++ .../7.1.0_1633125966470/topology | 16 + .../7.1.0_1633125966612/plan.json | 172 +++++ .../7.1.0_1633125966612/spec.json | 228 ++++++ .../7.1.0_1633125966612/topology | 16 + .../7.1.0_1633125966571/plan.json | 172 +++++ .../7.1.0_1633125966571/spec.json | 228 ++++++ .../7.1.0_1633125966571/topology | 16 + .../7.1.0_1633125966431/plan.json | 177 +++++ .../7.1.0_1633125966431/spec.json | 127 ++++ .../7.1.0_1633125966431/topology | 16 + .../7.1.0_1633125966483/plan.json | 172 +++++ .../7.1.0_1633125966483/spec.json | 218 ++++++ .../7.1.0_1633125966483/topology | 16 + .../7.1.0_1633125966521/plan.json | 172 +++++ .../7.1.0_1633125966521/spec.json | 104 +++ .../7.1.0_1633125966521/topology | 16 + .../7.1.0_1633125966458/plan.json | 177 +++++ .../7.1.0_1633125966458/spec.json | 119 +++ .../7.1.0_1633125966458/topology | 16 + .../7.1.0_1633125966726/plan.json | 172 +++++ .../7.1.0_1633125966726/spec.json | 151 ++++ .../7.1.0_1633125966726/topology | 16 + .../7.1.0_1633125966794/plan.json | 172 +++++ .../7.1.0_1633125966794/spec.json | 126 ++++ .../7.1.0_1633125966794/topology | 16 + .../7.1.0_1633125966747/plan.json | 172 +++++ .../7.1.0_1633125966747/spec.json | 126 ++++ .../7.1.0_1633125966747/topology | 16 + .../in_-_nulls/7.1.0_1633125966446/plan.json | 177 +++++ .../in_-_nulls/7.1.0_1633125966446/spec.json | 121 +++ .../in_-_nulls/7.1.0_1633125966446/topology | 16 + .../7.1.0_1633125966648/plan.json | 172 +++++ .../7.1.0_1633125966648/spec.json | 158 ++++ .../7.1.0_1633125966648/topology | 16 + .../7.1.0_1633125966890/plan.json | 172 +++++ .../7.1.0_1633125966890/spec.json | 110 +++ .../7.1.0_1633125966890/topology | 16 + .../7.1.0_1633125966814/plan.json | 172 +++++ .../7.1.0_1633125966814/spec.json | 223 ++++++ .../7.1.0_1633125966814/topology | 16 + .../7.1.0_1633125966870/plan.json | 172 +++++ .../7.1.0_1633125966870/spec.json | 126 ++++ .../7.1.0_1633125966870/topology | 16 + .../7.1.0_1633125966850/plan.json | 172 +++++ .../7.1.0_1633125966850/spec.json | 126 ++++ .../7.1.0_1633125966850/topology | 16 + .../7.1.0_1633125966911/plan.json | 166 ++++ .../7.1.0_1633125966911/spec.json | 125 +++ .../7.1.0_1633125966911/topology | 13 + .../7.1.0_1633125966925/plan.json | 166 ++++ .../7.1.0_1633125966925/spec.json | 125 +++ .../7.1.0_1633125966925/topology | 13 + .../7.1.0_1633125967038/plan.json | 169 +++++ .../7.1.0_1633125967038/spec.json | 165 ++++ .../7.1.0_1633125967038/topology | 13 + .../7.1.0_1633125967004/plan.json | 233 ++++++ .../7.1.0_1633125967004/spec.json | 120 +++ .../7.1.0_1633125967004/topology | 13 + .../7.1.0_1633125967022/plan.json | 169 +++++ .../7.1.0_1633125967022/spec.json | 164 ++++ .../7.1.0_1633125967022/topology | 13 + .../7.1.0_1633125967342/plan.json | 168 +++++ .../7.1.0_1633125967342/spec.json | 184 +++++ .../7.1.0_1633125967342/topology | 13 + .../7.1.0_1633125967055/plan.json | 292 +++++++ .../7.1.0_1633125967055/spec.json | 169 +++++ .../7.1.0_1633125967055/topology | 39 + .../7.1.0_1633125967187/plan.json | 261 +++++++ .../7.1.0_1633125967187/spec.json | 190 +++++ .../7.1.0_1633125967187/topology | 63 ++ .../7.1.0_1633125966938/plan.json | 233 ++++++ .../7.1.0_1633125966938/spec.json | 118 +++ .../7.1.0_1633125966938/topology | 13 + .../7.1.0_1633125966960/plan.json | 231 ++++++ .../7.1.0_1633125966960/spec.json | 138 ++++ .../7.1.0_1633125966960/topology | 13 + .../7.1.0_1633125966985/plan.json | 233 ++++++ .../7.1.0_1633125966985/spec.json | 118 +++ .../7.1.0_1633125966985/topology | 13 + .../7.1.0_1633125967389/plan.json | 166 ++++ .../7.1.0_1633125967389/spec.json | 134 ++++ .../7.1.0_1633125967389/topology | 13 + .../7.1.0_1633125967428/plan.json | 166 ++++ .../7.1.0_1633125967428/spec.json | 110 +++ .../7.1.0_1633125967428/topology | 13 + .../7.1.0_1633125967440/plan.json | 166 ++++ .../7.1.0_1633125967440/spec.json | 110 +++ .../7.1.0_1633125967440/topology | 13 + .../7.1.0_1633125967404/plan.json | 166 ++++ .../7.1.0_1633125967404/spec.json | 110 +++ .../7.1.0_1633125967404/topology | 13 + .../7.1.0_1633125967416/plan.json | 166 ++++ .../7.1.0_1633125967416/spec.json | 110 +++ .../7.1.0_1633125967416/topology | 13 + .../7.1.0_1633125992585/plan.json | 256 +++++++ .../7.1.0_1633125992585/spec.json | 367 +++++++++ .../7.1.0_1633125992585/topology | 42 ++ .../7.1.0_1633125992741/plan.json | 256 +++++++ .../7.1.0_1633125992741/spec.json | 223 ++++++ .../7.1.0_1633125992741/topology | 42 ++ .../7.1.0_1633125992905/plan.json | 256 +++++++ .../7.1.0_1633125992905/spec.json | 232 ++++++ .../7.1.0_1633125992905/topology | 42 ++ .../7.1.0_1633125993040/plan.json | 262 +++++++ .../7.1.0_1633125993040/spec.json | 381 ++++++++++ .../7.1.0_1633125993040/topology | 42 ++ .../7.1.0_1633125993176/plan.json | 262 +++++++ .../7.1.0_1633125993176/spec.json | 225 ++++++ .../7.1.0_1633125993176/topology | 42 ++ .../7.1.0_1633125993318/plan.json | 262 +++++++ .../7.1.0_1633125993318/spec.json | 234 ++++++ .../7.1.0_1633125993318/topology | 42 ++ .../7.1.0_1633125993489/plan.json | 268 +++++++ .../7.1.0_1633125993489/spec.json | 347 +++++++++ .../7.1.0_1633125993489/topology | 36 + .../7.1.0_1633125993612/plan.json | 268 +++++++ .../7.1.0_1633125993612/spec.json | 229 ++++++ .../7.1.0_1633125993612/topology | 36 + .../7.1.0_1633125993764/plan.json | 268 +++++++ .../7.1.0_1633125993764/spec.json | 237 ++++++ .../7.1.0_1633125993764/topology | 36 + .../7.1.0_1633125993913/plan.json | 278 +++++++ .../7.1.0_1633125993913/spec.json | 408 ++++++++++ .../7.1.0_1633125993913/topology | 51 ++ .../7.1.0_1633125994193/plan.json | 278 +++++++ .../7.1.0_1633125994193/spec.json | 258 +++++++ .../7.1.0_1633125994193/topology | 51 ++ .../7.1.0_1633125994505/plan.json | 278 +++++++ .../7.1.0_1633125994505/spec.json | 268 +++++++ .../7.1.0_1633125994505/topology | 51 ++ .../7.1.0_1633125994743/plan.json | 284 +++++++ .../7.1.0_1633125994743/spec.json | 422 +++++++++++ .../7.1.0_1633125994743/topology | 51 ++ .../7.1.0_1633125995067/plan.json | 284 +++++++ .../7.1.0_1633125995067/spec.json | 260 +++++++ .../7.1.0_1633125995067/topology | 51 ++ .../7.1.0_1633125995302/plan.json | 284 +++++++ .../7.1.0_1633125995302/spec.json | 270 +++++++ .../7.1.0_1633125995302/topology | 51 ++ .../7.1.0_1633125967903/plan.json | 244 ++++++ .../7.1.0_1633125967903/spec.json | 180 +++++ .../7.1.0_1633125967903/topology | 39 + .../7.1.0_1633125968055/plan.json | 244 ++++++ .../7.1.0_1633125968055/spec.json | 181 +++++ .../7.1.0_1633125968055/topology | 39 + .../7.1.0_1633125968177/plan.json | 258 +++++++ .../7.1.0_1633125968177/spec.json | 196 +++++ .../7.1.0_1633125968177/topology | 63 ++ .../7.1.0_1633125969593/plan.json | 244 ++++++ .../7.1.0_1633125969593/spec.json | 193 +++++ .../7.1.0_1633125969593/topology | 39 + .../7.1.0_1633125968450/plan.json | 244 ++++++ .../7.1.0_1633125968450/spec.json | 180 +++++ .../7.1.0_1633125968450/topology | 39 + .../7.1.0_1633125968551/plan.json | 251 ++++++ .../7.1.0_1633125968551/spec.json | 188 +++++ .../7.1.0_1633125968551/topology | 51 ++ .../7.1.0_1633125968820/plan.json | 244 ++++++ .../7.1.0_1633125968820/spec.json | 179 +++++ .../7.1.0_1633125968820/topology | 39 + .../7.1.0_1633125968692/plan.json | 251 ++++++ .../7.1.0_1633125968692/spec.json | 188 +++++ .../7.1.0_1633125968692/topology | 51 ++ .../7.1.0_1633125968949/plan.json | 244 ++++++ .../7.1.0_1633125968949/spec.json | 180 +++++ .../7.1.0_1633125968949/topology | 39 + .../7.1.0_1633125969097/plan.json | 251 ++++++ .../7.1.0_1633125969097/spec.json | 188 +++++ .../7.1.0_1633125969097/topology | 51 ++ .../7.1.0_1633125969245/plan.json | 251 ++++++ .../7.1.0_1633125969245/spec.json | 188 +++++ .../7.1.0_1633125969245/topology | 51 ++ .../7.1.0_1633125969428/plan.json | 258 +++++++ .../7.1.0_1633125969428/spec.json | 205 +++++ .../7.1.0_1633125969428/topology | 63 ++ .../7.1.0_1633125967453/plan.json | 244 ++++++ .../7.1.0_1633125967453/spec.json | 181 +++++ .../7.1.0_1633125967453/topology | 39 + .../7.1.0_1633125967583/plan.json | 244 ++++++ .../7.1.0_1633125967583/spec.json | 181 +++++ .../7.1.0_1633125967583/topology | 39 + .../7.1.0_1633125967732/plan.json | 251 ++++++ .../7.1.0_1633125967732/spec.json | 189 +++++ .../7.1.0_1633125967732/topology | 42 ++ .../7.1.0_1633125987859/plan.json | 259 +++++++ .../7.1.0_1633125987859/spec.json | 232 ++++++ .../7.1.0_1633125987859/topology | 39 + .../7.1.0_1633125992209/plan.json | 281 +++++++ .../7.1.0_1633125992209/spec.json | 341 +++++++++ .../7.1.0_1633125992209/topology | 63 ++ .../7.1.0_1633125992381/plan.json | 286 +++++++ .../7.1.0_1633125992381/spec.json | 406 ++++++++++ .../7.1.0_1633125992381/topology | 63 ++ .../7.1.0_1633125988719/plan.json | 259 +++++++ .../7.1.0_1633125988719/spec.json | 204 +++++ .../7.1.0_1633125988719/topology | 33 + .../7.1.0_1633125987320/plan.json | 290 +++++++ .../7.1.0_1633125987320/spec.json | 490 ++++++++++++ .../7.1.0_1633125987320/topology | 63 ++ .../7.1.0_1633125987458/plan.json | 266 +++++++ .../7.1.0_1633125987458/spec.json | 207 +++++ .../7.1.0_1633125987458/topology | 63 ++ .../7.1.0_1633125985739/plan.json | 258 +++++++ .../7.1.0_1633125985739/spec.json | 394 ++++++++++ .../7.1.0_1633125985739/topology | 63 ++ .../7.1.0_1633125985934/plan.json | 258 +++++++ .../7.1.0_1633125985934/spec.json | 194 +++++ .../7.1.0_1633125985934/topology | 63 ++ .../7.1.0_1633125986074/plan.json | 258 +++++++ .../7.1.0_1633125986074/spec.json | 205 +++++ .../7.1.0_1633125986074/topology | 63 ++ .../7.1.0_1633125986246/plan.json | 258 +++++++ .../7.1.0_1633125986246/spec.json | 394 ++++++++++ .../7.1.0_1633125986246/topology | 63 ++ .../7.1.0_1633125986412/plan.json | 258 +++++++ .../7.1.0_1633125986412/spec.json | 194 +++++ .../7.1.0_1633125986412/topology | 63 ++ .../7.1.0_1633125986544/plan.json | 258 +++++++ .../7.1.0_1633125986544/spec.json | 205 +++++ .../7.1.0_1633125986544/topology | 63 ++ .../7.1.0_1633125985261/plan.json | 258 +++++++ .../7.1.0_1633125985261/spec.json | 394 ++++++++++ .../7.1.0_1633125985261/topology | 63 ++ .../7.1.0_1633125985411/plan.json | 258 +++++++ .../7.1.0_1633125985411/spec.json | 194 +++++ .../7.1.0_1633125985411/topology | 63 ++ .../7.1.0_1633125985565/plan.json | 258 +++++++ .../7.1.0_1633125985565/spec.json | 205 +++++ .../7.1.0_1633125985565/topology | 63 ++ .../7.1.0_1633125986722/plan.json | 258 +++++++ .../7.1.0_1633125986722/spec.json | 394 ++++++++++ .../7.1.0_1633125986722/topology | 63 ++ .../7.1.0_1633125986907/plan.json | 258 +++++++ .../7.1.0_1633125986907/spec.json | 194 +++++ .../7.1.0_1633125986907/topology | 63 ++ .../7.1.0_1633125987144/plan.json | 258 +++++++ .../7.1.0_1633125987144/spec.json | 205 +++++ .../7.1.0_1633125987144/topology | 63 ++ .../7.1.0_1633125987600/plan.json | 290 +++++++ .../7.1.0_1633125987600/spec.json | 625 +++++++++++++++ .../7.1.0_1633125987600/topology | 63 ++ .../7.1.0_1633125987729/plan.json | 266 +++++++ .../7.1.0_1633125987729/spec.json | 216 ++++++ .../7.1.0_1633125987729/topology | 63 ++ .../7.1.0_1633125985087/plan.json | 257 +++++++ .../7.1.0_1633125985087/spec.json | 204 +++++ .../7.1.0_1633125985087/topology | 45 ++ .../7.1.0_1633125988021/plan.json | 258 +++++++ .../7.1.0_1633125988021/spec.json | 207 +++++ .../7.1.0_1633125988021/topology | 63 ++ .../7.1.0_1633125991945/plan.json | 266 +++++++ .../7.1.0_1633125991945/spec.json | 539 +++++++++++++ .../7.1.0_1633125991945/topology | 63 ++ .../7.1.0_1633125990565/plan.json | 290 +++++++ .../7.1.0_1633125990565/spec.json | 250 ++++++ .../7.1.0_1633125990565/topology | 63 ++ .../7.1.0_1633125991419/plan.json | 266 +++++++ .../7.1.0_1633125991419/spec.json | 278 +++++++ .../7.1.0_1633125991419/topology | 63 ++ .../7.1.0_1633125991530/plan.json | 266 +++++++ .../7.1.0_1633125991530/spec.json | 270 +++++++ .../7.1.0_1633125991530/topology | 63 ++ .../7.1.0_1633125992064/plan.json | 266 +++++++ .../7.1.0_1633125992064/spec.json | 274 +++++++ .../7.1.0_1633125992064/topology | 63 ++ .../7.1.0_1633125989052/plan.json | 253 +++++++ .../7.1.0_1633125989052/spec.json | 182 +++++ .../7.1.0_1633125989052/topology | 51 ++ .../7.1.0_1633125988855/plan.json | 251 ++++++ .../7.1.0_1633125988855/spec.json | 179 +++++ .../7.1.0_1633125988855/topology | 51 ++ .../7.1.0_1633125989339/plan.json | 260 +++++++ .../7.1.0_1633125989339/spec.json | 202 +++++ .../7.1.0_1633125989339/topology | 63 ++ .../7.1.0_1633125989194/plan.json | 251 ++++++ .../7.1.0_1633125989194/spec.json | 184 +++++ .../7.1.0_1633125989194/topology | 51 ++ .../7.1.0_1633125989684/plan.json | 251 ++++++ .../7.1.0_1633125989684/spec.json | 186 +++++ .../7.1.0_1633125989684/topology | 51 ++ .../7.1.0_1633125989495/plan.json | 251 ++++++ .../7.1.0_1633125989495/spec.json | 186 +++++ .../7.1.0_1633125989495/topology | 51 ++ .../7.1.0_1633125989807/plan.json | 258 +++++++ .../7.1.0_1633125989807/spec.json | 198 +++++ .../7.1.0_1633125989807/topology | 63 ++ .../7.1.0_1633125990715/plan.json | 312 ++++++++ .../7.1.0_1633125990715/spec.json | 264 +++++++ .../7.1.0_1633125990715/topology | 63 ++ .../7.1.0_1633125991642/plan.json | 282 +++++++ .../7.1.0_1633125991642/spec.json | 271 +++++++ .../7.1.0_1633125991642/topology | 63 ++ .../7.1.0_1633125989943/plan.json | 265 +++++++ .../7.1.0_1633125989943/spec.json | 192 +++++ .../7.1.0_1633125989943/topology | 51 ++ .../7.1.0_1633125990196/plan.json | 257 +++++++ .../7.1.0_1633125990196/spec.json | 184 +++++ .../7.1.0_1633125990196/topology | 45 ++ .../7.1.0_1633125990083/plan.json | 257 +++++++ .../7.1.0_1633125990083/spec.json | 183 +++++ .../7.1.0_1633125990083/topology | 45 ++ .../7.1.0_1633976605709/plan.json | 245 ++++++ .../7.1.0_1633976605709/spec.json | 406 ++++++++++ .../7.1.0_1633976605709/topology | 39 + .../7.1.0_1633976605891/plan.json | 245 ++++++ .../7.1.0_1633976605891/spec.json | 260 +++++++ .../7.1.0_1633976605891/topology | 39 + .../7.1.0_1633125971839/plan.json | 244 ++++++ .../7.1.0_1633125971839/spec.json | 392 ++++++++++ .../7.1.0_1633125971839/topology | 39 + .../7.1.0_1633125971998/plan.json | 244 ++++++ .../7.1.0_1633125971998/spec.json | 248 ++++++ .../7.1.0_1633125971998/topology | 39 + .../7.1.0_1633125972188/plan.json | 244 ++++++ .../7.1.0_1633125972188/spec.json | 257 +++++++ .../7.1.0_1633125972188/topology | 39 + .../7.1.0_1633125973838/plan.json | 244 ++++++ .../7.1.0_1633125973838/spec.json | 352 +++++++++ .../7.1.0_1633125973838/topology | 39 + .../7.1.0_1633125974055/plan.json | 244 ++++++ .../7.1.0_1633125974055/spec.json | 236 ++++++ .../7.1.0_1633125974055/topology | 39 + .../7.1.0_1633125974284/plan.json | 244 ++++++ .../7.1.0_1633125974284/spec.json | 245 ++++++ .../7.1.0_1633125974284/topology | 39 + .../7.1.0_1633125972356/plan.json | 244 ++++++ .../7.1.0_1633125972356/spec.json | 384 ++++++++++ .../7.1.0_1633125972356/topology | 39 + .../7.1.0_1633125972575/plan.json | 244 ++++++ .../7.1.0_1633125972575/spec.json | 244 ++++++ .../7.1.0_1633125972575/topology | 39 + .../7.1.0_1633125972803/plan.json | 244 ++++++ .../7.1.0_1633125972803/spec.json | 253 +++++++ .../7.1.0_1633125972803/topology | 39 + .../7.1.0_1633125973045/plan.json | 244 ++++++ .../7.1.0_1633125973045/spec.json | 391 ++++++++++ .../7.1.0_1633125973045/topology | 39 + .../7.1.0_1633125973225/plan.json | 244 ++++++ .../7.1.0_1633125973225/spec.json | 247 ++++++ .../7.1.0_1633125973225/topology | 39 + .../7.1.0_1633125973412/plan.json | 244 ++++++ .../7.1.0_1633125973412/spec.json | 256 +++++++ .../7.1.0_1633125973412/topology | 39 + .../7.1.0_1633125974508/plan.json | 244 ++++++ .../7.1.0_1633125974508/spec.json | 381 ++++++++++ .../7.1.0_1633125974508/topology | 39 + .../7.1.0_1633125974731/plan.json | 244 ++++++ .../7.1.0_1633125974731/spec.json | 237 ++++++ .../7.1.0_1633125974731/topology | 39 + .../7.1.0_1633125974953/plan.json | 244 ++++++ .../7.1.0_1633125974953/spec.json | 246 ++++++ .../7.1.0_1633125974953/topology | 39 + .../7.1.0_1633976604891/plan.json | 245 ++++++ .../7.1.0_1633976604891/spec.json | 330 ++++++++ .../7.1.0_1633976604891/topology | 39 + .../7.1.0_1633976605053/plan.json | 245 ++++++ .../7.1.0_1633976605053/spec.json | 218 ++++++ .../7.1.0_1633976605053/topology | 39 + .../7.1.0_1633976605202/plan.json | 245 ++++++ .../7.1.0_1633976605202/spec.json | 227 ++++++ .../7.1.0_1633976605202/topology | 39 + .../7.1.0_1633125975186/plan.json | 244 ++++++ .../7.1.0_1633125975186/spec.json | 419 +++++++++++ .../7.1.0_1633125975186/topology | 39 + .../7.1.0_1633125975398/plan.json | 244 ++++++ .../7.1.0_1633125975398/spec.json | 275 +++++++ .../7.1.0_1633125975398/topology | 39 + .../7.1.0_1633125975625/plan.json | 244 ++++++ .../7.1.0_1633125975625/spec.json | 284 +++++++ .../7.1.0_1633125975625/topology | 39 + .../7.1.0_1633125973613/plan.json | 244 ++++++ .../7.1.0_1633125973613/spec.json | 256 +++++++ .../7.1.0_1633125973613/topology | 39 + .../7.1.0_1633125984448/plan.json | 251 ++++++ .../7.1.0_1633125984448/spec.json | 183 +++++ .../7.1.0_1633125984448/topology | 51 ++ .../7.1.0_1633125983435/plan.json | 251 ++++++ .../7.1.0_1633125983435/spec.json | 182 +++++ .../7.1.0_1633125983435/topology | 51 ++ .../7.1.0_1633125983540/plan.json | 251 ++++++ .../7.1.0_1633125983540/spec.json | 182 +++++ .../7.1.0_1633125983540/topology | 51 ++ .../7.1.0_1633125984192/plan.json | 251 ++++++ .../7.1.0_1633125984192/spec.json | 182 +++++ .../7.1.0_1633125984192/topology | 51 ++ .../7.1.0_1633125984332/plan.json | 251 ++++++ .../7.1.0_1633125984332/spec.json | 183 +++++ .../7.1.0_1633125984332/topology | 51 ++ .../7.1.0_1633125984634/plan.json | 251 ++++++ .../7.1.0_1633125984634/spec.json | 178 +++++ .../7.1.0_1633125984634/topology | 51 ++ .../7.1.0_1633125983331/plan.json | 258 +++++++ .../7.1.0_1633125983331/spec.json | 190 +++++ .../7.1.0_1633125983331/topology | 63 ++ .../7.1.0_1633125984048/plan.json | 251 ++++++ .../7.1.0_1633125984048/spec.json | 189 +++++ .../7.1.0_1633125984048/topology | 51 ++ .../7.1.0_1633125983644/plan.json | 251 ++++++ .../7.1.0_1633125983644/spec.json | 182 +++++ .../7.1.0_1633125983644/topology | 51 ++ .../7.1.0_1633125969719/plan.json | 244 ++++++ .../7.1.0_1633125969719/spec.json | 432 +++++++++++ .../7.1.0_1633125969719/topology | 39 + .../7.1.0_1633125969930/plan.json | 244 ++++++ .../7.1.0_1633125969930/spec.json | 288 +++++++ .../7.1.0_1633125969930/topology | 39 + .../7.1.0_1633125970149/plan.json | 244 ++++++ .../7.1.0_1633125970149/spec.json | 297 ++++++++ .../7.1.0_1633125970149/topology | 39 + .../7.1.0_1633125971129/plan.json | 258 +++++++ .../7.1.0_1633125971129/spec.json | 547 ++++++++++++++ .../7.1.0_1633125971129/topology | 63 ++ .../7.1.0_1633125971405/plan.json | 258 +++++++ .../7.1.0_1633125971405/spec.json | 311 ++++++++ .../7.1.0_1633125971405/topology | 63 ++ .../7.1.0_1633125971616/plan.json | 258 +++++++ .../7.1.0_1633125971616/spec.json | 322 ++++++++ .../7.1.0_1633125971616/topology | 63 ++ .../7.1.0_1633125970380/plan.json | 258 +++++++ .../7.1.0_1633125970380/spec.json | 558 ++++++++++++++ .../7.1.0_1633125970380/topology | 63 ++ .../7.1.0_1633125970611/plan.json | 258 +++++++ .../7.1.0_1633125970611/spec.json | 318 ++++++++ .../7.1.0_1633125970611/topology | 63 ++ .../7.1.0_1633125970853/plan.json | 258 +++++++ .../7.1.0_1633125970853/spec.json | 329 ++++++++ .../7.1.0_1633125970853/topology | 63 ++ .../7.1.0_1633976605355/plan.json | 245 ++++++ .../7.1.0_1633976605355/spec.json | 380 ++++++++++ .../7.1.0_1633976605355/topology | 39 + .../7.1.0_1633976605523/plan.json | 245 ++++++ .../7.1.0_1633976605523/spec.json | 242 ++++++ .../7.1.0_1633976605523/topology | 39 + .../7.1.0_1633125975871/plan.json | 244 ++++++ .../7.1.0_1633125975871/spec.json | 466 ++++++++++++ .../7.1.0_1633125975871/topology | 39 + .../7.1.0_1633125976122/plan.json | 244 ++++++ .../7.1.0_1633125976122/spec.json | 314 ++++++++ .../7.1.0_1633125976122/topology | 39 + .../7.1.0_1633125976363/plan.json | 244 ++++++ .../7.1.0_1633125976363/spec.json | 307 ++++++++ .../7.1.0_1633125976363/topology | 39 + .../7.1.0_1633125980292/plan.json | 250 ++++++ .../7.1.0_1633125980292/spec.json | 350 +++++++++ .../7.1.0_1633125980292/topology | 33 + .../7.1.0_1633125980497/plan.json | 250 ++++++ .../7.1.0_1633125980497/spec.json | 244 ++++++ .../7.1.0_1633125980497/topology | 33 + .../7.1.0_1633125980653/plan.json | 250 ++++++ .../7.1.0_1633125980653/spec.json | 252 +++++++ .../7.1.0_1633125980653/topology | 33 + .../7.1.0_1633125979778/plan.json | 250 ++++++ .../7.1.0_1633125979778/spec.json | 360 +++++++++ .../7.1.0_1633125979778/topology | 33 + .../7.1.0_1633125979964/plan.json | 250 ++++++ .../7.1.0_1633125979964/spec.json | 254 +++++++ .../7.1.0_1633125979964/topology | 33 + .../7.1.0_1633125980123/plan.json | 250 ++++++ .../7.1.0_1633125980123/spec.json | 262 +++++++ .../7.1.0_1633125980123/topology | 33 + .../7.1.0_1633125981742/plan.json | 248 ++++++ .../7.1.0_1633125981742/spec.json | 187 +++++ .../7.1.0_1633125981742/topology | 39 + .../7.1.0_1633125981886/plan.json | 250 ++++++ .../7.1.0_1633125981886/spec.json | 186 +++++ .../7.1.0_1633125981886/topology | 39 + .../7.1.0_1633125981577/plan.json | 244 ++++++ .../7.1.0_1633125981577/spec.json | 213 ++++++ .../7.1.0_1633125981577/topology | 39 + .../7.1.0_1633125982209/plan.json | 254 +++++++ .../7.1.0_1633125982209/spec.json | 196 +++++ .../7.1.0_1633125982209/topology | 33 + .../7.1.0_1633125982318/plan.json | 256 +++++++ .../7.1.0_1633125982318/spec.json | 195 +++++ .../7.1.0_1633125982318/topology | 33 + .../7.1.0_1633125982028/plan.json | 250 ++++++ .../7.1.0_1633125982028/spec.json | 228 ++++++ .../7.1.0_1633125982028/topology | 33 + .../7.1.0_1633125988393/plan.json | 258 +++++++ .../7.1.0_1633125988393/spec.json | 198 +++++ .../7.1.0_1633125988393/topology | 63 ++ .../7.1.0_1633125988577/plan.json | 257 +++++++ .../7.1.0_1633125988577/spec.json | 193 +++++ .../7.1.0_1633125988577/topology | 45 ++ .../7.1.0_1633125990830/plan.json | 348 +++++++++ .../7.1.0_1633125990830/spec.json | 334 ++++++++ .../7.1.0_1633125990830/topology | 84 +++ .../7.1.0_1633125991751/plan.json | 309 ++++++++ .../7.1.0_1633125991751/spec.json | 340 +++++++++ .../7.1.0_1633125991751/topology | 84 +++ .../7.1.0_1633125991081/plan.json | 348 +++++++++ .../7.1.0_1633125991081/spec.json | 372 +++++++++ .../7.1.0_1633125991081/topology | 84 +++ .../7.1.0_1633125990322/plan.json | 281 +++++++ .../7.1.0_1633125990322/spec.json | 225 ++++++ .../7.1.0_1633125990322/topology | 66 ++ .../7.1.0_1633125980843/plan.json | 430 +++++++++++ .../7.1.0_1633125980843/spec.json | 288 +++++++ .../7.1.0_1633125980843/topology | 48 ++ .../7.1.0_1633125977700/plan.json | 266 +++++++ .../7.1.0_1633125977700/spec.json | 443 +++++++++++ .../7.1.0_1633125977700/topology | 48 ++ .../7.1.0_1633125978022/plan.json | 266 +++++++ .../7.1.0_1633125978022/spec.json | 293 +++++++ .../7.1.0_1633125978022/topology | 48 ++ .../7.1.0_1633125978366/plan.json | 266 +++++++ .../7.1.0_1633125978366/spec.json | 303 ++++++++ .../7.1.0_1633125978366/topology | 48 ++ .../7.1.0_1633125981237/plan.json | 273 +++++++ .../7.1.0_1633125981237/spec.json | 281 +++++++ .../7.1.0_1633125981237/topology | 57 ++ .../7.1.0_1633125976616/plan.json | 266 +++++++ .../7.1.0_1633125976616/spec.json | 465 ++++++++++++ .../7.1.0_1633125976616/topology | 48 ++ .../7.1.0_1633125976940/plan.json | 266 +++++++ .../7.1.0_1633125976940/spec.json | 315 ++++++++ .../7.1.0_1633125976940/topology | 48 ++ .../7.1.0_1633125977316/plan.json | 266 +++++++ .../7.1.0_1633125977316/spec.json | 325 ++++++++ .../7.1.0_1633125977316/topology | 48 ++ .../7.1.0_1633125978727/plan.json | 266 +++++++ .../7.1.0_1633125978727/spec.json | 465 ++++++++++++ .../7.1.0_1633125978727/topology | 48 ++ .../7.1.0_1633125979058/plan.json | 266 +++++++ .../7.1.0_1633125979058/spec.json | 315 ++++++++ .../7.1.0_1633125979058/topology | 48 ++ .../7.1.0_1633125979396/plan.json | 266 +++++++ .../7.1.0_1633125979396/spec.json | 339 +++++++++ .../7.1.0_1633125979396/topology | 48 ++ .../7.1.0_1633125982795/plan.json | 270 +++++++ .../7.1.0_1633125982795/spec.json | 232 ++++++ .../7.1.0_1633125982795/topology | 48 ++ .../7.1.0_1633125983056/plan.json | 272 +++++++ .../7.1.0_1633125983056/spec.json | 231 ++++++ .../7.1.0_1633125983056/topology | 48 ++ .../7.1.0_1633125982462/plan.json | 266 +++++++ .../7.1.0_1633125982462/spec.json | 270 +++++++ .../7.1.0_1633125982462/topology | 48 ++ .../7.1.0_1633125968288/plan.json | 266 +++++++ .../7.1.0_1633125968288/spec.json | 224 ++++++ .../7.1.0_1633125968288/topology | 48 ++ .../7.1.0_1633125984784/plan.json | 244 ++++++ .../7.1.0_1633125984784/spec.json | 265 +++++++ .../7.1.0_1633125984784/topology | 39 + .../7.1.0_1633125983766/plan.json | 266 +++++++ .../7.1.0_1633125983766/spec.json | 224 ++++++ .../7.1.0_1633125983766/topology | 48 ++ .../7.1.0_1633125988211/plan.json | 251 ++++++ .../7.1.0_1633125988211/spec.json | 183 +++++ .../7.1.0_1633125988211/topology | 42 ++ .../7.1.0_1633125996519/plan.json | 170 +++++ .../7.1.0_1633125996519/spec.json | 115 +++ .../7.1.0_1633125996519/topology | 13 + .../7.1.0_1633125996531/plan.json | 167 ++++ .../7.1.0_1633125996531/spec.json | 107 +++ .../7.1.0_1633125996531/topology | 13 + .../7.1.0_1633125996542/plan.json | 167 ++++ .../7.1.0_1633125996542/spec.json | 106 +++ .../7.1.0_1633125996542/topology | 13 + .../7.1.0_1633125996357/plan.json | 170 +++++ .../7.1.0_1633125996357/spec.json | 115 +++ .../7.1.0_1633125996357/topology | 13 + .../7.1.0_1633125996370/plan.json | 167 ++++ .../7.1.0_1633125996370/spec.json | 107 +++ .../7.1.0_1633125996370/topology | 13 + .../7.1.0_1633125996383/plan.json | 167 ++++ .../7.1.0_1633125996383/spec.json | 106 +++ .../7.1.0_1633125996383/topology | 13 + .../7.1.0_1633125996239/plan.json | 170 +++++ .../7.1.0_1633125996239/spec.json | 127 ++++ .../7.1.0_1633125996239/topology | 13 + .../7.1.0_1633125996254/plan.json | 167 ++++ .../7.1.0_1633125996254/spec.json | 117 +++ .../7.1.0_1633125996254/topology | 13 + .../7.1.0_1633125996307/plan.json | 167 ++++ .../7.1.0_1633125996307/spec.json | 116 +++ .../7.1.0_1633125996307/topology | 13 + .../7.1.0_1633125996480/plan.json | 170 +++++ .../7.1.0_1633125996480/spec.json | 115 +++ .../7.1.0_1633125996480/topology | 13 + .../7.1.0_1633125996493/plan.json | 167 ++++ .../7.1.0_1633125996493/spec.json | 107 +++ .../7.1.0_1633125996493/topology | 13 + .../7.1.0_1633125996507/plan.json | 167 ++++ .../7.1.0_1633125996507/spec.json | 106 +++ .../7.1.0_1633125996507/topology | 13 + .../7.1.0_1633125996398/plan.json | 170 +++++ .../7.1.0_1633125996398/spec.json | 115 +++ .../7.1.0_1633125996398/topology | 13 + .../7.1.0_1633125996413/plan.json | 167 ++++ .../7.1.0_1633125996413/spec.json | 107 +++ .../7.1.0_1633125996413/topology | 13 + .../7.1.0_1633125996426/plan.json | 167 ++++ .../7.1.0_1633125996426/spec.json | 106 +++ .../7.1.0_1633125996426/topology | 13 + .../7.1.0_1633125996320/plan.json | 170 +++++ .../7.1.0_1633125996320/spec.json | 115 +++ .../7.1.0_1633125996320/topology | 13 + .../7.1.0_1633125996333/plan.json | 167 ++++ .../7.1.0_1633125996333/spec.json | 107 +++ .../7.1.0_1633125996333/topology | 13 + .../7.1.0_1633125996345/plan.json | 167 ++++ .../7.1.0_1633125996345/spec.json | 106 +++ .../7.1.0_1633125996345/topology | 13 + .../7.1.0_1633125996555/plan.json | 167 ++++ .../7.1.0_1633125996555/spec.json | 111 +++ .../7.1.0_1633125996555/topology | 13 + .../7.1.0_1633125996566/plan.json | 167 ++++ .../7.1.0_1633125996566/spec.json | 110 +++ .../7.1.0_1633125996566/topology | 13 + .../7.1.0_1633125996440/plan.json | 170 +++++ .../7.1.0_1633125996440/spec.json | 115 +++ .../7.1.0_1633125996440/topology | 13 + .../7.1.0_1633125996456/plan.json | 167 ++++ .../7.1.0_1633125996456/spec.json | 107 +++ .../7.1.0_1633125996456/topology | 13 + .../7.1.0_1633125996468/plan.json | 167 ++++ .../7.1.0_1633125996468/spec.json | 106 +++ .../7.1.0_1633125996468/topology | 13 + .../7.1.0_1633125996577/plan.json | 170 +++++ .../7.1.0_1633125996577/spec.json | 119 +++ .../7.1.0_1633125996577/topology | 13 + .../7.1.0_1633125996591/plan.json | 167 ++++ .../7.1.0_1633125996591/spec.json | 111 +++ .../7.1.0_1633125996591/topology | 13 + .../7.1.0_1633125996605/plan.json | 167 ++++ .../7.1.0_1633125996605/spec.json | 110 +++ .../7.1.0_1633125996605/topology | 13 + .../7.1.0_1633125996634/plan.json | 167 ++++ .../7.1.0_1633125996634/spec.json | 117 +++ .../7.1.0_1633125996634/topology | 13 + .../7.1.0_1633125996647/plan.json | 167 ++++ .../7.1.0_1633125996647/spec.json | 99 +++ .../7.1.0_1633125996647/topology | 13 + .../7.1.0_1633125996672/plan.json | 167 ++++ .../7.1.0_1633125996672/spec.json | 133 ++++ .../7.1.0_1633125996672/topology | 13 + .../7.1.0_1633125996660/plan.json | 167 ++++ .../7.1.0_1633125996660/spec.json | 133 ++++ .../7.1.0_1633125996660/topology | 13 + .../7.1.0_1633125996685/plan.json | 167 ++++ .../7.1.0_1633125996685/spec.json | 149 ++++ .../7.1.0_1633125996685/topology | 13 + .../7.1.0_1633125996621/plan.json | 168 +++++ .../7.1.0_1633125996621/spec.json | 109 +++ .../7.1.0_1633125996621/topology | 13 + .../7.1.0_1633125996825/plan.json | 165 ++++ .../7.1.0_1633125996825/spec.json | 98 +++ .../7.1.0_1633125996825/topology | 13 + .../7.1.0_1633125996723/plan.json | 167 ++++ .../7.1.0_1633125996723/spec.json | 126 ++++ .../7.1.0_1633125996723/topology | 13 + .../7.1.0_1633125996758/plan.json | 167 ++++ .../7.1.0_1633125996758/spec.json | 142 ++++ .../7.1.0_1633125996758/topology | 13 + .../7.1.0_1633125996697/plan.json | 168 +++++ .../7.1.0_1633125996697/spec.json | 116 +++ .../7.1.0_1633125996697/topology | 13 + .../7.1.0_1633125996789/plan.json | 167 ++++ .../7.1.0_1633125996789/spec.json | 134 ++++ .../7.1.0_1633125996789/topology | 13 + .../7.1.0_1633125996740/plan.json | 167 ++++ .../7.1.0_1633125996740/spec.json | 132 ++++ .../7.1.0_1633125996740/topology | 13 + .../7.1.0_1633125996772/plan.json | 167 ++++ .../7.1.0_1633125996772/spec.json | 148 ++++ .../7.1.0_1633125996772/topology | 13 + .../7.1.0_1633125996710/plan.json | 168 +++++ .../7.1.0_1633125996710/spec.json | 120 +++ .../7.1.0_1633125996710/topology | 13 + .../7.1.0_1633125996812/plan.json | 167 ++++ .../7.1.0_1633125996812/spec.json | 140 ++++ .../7.1.0_1633125996812/topology | 13 + .../7.1.0_1633125995563/plan.json | 173 +++++ .../7.1.0_1633125995563/spec.json | 149 ++++ .../7.1.0_1633125995563/topology | 16 + .../7.1.0_1633125996121/plan.json | 170 +++++ .../7.1.0_1633125996121/spec.json | 212 ++++++ .../7.1.0_1633125996121/topology | 13 + .../7.1.0_1633125996102/plan.json | 170 +++++ .../7.1.0_1633125996102/spec.json | 213 ++++++ .../7.1.0_1633125996102/topology | 13 + .../7.1.0_1633125995943/plan.json | 170 +++++ .../7.1.0_1633125995943/spec.json | 182 +++++ .../7.1.0_1633125995943/topology | 13 + .../7.1.0_1633125995919/plan.json | 170 +++++ .../7.1.0_1633125995919/spec.json | 183 +++++ .../7.1.0_1633125995919/topology | 13 + .../7.1.0_1633125995850/plan.json | 170 +++++ .../7.1.0_1633125995850/spec.json | 177 +++++ .../7.1.0_1633125995850/topology | 13 + .../7.1.0_1633125995821/plan.json | 170 +++++ .../7.1.0_1633125995821/spec.json | 176 +++++ .../7.1.0_1633125995821/topology | 13 + .../7.1.0_1633125996070/plan.json | 170 +++++ .../7.1.0_1633125996070/spec.json | 200 +++++ .../7.1.0_1633125996070/topology | 13 + .../7.1.0_1633125996049/plan.json | 170 +++++ .../7.1.0_1633125996049/spec.json | 201 +++++ .../7.1.0_1633125996049/topology | 13 + .../7.1.0_1633125995987/plan.json | 170 +++++ .../7.1.0_1633125995987/spec.json | 182 +++++ .../7.1.0_1633125995987/topology | 13 + .../7.1.0_1633125995967/plan.json | 170 +++++ .../7.1.0_1633125995967/spec.json | 183 +++++ .../7.1.0_1633125995967/topology | 13 + .../7.1.0_1633125995896/plan.json | 170 +++++ .../7.1.0_1633125995896/spec.json | 194 +++++ .../7.1.0_1633125995896/topology | 13 + .../7.1.0_1633125996212/plan.json | 172 +++++ .../7.1.0_1633125996212/spec.json | 176 +++++ .../7.1.0_1633125996212/topology | 13 + .../7.1.0_1633125996183/plan.json | 170 +++++ .../7.1.0_1633125996183/spec.json | 194 +++++ .../7.1.0_1633125996183/topology | 13 + .../7.1.0_1633125995874/plan.json | 170 +++++ .../7.1.0_1633125995874/spec.json | 195 +++++ .../7.1.0_1633125995874/topology | 13 + .../7.1.0_1633125996028/plan.json | 170 +++++ .../7.1.0_1633125996028/spec.json | 181 +++++ .../7.1.0_1633125996028/topology | 13 + .../7.1.0_1633125996008/plan.json | 170 +++++ .../7.1.0_1633125996008/spec.json | 180 +++++ .../7.1.0_1633125996008/topology | 13 + .../7.1.0_1633125996163/plan.json | 170 +++++ .../7.1.0_1633125996163/spec.json | 223 ++++++ .../7.1.0_1633125996163/topology | 13 + .../7.1.0_1633125996143/plan.json | 170 +++++ .../7.1.0_1633125996143/spec.json | 230 ++++++ .../7.1.0_1633125996143/topology | 13 + .../7.1.0_1633125995630/plan.json | 167 ++++ .../7.1.0_1633125995630/spec.json | 166 ++++ .../7.1.0_1633125995630/topology | 13 + .../7.1.0_1633125995652/plan.json | 167 ++++ .../7.1.0_1633125995652/spec.json | 148 ++++ .../7.1.0_1633125995652/topology | 13 + .../7.1.0_1633125995578/plan.json | 168 +++++ .../7.1.0_1633125995578/spec.json | 138 ++++ .../7.1.0_1633125995578/topology | 13 + .../7.1.0_1633125995595/plan.json | 168 +++++ .../7.1.0_1633125995595/spec.json | 127 ++++ .../7.1.0_1633125995595/topology | 13 + .../7.1.0_1633125995673/plan.json | 167 ++++ .../7.1.0_1633125995673/spec.json | 194 +++++ .../7.1.0_1633125995673/topology | 13 + .../7.1.0_1633125995612/plan.json | 168 +++++ .../7.1.0_1633125995612/spec.json | 152 ++++ .../7.1.0_1633125995612/topology | 13 + .../7.1.0_1633125995734/plan.json | 167 ++++ .../7.1.0_1633125995734/spec.json | 184 +++++ .../7.1.0_1633125995734/topology | 13 + .../7.1.0_1633125995694/plan.json | 168 +++++ .../7.1.0_1633125995694/spec.json | 150 ++++ .../7.1.0_1633125995694/topology | 13 + .../7.1.0_1633125995773/plan.json | 167 ++++ .../7.1.0_1633125995773/spec.json | 201 +++++ .../7.1.0_1633125995773/topology | 13 + .../7.1.0_1633125995756/plan.json | 167 ++++ .../7.1.0_1633125995756/spec.json | 196 +++++ .../7.1.0_1633125995756/topology | 13 + .../7.1.0_1633125995713/plan.json | 168 +++++ .../7.1.0_1633125995713/spec.json | 160 ++++ .../7.1.0_1633125995713/topology | 13 + .../7.1.0_1633125995793/plan.json | 167 ++++ .../7.1.0_1633125995793/spec.json | 213 ++++++ .../7.1.0_1633125995793/topology | 13 + .../7.1.0_1633125996886/plan.json | 166 ++++ .../7.1.0_1633125996886/spec.json | 94 +++ .../7.1.0_1633125996886/topology | 13 + .../7.1.0_1633125996899/plan.json | 166 ++++ .../7.1.0_1633125996899/spec.json | 94 +++ .../7.1.0_1633125996899/topology | 13 + .../7.1.0_1633125996851/plan.json | 166 ++++ .../7.1.0_1633125996851/spec.json | 94 +++ .../7.1.0_1633125996851/topology | 13 + .../kafka_-_INT/7.1.0_1633125996875/plan.json | 166 ++++ .../kafka_-_INT/7.1.0_1633125996875/spec.json | 94 +++ .../kafka_-_INT/7.1.0_1633125996875/topology | 13 + .../7.1.0_1633125996863/plan.json | 166 ++++ .../7.1.0_1633125996863/spec.json | 94 +++ .../7.1.0_1633125996863/topology | 13 + .../7.1.0_1633125996839/plan.json | 168 +++++ .../7.1.0_1633125996839/spec.json | 97 +++ .../7.1.0_1633125996839/topology | 13 + .../7.1.0_1633125997495/plan.json | 166 ++++ .../7.1.0_1633125997495/spec.json | 99 +++ .../7.1.0_1633125997495/topology | 13 + .../7.1.0_1633125997513/plan.json | 166 ++++ .../7.1.0_1633125997513/spec.json | 100 +++ .../7.1.0_1633125997513/topology | 13 + .../7.1.0_1633125997743/plan.json | 166 ++++ .../7.1.0_1633125997743/spec.json | 98 +++ .../7.1.0_1633125997743/topology | 13 + .../7.1.0_1633125997477/plan.json | 166 ++++ .../7.1.0_1633125997477/spec.json | 99 +++ .../7.1.0_1633125997477/topology | 13 + .../7.1.0_1633125997712/plan.json | 173 +++++ .../7.1.0_1633125997712/spec.json | 122 +++ .../7.1.0_1633125997712/topology | 16 + .../7.1.0_1633125997727/plan.json | 173 +++++ .../7.1.0_1633125997727/spec.json | 122 +++ .../7.1.0_1633125997727/topology | 16 + .../7.1.0_1633125997271/plan.json | 166 ++++ .../7.1.0_1633125997271/spec.json | 125 +++ .../7.1.0_1633125997271/topology | 13 + .../7.1.0_1633125997370/plan.json | 166 ++++ .../7.1.0_1633125997370/spec.json | 125 +++ .../7.1.0_1633125997370/topology | 13 + .../7.1.0_1633125997160/plan.json | 166 ++++ .../7.1.0_1633125997160/spec.json | 125 +++ .../7.1.0_1633125997160/topology | 13 + .../7.1.0_1633125997042/plan.json | 166 ++++ .../7.1.0_1633125997042/spec.json | 138 ++++ .../7.1.0_1633125997042/topology | 13 + .../7.1.0_1633125996911/plan.json | 166 ++++ .../7.1.0_1633125996911/spec.json | 138 ++++ .../7.1.0_1633125996911/topology | 13 + .../7.1.0_1633125997289/plan.json | 182 +++++ .../7.1.0_1633125997289/spec.json | 151 ++++ .../7.1.0_1633125997289/topology | 22 + .../7.1.0_1633125997398/plan.json | 182 +++++ .../7.1.0_1633125997398/spec.json | 151 ++++ .../7.1.0_1633125997398/topology | 22 + .../7.1.0_1633125997181/plan.json | 182 +++++ .../7.1.0_1633125997181/spec.json | 151 ++++ .../7.1.0_1633125997181/topology | 22 + .../7.1.0_1633125997060/plan.json | 182 +++++ .../7.1.0_1633125997060/spec.json | 151 ++++ .../7.1.0_1633125997060/topology | 22 + .../7.1.0_1633125996931/plan.json | 182 +++++ .../7.1.0_1633125996931/spec.json | 151 ++++ .../7.1.0_1633125996931/topology | 22 + .../7.1.0_1633125997529/plan.json | 217 ++++++ .../7.1.0_1633125997529/spec.json | 169 +++++ .../7.1.0_1633125997529/topology | 28 + .../7.1.0_1633125997637/plan.json | 217 ++++++ .../7.1.0_1633125997637/spec.json | 153 ++++ .../7.1.0_1633125997637/topology | 28 + .../7.1.0_1633125997758/plan.json | 212 ++++++ .../7.1.0_1633125997758/spec.json | 233 ++++++ .../7.1.0_1633125997758/topology | 25 + .../7.1.0_1633125998251/plan.json | 212 ++++++ .../7.1.0_1633125998251/spec.json | 145 ++++ .../7.1.0_1633125998251/topology | 25 + .../7.1.0_1633125998342/plan.json | 212 ++++++ .../7.1.0_1633125998342/spec.json | 201 +++++ .../7.1.0_1633125998342/topology | 25 + .../7.1.0_1633125998522/plan.json | 212 ++++++ .../7.1.0_1633125998522/spec.json | 145 ++++ .../7.1.0_1633125998522/topology | 25 + .../7.1.0_1633125998451/plan.json | 212 ++++++ .../7.1.0_1633125998451/spec.json | 145 ++++ .../7.1.0_1633125998451/topology | 25 + .../7.1.0_1633125998596/plan.json | 216 ++++++ .../7.1.0_1633125998596/spec.json | 208 +++++ .../7.1.0_1633125998596/topology | 28 + .../7.1.0_1633125998939/plan.json | 216 ++++++ .../7.1.0_1633125998939/spec.json | 208 +++++ .../7.1.0_1633125998939/topology | 28 + .../7.1.0_1633125999195/plan.json | 216 ++++++ .../7.1.0_1633125999195/spec.json | 208 +++++ .../7.1.0_1633125999195/topology | 28 + .../7.1.0_1633125998659/plan.json | 216 ++++++ .../7.1.0_1633125998659/spec.json | 208 +++++ .../7.1.0_1633125998659/topology | 28 + .../7.1.0_1633125999034/plan.json | 216 ++++++ .../7.1.0_1633125999034/spec.json | 208 +++++ .../7.1.0_1633125999034/topology | 28 + .../7.1.0_1633125998726/plan.json | 216 ++++++ .../7.1.0_1633125998726/spec.json | 179 +++++ .../7.1.0_1633125998726/topology | 28 + .../7.1.0_1633125998780/plan.json | 216 ++++++ .../7.1.0_1633125998780/spec.json | 208 +++++ .../7.1.0_1633125998780/topology | 28 + .../7.1.0_1633125999106/plan.json | 216 ++++++ .../7.1.0_1633125999106/spec.json | 208 +++++ .../7.1.0_1633125999106/topology | 28 + .../7.1.0_1633125998856/plan.json | 216 ++++++ .../7.1.0_1633125998856/spec.json | 179 +++++ .../7.1.0_1633125998856/topology | 28 + .../7.1.0_1633125997983/plan.json | 212 ++++++ .../7.1.0_1633125997983/spec.json | 157 ++++ .../7.1.0_1633125997983/topology | 25 + .../7.1.0_1633125997904/plan.json | 212 ++++++ .../7.1.0_1633125997904/spec.json | 157 ++++ .../7.1.0_1633125997904/topology | 25 + .../7.1.0_1633125998169/plan.json | 212 ++++++ .../7.1.0_1633125998169/spec.json | 157 ++++ .../7.1.0_1633125998169/topology | 25 + .../7.1.0_1633125998090/plan.json | 212 ++++++ .../7.1.0_1633125998090/spec.json | 157 ++++ .../7.1.0_1633125998090/topology | 25 + .../7.1.0_1633125999362/plan.json | 166 ++++ .../7.1.0_1633125999362/spec.json | 99 +++ .../7.1.0_1633125999362/topology | 13 + .../7.1.0_1633125999330/plan.json | 166 ++++ .../7.1.0_1633125999330/spec.json | 128 ++++ .../7.1.0_1633125999330/topology | 13 + .../7.1.0_1633125999288/plan.json | 166 ++++ .../7.1.0_1633125999288/spec.json | 100 +++ .../7.1.0_1633125999288/topology | 13 + .../7.1.0_1633125999303/plan.json | 166 ++++ .../7.1.0_1633125999303/spec.json | 100 +++ .../7.1.0_1633125999303/topology | 13 + .../7.1.0_1633125999317/plan.json | 166 ++++ .../7.1.0_1633125999317/spec.json | 100 +++ .../7.1.0_1633125999317/topology | 13 + .../7.1.0_1633125999273/plan.json | 166 ++++ .../7.1.0_1633125999273/spec.json | 100 +++ .../7.1.0_1633125999273/topology | 13 + .../7.1.0_1633125999349/plan.json | 166 ++++ .../7.1.0_1633125999349/spec.json | 131 ++++ .../7.1.0_1633125999349/topology | 13 + .../7.1.0_1633125999378/plan.json | 166 ++++ .../7.1.0_1633125999378/spec.json | 128 ++++ .../7.1.0_1633125999378/topology | 13 + .../7.1.0_1633125999427/plan.json | 173 +++++ .../7.1.0_1633125999427/spec.json | 108 +++ .../7.1.0_1633125999427/topology | 16 + .../like_-_exp/7.1.0_1633125999412/plan.json | 173 +++++ .../like_-_exp/7.1.0_1633125999412/spec.json | 136 ++++ .../like_-_exp/7.1.0_1633125999412/topology | 16 + .../7.1.0_1633125999396/plan.json | 173 +++++ .../7.1.0_1633125999396/spec.json | 99 +++ .../7.1.0_1633125999396/topology | 16 + .../7.1.0_1633125999515/plan.json | 166 ++++ .../7.1.0_1633125999515/spec.json | 94 +++ .../7.1.0_1633125999515/topology | 13 + .../7.1.0_1633125999444/plan.json | 166 ++++ .../7.1.0_1633125999444/spec.json | 94 +++ .../7.1.0_1633125999444/topology | 13 + .../7.1.0_1633125999584/plan.json | 166 ++++ .../7.1.0_1633125999584/spec.json | 94 +++ .../7.1.0_1633125999584/topology | 13 + .../7.1.0_1633125999539/plan.json | 166 ++++ .../7.1.0_1633125999539/spec.json | 94 +++ .../7.1.0_1633125999539/topology | 13 + .../7.1.0_1633125999483/plan.json | 166 ++++ .../7.1.0_1633125999483/spec.json | 94 +++ .../7.1.0_1633125999483/topology | 13 + .../7.1.0_1633125999663/plan.json | 173 +++++ .../7.1.0_1633125999663/spec.json | 128 ++++ .../7.1.0_1633125999663/topology | 16 + .../7.1.0_1633125999708/plan.json | 173 +++++ .../7.1.0_1633125999708/spec.json | 128 ++++ .../7.1.0_1633125999708/topology | 16 + .../7.1.0_1633125999726/plan.json | 185 +++++ .../7.1.0_1633125999726/spec.json | 172 +++++ .../7.1.0_1633125999726/topology | 16 + .../7.1.0_1633125999599/plan.json | 173 +++++ .../7.1.0_1633125999599/spec.json | 128 ++++ .../7.1.0_1633125999599/topology | 16 + .../7.1.0_1633125999631/plan.json | 182 +++++ .../7.1.0_1633125999631/spec.json | 144 ++++ .../7.1.0_1633125999631/topology | 16 + .../7.1.0_1633125999616/plan.json | 173 +++++ .../7.1.0_1633125999616/spec.json | 128 ++++ .../7.1.0_1633125999616/topology | 16 + .../7.1.0_1633125999647/plan.json | 182 +++++ .../7.1.0_1633125999647/spec.json | 144 ++++ .../7.1.0_1633125999647/topology | 16 + .../7.1.0_1633125999743/plan.json | 173 +++++ .../7.1.0_1633125999743/spec.json | 142 ++++ .../7.1.0_1633125999743/topology | 16 + .../7.1.0_1633125999758/plan.json | 173 +++++ .../7.1.0_1633125999758/spec.json | 135 ++++ .../7.1.0_1633125999758/topology | 16 + .../7.1.0_1633125999776/plan.json | 173 +++++ .../7.1.0_1633125999776/spec.json | 142 ++++ .../7.1.0_1633125999776/topology | 16 + .../7.1.0_1633125999893/plan.json | 166 ++++ .../7.1.0_1633125999893/spec.json | 103 +++ .../7.1.0_1633125999893/topology | 13 + .../7.1.0_1633125999824/plan.json | 166 ++++ .../7.1.0_1633125999824/spec.json | 141 ++++ .../7.1.0_1633125999824/topology | 13 + .../7.1.0_1633125999836/plan.json | 166 ++++ .../7.1.0_1633125999836/spec.json | 141 ++++ .../7.1.0_1633125999836/topology | 13 + .../7.1.0_1633125999880/plan.json | 166 ++++ .../7.1.0_1633125999880/spec.json | 181 +++++ .../7.1.0_1633125999880/topology | 13 + .../7.1.0_1633125999810/plan.json | 166 ++++ .../7.1.0_1633125999810/spec.json | 100 +++ .../7.1.0_1633125999810/topology | 13 + .../7.1.0_1633125999853/plan.json | 166 ++++ .../7.1.0_1633125999853/spec.json | 141 ++++ .../7.1.0_1633125999853/topology | 13 + .../7.1.0_1633125999867/plan.json | 166 ++++ .../7.1.0_1633125999867/spec.json | 154 ++++ .../7.1.0_1633125999867/topology | 13 + .../7.1.0_1633125999791/plan.json | 166 ++++ .../7.1.0_1633125999791/spec.json | 101 +++ .../7.1.0_1633125999791/topology | 13 + .../math_-_abs/7.1.0_1633126000103/plan.json | 166 ++++ .../math_-_abs/7.1.0_1633126000103/spec.json | 253 +++++++ .../math_-_abs/7.1.0_1633126000103/topology | 13 + .../7.1.0_1633126000057/plan.json | 166 ++++ .../7.1.0_1633126000057/spec.json | 397 ++++++++++ .../7.1.0_1633126000057/topology | 13 + .../math_-_exp/7.1.0_1633125999914/plan.json | 166 ++++ .../math_-_exp/7.1.0_1633125999914/spec.json | 150 ++++ .../math_-_exp/7.1.0_1633125999914/topology | 13 + .../7.1.0_1633126000008/plan.json | 166 ++++ .../7.1.0_1633126000008/spec.json | 397 ++++++++++ .../math_-_floor/7.1.0_1633126000008/topology | 13 + .../math_-_ln/7.1.0_1633125999935/plan.json | 166 ++++ .../math_-_ln/7.1.0_1633125999935/spec.json | 150 ++++ .../math_-_ln/7.1.0_1633125999935/topology | 13 + .../7.1.0_1633126000145/plan.json | 166 ++++ .../7.1.0_1633126000145/spec.json | 320 ++++++++ .../math_-_round/7.1.0_1633126000145/topology | 13 + .../7.1.0_1633126000234/plan.json | 166 ++++ .../7.1.0_1633126000234/spec.json | 168 +++++ .../7.1.0_1633126000234/topology | 13 + .../7.1.0_1633126000194/plan.json | 166 ++++ .../7.1.0_1633126000194/spec.json | 94 +++ .../7.1.0_1633126000194/topology | 13 + .../7.1.0_1633126000255/plan.json | 166 ++++ .../7.1.0_1633126000255/spec.json | 99 +++ .../7.1.0_1633126000255/topology | 13 + .../math_-_sign/7.1.0_1633125999984/plan.json | 166 ++++ .../math_-_sign/7.1.0_1633125999984/spec.json | 150 ++++ .../math_-_sign/7.1.0_1633125999984/topology | 13 + .../math_-_sqrt/7.1.0_1633125999960/plan.json | 166 ++++ .../math_-_sqrt/7.1.0_1633125999960/spec.json | 150 ++++ .../math_-_sqrt/7.1.0_1633125999960/topology | 13 + .../7.1.0_1633126000818/plan.json | 212 ++++++ .../7.1.0_1633126000818/spec.json | 341 +++++++++ .../7.1.0_1633126000818/topology | 25 + .../7.1.0_1633126000627/plan.json | 212 ++++++ .../7.1.0_1633126000627/spec.json | 304 ++++++++ .../7.1.0_1633126000627/topology | 25 + .../7.1.0_1633126000273/plan.json | 212 ++++++ .../7.1.0_1633126000273/spec.json | 292 +++++++ .../7.1.0_1633126000273/topology | 25 + .../7.1.0_1633126000423/plan.json | 212 ++++++ .../7.1.0_1633126000423/spec.json | 292 +++++++ .../7.1.0_1633126000423/topology | 25 + .../7.1.0_1633126001542/plan.json | 212 ++++++ .../7.1.0_1633126001542/spec.json | 317 ++++++++ .../7.1.0_1633126001542/topology | 25 + .../7.1.0_1633126001390/plan.json | 212 ++++++ .../7.1.0_1633126001390/spec.json | 280 +++++++ .../7.1.0_1633126001390/topology | 25 + .../7.1.0_1633126000999/plan.json | 212 ++++++ .../7.1.0_1633126000999/spec.json | 280 +++++++ .../7.1.0_1633126000999/topology | 25 + .../7.1.0_1633126001193/plan.json | 212 ++++++ .../7.1.0_1633126001193/spec.json | 280 +++++++ .../7.1.0_1633126001193/topology | 25 + .../7.1.0_1633126001724/plan.json | 166 ++++ .../7.1.0_1633126001724/spec.json | 321 ++++++++ .../7.1.0_1633126001724/topology | 13 + .../7.1.0_1633126001746/plan.json | 166 ++++ .../7.1.0_1633126001746/spec.json | 321 ++++++++ .../7.1.0_1633126001746/topology | 13 + .../7.1.0_1633126001702/plan.json | 166 ++++ .../7.1.0_1633126001702/spec.json | 426 +++++++++++ .../7.1.0_1633126001702/topology | 13 + .../7.1.0_1633126001976/plan.json | 218 ++++++ .../7.1.0_1633126001976/spec.json | 151 ++++ .../7.1.0_1633126001976/topology | 40 + .../7.1.0_1633126002128/plan.json | 234 ++++++ .../7.1.0_1633126002128/spec.json | 190 +++++ .../7.1.0_1633126002128/topology | 43 ++ .../7.1.0_1633126002038/plan.json | 213 ++++++ .../7.1.0_1633126002038/spec.json | 147 ++++ .../7.1.0_1633126002038/topology | 40 + .../7.1.0_1633126002285/plan.json | 229 ++++++ .../7.1.0_1633126002285/spec.json | 189 +++++ .../7.1.0_1633126002285/topology | 43 ++ .../7.1.0_1633126002446/plan.json | 213 ++++++ .../7.1.0_1633126002446/spec.json | 149 ++++ .../7.1.0_1633126002446/topology | 40 + .../7.1.0_1633126002665/plan.json | 262 +++++++ .../7.1.0_1633126002665/spec.json | 204 +++++ .../7.1.0_1633126002665/topology | 63 ++ .../7.1.0_1633126002798/plan.json | 262 +++++++ .../7.1.0_1633126002798/spec.json | 204 +++++ .../7.1.0_1633126002798/topology | 63 ++ .../7.1.0_1633126001775/plan.json | 166 ++++ .../7.1.0_1633126001775/spec.json | 134 ++++ .../7.1.0_1633126001775/topology | 13 + .../7.1.0_1633126001787/plan.json | 182 +++++ .../7.1.0_1633126001787/spec.json | 190 +++++ .../7.1.0_1633126001787/topology | 13 + .../7.1.0_1633126001918/plan.json | 175 +++++ .../7.1.0_1633126001918/spec.json | 104 +++ .../7.1.0_1633126001918/topology | 16 + .../7.1.0_1633126001933/plan.json | 175 +++++ .../7.1.0_1633126001933/spec.json | 108 +++ .../7.1.0_1633126001933/topology | 16 + .../7.1.0_1633126001801/plan.json | 182 +++++ .../7.1.0_1633126001801/spec.json | 168 +++++ .../7.1.0_1633126001801/topology | 22 + .../7.1.0_1633126001904/plan.json | 173 +++++ .../7.1.0_1633126001904/spec.json | 113 +++ .../7.1.0_1633126001904/topology | 16 + .../7.1.0_1633126001887/plan.json | 173 +++++ .../7.1.0_1633126001887/spec.json | 113 +++ .../7.1.0_1633126001887/topology | 16 + .../7.1.0_1633126002955/plan.json | 166 ++++ .../7.1.0_1633126002955/spec.json | 108 +++ .../7.1.0_1633126002955/topology | 13 + .../7.1.0_1633126002549/plan.json | 223 ++++++ .../7.1.0_1633126002549/spec.json | 213 ++++++ .../7.1.0_1633126002549/topology | 43 ++ .../7.1.0_1633126002987/plan.json | 326 ++++++++ .../7.1.0_1633126002987/spec.json | 258 +++++++ .../7.1.0_1633126002987/topology | 50 ++ .../7.1.0_1633126003534/plan.json | 328 ++++++++ .../7.1.0_1633126003534/spec.json | 266 +++++++ .../7.1.0_1633126003534/topology | 86 +++ .../7.1.0_1633126011506/plan.json | 321 ++++++++ .../7.1.0_1633126011506/spec.json | 259 +++++++ .../7.1.0_1633126011506/topology | 65 ++ .../7.1.0_1633126003153/plan.json | 326 ++++++++ .../7.1.0_1633126003153/spec.json | 258 +++++++ .../7.1.0_1633126003153/topology | 50 ++ .../7.1.0_1633126011322/plan.json | 326 ++++++++ .../7.1.0_1633126011322/spec.json | 266 +++++++ .../7.1.0_1633126011322/topology | 50 ++ .../7.1.0_1633126011774/plan.json | 359 +++++++++ .../7.1.0_1633126011774/spec.json | 500 ++++++++++++ .../7.1.0_1633126011774/topology | 98 +++ .../7.1.0_1633126012088/plan.json | 366 +++++++++ .../7.1.0_1633126012088/spec.json | 410 ++++++++++ .../7.1.0_1633126012088/topology | 110 +++ .../7.1.0_1633126010177/plan.json | 314 ++++++++ .../7.1.0_1633126010177/spec.json | 358 +++++++++ .../7.1.0_1633126010177/topology | 62 ++ .../7.1.0_1633126009920/plan.json | 314 ++++++++ .../7.1.0_1633126009920/spec.json | 294 ++++++++ .../7.1.0_1633126009920/topology | 62 ++ .../7.1.0_1633126009663/plan.json | 321 ++++++++ .../7.1.0_1633126009663/spec.json | 301 ++++++++ .../7.1.0_1633126009663/topology | 74 ++ .../7.1.0_1633126012283/plan.json | 390 ++++++++++ .../7.1.0_1633126012283/spec.json | 434 +++++++++++ .../7.1.0_1633126012283/topology | 98 +++ .../7.1.0_1633126012504/plan.json | 388 ++++++++++ .../7.1.0_1633126012504/spec.json | 411 ++++++++++ .../7.1.0_1633126012504/topology | 110 +++ .../7.1.0_1633126008745/plan.json | 327 ++++++++ .../7.1.0_1633126008745/spec.json | 310 ++++++++ .../7.1.0_1633126008745/topology | 68 ++ .../7.1.0_1633126008946/plan.json | 327 ++++++++ .../7.1.0_1633126008946/spec.json | 318 ++++++++ .../7.1.0_1633126008946/topology | 68 ++ .../7.1.0_1633126007468/plan.json | 320 ++++++++ .../7.1.0_1633126007468/spec.json | 294 ++++++++ .../7.1.0_1633126007468/topology | 56 ++ .../7.1.0_1633126008270/plan.json | 334 ++++++++ .../7.1.0_1633126008270/spec.json | 314 ++++++++ .../7.1.0_1633126008270/topology | 80 ++ .../7.1.0_1633126007739/plan.json | 327 ++++++++ .../7.1.0_1633126007739/spec.json | 303 ++++++++ .../7.1.0_1633126007739/topology | 68 ++ .../7.1.0_1633126007979/plan.json | 334 ++++++++ .../7.1.0_1633126007979/spec.json | 314 ++++++++ .../7.1.0_1633126007979/topology | 80 ++ .../7.1.0_1633126008548/plan.json | 320 ++++++++ .../7.1.0_1633126008548/spec.json | 303 ++++++++ .../7.1.0_1633126008548/topology | 56 ++ .../7.1.0_1633126009222/plan.json | 320 ++++++++ .../7.1.0_1633126009222/spec.json | 285 +++++++ .../7.1.0_1633126009222/topology | 56 ++ .../7.1.0_1633126009463/plan.json | 320 ++++++++ .../7.1.0_1633126009463/spec.json | 285 +++++++ .../7.1.0_1633126009463/topology | 56 ++ .../7.1.0_1633126005428/plan.json | 326 ++++++++ .../7.1.0_1633126005428/spec.json | 264 +++++++ .../7.1.0_1633126005428/topology | 50 ++ .../7.1.0_1633126003942/plan.json | 326 ++++++++ .../7.1.0_1633126003942/spec.json | 266 +++++++ .../7.1.0_1633126003942/topology | 50 ++ .../7.1.0_1633126006919/plan.json | 326 ++++++++ .../7.1.0_1633126006919/spec.json | 266 +++++++ .../7.1.0_1633126006919/topology | 50 ++ .../7.1.0_1633126006495/plan.json | 326 ++++++++ .../7.1.0_1633126006495/spec.json | 266 +++++++ .../7.1.0_1633126006495/topology | 50 ++ .../7.1.0_1633126004748/plan.json | 333 ++++++++ .../7.1.0_1633126004748/spec.json | 267 +++++++ .../7.1.0_1633126004748/topology | 62 ++ .../7.1.0_1633126006703/plan.json | 333 ++++++++ .../7.1.0_1633126006703/spec.json | 267 +++++++ .../7.1.0_1633126006703/topology | 62 ++ .../7.1.0_1633126005176/plan.json | 340 +++++++++ .../7.1.0_1633126005176/spec.json | 275 +++++++ .../7.1.0_1633126005176/topology | 74 ++ .../7.1.0_1633126004964/plan.json | 340 +++++++++ .../7.1.0_1633126004964/spec.json | 275 +++++++ .../7.1.0_1633126004964/topology | 74 ++ .../7.1.0_1633126005665/plan.json | 326 ++++++++ .../7.1.0_1633126005665/spec.json | 261 +++++++ .../7.1.0_1633126005665/topology | 50 ++ .../7.1.0_1633126006096/plan.json | 326 ++++++++ .../7.1.0_1633126006096/spec.json | 259 +++++++ .../7.1.0_1633126006096/topology | 50 ++ .../7.1.0_1633126005883/plan.json | 326 ++++++++ .../7.1.0_1633126005883/spec.json | 257 +++++++ .../7.1.0_1633126005883/topology | 50 ++ .../7.1.0_1633126006315/plan.json | 326 ++++++++ .../7.1.0_1633126006315/spec.json | 261 +++++++ .../7.1.0_1633126006315/topology | 50 ++ .../7.1.0_1633126004506/plan.json | 326 ++++++++ .../7.1.0_1633126004506/spec.json | 282 +++++++ .../7.1.0_1633126004506/topology | 50 ++ .../7.1.0_1633126004304/plan.json | 326 ++++++++ .../7.1.0_1633126004304/spec.json | 273 +++++++ .../7.1.0_1633126004304/topology | 50 ++ .../7.1.0_1633126004097/plan.json | 326 ++++++++ .../7.1.0_1633126004097/spec.json | 291 +++++++ .../7.1.0_1633126004097/topology | 50 ++ .../7.1.0_1633126013006/plan.json | 347 +++++++++ .../7.1.0_1633126013006/spec.json | 322 ++++++++ .../7.1.0_1633126013006/topology | 62 ++ .../7.1.0_1633126003766/plan.json | 366 +++++++++ .../7.1.0_1633126003766/spec.json | 314 ++++++++ .../7.1.0_1633126003766/topology | 86 +++ .../7.1.0_1633126013232/plan.json | 402 ++++++++++ .../7.1.0_1633126013232/spec.json | 346 +++++++++ .../7.1.0_1633126013232/topology | 94 +++ .../7.1.0_1633126012680/plan.json | 451 +++++++++++ .../7.1.0_1633126012680/spec.json | 473 ++++++++++++ .../7.1.0_1633126012680/topology | 125 +++ .../7.1.0_1633126011001/plan.json | 334 ++++++++ .../7.1.0_1633126011001/spec.json | 303 ++++++++ .../7.1.0_1633126011001/topology | 71 ++ .../7.1.0_1633126010743/plan.json | 334 ++++++++ .../7.1.0_1633126010743/spec.json | 294 ++++++++ .../7.1.0_1633126010743/topology | 71 ++ .../7.1.0_1633126007113/plan.json | 349 +++++++++ .../7.1.0_1633126007113/spec.json | 301 ++++++++ .../7.1.0_1633126007113/topology | 71 ++ .../7.1.0_1633126010473/plan.json | 349 +++++++++ .../7.1.0_1633126010473/spec.json | 310 ++++++++ .../7.1.0_1633126010473/topology | 89 +++ .../7.1.0_1633126003340/plan.json | 326 ++++++++ .../7.1.0_1633126003340/spec.json | 258 +++++++ .../7.1.0_1633126003340/topology | 50 ++ .../7.1.0_1633126013655/plan.json | 165 ++++ .../7.1.0_1633126013655/spec.json | 253 +++++++ .../7.1.0_1633126013655/topology | 13 + .../7.1.0_1633126013689/plan.json | 165 ++++ .../7.1.0_1633126013689/spec.json | 118 +++ .../7.1.0_1633126013689/topology | 13 + .../7.1.0_1633126013701/plan.json | 165 ++++ .../7.1.0_1633126013701/spec.json | 106 +++ .../7.1.0_1633126013701/topology | 13 + .../7.1.0_1633126013711/plan.json | 172 +++++ .../7.1.0_1633126013711/spec.json | 107 +++ .../7.1.0_1633126013711/topology | 16 + .../7.1.0_1633126013741/plan.json | 257 +++++++ .../7.1.0_1633126013741/spec.json | 183 +++++ .../7.1.0_1633126013741/topology | 45 ++ .../7.1.0_1633126013727/plan.json | 175 +++++ .../7.1.0_1633126013727/spec.json | 123 +++ .../7.1.0_1633126013727/topology | 16 + .../7.1.0_1633126013824/plan.json | 217 ++++++ .../7.1.0_1633126013824/spec.json | 155 ++++ .../7.1.0_1633126013824/topology | 40 + .../7.1.0_1633126014273/plan.json | 166 ++++ .../7.1.0_1633126014273/spec.json | 138 ++++ .../7.1.0_1633126014273/topology | 13 + .../7.1.0_1633126014301/plan.json | 166 ++++ .../7.1.0_1633126014301/spec.json | 136 ++++ .../7.1.0_1633126014301/topology | 13 + .../7.1.0_1633126014238/plan.json | 166 ++++ .../7.1.0_1633126014238/spec.json | 123 +++ .../7.1.0_1633126014238/topology | 13 + .../7.1.0_1633126014205/plan.json | 166 ++++ .../7.1.0_1633126014205/spec.json | 123 +++ .../7.1.0_1633126014205/topology | 13 + .../7.1.0_1633126014255/plan.json | 166 ++++ .../7.1.0_1633126014255/spec.json | 123 +++ .../7.1.0_1633126014255/topology | 13 + .../7.1.0_1633126014325/plan.json | 166 ++++ .../7.1.0_1633126014325/spec.json | 226 ++++++ .../7.1.0_1633126014325/topology | 13 + .../7.1.0_1633126014081/plan.json | 217 ++++++ .../7.1.0_1633126014081/spec.json | 169 +++++ .../7.1.0_1633126014081/topology | 40 + .../7.1.0_1633126014000/plan.json | 212 ++++++ .../7.1.0_1633126014000/spec.json | 155 ++++ .../7.1.0_1633126014000/topology | 40 + .../7.1.0_1633126013982/plan.json | 177 +++++ .../7.1.0_1633126013982/spec.json | 135 ++++ .../7.1.0_1633126013982/topology | 16 + .../7.1.0_1633126013967/plan.json | 173 +++++ .../7.1.0_1633126013967/spec.json | 118 +++ .../7.1.0_1633126013967/topology | 16 + .../7.1.0_1633126013913/plan.json | 166 ++++ .../7.1.0_1633126013913/spec.json | 106 +++ .../7.1.0_1633126013913/topology | 13 + .../7.1.0_1633126013950/plan.json | 173 +++++ .../7.1.0_1633126013950/spec.json | 102 +++ .../7.1.0_1633126013950/topology | 16 + .../7.1.0_1633126014505/plan.json | 165 ++++ .../7.1.0_1633126014505/spec.json | 96 +++ .../7.1.0_1633126014505/topology | 13 + .../7.1.0_1633126014519/plan.json | 165 ++++ .../7.1.0_1633126014519/spec.json | 96 +++ .../7.1.0_1633126014519/topology | 13 + .../7.1.0_1633126014533/plan.json | 165 ++++ .../7.1.0_1633126014533/spec.json | 96 +++ .../7.1.0_1633126014533/topology | 13 + .../7.1.0_1633126014493/plan.json | 165 ++++ .../7.1.0_1633126014493/spec.json | 96 +++ .../7.1.0_1633126014493/topology | 13 + .../7.1.0_1633126014369/plan.json | 165 ++++ .../7.1.0_1633126014369/spec.json | 96 +++ .../7.1.0_1633126014369/topology | 13 + .../7.1.0_1633126014357/plan.json | 165 ++++ .../7.1.0_1633126014357/spec.json | 96 +++ .../7.1.0_1633126014357/topology | 13 + .../7.1.0_1633126014481/plan.json | 165 ++++ .../7.1.0_1633126014481/spec.json | 96 +++ .../7.1.0_1633126014481/topology | 13 + .../7.1.0_1633126014445/plan.json | 165 ++++ .../7.1.0_1633126014445/spec.json | 98 +++ .../7.1.0_1633126014445/topology | 13 + .../7.1.0_1633126014418/plan.json | 165 ++++ .../7.1.0_1633126014418/spec.json | 96 +++ .../7.1.0_1633126014418/topology | 13 + .../7.1.0_1633126014406/plan.json | 165 ++++ .../7.1.0_1633126014406/spec.json | 96 +++ .../7.1.0_1633126014406/topology | 13 + .../7.1.0_1633126014467/plan.json | 165 ++++ .../7.1.0_1633126014467/spec.json | 96 +++ .../7.1.0_1633126014467/topology | 13 + .../7.1.0_1633126014429/plan.json | 165 ++++ .../7.1.0_1633126014429/spec.json | 97 +++ .../7.1.0_1633126014429/topology | 13 + .../7.1.0_1633126014393/plan.json | 165 ++++ .../7.1.0_1633126014393/spec.json | 96 +++ .../7.1.0_1633126014393/topology | 13 + .../7.1.0_1633126014381/plan.json | 165 ++++ .../7.1.0_1633126014381/spec.json | 96 +++ .../7.1.0_1633126014381/topology | 13 + .../7.1.0_1633126014545/plan.json | 166 ++++ .../7.1.0_1633126014545/spec.json | 126 ++++ .../7.1.0_1633126014545/topology | 13 + .../7.1.0_1633126014561/plan.json | 166 ++++ .../7.1.0_1633126014561/spec.json | 118 +++ .../7.1.0_1633126014561/topology | 13 + .../7.1.0_1633126015237/plan.json | 173 +++++ .../7.1.0_1633126015237/spec.json | 94 +++ .../7.1.0_1633126015237/topology | 16 + .../7.1.0_1633126014752/plan.json | 173 +++++ .../7.1.0_1633126014752/spec.json | 100 +++ .../7.1.0_1633126014752/topology | 16 + .../7.1.0_1633126014737/plan.json | 173 +++++ .../7.1.0_1633126014737/spec.json | 100 +++ .../7.1.0_1633126014737/topology | 16 + .../7.1.0_1633126014721/plan.json | 173 +++++ .../7.1.0_1633126014721/spec.json | 100 +++ .../7.1.0_1633126014721/topology | 16 + .../7.1.0_1633126015224/plan.json | 173 +++++ .../7.1.0_1633126015224/spec.json | 94 +++ .../7.1.0_1633126015224/topology | 16 + .../7.1.0_1633126015330/plan.json | 173 +++++ .../7.1.0_1633126015330/spec.json | 102 +++ .../7.1.0_1633126015330/topology | 16 + .../7.1.0_1633126016654/plan.json | 173 +++++ .../7.1.0_1633126016654/spec.json | 148 ++++ .../7.1.0_1633126016654/topology | 16 + .../7.1.0_1633126016532/plan.json | 175 +++++ .../7.1.0_1633126016532/spec.json | 159 ++++ .../7.1.0_1633126016532/topology | 16 + .../7.1.0_1633126016562/plan.json | 175 +++++ .../7.1.0_1633126016562/spec.json | 159 ++++ .../7.1.0_1633126016562/topology | 16 + .../7.1.0_1633126016475/plan.json | 173 +++++ .../7.1.0_1633126016475/spec.json | 148 ++++ .../7.1.0_1633126016475/topology | 16 + .../7.1.0_1633126016489/plan.json | 173 +++++ .../7.1.0_1633126016489/spec.json | 148 ++++ .../7.1.0_1633126016489/topology | 16 + .../7.1.0_1633126016503/plan.json | 173 +++++ .../7.1.0_1633126016503/spec.json | 148 ++++ .../7.1.0_1633126016503/topology | 16 + .../7.1.0_1633126016448/plan.json | 173 +++++ .../7.1.0_1633126016448/spec.json | 148 ++++ .../7.1.0_1633126016448/topology | 16 + .../7.1.0_1633126016462/plan.json | 173 +++++ .../7.1.0_1633126016462/spec.json | 148 ++++ .../7.1.0_1633126016462/topology | 16 + .../7.1.0_1633126016518/plan.json | 175 +++++ .../7.1.0_1633126016518/spec.json | 159 ++++ .../7.1.0_1633126016518/topology | 16 + .../7.1.0_1633126016547/plan.json | 175 +++++ .../7.1.0_1633126016547/spec.json | 159 ++++ .../7.1.0_1633126016547/topology | 16 + .../7.1.0_1633126016577/plan.json | 175 +++++ .../7.1.0_1633126016577/spec.json | 159 ++++ .../7.1.0_1633126016577/topology | 16 + .../7.1.0_1633126016641/plan.json | 175 +++++ .../7.1.0_1633126016641/spec.json | 136 ++++ .../7.1.0_1633126016641/topology | 16 + .../7.1.0_1633126016621/plan.json | 175 +++++ .../7.1.0_1633126016621/spec.json | 149 ++++ .../7.1.0_1633126016621/topology | 16 + .../7.1.0_1633126016592/plan.json | 173 +++++ .../7.1.0_1633126016592/spec.json | 155 ++++ .../7.1.0_1633126016592/topology | 16 + .../7.1.0_1633126016607/plan.json | 173 +++++ .../7.1.0_1633126016607/spec.json | 94 +++ .../7.1.0_1633126016607/topology | 16 + .../7.1.0_1633126014626/plan.json | 173 +++++ .../7.1.0_1633126014626/spec.json | 99 +++ .../7.1.0_1633126014626/topology | 16 + .../7.1.0_1633126016271/plan.json | 177 +++++ .../7.1.0_1633126016271/spec.json | 103 +++ .../7.1.0_1633126016271/topology | 16 + .../7.1.0_1633126014767/plan.json | 172 +++++ .../7.1.0_1633126014767/spec.json | 100 +++ .../7.1.0_1633126014767/topology | 16 + .../7.1.0_1633126015094/plan.json | 173 +++++ .../7.1.0_1633126015094/spec.json | 110 +++ .../7.1.0_1633126015094/topology | 16 + .../7.1.0_1633126016244/plan.json | 173 +++++ .../7.1.0_1633126016244/spec.json | 120 +++ .../7.1.0_1633126016244/topology | 16 + .../7.1.0_1633126016193/plan.json | 166 ++++ .../7.1.0_1633126016193/spec.json | 125 +++ .../7.1.0_1633126016193/topology | 13 + .../7.1.0_1633126014615/plan.json | 166 ++++ .../7.1.0_1633126014615/spec.json | 99 +++ .../7.1.0_1633126014615/topology | 13 + .../7.1.0_1633126014603/plan.json | 166 ++++ .../7.1.0_1633126014603/spec.json | 99 +++ .../7.1.0_1633126014603/topology | 13 + .../7.1.0_1633126014781/plan.json | 251 ++++++ .../7.1.0_1633126014781/spec.json | 185 +++++ .../7.1.0_1633126014781/topology | 42 ++ .../7.1.0_1633126014930/plan.json | 265 +++++++ .../7.1.0_1633126014930/spec.json | 201 +++++ .../7.1.0_1633126014930/topology | 66 ++ .../7.1.0_1633126015146/plan.json | 166 ++++ .../7.1.0_1633126015146/spec.json | 123 +++ .../7.1.0_1633126015146/topology | 13 + .../7.1.0_1633126015315/plan.json | 166 ++++ .../7.1.0_1633126015315/spec.json | 102 +++ .../7.1.0_1633126015315/topology | 13 + .../7.1.0_1633126015250/plan.json | 173 +++++ .../7.1.0_1633126015250/spec.json | 94 +++ .../7.1.0_1633126015250/topology | 16 + .../7.1.0_1633126015718/plan.json | 251 ++++++ .../7.1.0_1633126015718/spec.json | 175 +++++ .../7.1.0_1633126015718/topology | 42 ++ .../7.1.0_1633126015420/plan.json | 173 +++++ .../7.1.0_1633126015420/spec.json | 101 +++ .../7.1.0_1633126015420/topology | 16 + .../7.1.0_1633126016283/plan.json | 177 +++++ .../7.1.0_1633126016283/spec.json | 103 +++ .../7.1.0_1633126016283/topology | 16 + .../7.1.0_1633126016382/plan.json | 177 +++++ .../7.1.0_1633126016382/spec.json | 113 +++ .../7.1.0_1633126016382/topology | 16 + .../7.1.0_1633126016348/plan.json | 177 +++++ .../7.1.0_1633126016348/spec.json | 110 +++ .../7.1.0_1633126016348/topology | 16 + .../7.1.0_1633126016364/plan.json | 177 +++++ .../7.1.0_1633126016364/spec.json | 107 +++ .../7.1.0_1633126016364/topology | 16 + .../7.1.0_1633126015396/plan.json | 166 ++++ .../7.1.0_1633126015396/spec.json | 99 +++ .../7.1.0_1633126015396/topology | 13 + .../7.1.0_1633126015434/plan.json | 244 ++++++ .../7.1.0_1633126015434/spec.json | 174 +++++ .../7.1.0_1633126015434/topology | 39 + .../7.1.0_1633126015554/plan.json | 265 +++++++ .../7.1.0_1633126015554/spec.json | 189 +++++ .../7.1.0_1633126015554/topology | 66 ++ .../7.1.0_1633126016417/plan.json | 189 +++++ .../7.1.0_1633126016417/spec.json | 148 ++++ .../7.1.0_1633126016417/topology | 16 + .../7.1.0_1633126015865/plan.json | 265 +++++++ .../7.1.0_1633126015865/spec.json | 190 +++++ .../7.1.0_1633126015865/topology | 66 ++ .../7.1.0_1633126016025/plan.json | 258 +++++++ .../7.1.0_1633126016025/spec.json | 190 +++++ .../7.1.0_1633126016025/topology | 63 ++ .../7.1.0_1633126015408/plan.json | 166 ++++ .../7.1.0_1633126015408/spec.json | 99 +++ .../7.1.0_1633126015408/topology | 13 + .../7.1.0_1633126015382/plan.json | 173 +++++ .../7.1.0_1633126015382/spec.json | 98 +++ .../7.1.0_1633126015382/topology | 16 + .../7.1.0_1633126016434/plan.json | 183 +++++ .../7.1.0_1633126016434/spec.json | 129 ++++ .../7.1.0_1633126016434/topology | 16 + .../7.1.0_1633126016296/plan.json | 177 +++++ .../7.1.0_1633126016296/spec.json | 109 +++ .../7.1.0_1633126016296/topology | 16 + .../7.1.0_1633126016334/plan.json | 179 +++++ .../7.1.0_1633126016334/spec.json | 110 +++ .../7.1.0_1633126016334/topology | 16 + .../7.1.0_1633126016401/plan.json | 189 +++++ .../7.1.0_1633126016401/spec.json | 138 ++++ .../7.1.0_1633126016401/topology | 16 + .../7.1.0_1633126015365/plan.json | 173 +++++ .../7.1.0_1633126015365/spec.json | 102 +++ .../7.1.0_1633126015365/topology | 16 + .../7.1.0_1633126015298/plan.json | 173 +++++ .../7.1.0_1633126015298/spec.json | 102 +++ .../7.1.0_1633126015298/topology | 16 + .../7.1.0_1633126015280/plan.json | 173 +++++ .../7.1.0_1633126015280/spec.json | 94 +++ .../7.1.0_1633126015280/topology | 16 + .../7.1.0_1633126015212/plan.json | 173 +++++ .../7.1.0_1633126015212/spec.json | 94 +++ .../7.1.0_1633126015212/topology | 16 + .../7.1.0_1633126016258/plan.json | 173 +++++ .../7.1.0_1633126016258/spec.json | 125 +++ .../7.1.0_1633126016258/topology | 16 + .../7.1.0_1633126016226/plan.json | 166 ++++ .../7.1.0_1633126016226/spec.json | 128 ++++ .../7.1.0_1633126016226/topology | 13 + .../7.1.0_1633126015118/plan.json | 173 +++++ .../7.1.0_1633126015118/spec.json | 101 +++ .../7.1.0_1633126015118/topology | 16 + .../7.1.0_1633126015181/plan.json | 173 +++++ .../7.1.0_1633126015181/spec.json | 102 +++ .../7.1.0_1633126015181/topology | 16 + .../7.1.0_1633126015165/plan.json | 173 +++++ .../7.1.0_1633126015165/spec.json | 100 +++ .../7.1.0_1633126015165/topology | 16 + .../7.1.0_1633126014654/plan.json | 173 +++++ .../7.1.0_1633126014654/spec.json | 101 +++ .../7.1.0_1633126014654/topology | 16 + .../7.1.0_1633126014639/plan.json | 173 +++++ .../7.1.0_1633126014639/spec.json | 101 +++ .../7.1.0_1633126014639/topology | 16 + .../7.1.0_1633126014688/plan.json | 173 +++++ .../7.1.0_1633126014688/spec.json | 103 +++ .../7.1.0_1633126014688/topology | 16 + .../7.1.0_1633126014669/plan.json | 173 +++++ .../7.1.0_1633126014669/spec.json | 107 +++ .../7.1.0_1633126014669/topology | 16 + .../7.1.0_1633126014705/plan.json | 173 +++++ .../7.1.0_1633126014705/spec.json | 103 +++ .../7.1.0_1633126014705/topology | 16 + .../7.1.0_1633126015347/plan.json | 173 +++++ .../7.1.0_1633126015347/spec.json | 102 +++ .../7.1.0_1633126015347/topology | 16 + .../7.1.0_1633126015263/plan.json | 173 +++++ .../7.1.0_1633126015263/spec.json | 99 +++ .../7.1.0_1633126015263/topology | 16 + .../7.1.0_1633126015198/plan.json | 173 +++++ .../7.1.0_1633126015198/spec.json | 99 +++ .../7.1.0_1633126015198/topology | 16 + .../7.1.0_1633126017028/plan.json | 173 +++++ .../7.1.0_1633126017028/spec.json | 98 +++ .../7.1.0_1633126017028/topology | 16 + .../7.1.0_1633126016845/plan.json | 173 +++++ .../7.1.0_1633126016845/spec.json | 106 +++ .../7.1.0_1633126016845/topology | 16 + .../7.1.0_1633126016916/plan.json | 173 +++++ .../7.1.0_1633126016916/spec.json | 126 ++++ .../7.1.0_1633126016916/topology | 16 + .../7.1.0_1633126016931/plan.json | 173 +++++ .../7.1.0_1633126016931/spec.json | 118 +++ .../7.1.0_1633126016931/topology | 16 + .../7.1.0_1633126016863/plan.json | 173 +++++ .../7.1.0_1633126016863/spec.json | 102 +++ .../7.1.0_1633126016863/topology | 16 + .../7.1.0_1633126016899/plan.json | 173 +++++ .../7.1.0_1633126016899/spec.json | 102 +++ .../7.1.0_1633126016899/topology | 16 + .../7.1.0_1633126016881/plan.json | 173 +++++ .../7.1.0_1633126016881/spec.json | 106 +++ .../7.1.0_1633126016881/topology | 16 + .../7.1.0_1633126016827/plan.json | 173 +++++ .../7.1.0_1633126016827/spec.json | 106 +++ .../7.1.0_1633126016827/topology | 16 + .../7.1.0_1633126016947/plan.json | 173 +++++ .../7.1.0_1633126016947/spec.json | 102 +++ .../7.1.0_1633126016947/topology | 16 + .../7.1.0_1633126016791/plan.json | 173 +++++ .../7.1.0_1633126016791/spec.json | 98 +++ .../7.1.0_1633126016791/topology | 16 + .../7.1.0_1633126017045/plan.json | 173 +++++ .../7.1.0_1633126017045/spec.json | 118 +++ .../7.1.0_1633126017045/topology | 16 + .../7.1.0_1633126016981/plan.json | 173 +++++ .../7.1.0_1633126016981/spec.json | 102 +++ .../7.1.0_1633126016981/topology | 16 + .../7.1.0_1633126016809/plan.json | 173 +++++ .../7.1.0_1633126016809/spec.json | 106 +++ .../7.1.0_1633126016809/topology | 16 + .../7.1.0_1633126016693/plan.json | 173 +++++ .../7.1.0_1633126016693/spec.json | 138 ++++ .../7.1.0_1633126016693/topology | 16 + .../7.1.0_1633126016773/plan.json | 166 ++++ .../7.1.0_1633126016773/spec.json | 156 ++++ .../7.1.0_1633126016773/topology | 13 + .../7.1.0_1633126016756/plan.json | 166 ++++ .../7.1.0_1633126016756/spec.json | 156 ++++ .../7.1.0_1633126016756/topology | 13 + .../7.1.0_1633126016967/plan.json | 173 +++++ .../7.1.0_1633126016967/spec.json | 106 +++ .../7.1.0_1633126016967/topology | 16 + .../7.1.0_1633126016999/plan.json | 166 ++++ .../7.1.0_1633126016999/spec.json | 112 +++ .../7.1.0_1633126016999/topology | 13 + .../7.1.0_1633126017014/plan.json | 166 ++++ .../7.1.0_1633126017014/spec.json | 116 +++ .../7.1.0_1633126017014/topology | 13 + .../7.1.0_1633126016709/plan.json | 173 +++++ .../7.1.0_1633126016709/spec.json | 101 +++ .../7.1.0_1633126016709/topology | 16 + .../7.1.0_1633126017071/plan.json | 173 +++++ .../7.1.0_1633126017071/spec.json | 124 +++ .../7.1.0_1633126017071/topology | 16 + .../7.1.0_1633126016668/plan.json | 173 +++++ .../7.1.0_1633126016668/spec.json | 102 +++ .../7.1.0_1633126016668/topology | 16 + .../7.1.0_1633126016738/plan.json | 173 +++++ .../7.1.0_1633126016738/spec.json | 102 +++ .../7.1.0_1633126016738/topology | 16 + .../7.1.0_1633126017059/plan.json | 166 ++++ .../7.1.0_1633126017059/spec.json | 140 ++++ .../7.1.0_1633126017059/topology | 13 + .../7.1.0_1633126016680/plan.json | 166 ++++ .../7.1.0_1633126016680/spec.json | 94 +++ .../7.1.0_1633126016680/topology | 13 + .../7.1.0_1633126017096/plan.json | 166 ++++ .../7.1.0_1633126017096/spec.json | 99 +++ .../7.1.0_1633126017096/topology | 13 + .../7.1.0_1633126017084/plan.json | 166 ++++ .../7.1.0_1633126017084/spec.json | 98 +++ .../7.1.0_1633126017084/topology | 13 + .../7.1.0_1633126017611/plan.json | 166 ++++ .../7.1.0_1633126017611/spec.json | 134 ++++ .../7.1.0_1633126017611/topology | 13 + .../7.1.0_1633126017596/plan.json | 166 ++++ .../7.1.0_1633126017596/spec.json | 134 ++++ .../7.1.0_1633126017596/topology | 13 + .../7.1.0_1633126017525/plan.json | 166 ++++ .../7.1.0_1633126017525/spec.json | 134 ++++ .../7.1.0_1633126017525/topology | 13 + .../7.1.0_1633126017511/plan.json | 166 ++++ .../7.1.0_1633126017511/spec.json | 134 ++++ .../7.1.0_1633126017511/topology | 13 + .../7.1.0_1633126017465/plan.json | 166 ++++ .../7.1.0_1633126017465/spec.json | 134 ++++ .../7.1.0_1633126017465/topology | 13 + .../7.1.0_1633126017450/plan.json | 166 ++++ .../7.1.0_1633126017450/spec.json | 134 ++++ .../7.1.0_1633126017450/topology | 13 + .../7.1.0_1633126017552/plan.json | 166 ++++ .../7.1.0_1633126017552/spec.json | 134 ++++ .../7.1.0_1633126017552/topology | 13 + .../7.1.0_1633126017539/plan.json | 166 ++++ .../7.1.0_1633126017539/spec.json | 134 ++++ .../7.1.0_1633126017539/topology | 13 + .../7.1.0_1633126017496/plan.json | 166 ++++ .../7.1.0_1633126017496/spec.json | 134 ++++ .../7.1.0_1633126017496/topology | 13 + .../7.1.0_1633126017480/plan.json | 166 ++++ .../7.1.0_1633126017480/spec.json | 134 ++++ .../7.1.0_1633126017480/topology | 13 + .../7.1.0_1633126017582/plan.json | 166 ++++ .../7.1.0_1633126017582/spec.json | 134 ++++ .../7.1.0_1633126017582/topology | 13 + .../7.1.0_1633126017567/plan.json | 166 ++++ .../7.1.0_1633126017567/spec.json | 134 ++++ .../7.1.0_1633126017567/topology | 13 + .../7.1.0_1633126017626/plan.json | 166 ++++ .../7.1.0_1633126017626/spec.json | 138 ++++ .../7.1.0_1633126017626/topology | 13 + .../7.1.0_1633126017233/plan.json | 165 ++++ .../7.1.0_1633126017233/spec.json | 108 +++ .../7.1.0_1633126017233/topology | 13 + .../7.1.0_1633126017290/plan.json | 165 ++++ .../7.1.0_1633126017290/spec.json | 132 ++++ .../7.1.0_1633126017290/topology | 13 + .../7.1.0_1633126017274/plan.json | 165 ++++ .../7.1.0_1633126017274/spec.json | 114 +++ .../7.1.0_1633126017274/topology | 13 + .../7.1.0_1633126017255/plan.json | 166 ++++ .../7.1.0_1633126017255/spec.json | 114 +++ .../7.1.0_1633126017255/topology | 13 + .../7.1.0_1633126017427/plan.json | 165 ++++ .../7.1.0_1633126017427/spec.json | 110 +++ .../7.1.0_1633126017427/topology | 13 + .../7.1.0_1633126017336/plan.json | 166 ++++ .../7.1.0_1633126017336/spec.json | 112 +++ .../7.1.0_1633126017336/topology | 13 + .../7.1.0_1633126017306/plan.json | 165 ++++ .../7.1.0_1633126017306/spec.json | 110 +++ .../7.1.0_1633126017306/topology | 13 + .../7.1.0_1633126017170/plan.json | 166 ++++ .../7.1.0_1633126017170/spec.json | 110 +++ .../7.1.0_1633126017170/topology | 13 + .../7.1.0_1633126017123/plan.json | 167 ++++ .../7.1.0_1633126017123/spec.json | 124 +++ .../7.1.0_1633126017123/topology | 13 + .../7.1.0_1633126017136/plan.json | 167 ++++ .../7.1.0_1633126017136/spec.json | 132 ++++ .../7.1.0_1633126017136/topology | 13 + .../7.1.0_1633126017109/plan.json | 168 +++++ .../7.1.0_1633126017109/spec.json | 124 +++ .../7.1.0_1633126017109/topology | 13 + .../7.1.0_1633126017152/plan.json | 167 ++++ .../7.1.0_1633126017152/spec.json | 144 ++++ .../7.1.0_1633126017152/topology | 13 + .../7.1.0_1633126017377/plan.json | 165 ++++ .../7.1.0_1633126017377/spec.json | 114 +++ .../7.1.0_1633126017377/topology | 13 + .../7.1.0_1633126017412/plan.json | 165 ++++ .../7.1.0_1633126017412/spec.json | 106 +++ .../7.1.0_1633126017412/topology | 13 + .../7.1.0_1633126017641/plan.json | 165 ++++ .../7.1.0_1633126017641/spec.json | 104 +++ .../7.1.0_1633126017641/topology | 13 + .../7.1.0_1633126017396/plan.json | 165 ++++ .../7.1.0_1633126017396/spec.json | 102 +++ .../7.1.0_1633126017396/topology | 13 + .../7.1.0_1633126017724/plan.json | 182 +++++ .../7.1.0_1633126017724/spec.json | 124 +++ .../7.1.0_1633126017724/topology | 22 + .../7.1.0_1633126017857/plan.json | 257 +++++++ .../7.1.0_1633126017857/spec.json | 193 +++++ .../7.1.0_1633126017857/topology | 45 ++ .../7.1.0_1633126018045/plan.json | 166 ++++ .../7.1.0_1633126018045/spec.json | 99 +++ .../7.1.0_1633126018045/topology | 13 + .../7.1.0_1633126017710/plan.json | 166 ++++ .../7.1.0_1633126017710/spec.json | 99 +++ .../7.1.0_1633126017710/topology | 13 + .../7.1.0_1633126017815/plan.json | 173 +++++ .../7.1.0_1633126017815/spec.json | 98 +++ .../7.1.0_1633126017815/topology | 16 + .../7.1.0_1633126017677/plan.json | 166 ++++ .../7.1.0_1633126017677/spec.json | 102 +++ .../7.1.0_1633126017677/topology | 13 + .../7.1.0_1633126017659/plan.json | 166 ++++ .../7.1.0_1633126017659/spec.json | 102 +++ .../7.1.0_1633126017659/topology | 13 + .../7.1.0_1633126018007/plan.json | 166 ++++ .../7.1.0_1633126018007/spec.json | 98 +++ .../7.1.0_1633126018007/topology | 13 + .../7.1.0_1633126017695/plan.json | 166 ++++ .../7.1.0_1633126017695/spec.json | 98 +++ .../7.1.0_1633126017695/topology | 13 + .../7.1.0_1633126018097/plan.json | 166 ++++ .../7.1.0_1633126018097/spec.json | 122 +++ .../7.1.0_1633126018097/topology | 13 + .../7.1.0_1633126018062/plan.json | 166 ++++ .../7.1.0_1633126018062/spec.json | 122 +++ .../7.1.0_1633126018062/topology | 13 + .../7.1.0_1633126018080/plan.json | 166 ++++ .../7.1.0_1633126018080/spec.json | 112 +++ .../7.1.0_1633126018080/topology | 13 + .../7.1.0_1633126018116/plan.json | 166 ++++ .../7.1.0_1633126018116/spec.json | 130 ++++ .../7.1.0_1633126018116/topology | 13 + .../7.1.0_1633126018158/plan.json | 166 ++++ .../7.1.0_1633126018158/spec.json | 130 ++++ .../7.1.0_1633126018158/topology | 13 + .../7.1.0_1633126018141/plan.json | 166 ++++ .../7.1.0_1633126018141/spec.json | 115 +++ .../7.1.0_1633126018141/topology | 13 + .../7.1.0_1633126018208/plan.json | 166 ++++ .../7.1.0_1633126018208/spec.json | 158 ++++ .../7.1.0_1633126018208/topology | 13 + .../7.1.0_1633126018188/plan.json | 166 ++++ .../7.1.0_1633126018188/spec.json | 146 ++++ .../7.1.0_1633126018188/topology | 13 + .../7.1.0_1633126018238/plan.json | 166 ++++ .../7.1.0_1633126018238/spec.json | 158 ++++ .../7.1.0_1633126018238/topology | 13 + .../7.1.0_1633126018223/plan.json | 166 ++++ .../7.1.0_1633126018223/spec.json | 146 ++++ .../7.1.0_1633126018223/topology | 13 + .../7.1.0_1633126018252/plan.json | 166 ++++ .../7.1.0_1633126018252/spec.json | 158 ++++ .../7.1.0_1633126018252/topology | 13 + .../7.1.0_1633126018338/plan.json | 165 ++++ .../7.1.0_1633126018338/spec.json | 94 +++ .../7.1.0_1633126018338/topology | 13 + .../7.1.0_1633126018323/plan.json | 166 ++++ .../7.1.0_1633126018323/spec.json | 138 ++++ .../7.1.0_1633126018323/topology | 13 + .../7.1.0_1633126018269/plan.json | 166 ++++ .../7.1.0_1633126018269/spec.json | 131 ++++ .../7.1.0_1633126018269/topology | 13 + .../7.1.0_1633126018296/plan.json | 166 ++++ .../7.1.0_1633126018296/spec.json | 131 ++++ .../7.1.0_1633126018296/topology | 13 + .../7.1.0_1633126018917/plan.json | 166 ++++ .../7.1.0_1633126018917/spec.json | 131 ++++ .../7.1.0_1633126018917/topology | 13 + .../7.1.0_1633126019027/plan.json | 173 +++++ .../7.1.0_1633126019027/spec.json | 130 ++++ .../7.1.0_1633126019027/topology | 16 + .../7.1.0_1633126019010/plan.json | 173 +++++ .../7.1.0_1633126019010/spec.json | 131 ++++ .../7.1.0_1633126019010/topology | 16 + .../7.1.0_1633126019165/plan.json | 213 ++++++ .../7.1.0_1633126019165/spec.json | 171 +++++ .../7.1.0_1633126019165/topology | 40 + .../7.1.0_1633126019048/plan.json | 213 ++++++ .../7.1.0_1633126019048/spec.json | 171 +++++ .../7.1.0_1633126019048/topology | 40 + .../7.1.0_1633126018979/plan.json | 173 +++++ .../7.1.0_1633126018979/spec.json | 126 ++++ .../7.1.0_1633126018979/topology | 16 + .../7.1.0_1633126018994/plan.json | 173 +++++ .../7.1.0_1633126018994/spec.json | 126 ++++ .../7.1.0_1633126018994/topology | 16 + .../7.1.0_1633126018965/plan.json | 166 ++++ .../7.1.0_1633126018965/spec.json | 131 ++++ .../7.1.0_1633126018965/topology | 13 + .../7.1.0_1633126018352/plan.json | 166 ++++ .../7.1.0_1633126018352/spec.json | 134 ++++ .../7.1.0_1633126018352/topology | 13 + .../7.1.0_1633126018369/plan.json | 182 +++++ .../7.1.0_1633126018369/spec.json | 157 ++++ .../7.1.0_1633126018369/topology | 22 + .../7.1.0_1633126018680/plan.json | 258 +++++++ .../7.1.0_1633126018680/spec.json | 238 ++++++ .../7.1.0_1633126018680/topology | 63 ++ .../7.1.0_1633126018468/plan.json | 258 +++++++ .../7.1.0_1633126018468/spec.json | 208 +++++ .../7.1.0_1633126018468/topology | 63 ++ .../7.1.0_1633126019372/plan.json | 166 ++++ .../7.1.0_1633126019372/spec.json | 101 +++ .../7.1.0_1633126019372/topology | 13 + .../7.1.0_1633126019360/plan.json | 166 ++++ .../7.1.0_1633126019360/spec.json | 98 +++ .../7.1.0_1633126019360/topology | 13 + .../7.1.0_1633126019310/plan.json | 166 ++++ .../7.1.0_1633126019310/spec.json | 98 +++ .../7.1.0_1633126019310/topology | 13 + .../7.1.0_1633126019331/plan.json | 166 ++++ .../7.1.0_1633126019331/spec.json | 104 +++ .../7.1.0_1633126019331/topology | 13 + .../7.1.0_1633126019348/plan.json | 166 ++++ .../7.1.0_1633126019348/spec.json | 98 +++ .../7.1.0_1633126019348/topology | 13 + .../7.1.0_1633126019387/plan.json | 168 +++++ .../7.1.0_1633126019387/spec.json | 102 +++ .../7.1.0_1633126019387/topology | 13 + .../7.1.0_1633126019433/plan.json | 169 +++++ .../7.1.0_1633126019433/spec.json | 103 +++ .../7.1.0_1633126019433/topology | 13 + .../7.1.0_1633126019421/plan.json | 168 +++++ .../7.1.0_1633126019421/spec.json | 102 +++ .../7.1.0_1633126019421/topology | 13 + .../7.1.0_1633126019406/plan.json | 168 +++++ .../7.1.0_1633126019406/spec.json | 122 +++ .../7.1.0_1633126019406/topology | 13 + .../7.1.0_1633126019869/plan.json | 175 +++++ .../7.1.0_1633126019869/spec.json | 200 +++++ .../7.1.0_1633126019869/topology | 13 + .../7.1.0_1633126020101/plan.json | 221 ++++++ .../7.1.0_1633126020101/spec.json | 213 ++++++ .../7.1.0_1633126020101/topology | 43 ++ .../7.1.0_1633126019623/plan.json | 216 ++++++ .../7.1.0_1633126019623/spec.json | 231 ++++++ .../7.1.0_1633126019623/topology | 28 + .../7.1.0_1633126019446/plan.json | 216 ++++++ .../7.1.0_1633126019446/spec.json | 281 +++++++ .../7.1.0_1633126019446/topology | 28 + .../7.1.0_1633126019905/plan.json | 315 ++++++++ .../7.1.0_1633126019905/spec.json | 275 +++++++ .../7.1.0_1633126019905/topology | 16 + .../7.1.0_1633126021094/plan.json | 166 ++++ .../7.1.0_1633126021094/spec.json | 106 +++ .../7.1.0_1633126021094/topology | 13 + .../7.1.0_1633126021061/plan.json | 166 ++++ .../7.1.0_1633126021061/spec.json | 106 +++ .../7.1.0_1633126021061/topology | 13 + .../7.1.0_1633126021078/plan.json | 166 ++++ .../7.1.0_1633126021078/spec.json | 100 +++ .../7.1.0_1633126021078/topology | 13 + .../7.1.0_1633126020375/plan.json | 166 ++++ .../7.1.0_1633126020375/spec.json | 276 +++++++ .../7.1.0_1633126020375/topology | 13 + .../7.1.0_1633126020401/plan.json | 173 +++++ .../7.1.0_1633126020401/spec.json | 488 ++++++++++++ .../7.1.0_1633126020401/topology | 16 + .../7.1.0_1633126020438/plan.json | 173 +++++ .../7.1.0_1633126020438/spec.json | 257 +++++++ .../7.1.0_1633126020438/topology | 16 + .../7.1.0_1633126020462/plan.json | 173 +++++ .../7.1.0_1633126020462/spec.json | 261 +++++++ .../7.1.0_1633126020462/topology | 16 + .../7.1.0_1633126020497/plan.json | 173 +++++ .../7.1.0_1633126020497/spec.json | 489 ++++++++++++ .../7.1.0_1633126020497/topology | 16 + .../7.1.0_1633126020545/plan.json | 173 +++++ .../7.1.0_1633126020545/spec.json | 246 ++++++ .../7.1.0_1633126020545/topology | 16 + .../7.1.0_1633126020597/plan.json | 173 +++++ .../7.1.0_1633126020597/spec.json | 250 ++++++ .../7.1.0_1633126020597/topology | 16 + .../7.1.0_1633126020812/plan.json | 173 +++++ .../7.1.0_1633126020812/spec.json | 493 ++++++++++++ .../7.1.0_1633126020812/topology | 16 + .../7.1.0_1633126020888/plan.json | 173 +++++ .../7.1.0_1633126020888/spec.json | 254 +++++++ .../7.1.0_1633126020888/topology | 16 + .../7.1.0_1633126020937/plan.json | 173 +++++ .../7.1.0_1633126020937/spec.json | 258 +++++++ .../7.1.0_1633126020937/topology | 16 + .../7.1.0_1633126021038/plan.json | 166 ++++ .../7.1.0_1633126021038/spec.json | 109 +++ .../7.1.0_1633126021038/topology | 13 + .../7.1.0_1633126020246/plan.json | 166 ++++ .../7.1.0_1633126020246/spec.json | 712 ++++++++++++++++++ .../7.1.0_1633126020246/topology | 13 + .../7.1.0_1633126020302/plan.json | 166 ++++ .../7.1.0_1633126020302/spec.json | 386 ++++++++++ .../7.1.0_1633126020302/topology | 13 + .../7.1.0_1633126020336/plan.json | 166 ++++ .../7.1.0_1633126020336/spec.json | 390 ++++++++++ .../7.1.0_1633126020336/topology | 13 + .../7.1.0_1633126020977/plan.json | 166 ++++ .../7.1.0_1633126020977/spec.json | 527 +++++++++++++ .../7.1.0_1633126020977/topology | 13 + .../7.1.0_1633126021012/plan.json | 166 ++++ .../7.1.0_1633126021012/spec.json | 276 +++++++ .../7.1.0_1633126021012/topology | 13 + .../7.1.0_1633126020665/plan.json | 173 +++++ .../7.1.0_1633126020665/spec.json | 567 ++++++++++++++ .../7.1.0_1633126020665/topology | 16 + .../7.1.0_1633126020708/plan.json | 173 +++++ .../7.1.0_1633126020708/spec.json | 300 ++++++++ .../7.1.0_1633126020708/topology | 16 + .../7.1.0_1633126020747/plan.json | 173 +++++ .../7.1.0_1633126020747/spec.json | 304 ++++++++ .../7.1.0_1633126020747/topology | 16 + .../7.1.0_1633126021165/plan.json | 165 ++++ .../7.1.0_1633126021165/spec.json | 130 ++++ .../7.1.0_1633126021165/topology | 13 + .../7.1.0_1633126021149/plan.json | 165 ++++ .../7.1.0_1633126021149/spec.json | 126 ++++ .../7.1.0_1633126021149/topology | 13 + .../7.1.0_1633126021181/plan.json | 166 ++++ .../7.1.0_1633126021181/spec.json | 98 +++ .../7.1.0_1633126021181/topology | 13 + .../7.1.0_1633126021209/plan.json | 166 ++++ .../7.1.0_1633126021209/spec.json | 101 +++ .../7.1.0_1633126021209/topology | 13 + .../7.1.0_1633126021195/plan.json | 166 ++++ .../7.1.0_1633126021195/spec.json | 101 +++ .../7.1.0_1633126021195/topology | 13 + .../7.1.0_1633126021234/plan.json | 166 ++++ .../7.1.0_1633126021234/spec.json | 98 +++ .../7.1.0_1633126021234/topology | 13 + .../7.1.0_1633126021247/plan.json | 166 ++++ .../7.1.0_1633126021247/spec.json | 110 +++ .../7.1.0_1633126021247/topology | 13 + .../7.1.0_1633126021220/plan.json | 166 ++++ .../7.1.0_1633126021220/spec.json | 98 +++ .../7.1.0_1633126021220/topology | 13 + .../7.1.0_1633126021258/plan.json | 166 ++++ .../7.1.0_1633126021258/spec.json | 110 +++ .../7.1.0_1633126021258/topology | 13 + .../7.1.0_1633126021270/plan.json | 227 ++++++ .../7.1.0_1633126021270/spec.json | 144 ++++ .../7.1.0_1633126021270/topology | 22 + .../7.1.0_1633126021714/plan.json | 166 ++++ .../7.1.0_1633126021714/spec.json | 236 ++++++ .../7.1.0_1633126021714/topology | 13 + .../7.1.0_1633126021700/plan.json | 166 ++++ .../7.1.0_1633126021700/spec.json | 151 ++++ .../7.1.0_1633126021700/topology | 13 + .../7.1.0_1633126021669/plan.json | 166 ++++ .../7.1.0_1633126021669/spec.json | 158 ++++ .../7.1.0_1633126021669/topology | 13 + .../7.1.0_1633126021511/plan.json | 166 ++++ .../7.1.0_1633126021511/spec.json | 166 ++++ .../7.1.0_1633126021511/topology | 13 + .../7.1.0_1633126021490/plan.json | 166 ++++ .../7.1.0_1633126021490/spec.json | 166 ++++ .../7.1.0_1633126021490/topology | 13 + .../7.1.0_1633126021649/plan.json | 166 ++++ .../7.1.0_1633126021649/spec.json | 166 ++++ .../7.1.0_1633126021649/topology | 13 + .../7.1.0_1633126022131/plan.json | 212 ++++++ .../7.1.0_1633126022131/spec.json | 284 +++++++ .../7.1.0_1633126022131/topology | 25 + .../7.1.0_1633126022335/plan.json | 212 ++++++ .../7.1.0_1633126022335/spec.json | 201 +++++ .../7.1.0_1633126022335/topology | 25 + .../7.1.0_1633126021728/plan.json | 212 ++++++ .../7.1.0_1633126021728/spec.json | 284 +++++++ .../7.1.0_1633126021728/topology | 25 + .../7.1.0_1633126021911/plan.json | 212 ++++++ .../7.1.0_1633126021911/spec.json | 284 +++++++ .../7.1.0_1633126021911/topology | 25 + .../7.1.0_1633126022568/plan.json | 166 ++++ .../7.1.0_1633126022568/spec.json | 212 ++++++ .../7.1.0_1633126022568/topology | 13 + .../7.1.0_1633126022584/plan.json | 166 ++++ .../7.1.0_1633126022584/spec.json | 106 +++ .../7.1.0_1633126022584/topology | 13 + .../7.1.0_1633126022597/plan.json | 166 ++++ .../7.1.0_1633126022597/spec.json | 212 ++++++ .../7.1.0_1633126022597/topology | 13 + .../7.1.0_1633126022611/plan.json | 166 ++++ .../7.1.0_1633126022611/spec.json | 106 +++ .../7.1.0_1633126022611/topology | 13 + .../7.1.0_1633126022527/plan.json | 166 ++++ .../7.1.0_1633126022527/spec.json | 134 ++++ .../7.1.0_1633126022527/topology | 13 + .../7.1.0_1633126022500/plan.json | 166 ++++ .../7.1.0_1633126022500/spec.json | 142 ++++ .../7.1.0_1633126022500/topology | 13 + .../7.1.0_1633126022553/plan.json | 166 ++++ .../7.1.0_1633126022553/spec.json | 118 +++ .../7.1.0_1633126022553/topology | 13 + .../7.1.0_1633126022639/plan.json | 166 ++++ .../7.1.0_1633126022639/spec.json | 110 +++ .../7.1.0_1633126022639/topology | 13 + .../7.1.0_1633126022652/plan.json | 166 ++++ .../7.1.0_1633126022652/spec.json | 110 +++ .../7.1.0_1633126022652/topology | 13 + .../7.1.0_1633126022625/plan.json | 166 ++++ .../7.1.0_1633126022625/spec.json | 118 +++ .../7.1.0_1633126022625/topology | 13 + .../7.1.0_1633126022676/plan.json | 166 ++++ .../7.1.0_1633126022676/spec.json | 102 +++ .../7.1.0_1633126022676/topology | 13 + .../7.1.0_1633126022689/plan.json | 166 ++++ .../7.1.0_1633126022689/spec.json | 102 +++ .../7.1.0_1633126022689/topology | 13 + .../7.1.0_1633126022705/plan.json | 166 ++++ .../7.1.0_1633126022705/spec.json | 102 +++ .../7.1.0_1633126022705/topology | 13 + .../7.1.0_1633126022716/plan.json | 166 ++++ .../7.1.0_1633126022716/spec.json | 103 +++ .../7.1.0_1633126022716/topology | 13 + .../7.1.0_1633126022777/plan.json | 166 ++++ .../7.1.0_1633126022777/spec.json | 138 ++++ .../7.1.0_1633126022777/topology | 13 + .../7.1.0_1633126022836/plan.json | 166 ++++ .../7.1.0_1633126022836/spec.json | 142 ++++ .../7.1.0_1633126022836/topology | 13 + .../7.1.0_1633126022734/plan.json | 166 ++++ .../7.1.0_1633126022734/spec.json | 128 ++++ .../7.1.0_1633126022734/topology | 13 + .../7.1.0_1633126022755/plan.json | 166 ++++ .../7.1.0_1633126022755/spec.json | 128 ++++ .../7.1.0_1633126022755/topology | 13 + .../7.1.0_1633126022791/plan.json | 166 ++++ .../7.1.0_1633126022791/spec.json | 131 ++++ .../7.1.0_1633126022791/topology | 13 + .../7.1.0_1633126022814/plan.json | 166 ++++ .../7.1.0_1633126022814/spec.json | 131 ++++ .../7.1.0_1633126022814/topology | 13 + .../7.1.0_1633126022883/plan.json | 213 ++++++ .../7.1.0_1633126022883/spec.json | 177 +++++ .../7.1.0_1633126022883/topology | 40 + .../7.1.0_1633126022858/plan.json | 166 ++++ .../7.1.0_1633126022858/spec.json | 98 +++ .../7.1.0_1633126022858/topology | 13 + .../7.1.0_1633126022870/plan.json | 166 ++++ .../7.1.0_1633126022870/spec.json | 98 +++ .../7.1.0_1633126022870/topology | 13 + .../7.1.0_1633126024060/plan.json | 212 ++++++ .../7.1.0_1633126024060/spec.json | 257 +++++++ .../7.1.0_1633126024060/topology | 25 + .../7.1.0_1633126023974/plan.json | 212 ++++++ .../7.1.0_1633126023974/spec.json | 220 ++++++ .../7.1.0_1633126023974/topology | 25 + .../7.1.0_1633126024198/plan.json | 212 ++++++ .../7.1.0_1633126024198/spec.json | 201 +++++ .../7.1.0_1633126024198/topology | 25 + .../7.1.0_1633126023067/plan.json | 212 ++++++ .../7.1.0_1633126023067/spec.json | 220 ++++++ .../7.1.0_1633126023067/topology | 25 + .../7.1.0_1633126023245/plan.json | 313 ++++++++ .../7.1.0_1633126023245/spec.json | 463 ++++++++++++ .../7.1.0_1633126023245/topology | 69 ++ .../7.1.0_1633126024768/plan.json | 212 ++++++ .../7.1.0_1633126024768/spec.json | 169 +++++ .../7.1.0_1633126024768/topology | 25 + .../7.1.0_1633126024857/plan.json | 212 ++++++ .../7.1.0_1633126024857/spec.json | 169 +++++ .../7.1.0_1633126024857/topology | 25 + .../7.1.0_1633126024957/plan.json | 212 ++++++ .../7.1.0_1633126024957/spec.json | 169 +++++ .../7.1.0_1633126024957/topology | 25 + .../7.1.0_1633126023812/plan.json | 212 ++++++ .../7.1.0_1633126023812/spec.json | 220 ++++++ .../7.1.0_1633126023812/topology | 25 + .../7.1.0_1633126024636/plan.json | 212 ++++++ .../7.1.0_1633126024636/spec.json | 201 +++++ .../7.1.0_1633126024636/topology | 25 + .../7.1.0_1633126024350/plan.json | 212 ++++++ .../7.1.0_1633126024350/spec.json | 201 +++++ .../7.1.0_1633126024350/topology | 25 + .../7.1.0_1633126024512/plan.json | 212 ++++++ .../7.1.0_1633126024512/spec.json | 201 +++++ .../7.1.0_1633126024512/topology | 25 + .../7.1.0_1633126026029/plan.json | 234 ++++++ .../7.1.0_1633126026029/spec.json | 217 ++++++ .../7.1.0_1633126026029/topology | 34 + .../7.1.0_1633126025700/plan.json | 234 ++++++ .../7.1.0_1633126025700/spec.json | 236 ++++++ .../7.1.0_1633126025700/topology | 34 + .../7.1.0_1633126025473/plan.json | 234 ++++++ .../7.1.0_1633126025473/spec.json | 196 +++++ .../7.1.0_1633126025473/topology | 34 + .../7.1.0_1633126025096/plan.json | 234 ++++++ .../7.1.0_1633126025096/spec.json | 196 +++++ .../7.1.0_1633126025096/topology | 34 + .../7.1.0_1633126025881/plan.json | 234 ++++++ .../7.1.0_1633126025881/spec.json | 222 ++++++ .../7.1.0_1633126025881/topology | 34 + .../7.1.0_1633126025559/plan.json | 234 ++++++ .../7.1.0_1633126025559/spec.json | 229 ++++++ .../7.1.0_1633126025559/topology | 34 + .../7.1.0_1633126025356/plan.json | 234 ++++++ .../7.1.0_1633126025356/spec.json | 172 +++++ .../7.1.0_1633126025356/topology | 34 + .../7.1.0_1633126025256/plan.json | 234 ++++++ .../7.1.0_1633126025256/spec.json | 172 +++++ .../7.1.0_1633126025256/topology | 34 + .../7.1.0_1633126026600/plan.json | 234 ++++++ .../7.1.0_1633126026600/spec.json | 248 ++++++ .../7.1.0_1633126026600/topology | 34 + .../7.1.0_1633126026488/plan.json | 233 ++++++ .../7.1.0_1633126026488/spec.json | 244 ++++++ .../7.1.0_1633126026488/topology | 34 + .../7.1.0_1633126026175/plan.json | 234 ++++++ .../7.1.0_1633126026175/spec.json | 229 ++++++ .../7.1.0_1633126026175/topology | 34 + .../7.1.0_1633126026330/plan.json | 234 ++++++ .../7.1.0_1633126026330/spec.json | 262 +++++++ .../7.1.0_1633126026330/topology | 34 + .../7.1.0_1633126027320/plan.json | 241 ++++++ .../7.1.0_1633126027320/spec.json | 229 ++++++ .../7.1.0_1633126027320/topology | 37 + .../7.1.0_1633126026957/plan.json | 376 +++++++++ .../7.1.0_1633126026957/spec.json | 320 ++++++++ .../7.1.0_1633126026957/topology | 34 + .../7.1.0_1633126026774/plan.json | 234 ++++++ .../7.1.0_1633126026774/spec.json | 255 +++++++ .../7.1.0_1633126026774/topology | 34 + .../7.1.0_1633126027865/plan.json | 173 +++++ .../7.1.0_1633126027865/spec.json | 137 ++++ .../7.1.0_1633126027865/topology | 16 + .../7.1.0_1633126028111/plan.json | 173 +++++ .../7.1.0_1633126028111/spec.json | 118 +++ .../7.1.0_1633126028111/topology | 16 + .../7.1.0_1633126028093/plan.json | 173 +++++ .../7.1.0_1633126028093/spec.json | 118 +++ .../7.1.0_1633126028093/topology | 16 + .../7.1.0_1633126028129/plan.json | 172 +++++ .../7.1.0_1633126028129/spec.json | 132 ++++ .../7.1.0_1633126028129/topology | 16 + .../7.1.0_1633126027795/plan.json | 173 +++++ .../7.1.0_1633126027795/spec.json | 128 ++++ .../7.1.0_1633126027795/topology | 16 + .../7.1.0_1633126027776/plan.json | 173 +++++ .../7.1.0_1633126027776/spec.json | 128 ++++ .../7.1.0_1633126027776/topology | 16 + .../7.1.0_1633126027850/plan.json | 173 +++++ .../7.1.0_1633126027850/spec.json | 124 +++ .../7.1.0_1633126027850/topology | 16 + .../7.1.0_1633126027834/plan.json | 173 +++++ .../7.1.0_1633126027834/spec.json | 124 +++ .../7.1.0_1633126027834/topology | 16 + .../7.1.0_1633126027814/plan.json | 173 +++++ .../7.1.0_1633126027814/spec.json | 128 ++++ .../7.1.0_1633126027814/topology | 16 + .../7.1.0_1633126028011/plan.json | 180 +++++ .../7.1.0_1633126028011/spec.json | 149 ++++ .../7.1.0_1633126028011/topology | 19 + .../7.1.0_1633126027886/plan.json | 173 +++++ .../7.1.0_1633126027886/spec.json | 117 +++ .../7.1.0_1633126027886/topology | 16 + .../7.1.0_1633126027945/plan.json | 173 +++++ .../7.1.0_1633126027945/spec.json | 142 ++++ .../7.1.0_1633126027945/topology | 16 + .../7.1.0_1633126027933/plan.json | 173 +++++ .../7.1.0_1633126027933/spec.json | 98 +++ .../7.1.0_1633126027933/topology | 16 + .../7.1.0_1633126027963/plan.json | 173 +++++ .../7.1.0_1633126027963/spec.json | 156 ++++ .../7.1.0_1633126027963/topology | 16 + .../7.1.0_1633126027981/plan.json | 173 +++++ .../7.1.0_1633126027981/spec.json | 114 +++ .../7.1.0_1633126027981/topology | 16 + .../7.1.0_1633126027918/plan.json | 173 +++++ .../7.1.0_1633126027918/spec.json | 142 ++++ .../7.1.0_1633126027918/topology | 16 + .../7.1.0_1633126028049/plan.json | 173 +++++ .../7.1.0_1633126028049/spec.json | 132 ++++ .../7.1.0_1633126028049/topology | 16 + .../7.1.0_1633126028074/plan.json | 173 +++++ .../7.1.0_1633126028074/spec.json | 128 ++++ .../7.1.0_1633126028074/topology | 16 + .../7.1.0_1633126028030/plan.json | 173 +++++ .../7.1.0_1633126028030/spec.json | 126 ++++ .../7.1.0_1633126028030/topology | 16 + .../7.1.0_1633126027562/plan.json | 182 +++++ .../7.1.0_1633126027562/spec.json | 123 +++ .../7.1.0_1633126027562/topology | 22 + .../7.1.0_1633126027619/plan.json | 182 +++++ .../7.1.0_1633126027619/spec.json | 136 ++++ .../7.1.0_1633126027619/topology | 22 + .../7.1.0_1633126027697/plan.json | 182 +++++ .../7.1.0_1633126027697/spec.json | 132 ++++ .../7.1.0_1633126027697/topology | 22 + .../7.1.0_1633126027511/plan.json | 182 +++++ .../7.1.0_1633126027511/spec.json | 120 +++ .../7.1.0_1633126027511/topology | 22 + .../7.1.0_1633126027429/plan.json | 182 +++++ .../7.1.0_1633126027429/spec.json | 139 ++++ .../7.1.0_1633126027429/topology | 22 + .../7.1.0_1633126028155/plan.json | 212 ++++++ .../7.1.0_1633126028155/spec.json | 177 +++++ .../7.1.0_1633126028155/topology | 25 + .../7.1.0_1633126028317/plan.json | 229 ++++++ .../7.1.0_1633126028317/spec.json | 207 +++++ .../7.1.0_1633126028317/topology | 43 ++ .../7.1.0_1633126028627/plan.json | 213 ++++++ .../7.1.0_1633126028627/spec.json | 186 +++++ .../7.1.0_1633126028627/topology | 40 + .../7.1.0_1633126028750/plan.json | 166 ++++ .../7.1.0_1633126028750/spec.json | 144 ++++ .../7.1.0_1633126028750/topology | 13 + .../7.1.0_1633126028739/plan.json | 166 ++++ .../7.1.0_1633126028739/spec.json | 94 +++ .../7.1.0_1633126028739/topology | 13 + .../7.1.0_1633126028961/plan.json | 166 ++++ .../7.1.0_1633126028961/spec.json | 212 ++++++ .../7.1.0_1633126028961/topology | 13 + .../7.1.0_1633126028763/plan.json | 166 ++++ .../7.1.0_1633126028763/spec.json | 98 +++ .../7.1.0_1633126028763/topology | 13 + .../7.1.0_1633126028946/plan.json | 166 ++++ .../7.1.0_1633126028946/spec.json | 212 ++++++ .../7.1.0_1633126028946/topology | 13 + .../7.1.0_1633126028773/plan.json | 166 ++++ .../7.1.0_1633126028773/spec.json | 102 +++ .../7.1.0_1633126028773/topology | 13 + .../7.1.0_1633126029022/plan.json | 173 +++++ .../7.1.0_1633126029022/spec.json | 162 ++++ .../7.1.0_1633126029022/topology | 16 + .../7.1.0_1633126028802/plan.json | 166 ++++ .../7.1.0_1633126028802/spec.json | 182 +++++ .../7.1.0_1633126028802/topology | 13 + .../7.1.0_1633126028786/plan.json | 166 ++++ .../7.1.0_1633126028786/spec.json | 153 ++++ .../7.1.0_1633126028786/topology | 13 + .../7.1.0_1633126028822/plan.json | 166 ++++ .../7.1.0_1633126028822/spec.json | 180 +++++ .../7.1.0_1633126028822/topology | 13 + .../7.1.0_1633126028864/plan.json | 166 ++++ .../7.1.0_1633126028864/spec.json | 199 +++++ .../7.1.0_1633126028864/topology | 13 + .../7.1.0_1633126029007/plan.json | 173 +++++ .../7.1.0_1633126029007/spec.json | 156 ++++ .../7.1.0_1633126029007/topology | 16 + .../7.1.0_1633126028992/plan.json | 166 ++++ .../7.1.0_1633126028992/spec.json | 177 +++++ .../7.1.0_1633126028992/topology | 13 + .../7.1.0_1633126028976/plan.json | 166 ++++ .../7.1.0_1633126028976/spec.json | 212 ++++++ .../7.1.0_1633126028976/topology | 13 + .../7.1.0_1633126028897/plan.json | 166 ++++ .../7.1.0_1633126028897/spec.json | 199 +++++ .../7.1.0_1633126028897/topology | 13 + .../7.1.0_1633126028913/plan.json | 166 ++++ .../7.1.0_1633126028913/spec.json | 199 +++++ .../7.1.0_1633126028913/topology | 13 + .../7.1.0_1633126028882/plan.json | 166 ++++ .../7.1.0_1633126028882/spec.json | 199 +++++ .../7.1.0_1633126028882/topology | 13 + .../7.1.0_1633126028841/plan.json | 166 ++++ .../7.1.0_1633126028841/spec.json | 260 +++++++ .../7.1.0_1633126028841/topology | 13 + .../7.1.0_1633126029037/plan.json | 165 ++++ .../7.1.0_1633126029037/spec.json | 136 ++++ .../7.1.0_1633126029037/topology | 13 + .../7.1.0_1633126029053/plan.json | 166 ++++ .../7.1.0_1633126029053/spec.json | 102 +++ .../7.1.0_1633126029053/topology | 13 + .../7.1.0_1633126029064/plan.json | 166 ++++ .../7.1.0_1633126029064/spec.json | 168 +++++ .../7.1.0_1633126029064/topology | 13 + .../7.1.0_1633126029080/plan.json | 166 ++++ .../7.1.0_1633126029080/spec.json | 179 +++++ .../7.1.0_1633126029080/topology | 13 + .../7.1.0_1633126029463/plan.json | 172 +++++ .../7.1.0_1633126029463/spec.json | 123 +++ .../7.1.0_1633126029463/topology | 16 + .../7.1.0_1633126029479/plan.json | 172 +++++ .../7.1.0_1633126029479/spec.json | 121 +++ .../7.1.0_1633126029479/topology | 16 + .../7.1.0_1633126029451/plan.json | 172 +++++ .../7.1.0_1633126029451/spec.json | 124 +++ .../7.1.0_1633126029451/topology | 13 + .../7.1.0_1633126029388/plan.json | 166 ++++ .../7.1.0_1633126029388/spec.json | 128 ++++ .../7.1.0_1633126029388/topology | 13 + .../7.1.0_1633126029426/plan.json | 174 +++++ .../7.1.0_1633126029426/spec.json | 112 +++ .../7.1.0_1633126029426/topology | 13 + .../7.1.0_1633126029414/plan.json | 172 +++++ .../7.1.0_1633126029414/spec.json | 112 +++ .../7.1.0_1633126029414/topology | 13 + .../7.1.0_1633126029399/plan.json | 174 +++++ .../7.1.0_1633126029399/spec.json | 121 +++ .../7.1.0_1633126029399/topology | 13 + .../7.1.0_1633126029439/plan.json | 181 +++++ .../7.1.0_1633126029439/spec.json | 146 ++++ .../7.1.0_1633126029439/topology | 13 + .../7.1.0_1633126029811/plan.json | 304 ++++++++ .../7.1.0_1633126029811/spec.json | 229 ++++++ .../7.1.0_1633126029811/topology | 72 ++ .../7.1.0_1633126029795/plan.json | 166 ++++ .../7.1.0_1633126029795/spec.json | 98 +++ .../7.1.0_1633126029795/topology | 13 + .../7.1.0_1633126029986/plan.json | 166 ++++ .../7.1.0_1633126029986/spec.json | 114 +++ .../7.1.0_1633126029986/topology | 13 + .../7.1.0_1633126030014/plan.json | 166 ++++ .../7.1.0_1633126030014/spec.json | 114 +++ .../7.1.0_1633126030014/topology | 13 + .../7.1.0_1633126029103/plan.json | 166 ++++ .../7.1.0_1633126029103/spec.json | 144 ++++ .../7.1.0_1633126029103/topology | 13 + .../7.1.0_1633126029093/plan.json | 166 ++++ .../7.1.0_1633126029093/spec.json | 94 +++ .../7.1.0_1633126029093/topology | 13 + .../7.1.0_1633126029206/plan.json | 166 ++++ .../7.1.0_1633126029206/spec.json | 212 ++++++ .../7.1.0_1633126029206/topology | 13 + .../7.1.0_1633126029114/plan.json | 166 ++++ .../7.1.0_1633126029114/spec.json | 98 +++ .../7.1.0_1633126029114/topology | 13 + .../7.1.0_1633126029191/plan.json | 166 ++++ .../7.1.0_1633126029191/spec.json | 212 ++++++ .../7.1.0_1633126029191/topology | 13 + .../7.1.0_1633126029124/plan.json | 166 ++++ .../7.1.0_1633126029124/spec.json | 102 +++ .../7.1.0_1633126029124/topology | 13 + .../7.1.0_1633126029299/plan.json | 173 +++++ .../7.1.0_1633126029299/spec.json | 162 ++++ .../7.1.0_1633126029299/topology | 16 + .../7.1.0_1633126029266/plan.json | 166 ++++ .../7.1.0_1633126029266/spec.json | 170 +++++ .../7.1.0_1633126029266/topology | 13 + .../7.1.0_1633126029250/plan.json | 166 ++++ .../7.1.0_1633126029250/spec.json | 153 ++++ .../7.1.0_1633126029250/topology | 13 + .../7.1.0_1633126029136/plan.json | 166 ++++ .../7.1.0_1633126029136/spec.json | 199 +++++ .../7.1.0_1633126029136/topology | 13 + .../7.1.0_1633126029284/plan.json | 173 +++++ .../7.1.0_1633126029284/spec.json | 156 ++++ .../7.1.0_1633126029284/topology | 16 + .../7.1.0_1633126029236/plan.json | 166 ++++ .../7.1.0_1633126029236/spec.json | 177 +++++ .../7.1.0_1633126029236/topology | 13 + .../7.1.0_1633126029221/plan.json | 166 ++++ .../7.1.0_1633126029221/spec.json | 212 ++++++ .../7.1.0_1633126029221/topology | 13 + .../7.1.0_1633126029163/plan.json | 166 ++++ .../7.1.0_1633126029163/spec.json | 199 +++++ .../7.1.0_1633126029163/topology | 13 + .../7.1.0_1633126029177/plan.json | 166 ++++ .../7.1.0_1633126029177/spec.json | 199 +++++ .../7.1.0_1633126029177/topology | 13 + .../7.1.0_1633126029150/plan.json | 166 ++++ .../7.1.0_1633126029150/spec.json | 199 +++++ .../7.1.0_1633126029150/topology | 13 + .../7.1.0_1633126029314/plan.json | 166 ++++ .../7.1.0_1633126029314/spec.json | 260 +++++++ .../7.1.0_1633126029314/topology | 13 + .../7.1.0_1633126029331/plan.json | 165 ++++ .../7.1.0_1633126029331/spec.json | 136 ++++ .../7.1.0_1633126029331/topology | 13 + .../7.1.0_1633126029347/plan.json | 166 ++++ .../7.1.0_1633126029347/spec.json | 94 +++ .../7.1.0_1633126029347/topology | 13 + .../7.1.0_1633126029359/plan.json | 166 ++++ .../7.1.0_1633126029359/spec.json | 168 +++++ .../7.1.0_1633126029359/topology | 13 + .../7.1.0_1633126029373/plan.json | 166 ++++ .../7.1.0_1633126029373/spec.json | 179 +++++ .../7.1.0_1633126029373/topology | 13 + .../7.1.0_1633126029726/plan.json | 174 +++++ .../7.1.0_1633126029726/spec.json | 88 +++ .../7.1.0_1633126029726/topology | 16 + .../7.1.0_1633126029521/plan.json | 172 +++++ .../7.1.0_1633126029521/spec.json | 123 +++ .../7.1.0_1633126029521/topology | 16 + .../7.1.0_1633126029537/plan.json | 174 +++++ .../7.1.0_1633126029537/spec.json | 126 ++++ .../7.1.0_1633126029537/topology | 16 + .../7.1.0_1633126029553/plan.json | 188 +++++ .../7.1.0_1633126029553/spec.json | 149 ++++ .../7.1.0_1633126029553/topology | 25 + .../7.1.0_1633126029671/plan.json | 174 +++++ .../7.1.0_1633126029671/spec.json | 126 ++++ .../7.1.0_1633126029671/topology | 16 + .../7.1.0_1633126029709/plan.json | 172 +++++ .../7.1.0_1633126029709/spec.json | 114 +++ .../7.1.0_1633126029709/topology | 13 + .../7.1.0_1633126029492/plan.json | 174 +++++ .../7.1.0_1633126029492/spec.json | 134 ++++ .../7.1.0_1633126029492/topology | 13 + .../7.1.0_1633126029509/plan.json | 174 +++++ .../7.1.0_1633126029509/spec.json | 100 +++ .../7.1.0_1633126029509/topology | 13 + .../7.1.0_1633126029778/plan.json | 166 ++++ .../7.1.0_1633126029778/spec.json | 179 +++++ .../7.1.0_1633126029778/topology | 13 + .../7.1.0_1633126029744/plan.json | 166 ++++ .../7.1.0_1633126029744/spec.json | 94 +++ .../7.1.0_1633126029744/topology | 13 + .../7.1.0_1633126029759/plan.json | 166 ++++ .../7.1.0_1633126029759/spec.json | 168 +++++ .../7.1.0_1633126029759/topology | 13 + .../7.1.0_1633126030051/plan.json | 166 ++++ .../7.1.0_1633126030051/spec.json | 179 +++++ .../7.1.0_1633126030051/topology | 13 + .../7.1.0_1633126030026/plan.json | 166 ++++ .../7.1.0_1633126030026/spec.json | 102 +++ .../7.1.0_1633126030026/topology | 13 + .../7.1.0_1633126030037/plan.json | 166 ++++ .../7.1.0_1633126030037/spec.json | 168 +++++ .../7.1.0_1633126030037/topology | 13 + .../7.1.0_1633126030449/plan.json | 212 ++++++ .../7.1.0_1633126030449/spec.json | 301 ++++++++ .../7.1.0_1633126030449/topology | 25 + .../7.1.0_1633126030068/plan.json | 212 ++++++ .../7.1.0_1633126030068/spec.json | 186 +++++ .../7.1.0_1633126030068/topology | 25 + .../7.1.0_1633126030163/plan.json | 212 ++++++ .../7.1.0_1633126030163/spec.json | 186 +++++ .../7.1.0_1633126030163/topology | 25 + .../7.1.0_1633126030281/plan.json | 212 ++++++ .../7.1.0_1633126030281/spec.json | 186 +++++ .../7.1.0_1633126030281/topology | 25 + .../7.1.0_1633126031343/plan.json | 212 ++++++ .../7.1.0_1633126031343/spec.json | 256 +++++++ .../7.1.0_1633126031343/topology | 25 + .../7.1.0_1633126031460/plan.json | 212 ++++++ .../7.1.0_1633126031460/spec.json | 191 +++++ .../7.1.0_1633126031460/topology | 25 + .../7.1.0_1633126031588/plan.json | 212 ++++++ .../7.1.0_1633126031588/spec.json | 196 +++++ .../7.1.0_1633126031588/topology | 25 + .../7.1.0_1633126030578/plan.json | 212 ++++++ .../7.1.0_1633126030578/spec.json | 256 +++++++ .../7.1.0_1633126030578/topology | 25 + .../7.1.0_1633126030680/plan.json | 212 ++++++ .../7.1.0_1633126030680/spec.json | 191 +++++ .../7.1.0_1633126030680/topology | 25 + .../7.1.0_1633126030782/plan.json | 212 ++++++ .../7.1.0_1633126030782/spec.json | 196 +++++ .../7.1.0_1633126030782/topology | 25 + .../7.1.0_1633126030909/plan.json | 212 ++++++ .../7.1.0_1633126030909/spec.json | 256 +++++++ .../7.1.0_1633126030909/topology | 25 + .../7.1.0_1633126031086/plan.json | 212 ++++++ .../7.1.0_1633126031086/spec.json | 191 +++++ .../7.1.0_1633126031086/topology | 25 + .../7.1.0_1633126031192/plan.json | 212 ++++++ .../7.1.0_1633126031192/spec.json | 196 +++++ .../7.1.0_1633126031192/topology | 25 + .../7.1.0_1633126031737/plan.json | 212 ++++++ .../7.1.0_1633126031737/spec.json | 256 +++++++ .../7.1.0_1633126031737/topology | 25 + .../7.1.0_1633126031885/plan.json | 212 ++++++ .../7.1.0_1633126031885/spec.json | 191 +++++ .../7.1.0_1633126031885/topology | 25 + .../7.1.0_1633126032008/plan.json | 212 ++++++ .../7.1.0_1633126032008/spec.json | 196 +++++ .../7.1.0_1633126032008/topology | 25 + .../7.1.0_1633126032160/plan.json | 166 ++++ .../7.1.0_1633126032160/spec.json | 122 +++ .../7.1.0_1633126032160/topology | 13 + .../7.1.0_1633126032271/plan.json | 166 ++++ .../7.1.0_1633126032271/spec.json | 98 +++ .../7.1.0_1633126032271/topology | 13 + .../7.1.0_1633126032254/plan.json | 166 ++++ .../7.1.0_1633126032254/spec.json | 182 +++++ .../7.1.0_1633126032254/topology | 13 + .../7.1.0_1633126032195/plan.json | 166 ++++ .../7.1.0_1633126032195/spec.json | 164 ++++ .../7.1.0_1633126032195/topology | 13 + .../7.1.0_1633126032215/plan.json | 166 ++++ .../7.1.0_1633126032215/spec.json | 176 +++++ .../7.1.0_1633126032215/topology | 13 + .../7.1.0_1633126032236/plan.json | 166 ++++ .../7.1.0_1633126032236/spec.json | 203 +++++ .../7.1.0_1633126032236/topology | 13 + .../7.1.0_1633126032311/plan.json | 165 ++++ .../7.1.0_1633126032311/spec.json | 115 +++ .../7.1.0_1633126032311/topology | 13 + .../7.1.0_1633126032286/plan.json | 166 ++++ .../7.1.0_1633126032286/spec.json | 226 ++++++ .../7.1.0_1633126032286/topology | 13 + .../7.1.0_1633126032384/plan.json | 166 ++++ .../7.1.0_1633126032384/spec.json | 232 ++++++ .../7.1.0_1633126032384/topology | 13 + .../7.1.0_1633126032343/plan.json | 166 ++++ .../7.1.0_1633126032343/spec.json | 219 ++++++ .../7.1.0_1633126032343/topology | 13 + .../7.1.0_1633126032364/plan.json | 166 ++++ .../7.1.0_1633126032364/spec.json | 223 ++++++ .../7.1.0_1633126032364/topology | 13 + .../7.1.0_1633126033290/plan.json | 178 +++++ .../7.1.0_1633126033290/spec.json | 186 +++++ .../7.1.0_1633126033290/topology | 13 + .../7.1.0_1633126032878/plan.json | 217 ++++++ .../7.1.0_1633126032878/spec.json | 210 ++++++ .../7.1.0_1633126032878/topology | 28 + .../7.1.0_1633126033320/plan.json | 222 ++++++ .../7.1.0_1633126033320/spec.json | 207 +++++ .../7.1.0_1633126033320/topology | 43 ++ .../7.1.0_1633126032607/plan.json | 217 ++++++ .../7.1.0_1633126032607/spec.json | 240 ++++++ .../7.1.0_1633126032607/topology | 28 + .../7.1.0_1633126032404/plan.json | 217 ++++++ .../7.1.0_1633126032404/spec.json | 270 +++++++ .../7.1.0_1633126032404/topology | 28 + .../7.1.0_1633126033013/plan.json | 217 ++++++ .../7.1.0_1633126033013/spec.json | 215 ++++++ .../7.1.0_1633126033013/topology | 28 + .../7.1.0_1633126033133/plan.json | 217 ++++++ .../7.1.0_1633126033133/spec.json | 235 ++++++ .../7.1.0_1633126033133/topology | 28 + .../7.1.0_1633126033448/plan.json | 212 ++++++ .../7.1.0_1633126033448/spec.json | 135 ++++ .../7.1.0_1633126033448/topology | 25 + .../7.1.0_1633126033717/plan.json | 166 ++++ .../7.1.0_1633126033717/spec.json | 99 +++ .../7.1.0_1633126033717/topology | 13 + .../7.1.0_1633126033698/plan.json | 166 ++++ .../7.1.0_1633126033698/spec.json | 102 +++ .../7.1.0_1633126033698/topology | 13 + .../7.1.0_1633126033663/plan.json | 166 ++++ .../7.1.0_1633126033663/spec.json | 101 +++ .../7.1.0_1633126033663/topology | 13 + .../7.1.0_1633126033622/plan.json | 166 ++++ .../7.1.0_1633126033622/spec.json | 102 +++ .../7.1.0_1633126033622/topology | 13 + .../7.1.0_1633126033603/plan.json | 166 ++++ .../7.1.0_1633126033603/spec.json | 101 +++ .../7.1.0_1633126033603/topology | 13 + .../7.1.0_1633126033642/plan.json | 166 ++++ .../7.1.0_1633126033642/spec.json | 102 +++ .../7.1.0_1633126033642/topology | 13 + .../7.1.0_1633126033547/plan.json | 166 ++++ .../7.1.0_1633126033547/spec.json | 98 +++ .../udf_-_nested/7.1.0_1633126033547/topology | 13 + .../7.1.0_1633126033561/plan.json | 166 ++++ .../7.1.0_1633126033561/spec.json | 94 +++ .../7.1.0_1633126033561/topology | 13 + .../7.1.0_1633126033590/plan.json | 166 ++++ .../7.1.0_1633126033590/spec.json | 100 +++ .../7.1.0_1633126033590/topology | 13 + .../7.1.0_1633126033578/plan.json | 166 ++++ .../7.1.0_1633126033578/spec.json | 94 +++ .../7.1.0_1633126033578/topology | 13 + .../7.1.0_1633126033742/plan.json | 166 ++++ .../7.1.0_1633126033742/spec.json | 110 +++ .../7.1.0_1633126033742/topology | 13 + .../7.1.0_1633126033729/plan.json | 166 ++++ .../7.1.0_1633126033729/spec.json | 110 +++ .../7.1.0_1633126033729/topology | 13 + .../7.1.0_1633126033766/plan.json | 166 ++++ .../7.1.0_1633126033766/spec.json | 110 +++ .../7.1.0_1633126033766/topology | 13 + .../7.1.0_1633126033754/plan.json | 166 ++++ .../7.1.0_1633126033754/spec.json | 110 +++ .../7.1.0_1633126033754/topology | 13 + .../7.1.0_1633126033919/plan.json | 166 ++++ .../7.1.0_1633126033919/spec.json | 100 +++ .../7.1.0_1633126033919/topology | 13 + .../7.1.0_1633126033932/plan.json | 166 ++++ .../7.1.0_1633126033932/spec.json | 100 +++ .../7.1.0_1633126033932/topology | 13 + .../7.1.0_1633126033806/plan.json | 166 ++++ .../7.1.0_1633126033806/spec.json | 128 ++++ .../7.1.0_1633126033806/topology | 13 + .../7.1.0_1633126033819/plan.json | 166 ++++ .../7.1.0_1633126033819/spec.json | 128 ++++ .../7.1.0_1633126033819/topology | 13 + .../7.1.0_1633126033780/plan.json | 166 ++++ .../7.1.0_1633126033780/spec.json | 128 ++++ .../7.1.0_1633126033780/topology | 13 + .../7.1.0_1633126033793/plan.json | 166 ++++ .../7.1.0_1633126033793/spec.json | 128 ++++ .../7.1.0_1633126033793/topology | 13 + .../7.1.0_1633126033834/plan.json | 166 ++++ .../7.1.0_1633126033834/spec.json | 114 +++ .../7.1.0_1633126033834/topology | 13 + .../7.1.0_1633126033849/plan.json | 166 ++++ .../7.1.0_1633126033849/spec.json | 114 +++ .../7.1.0_1633126033849/topology | 13 + .../7.1.0_1633126033862/plan.json | 166 ++++ .../7.1.0_1633126033862/spec.json | 114 +++ .../7.1.0_1633126033862/topology | 13 + .../7.1.0_1633126033876/plan.json | 166 ++++ .../7.1.0_1633126033876/spec.json | 114 +++ .../7.1.0_1633126033876/topology | 13 + .../7.1.0_1633126033890/plan.json | 166 ++++ .../7.1.0_1633126033890/spec.json | 101 +++ .../7.1.0_1633126033890/topology | 13 + .../7.1.0_1633126033905/plan.json | 166 ++++ .../7.1.0_1633126033905/spec.json | 101 +++ .../7.1.0_1633126033905/topology | 13 + .../7.1.0_1633126033946/plan.json | 166 ++++ .../7.1.0_1633126033946/spec.json | 128 ++++ .../7.1.0_1633126033946/topology | 13 + .../7.1.0_1633126033959/plan.json | 166 ++++ .../7.1.0_1633126033959/spec.json | 128 ++++ .../7.1.0_1633126033959/topology | 13 + .../7.1.0_1633126033971/plan.json | 166 ++++ .../7.1.0_1633126033971/spec.json | 114 +++ .../7.1.0_1633126033971/topology | 13 + .../7.1.0_1633126033984/plan.json | 166 ++++ .../7.1.0_1633126033984/spec.json | 114 +++ .../7.1.0_1633126033984/topology | 13 + .../7.1.0_1633126033996/plan.json | 166 ++++ .../7.1.0_1633126033996/spec.json | 128 ++++ .../7.1.0_1633126033996/topology | 13 + .../7.1.0_1633126034008/plan.json | 166 ++++ .../7.1.0_1633126034008/spec.json | 128 ++++ .../7.1.0_1633126034008/topology | 13 + .../7.1.0_1633126034020/plan.json | 166 ++++ .../7.1.0_1633126034020/spec.json | 142 ++++ .../7.1.0_1633126034020/topology | 13 + .../7.1.0_1633126034034/plan.json | 166 ++++ .../7.1.0_1633126034034/spec.json | 142 ++++ .../7.1.0_1633126034034/topology | 13 + .../7.1.0_1633126034047/plan.json | 173 +++++ .../7.1.0_1633126034047/spec.json | 122 +++ .../7.1.0_1633126034047/topology | 16 + .../7.1.0_1633126034060/plan.json | 173 +++++ .../7.1.0_1633126034060/spec.json | 122 +++ .../7.1.0_1633126034060/topology | 16 + .../7.1.0_1633126034493/plan.json | 217 ++++++ .../7.1.0_1633126034493/spec.json | 195 +++++ .../7.1.0_1633126034493/topology | 28 + .../7.1.0_1633126034359/plan.json | 217 ++++++ .../7.1.0_1633126034359/spec.json | 205 +++++ .../7.1.0_1633126034359/topology | 28 + .../7.1.0_1633126034073/plan.json | 216 ++++++ .../7.1.0_1633126034073/spec.json | 214 ++++++ .../7.1.0_1633126034073/topology | 28 + .../7.1.0_1633126034184/plan.json | 217 ++++++ .../7.1.0_1633126034184/spec.json | 240 ++++++ .../7.1.0_1633126034184/topology | 28 + .../7.1.0_1633126034606/plan.json | 217 ++++++ .../7.1.0_1633126034606/spec.json | 192 +++++ .../7.1.0_1633126034606/topology | 28 + .../7.1.0_1633126034729/plan.json | 217 ++++++ .../7.1.0_1633126034729/spec.json | 186 +++++ .../7.1.0_1633126034729/topology | 28 + .../query-validation-tests/partition-by.json | 58 +- .../row-offset-and-partition.json | 194 +---- .../ksql/rest/util/ScalablePushUtilTest.java | 311 ++++---- .../streams/StreamSelectKeyBuilderTest.java | 2 + .../streams/StreamSelectKeyBuilderV1Test.java | 2 + 4665 files changed, 614635 insertions(+), 409 deletions(-) create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_max/7.1.0_1633125901561/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_max/7.1.0_1633125901561/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_max/7.1.0_1633125901561/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_min/7.1.0_1633125901614/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_min/7.1.0_1633125901614/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_min/7.1.0_1633125901614/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_asc/7.1.0_1633125901669/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_asc/7.1.0_1633125901669/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_asc/7.1.0_1633125901669/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_desc/7.1.0_1633125901714/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_desc/7.1.0_1633125901714/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_desc/7.1.0_1633125901714/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_all_primitive_types/7.1.0_1633125901799/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_all_primitive_types/7.1.0_1633125901799/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_all_primitive_types/7.1.0_1633125901799/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_complex_types/7.1.0_1633125901853/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_complex_types/7.1.0_1633125901853/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_complex_types/7.1.0_1633125901853/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_literal_array/7.1.0_1633125901765/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_literal_array/7.1.0_1633125901765/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_literal_array/7.1.0_1633125901765/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_both_null/7.1.0_1633125902336/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_both_null/7.1.0_1633125902336/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_both_null/7.1.0_1633125902336/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_left_null/7.1.0_1633125902295/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_left_null/7.1.0_1633125902295/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_left_null/7.1.0_1633125902295/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_literals/7.1.0_1633125902185/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_literals/7.1.0_1633125902185/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_literals/7.1.0_1633125902185/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_primitive_type/7.1.0_1633125902273/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_primitive_type/7.1.0_1633125902273/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_primitive_type/7.1.0_1633125902273/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_right_null/7.1.0_1633125902316/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_right_null/7.1.0_1633125902316/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_right_null/7.1.0_1633125902316/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_complex_types/7.1.0_1633125901970/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_complex_types/7.1.0_1633125901970/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_complex_types/7.1.0_1633125901970/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_literals/7.1.0_1633125901884/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_literals/7.1.0_1633125901884/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_literals/7.1.0_1633125901884/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_primitive_types/7.1.0_1633125901919/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_primitive_types/7.1.0_1633125901919/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_primitive_types/7.1.0_1633125901919/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_literals/7.1.0_1633125902001/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_literals/7.1.0_1633125902001/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_literals/7.1.0_1633125902001/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_primitive_type/7.1.0_1633125902037/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_primitive_type/7.1.0_1633125902037/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_primitive_type/7.1.0_1633125902037/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_literals/7.1.0_1633125902062/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_literals/7.1.0_1633125902062/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_literals/7.1.0_1633125902062/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_primitive_type/7.1.0_1633125902097/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_primitive_type/7.1.0_1633125902097/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_primitive_type/7.1.0_1633125902097/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_literals/7.1.0_1633125902121/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_literals/7.1.0_1633125902121/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_literals/7.1.0_1633125902121/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_primitive_type/7.1.0_1633125902156/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_primitive_type/7.1.0_1633125902156/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_primitive_type/7.1.0_1633125902156/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES/7.1.0_1633125901013/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES/7.1.0_1633125901013/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES/7.1.0_1633125901013/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES_with_step/7.1.0_1633125901047/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES_with_step/7.1.0_1633125901047/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES_with_step/7.1.0_1633125901047/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_Output_array_with_an_error/7.1.0_1633125901207/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_Output_array_with_an_error/7.1.0_1633125901207/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_Output_array_with_an_error/7.1.0_1633125901207/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_primitives/7.1.0_1633125901079/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_primitives/7.1.0_1633125901079/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_primitives/7.1.0_1633125901079/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_structured/7.1.0_1633125901142/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_structured/7.1.0_1633125901142/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_structured/7.1.0_1633125901142/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_entries_sorted/7.1.0_1633125898233/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_entries_sorted/7.1.0_1633125898233/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_entries_sorted/7.1.0_1633125898233/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_multi-dimensional/7.1.0_1633125901180/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_multi-dimensional/7.1.0_1633125901180/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/array_-_multi-dimensional/7.1.0_1633125901180/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901272/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901272/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901272/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_STRUCT-_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901323/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_STRUCT-_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901323/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_STRUCT-_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901323/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_first_element_of_an_Array/7.1.0_1633125901353/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_first_element_of_an_Array/7.1.0_1633125901353/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_first_element_of_an_Array/7.1.0_1633125901353/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_last_element_of_an_Array_(-1)/7.1.0_1633125901379/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_last_element_of_an_Array_(-1)/7.1.0_1633125901379/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_last_element_of_an_Array_(-1)/7.1.0_1633125901379/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_custom_delimiters/7.1.0_1633125901455/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_custom_delimiters/7.1.0_1633125901455/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_custom_delimiters/7.1.0_1633125901455/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_default_delimiter/7.1.0_1633125901405/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_default_delimiter/7.1.0_1633125901405/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_default_delimiter/7.1.0_1633125901405/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_empty_or_null_delimiter/7.1.0_1633125901510/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_empty_or_null_delimiter/7.1.0_1633125901510/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_empty_or_null_delimiter/7.1.0_1633125901510/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_ARRAY/7.1.0_1633125902923/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_ARRAY/7.1.0_1633125902923/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_ARRAY/7.1.0_1633125902923/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_BOOLEAN/7.1.0_1633125902879/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_BOOLEAN/7.1.0_1633125902879/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_BOOLEAN/7.1.0_1633125902879/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_DECIMAL/7.1.0_1633125902902/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_DECIMAL/7.1.0_1633125902902/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_DECIMAL/7.1.0_1633125902902/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_STRUCT/7.1.0_1633125902943/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_STRUCT/7.1.0_1633125902943/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_STRUCT/7.1.0_1633125902943/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_expression/7.1.0_1633125902405/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_expression/7.1.0_1633125902405/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_expression/7.1.0_1633125902405/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_group_by/7.1.0_1633125902482/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_group_by/7.1.0_1633125902482/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_group_by/7.1.0_1633125902482/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_join/7.1.0_1633125902722/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_join/7.1.0_1633125902722/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_join/7.1.0_1633125902722/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_key_column/7.1.0_1633125902361/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_key_column/7.1.0_1633125902361/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_key_column/7.1.0_1633125902361/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_partition_by/7.1.0_1633125902431/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_partition_by/7.1.0_1633125902431/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_partition_by/7.1.0_1633125902431/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_value_column/7.1.0_1633125902384/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_value_column/7.1.0_1633125902384/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_value_column/7.1.0_1633125902384/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_double/7.1.0_1633125903360/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_double/7.1.0_1633125903360/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_double/7.1.0_1633125903360/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_int/7.1.0_1633125903105/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_int/7.1.0_1633125903105/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_int/7.1.0_1633125903105/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_long/7.1.0_1633125903232/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_long/7.1.0_1633125903232/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_long/7.1.0_1633125903232/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/average_-_calculate_average_in_select/7.1.0_1633125902969/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/average_-_calculate_average_in_select/7.1.0_1633125902969/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/average_-_calculate_average_in_select/7.1.0_1633125902969/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_inference/7.1.0_1633125904474/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_inference/7.1.0_1633125904474/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_inference/7.1.0_1633125904474/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_no_inference/7.1.0_1633125904455/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_no_inference/7.1.0_1633125904455/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_no_inference/7.1.0_1633125904455/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_inference/7.1.0_1633125904306/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_inference/7.1.0_1633125904306/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_inference/7.1.0_1633125904306/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_no_inference/7.1.0_1633125904287/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_no_inference/7.1.0_1633125904287/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_no_inference/7.1.0_1633125904287/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_inference/7.1.0_1633125904231/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_inference/7.1.0_1633125904231/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_inference/7.1.0_1633125904231/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125904212/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125904212/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125904212/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference/7.1.0_1633125904418/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference/7.1.0_1633125904418/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference/7.1.0_1633125904418/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference_-_default_precision/7.1.0_1633125904436/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference_-_default_precision/7.1.0_1633125904436/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference_-_default_precision/7.1.0_1633125904436/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125904398/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125904398/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125904398/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_inference/7.1.0_1633125904342/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_inference/7.1.0_1633125904342/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_inference/7.1.0_1633125904342/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125904324/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125904324/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125904324/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_inference/7.1.0_1633125904268/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_inference/7.1.0_1633125904268/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_inference/7.1.0_1633125904268/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125904554/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125904554/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125904554/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125904535/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125904535/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125904535/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_no_inference/7.1.0_1633125904250/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_no_inference/7.1.0_1633125904250/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_no_inference/7.1.0_1633125904250/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_inference/7.1.0_1633125904379/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_inference/7.1.0_1633125904379/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_inference/7.1.0_1633125904379/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_no_inference/7.1.0_1633125904361/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_no_inference/7.1.0_1633125904361/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_no_inference/7.1.0_1633125904361/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_inference/7.1.0_1633125904516/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_inference/7.1.0_1633125904516/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_inference/7.1.0_1633125904516/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_no_inference/7.1.0_1633125904494/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_no_inference/7.1.0_1633125904494/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_no_inference/7.1.0_1633125904494/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value/7.1.0_1633125903716/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value/7.1.0_1633125903716/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value/7.1.0_1633125903716/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_non-nullable/7.1.0_1633125903776/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_non-nullable/7.1.0_1633125903776/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_non-nullable/7.1.0_1633125903776/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125903739/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125903739/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125903739/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value/7.1.0_1633125903793/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value/7.1.0_1633125903793/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value/7.1.0_1633125903793/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_non-nullable/7.1.0_1633125903830/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_non-nullable/7.1.0_1633125903830/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_non-nullable/7.1.0_1633125903830/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_with_coercion_-_AVRO/7.1.0_1633125903813/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_with_coercion_-_AVRO/7.1.0_1633125903813/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_with_coercion_-_AVRO/7.1.0_1633125903813/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125903485/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125903485/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125903485/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125903676/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125903676/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125903676/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_inference/7.1.0_1633125903985/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_inference/7.1.0_1633125903985/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_inference/7.1.0_1633125903985/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_no_inference/7.1.0_1633125903966/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_no_inference/7.1.0_1633125903966/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_no_inference/7.1.0_1633125903966/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_array_-_value/7.1.0_1633125903757/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_array_-_value/7.1.0_1633125903757/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_array_-_value/7.1.0_1633125903757/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_primitive_-_value/7.1.0_1633125903695/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_primitive_-_value/7.1.0_1633125903695/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_primitive_-_value/7.1.0_1633125903695/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_array_-_value/7.1.0_1633125903884/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_array_-_value/7.1.0_1633125903884/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_array_-_value/7.1.0_1633125903884/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_map_-_value/7.1.0_1633125903924/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_map_-_value/7.1.0_1633125903924/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_map_-_value/7.1.0_1633125903924/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_primitive_-_value/7.1.0_1633125903848/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_primitive_-_value/7.1.0_1633125903848/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_primitive_-_value/7.1.0_1633125903848/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_struct_-_value/7.1.0_1633125904004/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_struct_-_value/7.1.0_1633125904004/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_struct_-_value/7.1.0_1633125904004/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_array_-_value/7.1.0_1633125903903/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_array_-_value/7.1.0_1633125903903/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_array_-_value/7.1.0_1633125903903/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_map_-_value/7.1.0_1633125903946/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_map_-_value/7.1.0_1633125903946/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_map_-_value/7.1.0_1633125903946/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_primitive_-_value/7.1.0_1633125903866/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_primitive_-_value/7.1.0_1633125903866/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_primitive_-_value/7.1.0_1633125903866/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_struct_-_value/7.1.0_1633125904023/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_struct_-_value/7.1.0_1633125904023/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_struct_-_value/7.1.0_1633125904023/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_coerce_column_types_that_are_not_directly_supported/7.1.0_1633125904146/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_coerce_column_types_that_are_not_directly_supported/7.1.0_1633125904146/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_coerce_column_types_that_are_not_directly_supported/7.1.0_1633125904146/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_enum_to_STRING/7.1.0_1633125904071/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_enum_to_STRING/7.1.0_1633125904071/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_enum_to_STRING/7.1.0_1633125904071/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_record_to_STRUCT/7.1.0_1633125904128/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_record_to_STRUCT/7.1.0_1633125904128/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_record_to_STRUCT/7.1.0_1633125904128/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_not_filter_out_bytes/7.1.0_1633125904162/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_not_filter_out_bytes/7.1.0_1633125904162/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_not_filter_out_bytes/7.1.0_1633125904162/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_arrays/7.1.0_1633125904091/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_arrays/7.1.0_1633125904091/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_arrays/7.1.0_1633125904091/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_maps/7.1.0_1633125904110/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_maps/7.1.0_1633125904110/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_maps/7.1.0_1633125904110/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_partial_schemas/7.1.0_1633125904185/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_partial_schemas/7.1.0_1633125904185/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_partial_schemas/7.1.0_1633125904185/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_primitives/7.1.0_1633125904043/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_primitives/7.1.0_1633125904043/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_primitives/7.1.0_1633125904043/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_array_dereference/7.1.0_1633125904713/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_array_dereference/7.1.0_1633125904713/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_array_dereference/7.1.0_1633125904713/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_bigint/7.1.0_1633125904598/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_bigint/7.1.0_1633125904598/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_bigint/7.1.0_1633125904598/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_floating_point/7.1.0_1633125904618/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_floating_point/7.1.0_1633125904618/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_floating_point/7.1.0_1633125904618/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers/7.1.0_1633125904575/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers/7.1.0_1633125904575/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers/7.1.0_1633125904575/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_expressions/7.1.0_1633125904676/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_expressions/7.1.0_1633125904676/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_expressions/7.1.0_1633125904676/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_variable_values/7.1.0_1633125904657/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_variable_values/7.1.0_1633125904657/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_variable_values/7.1.0_1633125904657/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values/7.1.0_1633125904639/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values/7.1.0_1633125904639/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values/7.1.0_1633125904639/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values_with_substring/7.1.0_1633125904739/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values_with_substring/7.1.0_1633125904739/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values_with_substring/7.1.0_1633125904739/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_NOT_BETWEEN_with_integers/7.1.0_1633125904695/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_NOT_BETWEEN_with_integers/7.1.0_1633125904695/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_NOT_BETWEEN_with_integers/7.1.0_1633125904695/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-arithmetic_-_in_projection/7.1.0_1633125904758/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-arithmetic_-_in_projection/7.1.0_1633125904758/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-arithmetic_-_in_projection/7.1.0_1633125904758/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_array_equality/7.1.0_1633125905430/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_array_equality/7.1.0_1633125905430/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_array_equality/7.1.0_1633125905430/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_between/7.1.0_1633125905160/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_between/7.1.0_1633125905160/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_between/7.1.0_1633125905160/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_equals/7.1.0_1633125904785/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_equals/7.1.0_1633125904785/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_equals/7.1.0_1633125904785/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than/7.1.0_1633125905090/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than/7.1.0_1633125905090/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than/7.1.0_1633125905090/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than_or_equal/7.1.0_1633125905125/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than_or_equal/7.1.0_1633125905125/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than_or_equal/7.1.0_1633125905125/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from/7.1.0_1633125905238/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from/7.1.0_1633125905238/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from/7.1.0_1633125905238/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from_(2)/7.1.0_1633125905254/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from_(2)/7.1.0_1633125905254/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from_(2)/7.1.0_1633125905254/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from/7.1.0_1633125905334/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from/7.1.0_1633125905334/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from/7.1.0_1633125905334/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from_(2)/7.1.0_1633125905351/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from_(2)/7.1.0_1633125905351/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from_(2)/7.1.0_1633125905351/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than/7.1.0_1633125904971/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than/7.1.0_1633125904971/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than/7.1.0_1633125904971/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than_or_equal/7.1.0_1633125905019/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than_or_equal/7.1.0_1633125905019/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than_or_equal/7.1.0_1633125905019/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_map_equality/7.1.0_1633125905457/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_map_equality/7.1.0_1633125905457/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_map_equality/7.1.0_1633125905457/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_nested_collections_comparison/7.1.0_1633125905515/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_nested_collections_comparison/7.1.0_1633125905515/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_nested_collections_comparison/7.1.0_1633125905515/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_between/7.1.0_1633125905200/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_between/7.1.0_1633125905200/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_between/7.1.0_1633125905200/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_equals/7.1.0_1633125904879/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_equals/7.1.0_1633125904879/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_equals/7.1.0_1633125904879/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_struct_equality/7.1.0_1633125905485/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_struct_equality/7.1.0_1633125905485/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_struct_equality/7.1.0_1633125905485/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_ASCII_encoded_string/7.1.0_1633125905696/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_ASCII_encoded_string/7.1.0_1633125905696/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_ASCII_encoded_string/7.1.0_1633125905696/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_BASE64_encoded_string/7.1.0_1633125905747/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_BASE64_encoded_string/7.1.0_1633125905747/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_BASE64_encoded_string/7.1.0_1633125905747/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_HEX_encoded_string/7.1.0_1633125905666/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_HEX_encoded_string/7.1.0_1633125905666/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_HEX_encoded_string/7.1.0_1633125905666/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_UTF8_encoded_string/7.1.0_1633125905723/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_UTF8_encoded_string/7.1.0_1633125905723/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_UTF8_encoded_string/7.1.0_1633125905723/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_LPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905772/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_LPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905772/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_LPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905772/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_RPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905790/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_RPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905790/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_RPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905790/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_AVRO_in_out/7.1.0_1633125905592/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_AVRO_in_out/7.1.0_1633125905592/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_AVRO_in_out/7.1.0_1633125905592/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_DELIMITED_in_out/7.1.0_1633125905531/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_DELIMITED_in_out/7.1.0_1633125905531/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_DELIMITED_in_out/7.1.0_1633125905531/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_JSON_in_out/7.1.0_1633125905544/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_JSON_in_out/7.1.0_1633125905544/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_JSON_in_out/7.1.0_1633125905544/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_PROTOBUF_in_out/7.1.0_1633125905558/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_PROTOBUF_in_out/7.1.0_1633125905558/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_PROTOBUF_in_out/7.1.0_1633125905558/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_bytes_in_complex_types/7.1.0_1633125905609/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_bytes_in_complex_types/7.1.0_1633125905609/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_bytes_in_complex_types/7.1.0_1633125905609/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_filter/7.1.0_1633125905649/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_filter/7.1.0_1633125905649/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_filter/7.1.0_1633125905649/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_greater_than/7.1.0_1633125905632/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_greater_than/7.1.0_1633125905632/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_greater_than/7.1.0_1633125905632/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_as_param_to_UDAF/7.1.0_1633125906039/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_as_param_to_UDAF/7.1.0_1633125906039/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_as_param_to_UDAF/7.1.0_1633125906039/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression/7.1.0_1633125905808/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression/7.1.0_1633125905808/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression/7.1.0_1633125905808/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression_with_structs,_multiple_expression_and_the_same_type/7.1.0_1633125905961/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression_with_structs,_multiple_expression_and_the_same_type/7.1.0_1633125905961/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression_with_structs,_multiple_expression_and_the_same_type/7.1.0_1633125905961/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_default_branch/7.1.0_1633125905938/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_default_branch/7.1.0_1633125905938/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_default_branch/7.1.0_1633125905938/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_first_branch/7.1.0_1633125905889/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_first_branch/7.1.0_1633125905889/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_first_branch/7.1.0_1633125905889/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_later_branch/7.1.0_1633125905913/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_later_branch/7.1.0_1633125905913/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_later_branch/7.1.0_1633125905913/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_arithmetic_expression_in_result/7.1.0_1633125905838/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_arithmetic_expression_in_result/7.1.0_1633125905838/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_arithmetic_expression_in_result/7.1.0_1633125905838/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_null_in_when/7.1.0_1633125905864/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_null_in_when/7.1.0_1633125905864/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_null_in_when/7.1.0_1633125905864/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_execute_branches_lazily/7.1.0_1633125905987/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_execute_branches_lazily/7.1.0_1633125905987/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_execute_branches_lazily/7.1.0_1633125905987/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_only_execute_ELSE_if_not_matching_WHENs/7.1.0_1633125906011/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_only_execute_ELSE_if_not_matching_WHENs/7.1.0_1633125906011/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_only_execute_ELSE_if_not_matching_WHENs/7.1.0_1633125906011/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_array_bigint___to_array_array_string__/7.1.0_1633125906251/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_array_bigint___to_array_array_string__/7.1.0_1633125906251/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_array_bigint___to_array_array_string__/7.1.0_1633125906251/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_int_/7.1.0_1633125906209/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_int_/7.1.0_1633125906209/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_int_/7.1.0_1633125906209/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_string_/7.1.0_1633125906232/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_string_/7.1.0_1633125906232/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_string_/7.1.0_1633125906232/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_array_with_same_schema/7.1.0_1633125906195/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_array_with_same_schema/7.1.0_1633125906195/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_array_with_same_schema/7.1.0_1633125906195/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_string/7.1.0_1633125906178/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_string/7.1.0_1633125906178/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_string/7.1.0_1633125906178/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_cast_to_null/7.1.0_1633125906460/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_cast_to_null/7.1.0_1633125906460/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_cast_to_null/7.1.0_1633125906460/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_decimal/7.1.0_1633125906476/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_decimal/7.1.0_1633125906476/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_decimal/7.1.0_1633125906476/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_other/7.1.0_1633125906557/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_other/7.1.0_1633125906557/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_other/7.1.0_1633125906557/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_decimal/7.1.0_1633125906515/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_decimal/7.1.0_1633125906515/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_decimal/7.1.0_1633125906515/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_int/7.1.0_1633125906653/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_int/7.1.0_1633125906653/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_int/7.1.0_1633125906653/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_bigint/7.1.0_1633125906616/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_bigint/7.1.0_1633125906616/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_bigint/7.1.0_1633125906616/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_decimal/7.1.0_1633125906494/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_decimal/7.1.0_1633125906494/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_decimal/7.1.0_1633125906494/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_string/7.1.0_1633125906636/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_string/7.1.0_1633125906636/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_string/7.1.0_1633125906636/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_string,_map_string,_string___-__map_string,_map_string,_int__/7.1.0_1633125906322/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_string,_map_string,_string___-__map_string,_map_string,_int__/7.1.0_1633125906322/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_string,_map_string,_string___-__map_string,_map_string,_int__/7.1.0_1633125906322/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_different_value_type/7.1.0_1633125906300/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_different_value_type/7.1.0_1633125906300/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_different_value_type/7.1.0_1633125906300/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_same_schema/7.1.0_1633125906286/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_same_schema/7.1.0_1633125906286/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_same_schema/7.1.0_1633125906286/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_string/7.1.0_1633125906270/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_string/7.1.0_1633125906270/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_string/7.1.0_1633125906270/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_no_op/7.1.0_1633125906397/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_no_op/7.1.0_1633125906397/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_no_op/7.1.0_1633125906397/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_of_nulls/7.1.0_1633125906424/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_of_nulls/7.1.0_1633125906424/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_of_nulls/7.1.0_1633125906424/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_string_to_decimal/7.1.0_1633125906537/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_string_to_decimal/7.1.0_1633125906537/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_string_to_decimal/7.1.0_1633125906537/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_string/7.1.0_1633125906343/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_string/7.1.0_1633125906343/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_string/7.1.0_1633125906343/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_different_schema/7.1.0_1633125906372/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_different_schema/7.1.0_1633125906372/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_different_schema/7.1.0_1633125906372/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_same_schema/7.1.0_1633125906358/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_same_schema/7.1.0_1633125906358/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_same_schema/7.1.0_1633125906358/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_AVRO/7.1.0_1633125906672/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_AVRO/7.1.0_1633125906672/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_AVRO/7.1.0_1633125906672/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_JSON/7.1.0_1633125906691/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_JSON/7.1.0_1633125906691/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_JSON/7.1.0_1633125906691/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_AVRO/7.1.0_1633125906707/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_AVRO/7.1.0_1633125906707/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_AVRO/7.1.0_1633125906707/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_JSON/7.1.0_1633125906727/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_JSON/7.1.0_1633125906727/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_JSON/7.1.0_1633125906727/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_AVRO/7.1.0_1633125906743/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_AVRO/7.1.0_1633125906743/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_AVRO/7.1.0_1633125906743/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_JSON/7.1.0_1633125906760/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_JSON/7.1.0_1633125906760/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_JSON/7.1.0_1633125906760/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_JSON/7.1.0_1633125908614/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_JSON/7.1.0_1633125908614/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_JSON/7.1.0_1633125908614/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_PROTOBUF/7.1.0_1633125908719/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_PROTOBUF/7.1.0_1633125908719/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_PROTOBUF/7.1.0_1633125908719/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_JSON/7.1.0_1633125913394/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_JSON/7.1.0_1633125913394/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_JSON/7.1.0_1633125913394/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_PROTOBUF/7.1.0_1633125913641/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_PROTOBUF/7.1.0_1633125913641/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_PROTOBUF/7.1.0_1633125913641/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_-_JSON/7.1.0_1633125909721/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_-_JSON/7.1.0_1633125909721/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_-_JSON/7.1.0_1633125909721/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_table_-_JSON/7.1.0_1633125915420/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_table_-_JSON/7.1.0_1633125915420/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_table_-_JSON/7.1.0_1633125915420/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_JSON/7.1.0_1633125909450/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_JSON/7.1.0_1633125909450/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_JSON/7.1.0_1633125909450/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125909571/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125909571/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125909571/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_JSON/7.1.0_1633125914939/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_JSON/7.1.0_1633125914939/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_JSON/7.1.0_1633125914939/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_PROTOBUF/7.1.0_1633125915204/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_PROTOBUF/7.1.0_1633125915204/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_PROTOBUF/7.1.0_1633125915204/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_AVRO/7.1.0_1633125907667/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_AVRO/7.1.0_1633125907667/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_AVRO/7.1.0_1633125907667/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_JSON/7.1.0_1633125907820/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_JSON/7.1.0_1633125907820/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_JSON/7.1.0_1633125907820/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_PROTOBUF/7.1.0_1633125907972/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_PROTOBUF/7.1.0_1633125907972/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_PROTOBUF/7.1.0_1633125907972/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_AVRO/7.1.0_1633125911515/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_AVRO/7.1.0_1633125911515/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_AVRO/7.1.0_1633125911515/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_JSON/7.1.0_1633125911818/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_JSON/7.1.0_1633125911818/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_JSON/7.1.0_1633125911818/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_PROTOBUF/7.1.0_1633125912101/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_PROTOBUF/7.1.0_1633125912101/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_PROTOBUF/7.1.0_1633125912101/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_AVRO/7.1.0_1633125906777/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_AVRO/7.1.0_1633125906777/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_AVRO/7.1.0_1633125906777/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_JSON/7.1.0_1633125906888/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_JSON/7.1.0_1633125906888/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_JSON/7.1.0_1633125906888/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_PROTOBUF/7.1.0_1633125907039/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_PROTOBUF/7.1.0_1633125907039/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_PROTOBUF/7.1.0_1633125907039/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_AVRO/7.1.0_1633125909854/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_AVRO/7.1.0_1633125909854/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_AVRO/7.1.0_1633125909854/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_JSON/7.1.0_1633125910162/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_JSON/7.1.0_1633125910162/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_JSON/7.1.0_1633125910162/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_PROTOBUF/7.1.0_1633125910445/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_PROTOBUF/7.1.0_1633125910445/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_PROTOBUF/7.1.0_1633125910445/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_AVRO/7.1.0_1633125907209/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_AVRO/7.1.0_1633125907209/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_AVRO/7.1.0_1633125907209/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_JSON/7.1.0_1633125907351/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_JSON/7.1.0_1633125907351/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_JSON/7.1.0_1633125907351/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_PROTOBUF/7.1.0_1633125907506/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_PROTOBUF/7.1.0_1633125907506/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_PROTOBUF/7.1.0_1633125907506/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_AVRO/7.1.0_1633125910659/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_AVRO/7.1.0_1633125910659/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_AVRO/7.1.0_1633125910659/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_JSON/7.1.0_1633125910947/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_JSON/7.1.0_1633125910947/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_JSON/7.1.0_1633125910947/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_PROTOBUF/7.1.0_1633125911218/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_PROTOBUF/7.1.0_1633125911218/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_PROTOBUF/7.1.0_1633125911218/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_AVRO/7.1.0_1633125908115/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_AVRO/7.1.0_1633125908115/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_AVRO/7.1.0_1633125908115/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_JSON/7.1.0_1633125908277/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_JSON/7.1.0_1633125908277/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_JSON/7.1.0_1633125908277/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_PROTOBUF/7.1.0_1633125908444/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_PROTOBUF/7.1.0_1633125908444/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_PROTOBUF/7.1.0_1633125908444/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_AVRO/7.1.0_1633125912407/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_AVRO/7.1.0_1633125912407/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_AVRO/7.1.0_1633125912407/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_JSON/7.1.0_1633125912743/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_JSON/7.1.0_1633125912743/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_JSON/7.1.0_1633125912743/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_PROTOBUF/7.1.0_1633125913052/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_PROTOBUF/7.1.0_1633125913052/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_PROTOBUF/7.1.0_1633125913052/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_-_JSON/7.1.0_1633125909154/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_-_JSON/7.1.0_1633125909154/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_-_JSON/7.1.0_1633125909154/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_-_PROTOBUF/7.1.0_1633125909299/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_-_PROTOBUF/7.1.0_1633125909299/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_-_PROTOBUF/7.1.0_1633125909299/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_table_-_JSON/7.1.0_1633125914412/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_table_-_JSON/7.1.0_1633125914412/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_table_-_JSON/7.1.0_1633125914412/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_table_-_PROTOBUF/7.1.0_1633125914674/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_table_-_PROTOBUF/7.1.0_1633125914674/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_table_-_PROTOBUF/7.1.0_1633125914674/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_timestamp_map_-_JSON/7.1.0_1633125908864/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_timestamp_map_-_JSON/7.1.0_1633125908864/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_timestamp_map_-_JSON/7.1.0_1633125908864/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_timestamp_map_-_PROTOBUF/7.1.0_1633125908994/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_timestamp_map_-_PROTOBUF/7.1.0_1633125908994/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_timestamp_map_-_PROTOBUF/7.1.0_1633125908994/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_timestamp_map_table_-_JSON/7.1.0_1633125913857/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_timestamp_map_table_-_JSON/7.1.0_1633125913857/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_timestamp_map_table_-_JSON/7.1.0_1633125913857/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_timestamp_map_table_-_PROTOBUF/7.1.0_1633125914145/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_timestamp_map_table_-_PROTOBUF/7.1.0_1633125914145/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_timestamp_map_table_-_PROTOBUF/7.1.0_1633125914145/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_with_limit_of_1/7.1.0_1633125915591/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_with_limit_of_1/7.1.0_1633125915591/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_with_limit_of_1/7.1.0_1633125915591/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_bytes_map_-_JSON/7.1.0_1633125918744/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_bytes_map_-_JSON/7.1.0_1633125918744/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_bytes_map_-_JSON/7.1.0_1633125918744/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_date_map_-_JSON/7.1.0_1633125918450/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_date_map_-_JSON/7.1.0_1633125918450/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_date_map_-_JSON/7.1.0_1633125918450/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125918579/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125918579/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125918579/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_time_map_-_JSON/7.1.0_1633125918147/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_time_map_-_JSON/7.1.0_1633125918147/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_time_map_-_JSON/7.1.0_1633125918147/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_time_map_-_PROTOBUF/7.1.0_1633125918292/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_time_map_-_PROTOBUF/7.1.0_1633125918292/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_time_map_-_PROTOBUF/7.1.0_1633125918292/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_timestamp_map_-_JSON/7.1.0_1633125917879/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_timestamp_map_-_JSON/7.1.0_1633125917879/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_timestamp_map_-_JSON/7.1.0_1633125917879/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_timestamp_map_-_PROTOBUF/7.1.0_1633125917999/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_timestamp_map_-_PROTOBUF/7.1.0_1633125917999/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_list_timestamp_map_-_PROTOBUF/7.1.0_1633125917999/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_bool_map_-_JSON/7.1.0_1633125917621/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_bool_map_-_JSON/7.1.0_1633125917621/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_bool_map_-_JSON/7.1.0_1633125917621/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_bool_map_-_PROTOBUF/7.1.0_1633125917747/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_bool_map_-_PROTOBUF/7.1.0_1633125917747/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_bool_map_-_PROTOBUF/7.1.0_1633125917747/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_double_-_AVRO/7.1.0_1633125916632/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_double_-_AVRO/7.1.0_1633125916632/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_double_-_AVRO/7.1.0_1633125916632/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_double_-_JSON/7.1.0_1633125916809/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_double_-_JSON/7.1.0_1633125916809/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_double_-_JSON/7.1.0_1633125916809/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_double_-_PROTOBUF/7.1.0_1633125916927/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_double_-_PROTOBUF/7.1.0_1633125916927/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_double_-_PROTOBUF/7.1.0_1633125916927/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_int_-_AVRO/7.1.0_1633125915717/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_int_-_AVRO/7.1.0_1633125915717/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_int_-_AVRO/7.1.0_1633125915717/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_int_-_JSON/7.1.0_1633125915869/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_int_-_JSON/7.1.0_1633125915869/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_int_-_JSON/7.1.0_1633125915869/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_int_-_PROTOBUF/7.1.0_1633125916023/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_int_-_PROTOBUF/7.1.0_1633125916023/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_int_-_PROTOBUF/7.1.0_1633125916023/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_long_-_AVRO/7.1.0_1633125916184/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_long_-_AVRO/7.1.0_1633125916184/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_long_-_AVRO/7.1.0_1633125916184/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_long_-_JSON/7.1.0_1633125916336/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_long_-_JSON/7.1.0_1633125916336/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_long_-_JSON/7.1.0_1633125916336/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_long_-_PROTOBUF/7.1.0_1633125916473/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_long_-_PROTOBUF/7.1.0_1633125916473/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_long_-_PROTOBUF/7.1.0_1633125916473/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_string_-_AVRO/7.1.0_1633125917083/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_string_-_AVRO/7.1.0_1633125917083/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_string_-_AVRO/7.1.0_1633125917083/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_string_-_JSON/7.1.0_1633125917268/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_string_-_JSON/7.1.0_1633125917268/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_string_-_JSON/7.1.0_1633125917268/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_string_-_PROTOBUF/7.1.0_1633125917433/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_string_-_PROTOBUF/7.1.0_1633125917433/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_string_-_PROTOBUF/7.1.0_1633125917433/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_with_limit_of_1/7.1.0_1633125918866/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_with_limit_of_1/7.1.0_1633125918866/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/collect-set_-_collect_set_with_limit_of_1/7.1.0_1633125918866/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/complex-lambda_-_complex_lambda/7.1.0_1633125919058/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/complex-lambda_-_complex_lambda/7.1.0_1633125919058/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/complex-lambda_-_complex_lambda/7.1.0_1633125919058/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/complex-lambda_-_reduce_an_array_of_maps/7.1.0_1633125919096/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/complex-lambda_-_reduce_an_array_of_maps/7.1.0_1633125919096/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/complex-lambda_-_reduce_an_array_of_maps/7.1.0_1633125919096/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/complex-lambda_-_transform_a_map_with_array_values/7.1.0_1633125918991/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/complex-lambda_-_transform_a_map_with_array_values/7.1.0_1633125918991/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/complex-lambda_-_transform_a_map_with_array_values/7.1.0_1633125918991/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_-_bytes/7.1.0_1633125919159/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_-_bytes/7.1.0_1633125919159/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_-_bytes/7.1.0_1633125919159/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_fields_using_'+'_operator/7.1.0_1633125919189/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_fields_using_'+'_operator/7.1.0_1633125919189/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_fields_using_'+'_operator/7.1.0_1633125919189/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_fields_using_CONCAT/7.1.0_1633125919175/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_fields_using_CONCAT/7.1.0_1633125919175/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_fields_using_CONCAT/7.1.0_1633125919175/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_ws_-_bytes_-_JSON/7.1.0_1633125919143/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_ws_-_bytes_-_JSON/7.1.0_1633125919143/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_ws_-_bytes_-_JSON/7.1.0_1633125919143/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_ws_-_string_-_JSON/7.1.0_1633125919127/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_ws_-_string_-_JSON/7.1.0_1633125919127/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_concat_ws_-_string_-_JSON/7.1.0_1633125919127/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_should_handle_characters_the_must_be_escaped_in_java/7.1.0_1633125919203/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_should_handle_characters_the_must_be_escaped_in_java/7.1.0_1633125919203/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_should_handle_characters_the_must_be_escaped_in_java/7.1.0_1633125919203/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_should_handle_characters_the_must_be_escaped_in_sql/7.1.0_1633125919219/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_should_handle_characters_the_must_be_escaped_in_sql/7.1.0_1633125919219/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/concat_-_should_handle_characters_the_must_be_escaped_in_sql/7.1.0_1633125919219/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/convert-tz_-_convert_timezones_defined_by_name/7.1.0_1633125919248/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/convert-tz_-_convert_timezones_defined_by_name/7.1.0_1633125919248/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/convert-tz_-_convert_timezones_defined_by_name/7.1.0_1633125919248/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/convert-tz_-_convert_timezones_defined_by_offset/7.1.0_1633125919235/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/convert-tz_-_convert_timezones_defined_by_offset/7.1.0_1633125919235/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/convert-tz_-_convert_timezones_defined_by_offset/7.1.0_1633125919235/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count-distinct_-_count_distinct/7.1.0_1633125920610/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count-distinct_-_count_distinct/7.1.0_1633125920610/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count-distinct_-_count_distinct/7.1.0_1633125920610/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_auto-incrementing_id/7.1.0_1633125920457/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_auto-incrementing_id/7.1.0_1633125920457/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_auto-incrementing_id/7.1.0_1633125920457/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_count/7.1.0_1633125919270/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_count/7.1.0_1633125919270/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_count/7.1.0_1633125919270/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_count_literal/7.1.0_1633125919510/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_count_literal/7.1.0_1633125919510/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_count_literal/7.1.0_1633125919510/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_count_star/7.1.0_1633125919381/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_count_star/7.1.0_1633125919381/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_count_star/7.1.0_1633125919381/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_count_table/7.1.0_1633125919666/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_count_table/7.1.0_1633125919666/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_count_table/7.1.0_1633125919666/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_should_count_back_to_zero/7.1.0_1633125919945/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_should_count_back_to_zero/7.1.0_1633125919945/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_should_count_back_to_zero/7.1.0_1633125919945/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_should_support_removing_zero_counts_from_table/7.1.0_1633125920206/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_should_support_removing_zero_counts_from_table/7.1.0_1633125920206/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/count_-_should_support_removing_zero_counts_from_table/7.1.0_1633125920206/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_basic_struct_creation/7.1.0_1633125921069/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_basic_struct_creation/7.1.0_1633125921069/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_basic_struct_creation/7.1.0_1633125921069/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_cast_null_values/7.1.0_1633125921171/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_cast_null_values/7.1.0_1633125921171/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_cast_null_values/7.1.0_1633125921171/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_duplicate_structs_in_array/7.1.0_1633125921147/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_duplicate_structs_in_array/7.1.0_1633125921147/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_duplicate_structs_in_array/7.1.0_1633125921147/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_empty_struct_creation/7.1.0_1633125921134/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_empty_struct_creation/7.1.0_1633125921134/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_empty_struct_creation/7.1.0_1633125921134/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_in_aggregate/7.1.0_1633125921189/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_in_aggregate/7.1.0_1633125921189/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_in_aggregate/7.1.0_1633125921189/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_nested_struct_creation/7.1.0_1633125921093/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_nested_struct_creation/7.1.0_1633125921093/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_nested_struct_creation/7.1.0_1633125921093/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_quoted_identifiers/7.1.0_1633125921113/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_quoted_identifiers/7.1.0_1633125921113/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-struct_-_quoted_identifiers/7.1.0_1633125921113/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-type_-_create_nested_type/7.1.0_1633125921337/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-type_-_create_nested_type/7.1.0_1633125921337/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-type_-_create_nested_type/7.1.0_1633125921337/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-type_-_create_simple_type/7.1.0_1633125921275/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-type_-_create_simple_type/7.1.0_1633125921275/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create-type_-_create_simple_type/7.1.0_1633125921275/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_array_-_construct_a_list_from_compatible_mismatching_elements/7.1.0_1633125920879/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_array_-_construct_a_list_from_compatible_mismatching_elements/7.1.0_1633125920879/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_array_-_construct_a_list_from_compatible_mismatching_elements/7.1.0_1633125920879/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_array_-_construct_a_list_from_compatible_mismatching_struct_elements/7.1.0_1633125920905/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_array_-_construct_a_list_from_compatible_mismatching_struct_elements/7.1.0_1633125920905/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_array_-_construct_a_list_from_compatible_mismatching_struct_elements/7.1.0_1633125920905/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_array_-_construct_a_list_from_null_casted_elements/7.1.0_1633125920862/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_array_-_construct_a_list_from_null_casted_elements/7.1.0_1633125920862/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_array_-_construct_a_list_from_null_casted_elements/7.1.0_1633125920862/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_array_-_construct_a_list_from_two_elements/7.1.0_1633125920839/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_array_-_construct_a_list_from_two_elements/7.1.0_1633125920839/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_array_-_construct_a_list_from_two_elements/7.1.0_1633125920839/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_key_value_lists/7.1.0_1633125920968/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_key_value_lists/7.1.0_1633125920968/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_key_value_lists/7.1.0_1633125920968/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples/7.1.0_1633125920944/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples/7.1.0_1633125920944/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples/7.1.0_1633125920944/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples_and_cast_null_key/7.1.0_1633125921049/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples_and_cast_null_key/7.1.0_1633125921049/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples_and_cast_null_key/7.1.0_1633125921049/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples_and_some_null_key/7.1.0_1633125921027/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples_and_some_null_key/7.1.0_1633125921027/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples_and_some_null_key/7.1.0_1633125921027/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples_and_some_values/7.1.0_1633125921007/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples_and_some_values/7.1.0_1633125921007/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples_and_some_values/7.1.0_1633125921007/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples_compatible_mismatching_types/7.1.0_1633125920982/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples_compatible_mismatching_types/7.1.0_1633125920982/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/create_map_-_create_map_from_named_tuples_compatible_mismatching_types/7.1.0_1633125920982/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cube_-_cube_three_columns/7.1.0_1633125921417/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cube_-_cube_three_columns/7.1.0_1633125921417/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cube_-_cube_three_columns/7.1.0_1633125921417/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cube_-_cube_two_columns_twice/7.1.0_1633125921456/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cube_-_cube_two_columns_twice/7.1.0_1633125921456/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cube_-_cube_two_columns_twice/7.1.0_1633125921456/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cube_-_cube_two_columns_with_udf_on_third/7.1.0_1633125921436/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cube_-_cube_two_columns_with_udf_on_third/7.1.0_1633125921436/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cube_-_cube_two_columns_with_udf_on_third/7.1.0_1633125921436/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cube_-_cube_two_int_columns/7.1.0_1633125921393/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cube_-_cube_two_int_columns/7.1.0_1633125921393/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/cube_-_cube_two_int_columns/7.1.0_1633125921393/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_AVRO_in_out/7.1.0_1633125921491/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_AVRO_in_out/7.1.0_1633125921491/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_AVRO_in_out/7.1.0_1633125921491/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_DELIMITED_in_out/7.1.0_1633125921479/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_DELIMITED_in_out/7.1.0_1633125921479/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_DELIMITED_in_out/7.1.0_1633125921479/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_GEQ_-_DATE_DATE/7.1.0_1633125921698/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_GEQ_-_DATE_DATE/7.1.0_1633125921698/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_GEQ_-_DATE_DATE/7.1.0_1633125921698/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_JSON_in_out/7.1.0_1633125921506/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_JSON_in_out/7.1.0_1633125921506/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_JSON_in_out/7.1.0_1633125921506/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_LEQ_-_DATE_DATE/7.1.0_1633125921682/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_LEQ_-_DATE_DATE/7.1.0_1633125921682/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_LEQ_-_DATE_DATE/7.1.0_1633125921682/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_PROTOBUF_in_out/7.1.0_1633125921519/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_PROTOBUF_in_out/7.1.0_1633125921519/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_PROTOBUF_in_out/7.1.0_1633125921519/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_between/7.1.0_1633125921766/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_between/7.1.0_1633125921766/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_between/7.1.0_1633125921766/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_casting_-_date_to_string/7.1.0_1633125921534/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_casting_-_date_to_string/7.1.0_1633125921534/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_casting_-_date_to_string/7.1.0_1633125921534/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_casting_-_string_to_date/7.1.0_1633125921554/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_casting_-_string_to_date/7.1.0_1633125921554/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_casting_-_string_to_date/7.1.0_1633125921554/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_casting_-_timestamp_to_date/7.1.0_1633125921577/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_casting_-_timestamp_to_date/7.1.0_1633125921577/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_casting_-_timestamp_to_date/7.1.0_1633125921577/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_date_in_complex_types/7.1.0_1633125921596/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_date_in_complex_types/7.1.0_1633125921596/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_date_in_complex_types/7.1.0_1633125921596/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_date_schema_inference/7.1.0_1633125921782/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_date_schema_inference/7.1.0_1633125921782/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_date_schema_inference/7.1.0_1633125921782/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_equal_-_date_date/7.1.0_1633125921616/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_equal_-_date_date/7.1.0_1633125921616/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_equal_-_date_date/7.1.0_1633125921616/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_filter/7.1.0_1633125921749/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_filter/7.1.0_1633125921749/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_filter/7.1.0_1633125921749/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_greater_than_-_DATE_STRING/7.1.0_1633125921732/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_greater_than_-_DATE_STRING/7.1.0_1633125921732/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_greater_than_-_DATE_STRING/7.1.0_1633125921732/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_greater_than_-_DATE_TIMESTAMP/7.1.0_1633125921715/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_greater_than_-_DATE_TIMESTAMP/7.1.0_1633125921715/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_greater_than_-_DATE_TIMESTAMP/7.1.0_1633125921715/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_is_distinct_-_DATE_DATE/7.1.0_1633125921649/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_is_distinct_-_DATE_DATE/7.1.0_1633125921649/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_is_distinct_-_DATE_DATE/7.1.0_1633125921649/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_less_than_-_DATE_DATE/7.1.0_1633125921665/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_less_than_-_DATE_DATE/7.1.0_1633125921665/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_less_than_-_DATE_DATE/7.1.0_1633125921665/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_not_equal_-_date_date/7.1.0_1633125921633/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_not_equal_-_date_date/7.1.0_1633125921633/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/date_-_not_equal_-_date_date/7.1.0_1633125921633/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/dateadd_-_adds/7.1.0_1633125921802/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/dateadd_-_adds/7.1.0_1633125921802/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/dateadd_-_adds/7.1.0_1633125921802/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/dateadd_-_adds_negative_intervals/7.1.0_1633125921816/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/dateadd_-_adds_negative_intervals/7.1.0_1633125921816/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/dateadd_-_adds_negative_intervals/7.1.0_1633125921816/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/dateadd_-_handles_null_values/7.1.0_1633125921832/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/dateadd_-_handles_null_values/7.1.0_1633125921832/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/dateadd_-_handles_null_values/7.1.0_1633125921832/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/datestring_-_date_to_string/7.1.0_1633125921849/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/datestring_-_date_to_string/7.1.0_1633125921849/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/datestring_-_date_to_string/7.1.0_1633125921849/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/datesub_-_handles_null_values/7.1.0_1633125921898/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/datesub_-_handles_null_values/7.1.0_1633125921898/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/datesub_-_handles_null_values/7.1.0_1633125921898/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/datesub_-_subtracts/7.1.0_1633125921867/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/datesub_-_subtracts/7.1.0_1633125921867/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/datesub_-_subtracts/7.1.0_1633125921867/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/datesub_-_subtracts_negative_intervals/7.1.0_1633125921882/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/datesub_-_subtracts_negative_intervals/7.1.0_1633125921882/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/datesub_-_subtracts_negative_intervals/7.1.0_1633125921882/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_AVRO_in_out/7.1.0_1633125921928/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_AVRO_in_out/7.1.0_1633125921928/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_AVRO_in_out/7.1.0_1633125921928/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_AVRO_should_not_trim_trailing_zeros/7.1.0_1633125921986/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_AVRO_should_not_trim_trailing_zeros/7.1.0_1633125921986/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_AVRO_should_not_trim_trailing_zeros/7.1.0_1633125921986/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_DELIMITED_in_out/7.1.0_1633125921915/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_DELIMITED_in_out/7.1.0_1633125921915/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_DELIMITED_in_out/7.1.0_1633125921915/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_DELIMITED_should_not_trim_trailing_zeros/7.1.0_1633125922003/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_DELIMITED_should_not_trim_trailing_zeros/7.1.0_1633125922003/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_DELIMITED_should_not_trim_trailing_zeros/7.1.0_1633125922003/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_GEQ_-_decimal_decimal/7.1.0_1633125922376/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_GEQ_-_decimal_decimal/7.1.0_1633125922376/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_GEQ_-_decimal_decimal/7.1.0_1633125922376/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_JSON_SR_should_not_trim_trailing_zeros/7.1.0_1633125922030/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_JSON_SR_should_not_trim_trailing_zeros/7.1.0_1633125922030/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_JSON_SR_should_not_trim_trailing_zeros/7.1.0_1633125922030/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_JSON_in_out/7.1.0_1633125921942/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_JSON_in_out/7.1.0_1633125921942/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_JSON_in_out/7.1.0_1633125921942/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_JSON_scale_in_data_less_than_scale_in_type/7.1.0_1633125921973/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_JSON_scale_in_data_less_than_scale_in_type/7.1.0_1633125921973/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_JSON_scale_in_data_less_than_scale_in_type/7.1.0_1633125921973/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_JSON_should_not_trim_trailing_zeros/7.1.0_1633125922016/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_JSON_should_not_trim_trailing_zeros/7.1.0_1633125922016/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_JSON_should_not_trim_trailing_zeros/7.1.0_1633125922016/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_LEQ_-_decimal_decimal/7.1.0_1633125922356/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_LEQ_-_decimal_decimal/7.1.0_1633125922356/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_LEQ_-_decimal_decimal/7.1.0_1633125922356/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_PROTOBUF_in_out/7.1.0_1633125921954/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_PROTOBUF_in_out/7.1.0_1633125921954/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_PROTOBUF_in_out/7.1.0_1633125921954/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_PROTOBUF_should_not_trim_trailing_zeros/7.1.0_1633125922074/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_PROTOBUF_should_not_trim_trailing_zeros/7.1.0_1633125922074/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_PROTOBUF_should_not_trim_trailing_zeros/7.1.0_1633125922074/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_addition/7.1.0_1633125922110/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_addition/7.1.0_1633125922110/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_addition/7.1.0_1633125922110/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_addition_3_columns/7.1.0_1633125922168/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_addition_3_columns/7.1.0_1633125922168/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_addition_3_columns/7.1.0_1633125922168/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_addition_with_double/7.1.0_1633125922129/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_addition_with_double/7.1.0_1633125922129/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_addition_with_double/7.1.0_1633125922129/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_addition_with_int/7.1.0_1633125922149/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_addition_with_int/7.1.0_1633125922149/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_addition_with_int/7.1.0_1633125922149/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_division/7.1.0_1633125922221/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_division/7.1.0_1633125922221/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_division/7.1.0_1633125922221/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_equal_-_decimal_decimal/7.1.0_1633125922258/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_equal_-_decimal_decimal/7.1.0_1633125922258/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_equal_-_decimal_decimal/7.1.0_1633125922258/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_greater_than_-_decimal_decimal/7.1.0_1633125922395/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_greater_than_-_decimal_decimal/7.1.0_1633125922395/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_greater_than_-_decimal_decimal/7.1.0_1633125922395/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_is_distinct_-_decimal_decimal/7.1.0_1633125922298/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_is_distinct_-_decimal_decimal/7.1.0_1633125922298/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_is_distinct_-_decimal_decimal/7.1.0_1633125922298/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_less_than_-_decimal_decimal/7.1.0_1633125922318/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_less_than_-_decimal_decimal/7.1.0_1633125922318/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_less_than_-_decimal_decimal/7.1.0_1633125922318/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_less_than_-_decimal_decimal_differing_scale/7.1.0_1633125922337/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_less_than_-_decimal_decimal_differing_scale/7.1.0_1633125922337/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_less_than_-_decimal_decimal_differing_scale/7.1.0_1633125922337/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_less_than_-_decimal_int/7.1.0_1633125922415/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_less_than_-_decimal_int/7.1.0_1633125922415/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_less_than_-_decimal_int/7.1.0_1633125922415/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_mod/7.1.0_1633125922239/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_mod/7.1.0_1633125922239/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_mod/7.1.0_1633125922239/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_multiplication/7.1.0_1633125922202/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_multiplication/7.1.0_1633125922202/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_multiplication/7.1.0_1633125922202/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_negation/7.1.0_1633125922092/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_negation/7.1.0_1633125922092/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_negation/7.1.0_1633125922092/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_not_equal_-_decimal_decimal/7.1.0_1633125922279/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_not_equal_-_decimal_decimal/7.1.0_1633125922279/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_not_equal_-_decimal_decimal/7.1.0_1633125922279/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_subtraction/7.1.0_1633125922184/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_subtraction/7.1.0_1633125922184/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/decimal_-_subtraction/7.1.0_1633125922184/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_BIGINT_-_key/7.1.0_1633125922459/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_BIGINT_-_key/7.1.0_1633125922459/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_BIGINT_-_key/7.1.0_1633125922459/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_BOOLEAN_-_key/7.1.0_1633125922434/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_BOOLEAN_-_key/7.1.0_1633125922434/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_BOOLEAN_-_key/7.1.0_1633125922434/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_DECIMAL_-_key/7.1.0_1633125922496/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_DECIMAL_-_key/7.1.0_1633125922496/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_DECIMAL_-_key/7.1.0_1633125922496/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_DOUBLE_-_key/7.1.0_1633125922471/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_DOUBLE_-_key/7.1.0_1633125922471/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_DOUBLE_-_key/7.1.0_1633125922471/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_INT_-_key/7.1.0_1633125922446/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_INT_-_key/7.1.0_1633125922446/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_INT_-_key/7.1.0_1633125922446/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_STRING_-_key/7.1.0_1633125922484/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_STRING_-_key/7.1.0_1633125922484/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_STRING_-_key/7.1.0_1633125922484/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_deserialize_DELIMITED_with_WRAP_SINGLE_VALUE_false/7.1.0_1633125922546/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_deserialize_DELIMITED_with_WRAP_SINGLE_VALUE_false/7.1.0_1633125922546/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_deserialize_DELIMITED_with_WRAP_SINGLE_VALUE_false/7.1.0_1633125922546/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_deserialize_anonymous_primitive_by_default_-_value_-_DELIMITED/7.1.0_1633125922534/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_deserialize_anonymous_primitive_by_default_-_value_-_DELIMITED/7.1.0_1633125922534/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_deserialize_anonymous_primitive_by_default_-_value_-_DELIMITED/7.1.0_1633125922534/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_keyless/7.1.0_1633125922726/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_keyless/7.1.0_1633125922726/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_keyless/7.1.0_1633125922726/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_multi-column_key/7.1.0_1633125922508/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_multi-column_key/7.1.0_1633125922508/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_multi-column_key/7.1.0_1633125922508/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_multi-column_key_with_different_kv_delimiters/7.1.0_1633125922520/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_multi-column_key_with_different_kv_delimiters/7.1.0_1633125922520/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_multi-column_key_with_different_kv_delimiters/7.1.0_1633125922520/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_read_written_decimals/7.1.0_1633125922704/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_read_written_decimals/7.1.0_1633125922704/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_read_written_decimals/7.1.0_1633125922704/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format/7.1.0_1633125922558/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format/7.1.0_1633125922558/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format/7.1.0_1633125922558/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_into_another_format_-_AVRO/7.1.0_1633125922591/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_into_another_format_-_AVRO/7.1.0_1633125922591/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_into_another_format_-_AVRO/7.1.0_1633125922591/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_into_another_format_-_JSON/7.1.0_1633125922575/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_into_another_format_-_JSON/7.1.0_1633125922575/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_into_another_format_-_JSON/7.1.0_1633125922575/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_into_another_format_-_PROTOBUF/7.1.0_1633125922610/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_into_another_format_-_PROTOBUF/7.1.0_1633125922610/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_into_another_format_-_PROTOBUF/7.1.0_1633125922610/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_with_$_separated_values_using_custom_delimiter_character/7.1.0_1633125922648/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_with_$_separated_values_using_custom_delimiter_character/7.1.0_1633125922648/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_with_$_separated_values_using_custom_delimiter_character/7.1.0_1633125922648/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_with_SPACE_separated_values_using_custom_delimiter_character/7.1.0_1633125922667/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_with_SPACE_separated_values_using_custom_delimiter_character/7.1.0_1633125922667/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_with_SPACE_separated_values_using_custom_delimiter_character/7.1.0_1633125922667/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_with_TAB_separated_values_using_custom_delimiter_character/7.1.0_1633125922686/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_with_TAB_separated_values_using_custom_delimiter_character/7.1.0_1633125922686/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_with_TAB_separated_values_using_custom_delimiter_character/7.1.0_1633125922686/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_with_pipe_separated_values_-_should_take_source_delimiter_for_sink/7.1.0_1633125922629/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_with_pipe_separated_values_-_should_take_source_delimiter_for_sink/7.1.0_1633125922629/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/delimited_-_select_delimited_value_format_with_pipe_separated_values_-_should_take_source_delimiter_for_sink/7.1.0_1633125922629/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/drop_source_-_drop_an_existing_stream_should_succeed/7.1.0_1633125922738/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/drop_source_-_drop_an_existing_stream_should_succeed/7.1.0_1633125922738/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/drop_source_-_drop_an_existing_stream_should_succeed/7.1.0_1633125922738/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/drop_source_-_drop_if_exists_a_non-existing_stream_should_succeed/7.1.0_1633125922751/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/drop_source_-_drop_if_exists_a_non-existing_stream_should_succeed/7.1.0_1633125922751/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/drop_source_-_drop_if_exists_a_non-existing_stream_should_succeed/7.1.0_1633125922751/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/drop_source_-_drop_if_exists_an_existing_stream_should_succeed/7.1.0_1633125922763/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/drop_source_-_drop_if_exists_an_existing_stream_should_succeed/7.1.0_1633125922763/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/drop_source_-_drop_if_exists_an_existing_stream_should_succeed/7.1.0_1633125922763/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_by_offset/7.1.0_1633125922777/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_by_offset/7.1.0_1633125922777/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_by_offset/7.1.0_1633125922777/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_by_offset_with_all_nulls/7.1.0_1633125923754/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_by_offset_with_all_nulls/7.1.0_1633125923754/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_by_offset_with_all_nulls/7.1.0_1633125923754/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_n_by_offset/7.1.0_1633125923823/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_n_by_offset/7.1.0_1633125923823/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_n_by_offset/7.1.0_1633125923823/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_n_by_offset_with_all_nulls/7.1.0_1633125924056/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_n_by_offset_with_all_nulls/7.1.0_1633125924056/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_n_by_offset_with_all_nulls/7.1.0_1633125924056/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_n_by_offset_with_nulls/7.1.0_1633125923953/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_n_by_offset_with_nulls/7.1.0_1633125923953/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_earliest_n_by_offset_with_nulls/7.1.0_1633125923953/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows/7.1.0_1633125924189/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows/7.1.0_1633125924189/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows/7.1.0_1633125924189/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_all_nulls/7.1.0_1633125924532/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_all_nulls/7.1.0_1633125924532/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_all_nulls/7.1.0_1633125924532/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_all_nulls_-_N/7.1.0_1633125924816/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_all_nulls_-_N/7.1.0_1633125924816/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_all_nulls_-_N/7.1.0_1633125924816/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored/7.1.0_1633125924324/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored/7.1.0_1633125924324/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored/7.1.0_1633125924324/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored_-_N/7.1.0_1633125924629/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored_-_N/7.1.0_1633125924629/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored_-_N/7.1.0_1633125924629/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored/7.1.0_1633125924434/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored/7.1.0_1633125924434/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored/7.1.0_1633125924434/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored_-_N/7.1.0_1633125924720/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored_-_N/7.1.0_1633125924720/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored_-_N/7.1.0_1633125924720/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_first_-_multiple_-_ignoring_nulls/7.1.0_1633125923053/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_first_-_multiple_-_ignoring_nulls/7.1.0_1633125923053/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_first_-_multiple_-_ignoring_nulls/7.1.0_1633125923053/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_first_-_multiple_-_not_ignoring_nulls/7.1.0_1633125923289/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_first_-_multiple_-_not_ignoring_nulls/7.1.0_1633125923289/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_first_-_multiple_-_not_ignoring_nulls/7.1.0_1633125923289/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_first_-_single_-_ignoring_nulls/7.1.0_1633125922936/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_first_-_single_-_ignoring_nulls/7.1.0_1633125922936/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_first_-_single_-_ignoring_nulls/7.1.0_1633125922936/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_first_-_single_-_not_ignoring_nulls/7.1.0_1633125923166/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_first_-_single_-_not_ignoring_nulls/7.1.0_1633125923166/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_first_-_single_-_not_ignoring_nulls/7.1.0_1633125923166/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_later_-_multiple_-_nulls_not_ignored/7.1.0_1633125923674/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_later_-_multiple_-_nulls_not_ignored/7.1.0_1633125923674/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_later_-_multiple_-_nulls_not_ignored/7.1.0_1633125923674/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_later_-_single_-_nulls_not_ignored/7.1.0_1633125923598/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_later_-_single_-_nulls_not_ignored/7.1.0_1633125923598/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_null_later_-_single_-_nulls_not_ignored/7.1.0_1633125923598/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_nulls_later_-_multiple_-_nulls_ignored/7.1.0_1633125923518/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_nulls_later_-_multiple_-_nulls_ignored/7.1.0_1633125923518/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_nulls_later_-_multiple_-_nulls_ignored/7.1.0_1633125923518/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_nulls_later_-_single_-_nulls_ignored/7.1.0_1633125923421/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_nulls_later_-_single_-_nulls_ignored/7.1.0_1633125923421/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/earliest-offset-udaf_-_nulls_later_-_single_-_nulls_ignored/7.1.0_1633125923421/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_copy_simple_key_column_into_value/7.1.0_1633125926414/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_copy_simple_key_column_into_value/7.1.0_1633125926414/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_copy_simple_key_column_into_value/7.1.0_1633125926414/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_join_leaves_aliased_system_columns_in_output's_value_schema/7.1.0_1633125925793/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_join_leaves_aliased_system_columns_in_output's_value_schema/7.1.0_1633125925793/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_join_leaves_aliased_system_columns_in_output's_value_schema/7.1.0_1633125925793/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_join_qualified_select_star_left/7.1.0_1633125925982/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_join_qualified_select_star_left/7.1.0_1633125925982/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_join_qualified_select_star_left/7.1.0_1633125925982/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_join_qualified_select_star_right/7.1.0_1633125926101/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_join_qualified_select_star_right/7.1.0_1633125926101/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_join_qualified_select_star_right/7.1.0_1633125926101/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_join_unqualified_select_star/7.1.0_1633125926247/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_join_unqualified_select_star/7.1.0_1633125926247/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_join_unqualified_select_star/7.1.0_1633125926247/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_non-join_leaves_aliased_system_columns_in_output's_value_schema/7.1.0_1633125925768/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_non-join_leaves_aliased_system_columns_in_output's_value_schema/7.1.0_1633125925768/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_non-join_leaves_aliased_system_columns_in_output's_value_schema/7.1.0_1633125925768/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_non-join_qualified_select_star/7.1.0_1633125925944/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_non-join_qualified_select_star/7.1.0_1633125925944/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_non-join_qualified_select_star/7.1.0_1633125925944/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_should_allow_ROWKEY_as_value_column/7.1.0_1633125926354/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_should_allow_ROWKEY_as_value_column/7.1.0_1633125926354/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_should_allow_ROWKEY_as_value_column/7.1.0_1633125926354/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_should_handle_sources_with_generated_column_names/7.1.0_1633125926366/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_should_handle_sources_with_generated_column_names/7.1.0_1633125926366/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_should_handle_sources_with_generated_column_names/7.1.0_1633125926366/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_should_handle_sources_with_generated_column_names_-_with_select_star/7.1.0_1633125926388/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_should_handle_sources_with_generated_column_names_-_with_select_star/7.1.0_1633125926388/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_should_handle_sources_with_generated_column_names_-_with_select_star/7.1.0_1633125926388/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_stream_without_key_column/7.1.0_1633125926428/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_stream_without_key_column/7.1.0_1633125926428/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_stream_without_key_column/7.1.0_1633125926428/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_AVRO_uses_null_for_unknown_element/7.1.0_1633125925751/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_AVRO_uses_null_for_unknown_element/7.1.0_1633125925751/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_AVRO_uses_null_for_unknown_element/7.1.0_1633125925751/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_array_element_OK_-_AVRO/7.1.0_1633125925602/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_array_element_OK_-_AVRO/7.1.0_1633125925602/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_array_element_OK_-_AVRO/7.1.0_1633125925602/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_array_element_OK_-_JSON/7.1.0_1633125925573/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_array_element_OK_-_JSON/7.1.0_1633125925573/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_array_element_OK_-_JSON/7.1.0_1633125925573/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_array_element_OK_-_JSON_SR/7.1.0_1633125925585/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_array_element_OK_-_JSON_SR/7.1.0_1633125925585/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_array_element_OK_-_JSON_SR/7.1.0_1633125925585/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_array_element_OK_-_PROTOBUF/7.1.0_1633125925617/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_array_element_OK_-_PROTOBUF/7.1.0_1633125925617/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_array_element_OK_-_PROTOBUF/7.1.0_1633125925617/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_AVRO/7.1.0_1633125925360/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_AVRO/7.1.0_1633125925360/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_AVRO/7.1.0_1633125925360/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_DELIMITED/7.1.0_1633125925295/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_DELIMITED/7.1.0_1633125925295/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_DELIMITED/7.1.0_1633125925295/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_JSON/7.1.0_1633125925318/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_JSON/7.1.0_1633125925318/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_JSON/7.1.0_1633125925318/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_JSON_SR/7.1.0_1633125925342/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_JSON_SR/7.1.0_1633125925342/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_JSON_SR/7.1.0_1633125925342/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_KAFKA/7.1.0_1633125925306/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_KAFKA/7.1.0_1633125925306/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_KAFKA/7.1.0_1633125925306/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_PROTOBUF/7.1.0_1633125925373/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_PROTOBUF/7.1.0_1633125925373/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_bigint_elements_OK_-_PROTOBUF/7.1.0_1633125925373/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_AVRO/7.1.0_1633125925191/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_AVRO/7.1.0_1633125925191/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_AVRO/7.1.0_1633125925191/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_DELIMITED/7.1.0_1633125925150/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_DELIMITED/7.1.0_1633125925150/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_DELIMITED/7.1.0_1633125925150/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_JSON/7.1.0_1633125925163/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_JSON/7.1.0_1633125925163/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_JSON/7.1.0_1633125925163/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_JSON_SR/7.1.0_1633125925175/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_JSON_SR/7.1.0_1633125925175/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_JSON_SR/7.1.0_1633125925175/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_PROTOBUF/7.1.0_1633125925204/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_PROTOBUF/7.1.0_1633125925204/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_boolean_elements_OK_-_PROTOBUF/7.1.0_1633125925204/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_decimal_elements_OK_-_JSON/7.1.0_1633125925465/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_decimal_elements_OK_-_JSON/7.1.0_1633125925465/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_decimal_elements_OK_-_JSON/7.1.0_1633125925465/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_decimal_elements_OK_-_JSON_SR/7.1.0_1633125925476/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_decimal_elements_OK_-_JSON_SR/7.1.0_1633125925476/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_decimal_elements_OK_-_JSON_SR/7.1.0_1633125925476/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_AVRO/7.1.0_1633125925438/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_AVRO/7.1.0_1633125925438/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_AVRO/7.1.0_1633125925438/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_DELIMITED/7.1.0_1633125925387/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_DELIMITED/7.1.0_1633125925387/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_DELIMITED/7.1.0_1633125925387/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_JSON/7.1.0_1633125925411/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_JSON/7.1.0_1633125925411/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_JSON/7.1.0_1633125925411/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_JSON_SR/7.1.0_1633125925423/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_JSON_SR/7.1.0_1633125925423/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_JSON_SR/7.1.0_1633125925423/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_KAFKA/7.1.0_1633125925399/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_KAFKA/7.1.0_1633125925399/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_KAFKA/7.1.0_1633125925399/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_PROTOBUF/7.1.0_1633125925452/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_PROTOBUF/7.1.0_1633125925452/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_double_elements_OK_-_PROTOBUF/7.1.0_1633125925452/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_AVRO/7.1.0_1633125925268/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_AVRO/7.1.0_1633125925268/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_AVRO/7.1.0_1633125925268/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_DELIMITED/7.1.0_1633125925217/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_DELIMITED/7.1.0_1633125925217/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_DELIMITED/7.1.0_1633125925217/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_JSON/7.1.0_1633125925240/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_JSON/7.1.0_1633125925240/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_JSON/7.1.0_1633125925240/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_JSON_SR/7.1.0_1633125925252/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_JSON_SR/7.1.0_1633125925252/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_JSON_SR/7.1.0_1633125925252/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_KAFKA/7.1.0_1633125925229/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_KAFKA/7.1.0_1633125925229/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_KAFKA/7.1.0_1633125925229/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_PROTOBUF/7.1.0_1633125925282/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_PROTOBUF/7.1.0_1633125925282/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_int_elements_OK_-_PROTOBUF/7.1.0_1633125925282/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_map_element_OK_-_AVRO/7.1.0_1633125925644/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_map_element_OK_-_AVRO/7.1.0_1633125925644/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_map_element_OK_-_AVRO/7.1.0_1633125925644/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_map_element_OK_-_JSON/7.1.0_1633125925631/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_map_element_OK_-_JSON/7.1.0_1633125925631/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_map_element_OK_-_JSON/7.1.0_1633125925631/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_map_element_OK_-_PROTOBUF/7.1.0_1633125925659/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_map_element_OK_-_PROTOBUF/7.1.0_1633125925659/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_map_element_OK_-_PROTOBUF/7.1.0_1633125925659/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_AVRO/7.1.0_1633125925545/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_AVRO/7.1.0_1633125925545/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_AVRO/7.1.0_1633125925545/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_DELIMITED/7.1.0_1633125925492/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_DELIMITED/7.1.0_1633125925492/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_DELIMITED/7.1.0_1633125925492/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_JSON/7.1.0_1633125925515/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_JSON/7.1.0_1633125925515/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_JSON/7.1.0_1633125925515/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_JSON_SR/7.1.0_1633125925528/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_JSON_SR/7.1.0_1633125925528/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_JSON_SR/7.1.0_1633125925528/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_KAFKA/7.1.0_1633125925504/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_KAFKA/7.1.0_1633125925504/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_KAFKA/7.1.0_1633125925504/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_PROTOBUF/7.1.0_1633125925559/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_PROTOBUF/7.1.0_1633125925559/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_string_elements_OK_-_PROTOBUF/7.1.0_1633125925559/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_struct_element_OK_-_AVRO/7.1.0_1633125925722/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_struct_element_OK_-_AVRO/7.1.0_1633125925722/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_struct_element_OK_-_AVRO/7.1.0_1633125925722/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_struct_element_OK_-_JSON/7.1.0_1633125925673/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_struct_element_OK_-_JSON/7.1.0_1633125925673/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_struct_element_OK_-_JSON/7.1.0_1633125925673/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_struct_element_OK_-_JSON_SR/7.1.0_1633125925686/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_struct_element_OK_-_JSON_SR/7.1.0_1633125925686/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_struct_element_OK_-_JSON_SR/7.1.0_1633125925686/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_struct_element_OK_-_PROTOBUF/7.1.0_1633125925738/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_struct_element_OK_-_PROTOBUF/7.1.0_1633125925738/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_struct_element_OK_-_PROTOBUF/7.1.0_1633125925738/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_unwrapped_value_without_elements_OK_-_AVRO/7.1.0_1633125924963/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_unwrapped_value_without_elements_OK_-_AVRO/7.1.0_1633125924963/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_unwrapped_value_without_elements_OK_-_AVRO/7.1.0_1633125924963/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_with_elements_OK_-_AVRO/7.1.0_1633125925136/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_with_elements_OK_-_AVRO/7.1.0_1633125925136/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_with_elements_OK_-_AVRO/7.1.0_1633125925136/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_with_elements_OK_-_JSON/7.1.0_1633125925110/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_with_elements_OK_-_JSON/7.1.0_1633125925110/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_with_elements_OK_-_JSON/7.1.0_1633125925110/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_with_elements_OK_-_PROTOBUF/7.1.0_1633125925122/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_with_elements_OK_-_PROTOBUF/7.1.0_1633125925122/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_with_elements_OK_-_PROTOBUF/7.1.0_1633125925122/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_elements_OK_-_AVRO/7.1.0_1633125924934/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_elements_OK_-_AVRO/7.1.0_1633125924934/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_elements_OK_-_AVRO/7.1.0_1633125924934/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_elements_OK_-_JSON_SR_SCHEMA/7.1.0_1633125924997/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_elements_OK_-_JSON_SR_SCHEMA/7.1.0_1633125924997/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_elements_OK_-_JSON_SR_SCHEMA/7.1.0_1633125924997/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_elements_OK_-_PROTOBUF/7.1.0_1633125924981/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_elements_OK_-_PROTOBUF/7.1.0_1633125924981/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_elements_OK_-_PROTOBUF/7.1.0_1633125924981/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_value_elements_OK_-_AVRO/7.1.0_1633125925049/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_value_elements_OK_-_AVRO/7.1.0_1633125925049/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_value_elements_OK_-_AVRO/7.1.0_1633125925049/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_value_elements_OK_-_JSON_SR_SCHEMA/7.1.0_1633125925077/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_value_elements_OK_-_JSON_SR_SCHEMA/7.1.0_1633125925077/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_value_elements_OK_-_JSON_SR_SCHEMA/7.1.0_1633125925077/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_value_elements_OK_-_PROTOBUF/7.1.0_1633125925063/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_value_elements_OK_-_PROTOBUF/7.1.0_1633125925063/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_value_elements_OK_-_PROTOBUF/7.1.0_1633125925063/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_value_elements_OK_-_custom_key_name/7.1.0_1633125925093/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_value_elements_OK_-_custom_key_name/7.1.0_1633125925093/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_validate_without_value_elements_OK_-_custom_key_name/7.1.0_1633125925093/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_with_invalid_or_reserved_words_in_schema_-_JSON/7.1.0_1633125925032/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_with_invalid_or_reserved_words_in_schema_-_JSON/7.1.0_1633125925032/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elements_-_with_invalid_or_reserved_words_in_schema_-_JSON/7.1.0_1633125925032/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elt-field_-_ELT_should_undo_FIELD/7.1.0_1633125926476/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elt-field_-_ELT_should_undo_FIELD/7.1.0_1633125926476/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elt-field_-_ELT_should_undo_FIELD/7.1.0_1633125926476/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elt-field_-_elect_the_second_parameter/7.1.0_1633125926445/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elt-field_-_elect_the_second_parameter/7.1.0_1633125926445/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elt-field_-_elect_the_second_parameter/7.1.0_1633125926445/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elt-field_-_field_the_correct_parameter/7.1.0_1633125926462/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elt-field_-_field_the_correct_parameter/7.1.0_1633125926462/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/elt-field_-_field_the_correct_parameter/7.1.0_1633125926462/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/encode_-_encode_ascii/7.1.0_1633125926517/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/encode_-_encode_ascii/7.1.0_1633125926517/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/encode_-_encode_ascii/7.1.0_1633125926517/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/encode_-_encode_base64/7.1.0_1633125926538/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/encode_-_encode_base64/7.1.0_1633125926538/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/encode_-_encode_base64/7.1.0_1633125926538/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/encode_-_encode_hex/7.1.0_1633125926490/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/encode_-_encode_hex/7.1.0_1633125926490/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/encode_-_encode_hex/7.1.0_1633125926490/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/encode_-_encode_null/7.1.0_1633125926558/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/encode_-_encode_null/7.1.0_1633125926558/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/encode_-_encode_null/7.1.0_1633125926558/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_explode_array_of_struct/7.1.0_1633125926644/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_explode_array_of_struct/7.1.0_1633125926644/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_explode_array_of_struct/7.1.0_1633125926644/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_explode_array_of_struct_with_dereference/7.1.0_1633125926657/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_explode_array_of_struct_with_dereference/7.1.0_1633125926657/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_explode_array_of_struct_with_dereference/7.1.0_1633125926657/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_explode_array_with_values/7.1.0_1633125926580/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_explode_array_with_values/7.1.0_1633125926580/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_explode_array_with_values/7.1.0_1633125926580/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_explode_different_types/7.1.0_1633125926615/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_explode_different_types/7.1.0_1633125926615/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_explode_different_types/7.1.0_1633125926615/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_udfs_with_table_functions_and_no_aliases,_verifies_intermediate_generated_column_names_don't_clash_with_aliases/7.1.0_1633125926594/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_udfs_with_table_functions_and_no_aliases,_verifies_intermediate_generated_column_names_don't_clash_with_aliases/7.1.0_1633125926594/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/explode_-_udfs_with_table_functions_and_no_aliases,_verifies_intermediate_generated_column_names_don't_clash_with_aliases/7.1.0_1633125926594/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/extract-json-field_-_array_bounds/7.1.0_1633125926711/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/extract-json-field_-_array_bounds/7.1.0_1633125926711/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/extract-json-field_-_array_bounds/7.1.0_1633125926711/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/extract-json-field_-_concat_two_extracted_fields/7.1.0_1633125926672/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/extract-json-field_-_concat_two_extracted_fields/7.1.0_1633125926672/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/extract-json-field_-_concat_two_extracted_fields/7.1.0_1633125926672/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/extract-json-field_-_extract_JSON_array_field/7.1.0_1633125926693/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/extract-json-field_-_extract_JSON_array_field/7.1.0_1633125926693/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/extract-json-field_-_extract_JSON_array_field/7.1.0_1633125926693/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_apply_filter_lambda_function_to_int_map/7.1.0_1633125926821/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_apply_filter_lambda_function_to_int_map/7.1.0_1633125926821/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_apply_filter_lambda_function_to_int_map/7.1.0_1633125926821/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_apply_lambda_filter_to_int_array/7.1.0_1633125926730/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_apply_lambda_filter_to_int_array/7.1.0_1633125926730/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_apply_lambda_filter_to_int_array/7.1.0_1633125926730/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_apply_lambda_filter_to_string_array/7.1.0_1633125926769/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_apply_lambda_filter_to_string_array/7.1.0_1633125926769/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_apply_lambda_filter_to_string_array/7.1.0_1633125926769/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_apply_lambda_filter_with_udf_to_array/7.1.0_1633125926747/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_apply_lambda_filter_with_udf_to_array/7.1.0_1633125926747/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_apply_lambda_filter_with_udf_to_array/7.1.0_1633125926747/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_filter_a_nested_map/7.1.0_1633125926793/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_filter_a_nested_map/7.1.0_1633125926793/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/filter_-_filter_a_nested_map/7.1.0_1633125926793/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_(default)_key_feature_mismatch/7.1.0_1633125936768/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_(default)_key_feature_mismatch/7.1.0_1633125936768/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_(default)_key_feature_mismatch/7.1.0_1633125936768/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_format_mismatch_without_repartitioning/7.1.0_1633125936258/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_format_mismatch_without_repartitioning/7.1.0_1633125936258/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_format_mismatch_without_repartitioning/7.1.0_1633125936258/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_key_format_mismatch/7.1.0_1633125935286/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_key_format_mismatch/7.1.0_1633125935286/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_key_format_mismatch/7.1.0_1633125935286/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_partition_count_mismatch/7.1.0_1633125935764/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_partition_count_mismatch/7.1.0_1633125935764/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_partition_count_mismatch/7.1.0_1633125935764/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_to_omit_join_columns_in_projection/7.1.0_1633125933429/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_to_omit_join_columns_in_projection/7.1.0_1633125933429/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_allow_to_omit_join_columns_in_projection/7.1.0_1633125933429/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_`SELECT__`/7.1.0_1633125933809/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_`SELECT__`/7.1.0_1633125933809/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_`SELECT__`/7.1.0_1633125933809/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_flipped_join_condition/7.1.0_1633125932285/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_flipped_join_condition/7.1.0_1633125932285/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_flipped_join_condition/7.1.0_1633125932285/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_flipped_join_condition_with_aliases/7.1.0_1633125932781/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_flipped_join_condition_with_aliases/7.1.0_1633125932781/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_flipped_join_condition_with_aliases/7.1.0_1633125932781/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_inner_join_with_left_key-column_expression/7.1.0_1633125927928/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_inner_join_with_left_key-column_expression/7.1.0_1633125927928/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_inner_join_with_left_key-column_expression/7.1.0_1633125927928/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_inner_join_with_left_value-column_expression/7.1.0_1633125926849/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_inner_join_with_left_value-column_expression/7.1.0_1633125926849/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_inner_join_with_left_value-column_expression/7.1.0_1633125926849/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_inner_join_with_left_value-column_expression_-_with_aliases/7.1.0_1633125929052/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_inner_join_with_left_value-column_expression_-_with_aliases/7.1.0_1633125929052/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_inner_join_with_left_value-column_expression_-_with_aliases/7.1.0_1633125929052/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_left_join_with_left_key-column_expression/7.1.0_1633125928409/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_left_join_with_left_key-column_expression/7.1.0_1633125928409/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_left_join_with_left_key-column_expression/7.1.0_1633125928409/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_left_join_with_left_value-column_expression/7.1.0_1633125927348/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_left_join_with_left_value-column_expression/7.1.0_1633125927348/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_left_join_with_left_value-column_expression/7.1.0_1633125927348/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_left_join_with_left_value-column_expression_-_with_aliases/7.1.0_1633125929645/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_left_join_with_left_value-column_expression_-_with_aliases/7.1.0_1633125929645/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_left_join_with_left_value-column_expression_-_with_aliases/7.1.0_1633125929645/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_non-column_reference_in_left_join_expression/7.1.0_1633125930417/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_non-column_reference_in_left_join_expression/7.1.0_1633125930417/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_non-column_reference_in_left_join_expression/7.1.0_1633125930417/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_non-column_reference_in_left_join_expression_with_alias/7.1.0_1633125931618/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_non-column_reference_in_left_join_expression_with_alias/7.1.0_1633125931618/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_non-column_reference_in_left_join_expression_with_alias/7.1.0_1633125931618/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_non-column_reference_in_left_join_expression_with_qualifier/7.1.0_1633125931056/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_non-column_reference_in_left_join_expression_with_qualifier/7.1.0_1633125931056/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_non-column_reference_in_left_join_expression_with_qualifier/7.1.0_1633125931056/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_qualified_`SELECT__`_for_both_input_using_aliases/7.1.0_1633125934862/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_qualified_`SELECT__`_for_both_input_using_aliases/7.1.0_1633125934862/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_qualified_`SELECT__`_for_both_input_using_aliases/7.1.0_1633125934862/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_qualified_`SELECT__`_for_left_input/7.1.0_1633125934541/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_qualified_`SELECT__`_for_left_input/7.1.0_1633125934541/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_qualified_`SELECT__`_for_left_input/7.1.0_1633125934541/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_qualified_`SELECT__`_for_right_input/7.1.0_1633125934144/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_qualified_`SELECT__`_for_right_input/7.1.0_1633125934144/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-join_-_Should_support_qualified_`SELECT__`_for_right_input/7.1.0_1633125934144/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join/7.1.0_1633125937284/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join/7.1.0_1633125937284/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join/7.1.0_1633125937284/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_alternative_key_expression_in_projection/7.1.0_1633125938487/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_alternative_key_expression_in_projection/7.1.0_1633125938487/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_alternative_key_expression_in_projection/7.1.0_1633125938487/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_qualified_select__/7.1.0_1633125939671/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_qualified_select__/7.1.0_1633125939671/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_qualified_select__/7.1.0_1633125939671/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_select__/7.1.0_1633125939062/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_select__/7.1.0_1633125939062/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_select__/7.1.0_1633125939062/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_with_aliases/7.1.0_1633125940079/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_with_aliases/7.1.0_1633125940079/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_with_aliases/7.1.0_1633125940079/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_without_fk_join_expressions_in_projection/7.1.0_1633125937862/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_without_fk_join_expressions_in_projection/7.1.0_1633125937862/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/fk-n-way-join_-_Should_allow_fk_join_at_start_of_n-way_join_-_without_fk_join_expressions_in_projection/7.1.0_1633125937862/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/floating-point_-_filter_by_DOUBLE/7.1.0_1633125940457/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/floating-point_-_filter_by_DOUBLE/7.1.0_1633125940457/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/floating-point_-_filter_by_DOUBLE/7.1.0_1633125940457/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/floating-point_-_with_exponent/7.1.0_1633125940473/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/floating-point_-_with_exponent/7.1.0_1633125940473/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/floating-point_-_with_exponent/7.1.0_1633125940473/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/format-date_-_date_to_string/7.1.0_1633125940577/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/format-date_-_date_to_string/7.1.0_1633125940577/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/format-date_-_date_to_string/7.1.0_1633125940577/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/format-time_-_time_to_string/7.1.0_1633125940857/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/format-time_-_time_to_string/7.1.0_1633125940857/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/format-time_-_time_to_string/7.1.0_1633125940857/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_explicit_format/7.1.0_1633125940641/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_explicit_format/7.1.0_1633125940641/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_explicit_format/7.1.0_1633125940641/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_explicit_key_and_optional_value_format/7.1.0_1633125940592/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_explicit_key_and_optional_value_format/7.1.0_1633125940592/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_explicit_key_and_optional_value_format/7.1.0_1633125940592/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_explicit_key_and_value_format/7.1.0_1633125940618/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_explicit_key_and_value_format/7.1.0_1633125940618/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_explicit_key_and_value_format/7.1.0_1633125940618/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_optional_key_and_explicit_value_format/7.1.0_1633125940629/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_optional_key_and_explicit_value_format/7.1.0_1633125940629/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_optional_key_and_explicit_value_format/7.1.0_1633125940629/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_optional_key_and_value_format/7.1.0_1633125940605/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_optional_key_and_value_format/7.1.0_1633125940605/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_optional_key_and_value_format/7.1.0_1633125940605/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_override_formats_-_create_stream_as_select/7.1.0_1633125940745/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_override_formats_-_create_stream_as_select/7.1.0_1633125940745/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_override_formats_-_create_stream_as_select/7.1.0_1633125940745/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_override_formats_-_create_table_as_select/7.1.0_1633125940776/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_override_formats_-_create_table_as_select/7.1.0_1633125940776/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_override_formats_-_create_table_as_select/7.1.0_1633125940776/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_override_key_format_-_create_stream_as_select/7.1.0_1633125940652/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_override_key_format_-_create_stream_as_select/7.1.0_1633125940652/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_override_key_format_-_create_stream_as_select/7.1.0_1633125940652/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_override_key_format_-_create_table_as_select/7.1.0_1633125940663/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_override_key_format_-_create_table_as_select/7.1.0_1633125940663/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/formats_-_override_key_format_-_create_table_as_select/7.1.0_1633125940663/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/from-days_-_convert_days_to_date/7.1.0_1633125940895/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/from-days_-_convert_days_to_date/7.1.0_1633125940895/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/from-days_-_convert_days_to_date/7.1.0_1633125940895/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/from-unixtime_-_convert_milliseconds_to_timezone/7.1.0_1633125940910/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/from-unixtime_-_convert_milliseconds_to_timezone/7.1.0_1633125940910/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/from-unixtime_-_convert_milliseconds_to_timezone/7.1.0_1633125940910/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/geodistance_-_geo_distance_with_radius/7.1.0_1633125940924/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/geodistance_-_geo_distance_with_radius/7.1.0_1633125940924/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/geodistance_-_geo_distance_with_radius/7.1.0_1633125940924/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/geodistance_-_geo_distance_without_radius/7.1.0_1633125940944/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/geodistance_-_geo_distance_without_radius/7.1.0_1633125940944/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/geodistance_-_geo_distance_without_radius/7.1.0_1633125940944/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/geodistance_-_small_distances_in_where/7.1.0_1633125940981/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/geodistance_-_small_distances_in_where/7.1.0_1633125940981/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/geodistance_-_small_distances_in_where/7.1.0_1633125940981/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_decimal_widening/7.1.0_1633125941096/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_decimal_widening/7.1.0_1633125941096/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_decimal_widening/7.1.0_1633125941096/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_bigint/7.1.0_1633125941023/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_bigint/7.1.0_1633125941023/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_bigint/7.1.0_1633125941023/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_decimal/7.1.0_1633125941042/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_decimal/7.1.0_1633125941042/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_decimal/7.1.0_1633125941042/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_double/7.1.0_1633125941059/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_double/7.1.0_1633125941059/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_double/7.1.0_1633125941059/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_integer/7.1.0_1633125941007/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_integer/7.1.0_1633125941007/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_integer/7.1.0_1633125941007/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_strings/7.1.0_1633125941110/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_strings/7.1.0_1633125941110/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_greatest_with_strings/7.1.0_1633125941110/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_implicit_casting_to_double/7.1.0_1633125941075/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_implicit_casting_to_double/7.1.0_1633125941075/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/greatest_-_test_implicit_casting_to_double/7.1.0_1633125941075/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_AVRO_group_by_struct/7.1.0_1633125962363/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_AVRO_group_by_struct/7.1.0_1633125962363/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_AVRO_group_by_struct/7.1.0_1633125962363/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_AVRO_primitive_key/7.1.0_1633125962069/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_AVRO_primitive_key/7.1.0_1633125962069/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_AVRO_primitive_key/7.1.0_1633125962069/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_AVRO_struct_key_group_by_primitive/7.1.0_1633125962230/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_AVRO_struct_key_group_by_primitive/7.1.0_1633125962230/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_AVRO_struct_key_group_by_primitive/7.1.0_1633125962230/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_JSON_group_by_array/7.1.0_1633125962545/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_JSON_group_by_array/7.1.0_1633125962545/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_JSON_group_by_array/7.1.0_1633125962545/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_JSON_group_by_struct/7.1.0_1633125962642/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_JSON_group_by_struct/7.1.0_1633125962642/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_JSON_group_by_struct/7.1.0_1633125962642/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_JSON_group_by_struct_convert_key_format/7.1.0_1633125962738/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_JSON_group_by_struct_convert_key_format/7.1.0_1633125962738/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_JSON_group_by_struct_convert_key_format/7.1.0_1633125962738/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_ROWTIME_(stream-_table)/7.1.0_1633125954315/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_ROWTIME_(stream-_table)/7.1.0_1633125954315/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_ROWTIME_(stream-_table)/7.1.0_1633125954315/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_Struct_key_used_in_aggregate_expression/7.1.0_1633125962831/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_Struct_key_used_in_aggregate_expression/7.1.0_1633125962831/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_Struct_key_used_in_aggregate_expression/7.1.0_1633125962831/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_UDAF_nested_in_UDF_in_select_expression_(stream-_table)/7.1.0_1633125958937/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_UDAF_nested_in_UDF_in_select_expression_(stream-_table)/7.1.0_1633125958937/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_UDAF_nested_in_UDF_in_select_expression_(stream-_table)/7.1.0_1633125958937/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_UDAF_nested_in_UDF_in_select_expression_(table-_table)/7.1.0_1633125959118/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_UDAF_nested_in_UDF_in_select_expression_(table-_table)/7.1.0_1633125959118/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_UDAF_nested_in_UDF_in_select_expression_(table-_table)/7.1.0_1633125959118/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_UDF_nested_in_UDAF_in_select_expression_(stream-_table)/7.1.0_1633125959430/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_UDF_nested_in_UDAF_in_select_expression_(stream-_table)/7.1.0_1633125959430/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_UDF_nested_in_UDAF_in_select_expression_(stream-_table)/7.1.0_1633125959430/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_arithmetic_binary_expression_with_projection_in-order_&_non-commutative_group_by_(stream-_table)/7.1.0_1633125956363/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_arithmetic_binary_expression_with_projection_in-order_&_non-commutative_group_by_(stream-_table)/7.1.0_1633125956363/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_arithmetic_binary_expression_with_projection_in-order_&_non-commutative_group_by_(stream-_table)/7.1.0_1633125956363/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_arithmetic_binary_expression_with_projection_in-order_&_non-commutative_group_by_(table-_table)/7.1.0_1633125956570/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_arithmetic_binary_expression_with_projection_in-order_&_non-commutative_group_by_(table-_table)/7.1.0_1633125956570/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_arithmetic_binary_expression_with_projection_in-order_&_non-commutative_group_by_(table-_table)/7.1.0_1633125956570/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_arithmetic_in_group_by_column_used_in_non-aggregate_function_in_select/7.1.0_1633125943942/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_arithmetic_in_group_by_column_used_in_non-aggregate_function_in_select/7.1.0_1633125943942/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_arithmetic_in_group_by_column_used_in_non-aggregate_function_in_select/7.1.0_1633125943942/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_by_non-STRING_key/7.1.0_1633125960178/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_by_non-STRING_key/7.1.0_1633125960178/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_by_non-STRING_key/7.1.0_1633125960178/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_complex_UDAF_params/7.1.0_1633125947258/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_complex_UDAF_params/7.1.0_1633125947258/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_complex_UDAF_params/7.1.0_1633125947258/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_complex_UDAF_params_matching_GROUP_BY/7.1.0_1633125947411/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_complex_UDAF_params_matching_GROUP_BY/7.1.0_1633125947411/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_complex_UDAF_params_matching_GROUP_BY/7.1.0_1633125947411/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_complex_UDAF_params_matching_HAVING/7.1.0_1633125947527/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_complex_UDAF_params_matching_HAVING/7.1.0_1633125947527/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_complex_UDAF_params_matching_HAVING/7.1.0_1633125947527/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_constant_(stream-_table)/7.1.0_1633125954434/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_constant_(stream-_table)/7.1.0_1633125954434/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_constant_(stream-_table)/7.1.0_1633125954434/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_constant_(table-_table)/7.1.0_1633125954665/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_constant_(table-_table)/7.1.0_1633125954665/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_constant_(table-_table)/7.1.0_1633125954665/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_double_field_with_re-key_(stream-_table)/7.1.0_1633125951212/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_double_field_with_re-key_(stream-_table)/7.1.0_1633125951212/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_double_field_with_re-key_(stream-_table)/7.1.0_1633125951212/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_duplicate_fields_(stream-_table)/7.1.0_1633125958648/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_duplicate_fields_(stream-_table)/7.1.0_1633125958648/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_duplicate_fields_(stream-_table)/7.1.0_1633125958648/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_duplicate_udafs_(stream-_table)/7.1.0_1633125958782/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_duplicate_udafs_(stream-_table)/7.1.0_1633125958782/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_duplicate_udafs_(stream-_table)/7.1.0_1633125958782/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_expressions_used_in_non-aggregate_function_in_select_whose_children_are_not_part_of_group-by/7.1.0_1633125944096/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_expressions_used_in_non-aggregate_function_in_select_whose_children_are_not_part_of_group-by/7.1.0_1633125944096/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_expressions_used_in_non-aggregate_function_in_select_whose_children_are_not_part_of_group-by/7.1.0_1633125944096/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_(stream-_table)/7.1.0_1633125947956/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_(stream-_table)/7.1.0_1633125947956/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_(stream-_table)/7.1.0_1633125947956/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_(stream-_table)_-_format_-_AVRO/7.1.0_1633125948095/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_(stream-_table)_-_format_-_AVRO/7.1.0_1633125948095/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_(stream-_table)_-_format_-_AVRO/7.1.0_1633125948095/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_(stream-_table)_-_format_-_JSON/7.1.0_1633125948272/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_(stream-_table)_-_format_-_JSON/7.1.0_1633125948272/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_(stream-_table)_-_format_-_JSON/7.1.0_1633125948272/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_(stream-_table)_-_format_-_PROTOBUF/7.1.0_1633125948403/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_(stream-_table)_-_format_-_PROTOBUF/7.1.0_1633125948403/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_(stream-_table)_-_format_-_PROTOBUF/7.1.0_1633125948403/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_field_used_in_function_in_projection_(stream-_table)/7.1.0_1633125955018/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_field_used_in_function_in_projection_(stream-_table)/7.1.0_1633125955018/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_field_used_in_function_in_projection_(stream-_table)/7.1.0_1633125955018/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_field_used_in_function_in_projection_(table-_table)/7.1.0_1633125955251/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_field_used_in_function_in_projection_(table-_table)/7.1.0_1633125955251/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_field_used_in_function_in_projection_(table-_table)/7.1.0_1633125955251/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(stream-_table)/7.1.0_1633125951060/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(stream-_table)/7.1.0_1633125951060/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(stream-_table)/7.1.0_1633125951060/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(stream-_table)_-_format_-_AVRO/7.1.0_1633125951401/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(stream-_table)_-_format_-_AVRO/7.1.0_1633125951401/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(stream-_table)_-_format_-_AVRO/7.1.0_1633125951401/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(stream-_table)_-_format_-_JSON/7.1.0_1633125951598/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(stream-_table)_-_format_-_JSON/7.1.0_1633125951598/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(stream-_table)_-_format_-_JSON/7.1.0_1633125951598/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(stream-_table)_-_format_-_PROTOBUF/7.1.0_1633125951777/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(stream-_table)_-_format_-_PROTOBUF/7.1.0_1633125951777/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(stream-_table)_-_format_-_PROTOBUF/7.1.0_1633125951777/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(table-_table)/7.1.0_1633125951949/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(table-_table)/7.1.0_1633125951949/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_field_with_re-key_(table-_table)/7.1.0_1633125951949/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(stream-_table)/7.1.0_1633125948711/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(stream-_table)/7.1.0_1633125948711/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(stream-_table)/7.1.0_1633125948711/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(stream-_table)_-_format_-_AVRO/7.1.0_1633125948954/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(stream-_table)_-_format_-_AVRO/7.1.0_1633125948954/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(stream-_table)_-_format_-_AVRO/7.1.0_1633125948954/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(stream-_table)_-_format_-_JSON/7.1.0_1633125949161/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(stream-_table)_-_format_-_JSON/7.1.0_1633125949161/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(stream-_table)_-_format_-_JSON/7.1.0_1633125949161/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(stream-_table)_-_format_-_PROTOBUF/7.1.0_1633125949343/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(stream-_table)_-_format_-_PROTOBUF/7.1.0_1633125949343/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(stream-_table)_-_format_-_PROTOBUF/7.1.0_1633125949343/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(table-_table)/7.1.0_1633125949704/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(table-_table)/7.1.0_1633125949704/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(table-_table)/7.1.0_1633125949704/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(table-_table)_-_format_-_AVRO/7.1.0_1633125950307/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(table-_table)_-_format_-_AVRO/7.1.0_1633125950307/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(table-_table)_-_format_-_AVRO/7.1.0_1633125950307/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(table-_table)_-_format_-_JSON/7.1.0_1633125950543/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(table-_table)_-_format_-_JSON/7.1.0_1633125950543/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(table-_table)_-_format_-_JSON/7.1.0_1633125950543/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(table-_table)_-_format_-_PROTOBUF/7.1.0_1633125950768/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(table-_table)_-_format_-_PROTOBUF/7.1.0_1633125950768/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_(table-_table)_-_format_-_PROTOBUF/7.1.0_1633125950768/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_-_copied_into_value_(table-_table)/7.1.0_1633125949989/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_-_copied_into_value_(table-_table)/7.1.0_1633125949989/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_-_copied_into_value_(table-_table)/7.1.0_1633125949989/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_used_in_expression/7.1.0_1633125948837/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_used_in_expression/7.1.0_1633125948837/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_fields_used_in_expression/7.1.0_1633125948837/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_function_(stream-_table)/7.1.0_1633125953086/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_function_(stream-_table)/7.1.0_1633125953086/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_function_(stream-_table)/7.1.0_1633125953086/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_function_(table-_table)/7.1.0_1633125953282/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_function_(table-_table)/7.1.0_1633125953282/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_function_(table-_table)/7.1.0_1633125953282/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_function_group_by_column_used_in_non-aggregate_function_in_having/7.1.0_1633125943764/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_function_group_by_column_used_in_non-aggregate_function_in_having/7.1.0_1633125943764/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_function_group_by_column_used_in_non-aggregate_function_in_having/7.1.0_1633125943764/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_function_in_group-by_and_nested_function_in_select/7.1.0_1633125943406/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_function_in_group-by_and_nested_function_in_select/7.1.0_1633125943406/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_function_in_group-by_and_nested_function_in_select/7.1.0_1633125943406/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_group_by_column_in_nested_non-aggregate_function_in_select/7.1.0_1633125943593/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_group_by_column_in_nested_non-aggregate_function_in_select/7.1.0_1633125943593/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_group_by_column_in_nested_non-aggregate_function_in_select/7.1.0_1633125943593/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_int_field_(stream-_table)/7.1.0_1633125948547/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_int_field_(stream-_table)/7.1.0_1633125948547/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_int_field_(stream-_table)/7.1.0_1633125948547/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_int_function_(table-_table)/7.1.0_1633125953552/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_int_function_(table-_table)/7.1.0_1633125953552/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_int_function_(table-_table)/7.1.0_1633125953552/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_int_json_field_(stream-_table)/7.1.0_1633125953995/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_int_json_field_(stream-_table)/7.1.0_1633125953995/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_int_json_field_(stream-_table)/7.1.0_1633125953995/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_json_field_(stream-_table)/7.1.0_1633125953835/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_json_field_(stream-_table)/7.1.0_1633125953835/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_json_field_(stream-_table)/7.1.0_1633125953835/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_key_(stream-_table)/7.1.0_1633125954155/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_key_(stream-_table)/7.1.0_1633125954155/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_key_(stream-_table)/7.1.0_1633125954155/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_missing_matching_projection_field_(stream-_table)/7.1.0_1633125958254/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_missing_matching_projection_field_(stream-_table)/7.1.0_1633125958254/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_missing_matching_projection_field_(stream-_table)/7.1.0_1633125958254/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_missing_matching_projection_field_(table-_table)/7.1.0_1633125958371/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_missing_matching_projection_field_(table-_table)/7.1.0_1633125958371/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_missing_matching_projection_field_(table-_table)/7.1.0_1633125958371/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions/7.1.0_1633125944245/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions/7.1.0_1633125944245/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions/7.1.0_1633125944245/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_KAFKA_to_non-KAFKA_key_format/7.1.0_1633125944640/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_KAFKA_to_non-KAFKA_key_format/7.1.0_1633125944640/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_KAFKA_to_non-KAFKA_key_format/7.1.0_1633125944640/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_KAFKA_to_non-supported_decimal_key_format_with_JSON_format_conversion/7.1.0_1633125945096/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_KAFKA_to_non-supported_decimal_key_format_with_JSON_format_conversion/7.1.0_1633125945096/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_KAFKA_to_non-supported_decimal_key_format_with_JSON_format_conversion/7.1.0_1633125945096/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_KAFKA_to_non-supported_decimal_key_format_with_favored_explicit_AVRO_format_conversion/7.1.0_1633125945329/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_KAFKA_to_non-supported_decimal_key_format_with_favored_explicit_AVRO_format_conversion/7.1.0_1633125945329/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_KAFKA_to_non-supported_decimal_key_format_with_favored_explicit_AVRO_format_conversion/7.1.0_1633125945329/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_KAFKA_to_struct_key_format/7.1.0_1633125944848/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_KAFKA_to_struct_key_format/7.1.0_1633125944848/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_KAFKA_to_struct_key_format/7.1.0_1633125944848/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_delimited_key_format_to_multi-column,_non-primitive_format/7.1.0_1633125945785/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_delimited_key_format_to_multi-column,_non-primitive_format/7.1.0_1633125945785/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_delimited_key_format_to_multi-column,_non-primitive_format/7.1.0_1633125945785/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_delimited_key_format_to_multi-column_primitive_format/7.1.0_1633125945569/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_delimited_key_format_to_multi-column_primitive_format/7.1.0_1633125945569/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_delimited_key_format_to_multi-column_primitive_format/7.1.0_1633125945569/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_delimited_key_format_to_struct_format/7.1.0_1633125946010/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_delimited_key_format_to_struct_format/7.1.0_1633125946010/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_delimited_key_format_to_struct_format/7.1.0_1633125946010/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_table_aggregate/7.1.0_1633125946544/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_table_aggregate/7.1.0_1633125946544/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_table_aggregate/7.1.0_1633125946544/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_table_aggregate_-_KAFKA_to_non-KAFKA_key_format/7.1.0_1633125946840/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_table_aggregate_-_KAFKA_to_non-KAFKA_key_format/7.1.0_1633125946840/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_table_aggregate_-_KAFKA_to_non-KAFKA_key_format/7.1.0_1633125946840/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_windowed/7.1.0_1633125946385/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_windowed/7.1.0_1633125946385/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_-_windowed/7.1.0_1633125946385/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_with_nulls/7.1.0_1633125947814/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_with_nulls/7.1.0_1633125947814/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_with_nulls/7.1.0_1633125947814/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_with_struct_field_and_other_expression/7.1.0_1633125944439/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_with_struct_field_and_other_expression/7.1.0_1633125944439/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_multiple_expressions_with_struct_field_and_other_expression/7.1.0_1633125944439/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_non-KAFKA_key_format/7.1.0_1633125961937/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_non-KAFKA_key_format/7.1.0_1633125961937/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_non-KAFKA_key_format/7.1.0_1633125961937/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_on_join/7.1.0_1633125960418/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_on_join/7.1.0_1633125960418/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_on_join/7.1.0_1633125960418/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_only_key_column_(stream-_table)/7.1.0_1633125941126/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_only_key_column_(stream-_table)/7.1.0_1633125941126/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_only_key_column_(stream-_table)/7.1.0_1633125941126/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_select___where_all_columns_in_group_by/7.1.0_1633125947134/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_select___where_all_columns_in_group_by/7.1.0_1633125947134/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_select___where_all_columns_in_group_by/7.1.0_1633125947134/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_exclude_any_stream_row_whose_single_GROUP_BY_expression_resolves_to_NULL/7.1.0_1633125959596/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_exclude_any_stream_row_whose_single_GROUP_BY_expression_resolves_to_NULL/7.1.0_1633125959596/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_exclude_any_stream_row_whose_single_GROUP_BY_expression_resolves_to_NULL/7.1.0_1633125959596/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_exclude_any_stream_row_whose_single_GROUP_BY_expression_throws/7.1.0_1633125959961/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_exclude_any_stream_row_whose_single_GROUP_BY_expression_throws/7.1.0_1633125959961/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_exclude_any_stream_row_whose_single_GROUP_BY_expression_throws/7.1.0_1633125959961/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_exclude_any_table_row_whose_single_GROUP_BY_expression_resolves_to_NULL/7.1.0_1633125959741/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_exclude_any_table_row_whose_single_GROUP_BY_expression_resolves_to_NULL/7.1.0_1633125959741/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_exclude_any_table_row_whose_single_GROUP_BY_expression_resolves_to_NULL/7.1.0_1633125959741/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_exclude_any_table_row_whose_single_GROUP_BY_expression_throws/7.1.0_1633125960037/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_exclude_any_table_row_whose_single_GROUP_BY_expression_throws/7.1.0_1633125960037/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_exclude_any_table_row_whose_single_GROUP_BY_expression_throws/7.1.0_1633125960037/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_handled_quoted_key_and_value/7.1.0_1633125960317/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_handled_quoted_key_and_value/7.1.0_1633125960317/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_should_handled_quoted_key_and_value/7.1.0_1633125960317/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_column_with_alias_(stream-_table)/7.1.0_1633125941816/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_column_with_alias_(stream-_table)/7.1.0_1633125941816/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_column_with_alias_(stream-_table)/7.1.0_1633125941816/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_column_with_alias_(table-_table)/7.1.0_1633125942009/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_column_with_alias_(table-_table)/7.1.0_1633125942009/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_column_with_alias_(table-_table)/7.1.0_1633125942009/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_expression_(stream-_table)/7.1.0_1633125941631/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_expression_(stream-_table)/7.1.0_1633125941631/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_expression_(stream-_table)/7.1.0_1633125941631/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_expression_with_alias_(stream-_table)/7.1.0_1633125942286/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_expression_with_alias_(stream-_table)/7.1.0_1633125942286/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_expression_with_alias_(stream-_table)/7.1.0_1633125942286/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_expression_with_alias_(table-_table)/7.1.0_1633125942471/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_expression_with_alias_(table-_table)/7.1.0_1633125942471/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_expression_with_alias_(table-_table)/7.1.0_1633125942471/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_expression_with_nulls/7.1.0_1633125947654/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_expression_with_nulls/7.1.0_1633125947654/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_single_expression_with_nulls/7.1.0_1633125947654/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_steam_with_no_key/7.1.0_1633125942731/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_steam_with_no_key/7.1.0_1633125942731/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_steam_with_no_key/7.1.0_1633125942731/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_string_concat_using_+_op_(stream-_table)/7.1.0_1633125955650/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_string_concat_using_+_op_(stream-_table)/7.1.0_1633125955650/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_string_concat_using_+_op_(stream-_table)/7.1.0_1633125955650/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_string_concat_using_+_op_(table-_table)/7.1.0_1633125955881/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_string_concat_using_+_op_(table-_table)/7.1.0_1633125955881/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_string_concat_using_+_op_(table-_table)/7.1.0_1633125955881/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_struct_field_(stream-_table)/7.1.0_1633125941445/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_struct_field_(stream-_table)/7.1.0_1633125941445/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_struct_field_(stream-_table)/7.1.0_1633125941445/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_struct_in_group-by_and_non_aggregate_function_in_select/7.1.0_1633125943259/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_struct_in_group-by_and_non_aggregate_function_in_select/7.1.0_1633125943259/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_struct_in_group-by_and_non_aggregate_function_in_select/7.1.0_1633125943259/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_subscript_in_group-by_and_having/7.1.0_1633125943023/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_subscript_in_group-by_and_having/7.1.0_1633125943023/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_subscript_in_group-by_and_having/7.1.0_1633125943023/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_subscript_in_group-by_and_non_aggregate_function_in_select/7.1.0_1633125943161/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_subscript_in_group-by_and_non_aggregate_function_in_select/7.1.0_1633125943161/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_subscript_in_group-by_and_non_aggregate_function_in_select/7.1.0_1633125943161/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_subscript_in_group-by_and_select/7.1.0_1633125942868/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_subscript_in_group-by_and_select/7.1.0_1633125942868/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_subscript_in_group-by_and_select/7.1.0_1633125942868/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_udafs_only_in_having_(stream-_table)/7.1.0_1633125941202/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_udafs_only_in_having_(stream-_table)/7.1.0_1633125941202/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_udafs_only_in_having_(stream-_table)/7.1.0_1633125941202/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_value_column_(stream-_table)/7.1.0_1633125941301/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_value_column_(stream-_table)/7.1.0_1633125941301/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_value_column_(stream-_table)/7.1.0_1633125941301/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_windowed_aggregate_with_field_within_struct_key/7.1.0_1633125961798/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_windowed_aggregate_with_field_within_struct_key/7.1.0_1633125961798/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_windowed_aggregate_with_field_within_struct_key/7.1.0_1633125961798/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_windowed_aggregate_with_struct_key_-_AVRO/7.1.0_1633125961690/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_windowed_aggregate_with_struct_key_-_AVRO/7.1.0_1633125961690/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_windowed_aggregate_with_struct_key_-_AVRO/7.1.0_1633125961690/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_windowed_aggregate_with_struct_key_-_JSON/7.1.0_1633125961558/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_windowed_aggregate_with_struct_key_-_JSON/7.1.0_1633125961558/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_windowed_aggregate_with_struct_key_-_JSON/7.1.0_1633125961558/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_windowed_join/7.1.0_1633125960821/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_windowed_join/7.1.0_1633125960821/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_windowed_join/7.1.0_1633125960821/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_aggregate_arithmetic_(stream-_table)/7.1.0_1633125952212/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_aggregate_arithmetic_(stream-_table)/7.1.0_1633125952212/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_aggregate_arithmetic_(stream-_table)/7.1.0_1633125952212/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_aggregate_arithmetic_(table-_table)/7.1.0_1633125952364/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_aggregate_arithmetic_(table-_table)/7.1.0_1633125952364/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_aggregate_arithmetic_(table-_table)/7.1.0_1633125952364/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_aggregate_arithmetic_involving_source_field_(stream-_table)/7.1.0_1633125952641/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_aggregate_arithmetic_involving_source_field_(stream-_table)/7.1.0_1633125952641/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_aggregate_arithmetic_involving_source_field_(stream-_table)/7.1.0_1633125952641/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_aggregate_arithmetic_involving_source_field_(table-_table)/7.1.0_1633125952821/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_aggregate_arithmetic_involving_source_field_(table-_table)/7.1.0_1633125952821/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_aggregate_arithmetic_involving_source_field_(table-_table)/7.1.0_1633125952821/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_constant_having_(stream-table)/7.1.0_1633125957893/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_constant_having_(stream-table)/7.1.0_1633125957893/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_constant_having_(stream-table)/7.1.0_1633125957893/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_constants_in_the_projection_(stream-_table)/7.1.0_1633125958077/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_constants_in_the_projection_(stream-_table)/7.1.0_1633125958077/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_constants_in_the_projection_(stream-_table)/7.1.0_1633125958077/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_having_expression_(stream-_table)/7.1.0_1633125956913/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_having_expression_(stream-_table)/7.1.0_1633125956913/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_having_expression_(stream-_table)/7.1.0_1633125956913/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_having_expression_(table-_table)/7.1.0_1633125957186/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_having_expression_(table-_table)/7.1.0_1633125957186/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_having_expression_(table-_table)/7.1.0_1633125957186/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_having_expression_on_non-group-by_field_(stream-_table)/7.1.0_1633125957695/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_having_expression_on_non-group-by_field_(stream-_table)/7.1.0_1633125957695/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_having_expression_on_non-group-by_field_(stream-_table)/7.1.0_1633125957695/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_multiple_having_expressions_(stream-_table)/7.1.0_1633125957480/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_multiple_having_expressions_(stream-_table)/7.1.0_1633125957480/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_multiple_having_expressions_(stream-_table)/7.1.0_1633125957480/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_single_grouping_set_(stream-_table)/7.1.0_1633125949538/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_single_grouping_set_(stream-_table)/7.1.0_1633125949538/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_with_single_grouping_set_(stream-_table)/7.1.0_1633125949538/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_zero_non-agg_columns_(stream)/7.1.0_1633125961051/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_zero_non-agg_columns_(stream)/7.1.0_1633125961051/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_zero_non-agg_columns_(stream)/7.1.0_1633125961051/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_zero_non-agg_columns_(table)/7.1.0_1633125961337/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_zero_non-agg_columns_(table)/7.1.0_1633125961337/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_zero_non-agg_columns_(table)/7.1.0_1633125961337/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_zero_non-agg_columns_(windowed_stream)/7.1.0_1633125961189/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_zero_non-agg_columns_(windowed_stream)/7.1.0_1633125961189/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/group-by_-_zero_non-agg_columns_(windowed_stream)/7.1.0_1633125961189/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/having_-_calculate_average_in_having/7.1.0_1633125963004/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/having_-_calculate_average_in_having/7.1.0_1633125963004/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/having_-_calculate_average_in_having/7.1.0_1633125963004/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/having_-_table_having/7.1.0_1633125962904/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/having_-_table_having/7.1.0_1633125962904/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/having_-_table_having/7.1.0_1633125962904/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_on_a_table_-_AVRO/7.1.0_1633125963604/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_on_a_table_-_AVRO/7.1.0_1633125963604/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_on_a_table_-_AVRO/7.1.0_1633125963604/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_on_a_table_-_JSON/7.1.0_1633125963934/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_on_a_table_-_JSON/7.1.0_1633125963934/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_on_a_table_-_JSON/7.1.0_1633125963934/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_on_a_table_-_PROTOBUF/7.1.0_1633125964219/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_on_a_table_-_PROTOBUF/7.1.0_1633125964219/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_on_a_table_-_PROTOBUF/7.1.0_1633125964219/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_string_-_AVRO/7.1.0_1633125963114/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_string_-_AVRO/7.1.0_1633125963114/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_string_-_AVRO/7.1.0_1633125963114/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_string_-_JSON/7.1.0_1633125963281/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_string_-_JSON/7.1.0_1633125963281/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_string_-_JSON/7.1.0_1633125963281/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_string_-_PROTOBUF/7.1.0_1633125963448/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_string_-_PROTOBUF/7.1.0_1633125963448/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/histogram_-_histogram_string_-_PROTOBUF/7.1.0_1633125963448/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_count/7.1.0_1633125965563/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_count/7.1.0_1633125965563/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_count/7.1.0_1633125965563/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_import_hopping_stream/7.1.0_1633125965652/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_import_hopping_stream/7.1.0_1633125965652/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_import_hopping_stream/7.1.0_1633125965652/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_min_hopping/7.1.0_1633125965189/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_min_hopping/7.1.0_1633125965189/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_min_hopping/7.1.0_1633125965189/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_non-KAFKA_key_format/7.1.0_1633125965667/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_non-KAFKA_key_format/7.1.0_1633125965667/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_non-KAFKA_key_format/7.1.0_1633125965667/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_out_of_order_-_explicit_grace_period/7.1.0_1633125964831/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_out_of_order_-_explicit_grace_period/7.1.0_1633125964831/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_out_of_order_-_explicit_grace_period/7.1.0_1633125964831/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_out_of_order_-_no_grace_period/7.1.0_1633125964507/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_out_of_order_-_no_grace_period/7.1.0_1633125964507/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_out_of_order_-_no_grace_period/7.1.0_1633125964507/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_topk_hopping/7.1.0_1633125965326/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_topk_hopping/7.1.0_1633125965326/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_topk_hopping/7.1.0_1633125965326/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_topkdistinct_hopping/7.1.0_1633125965436/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_topkdistinct_hopping/7.1.0_1633125965436/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/hopping-windows_-_topkdistinct_hopping/7.1.0_1633125965436/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_join_source/7.1.0_1633125965836/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_join_source/7.1.0_1633125965836/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_join_source/7.1.0_1633125965836/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_join_source_with_AS/7.1.0_1633125965948/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_join_source_with_AS/7.1.0_1633125965948/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_join_source_with_AS/7.1.0_1633125965948/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_left_unaliased_right/7.1.0_1633125966093/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_left_unaliased_right/7.1.0_1633125966093/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_left_unaliased_right/7.1.0_1633125966093/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_source/7.1.0_1633125965777/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_source/7.1.0_1633125965777/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_source/7.1.0_1633125965777/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_source_with_AS/7.1.0_1633125965818/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_source_with_AS/7.1.0_1633125965818/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_aliased_source_with_AS/7.1.0_1633125965818/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_prefixed_wildcard_select_with_aliased_source/7.1.0_1633125966415/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_prefixed_wildcard_select_with_aliased_source/7.1.0_1633125966415/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_prefixed_wildcard_select_with_aliased_source/7.1.0_1633125966415/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_unaliased_left_aliased_right/7.1.0_1633125966237/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_unaliased_left_aliased_right/7.1.0_1633125966237/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_unaliased_left_aliased_right/7.1.0_1633125966237/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_wildcard_select_with_aliased_source/7.1.0_1633125966378/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_wildcard_select_with_aliased_source/7.1.0_1633125966378/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/identifiers_-_wildcard_select_with_aliased_source/7.1.0_1633125966378/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_array_-_valid/7.1.0_1633125966665/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_array_-_valid/7.1.0_1633125966665/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_array_-_valid/7.1.0_1633125966665/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_array_-_valid_expression_with_narrower_element_type/7.1.0_1633125966707/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_array_-_valid_expression_with_narrower_element_type/7.1.0_1633125966707/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_array_-_valid_expression_with_narrower_element_type/7.1.0_1633125966707/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_array_-_valid_expression_with_wider_element_type/7.1.0_1633125966688/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_array_-_valid_expression_with_wider_element_type/7.1.0_1633125966688/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_array_-_valid_expression_with_wider_element_type/7.1.0_1633125966688/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_bigint_-_valid/7.1.0_1633125966535/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_bigint_-_valid/7.1.0_1633125966535/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_bigint_-_valid/7.1.0_1633125966535/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_boolean_-_valid/7.1.0_1633125966470/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_boolean_-_valid/7.1.0_1633125966470/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_boolean_-_valid/7.1.0_1633125966470/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_decimal_-_valid/7.1.0_1633125966612/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_decimal_-_valid/7.1.0_1633125966612/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_decimal_-_valid/7.1.0_1633125966612/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_double_-_valid/7.1.0_1633125966571/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_double_-_valid/7.1.0_1633125966571/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_double_-_valid/7.1.0_1633125966571/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_expressions/7.1.0_1633125966431/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_expressions/7.1.0_1633125966431/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_expressions/7.1.0_1633125966431/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_int_-_valid/7.1.0_1633125966483/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_int_-_valid/7.1.0_1633125966483/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_int_-_valid/7.1.0_1633125966483/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_int_-_valid_long_literal/7.1.0_1633125966521/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_int_-_valid_long_literal/7.1.0_1633125966521/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_int_-_valid_long_literal/7.1.0_1633125966521/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_inverted/7.1.0_1633125966458/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_inverted/7.1.0_1633125966458/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_inverted/7.1.0_1633125966458/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_map_-_valid/7.1.0_1633125966726/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_map_-_valid/7.1.0_1633125966726/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_map_-_valid/7.1.0_1633125966726/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_map_-_valid__valid_expression_with_narrower_types/7.1.0_1633125966794/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_map_-_valid__valid_expression_with_narrower_types/7.1.0_1633125966794/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_map_-_valid__valid_expression_with_narrower_types/7.1.0_1633125966794/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_map_-_valid__valid_expression_with_wider_types/7.1.0_1633125966747/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_map_-_valid__valid_expression_with_wider_types/7.1.0_1633125966747/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_map_-_valid__valid_expression_with_wider_types/7.1.0_1633125966747/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_nulls/7.1.0_1633125966446/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_nulls/7.1.0_1633125966446/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_nulls/7.1.0_1633125966446/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_string_-_valid/7.1.0_1633125966648/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_string_-_valid/7.1.0_1633125966648/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_string_-_valid/7.1.0_1633125966648/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_struct_-_field_names_are_case_sensitive/7.1.0_1633125966890/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_struct_-_field_names_are_case_sensitive/7.1.0_1633125966890/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_struct_-_field_names_are_case_sensitive/7.1.0_1633125966890/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_struct_-_valid/7.1.0_1633125966814/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_struct_-_valid/7.1.0_1633125966814/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_struct_-_valid/7.1.0_1633125966814/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_struct_-_valid_expression_with_narrower_type/7.1.0_1633125966870/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_struct_-_valid_expression_with_narrower_type/7.1.0_1633125966870/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_struct_-_valid_expression_with_narrower_type/7.1.0_1633125966870/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_struct_-_valid_expression_with_wider_type/7.1.0_1633125966850/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_struct_-_valid_expression_with_wider_type/7.1.0_1633125966850/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/in_-_struct_-_valid_expression_with_wider_type/7.1.0_1633125966850/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/initcap_-_do_initcap_-_JSON/7.1.0_1633125966911/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/initcap_-_do_initcap_-_JSON/7.1.0_1633125966911/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/initcap_-_do_initcap_-_JSON/7.1.0_1633125966911/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/initcap_-_do_initcap_-_PROTOBUF/7.1.0_1633125966925/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/initcap_-_do_initcap_-_PROTOBUF/7.1.0_1633125966925/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/initcap_-_do_initcap_-_PROTOBUF/7.1.0_1633125966925/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_convert_formats__AVRO_to_JSON/7.1.0_1633125967038/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_convert_formats__AVRO_to_JSON/7.1.0_1633125967038/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_convert_formats__AVRO_to_JSON/7.1.0_1633125967038/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_convert_formats__DELIMITED_to_JSON/7.1.0_1633125967004/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_convert_formats__DELIMITED_to_JSON/7.1.0_1633125967004/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_convert_formats__DELIMITED_to_JSON/7.1.0_1633125967004/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_convert_formats__JSON_to_AVRO/7.1.0_1633125967022/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_convert_formats__JSON_to_AVRO/7.1.0_1633125967022/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_convert_formats__JSON_to_AVRO/7.1.0_1633125967022/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_implicitly_casts/7.1.0_1633125967342/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_implicitly_casts/7.1.0_1633125967342/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_implicitly_casts/7.1.0_1633125967342/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_join/7.1.0_1633125967055/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_join/7.1.0_1633125967055/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_join/7.1.0_1633125967055/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_join_with_repartition/7.1.0_1633125967187/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_join_with_repartition/7.1.0_1633125967187/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_join_with_repartition/7.1.0_1633125967187/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_simple/7.1.0_1633125966938/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_simple/7.1.0_1633125966938/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_simple/7.1.0_1633125966938/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_streams_with_no_key_columns/7.1.0_1633125966960/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_streams_with_no_key_columns/7.1.0_1633125966960/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_streams_with_no_key_columns/7.1.0_1633125966960/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_with_custom_topic_name/7.1.0_1633125966985/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_with_custom_topic_name/7.1.0_1633125966985/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/insert-into_-_with_custom_topic_name/7.1.0_1633125966985/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_just_substring_-_JSON/7.1.0_1633125967389/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_just_substring_-_JSON/7.1.0_1633125967389/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_just_substring_-_JSON/7.1.0_1633125967389/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_negative_position_-_JSON/7.1.0_1633125967428/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_negative_position_-_JSON/7.1.0_1633125967428/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_negative_position_-_JSON/7.1.0_1633125967428/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_negative_position_and_occurrence_-_JSON/7.1.0_1633125967440/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_negative_position_and_occurrence_-_JSON/7.1.0_1633125967440/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_negative_position_and_occurrence_-_JSON/7.1.0_1633125967440/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_position_-_JSON/7.1.0_1633125967404/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_position_-_JSON/7.1.0_1633125967404/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_position_-_JSON/7.1.0_1633125967404/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_position_and_occurrence_-_JSON/7.1.0_1633125967416/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_position_and_occurrence_-_JSON/7.1.0_1633125967416/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/instr_-_test_instr_with_position_and_occurrence_-_JSON/7.1.0_1633125967416/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_-_AVRO/7.1.0_1633125992585/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_-_AVRO/7.1.0_1633125992585/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_-_AVRO/7.1.0_1633125992585/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_-_JSON/7.1.0_1633125992741/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_-_JSON/7.1.0_1633125992741/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_-_JSON/7.1.0_1633125992741/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_-_PROTOBUF/7.1.0_1633125992905/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_-_PROTOBUF/7.1.0_1633125992905/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_-_PROTOBUF/7.1.0_1633125992905/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_extractor_both_sides_-_AVRO/7.1.0_1633125993040/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_extractor_both_sides_-_AVRO/7.1.0_1633125993040/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_extractor_both_sides_-_AVRO/7.1.0_1633125993040/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_extractor_both_sides_-_JSON/7.1.0_1633125993176/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_extractor_both_sides_-_JSON/7.1.0_1633125993176/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_extractor_both_sides_-_JSON/7.1.0_1633125993176/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_extractor_both_sides_-_PROTOBUF/7.1.0_1633125993318/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_extractor_both_sides_-_PROTOBUF/7.1.0_1633125993318/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_stream_inner_join_with_ts_extractor_both_sides_-_PROTOBUF/7.1.0_1633125993318/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_table_join_with_ts_extractor_both_sides_-_AVRO/7.1.0_1633125993489/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_table_join_with_ts_extractor_both_sides_-_AVRO/7.1.0_1633125993489/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_table_join_with_ts_extractor_both_sides_-_AVRO/7.1.0_1633125993489/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_table_join_with_ts_extractor_both_sides_-_JSON/7.1.0_1633125993612/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_table_join_with_ts_extractor_both_sides_-_JSON/7.1.0_1633125993612/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_table_join_with_ts_extractor_both_sides_-_JSON/7.1.0_1633125993612/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_table_join_with_ts_extractor_both_sides_-_PROTOBUF/7.1.0_1633125993764/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_table_join_with_ts_extractor_both_sides_-_PROTOBUF/7.1.0_1633125993764/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_stream_table_join_with_ts_extractor_both_sides_-_PROTOBUF/7.1.0_1633125993764/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_-_AVRO/7.1.0_1633125993913/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_-_AVRO/7.1.0_1633125993913/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_-_AVRO/7.1.0_1633125993913/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_-_JSON/7.1.0_1633125994193/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_-_JSON/7.1.0_1633125994193/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_-_JSON/7.1.0_1633125994193/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_-_PROTOBUF/7.1.0_1633125994505/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_-_PROTOBUF/7.1.0_1633125994505/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_-_PROTOBUF/7.1.0_1633125994505/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_extractor_both_sides_-_AVRO/7.1.0_1633125994743/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_extractor_both_sides_-_AVRO/7.1.0_1633125994743/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_extractor_both_sides_-_AVRO/7.1.0_1633125994743/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_extractor_both_sides_-_JSON/7.1.0_1633125995067/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_extractor_both_sides_-_JSON/7.1.0_1633125995067/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_extractor_both_sides_-_JSON/7.1.0_1633125995067/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_extractor_both_sides_-_PROTOBUF/7.1.0_1633125995302/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_extractor_both_sides_-_PROTOBUF/7.1.0_1633125995302/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/join-with-custom-timestamp_-_table_table_inner_join_with_ts_extractor_both_sides_-_PROTOBUF/7.1.0_1633125995302/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_aliased_join_condition/7.1.0_1633125967903/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_aliased_join_condition/7.1.0_1633125967903/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_aliased_join_condition/7.1.0_1633125967903/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_aliased_join_key/7.1.0_1633125968055/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_aliased_join_key/7.1.0_1633125968055/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_aliased_join_key/7.1.0_1633125968055/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_aliased_synthetic_join_key/7.1.0_1633125968177/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_aliased_synthetic_join_key/7.1.0_1633125968177/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_aliased_synthetic_join_key/7.1.0_1633125968177/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_full_join_-_with_both_join_column_in_projection/7.1.0_1633125969593/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_full_join_-_with_both_join_column_in_projection/7.1.0_1633125969593/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_full_join_-_with_both_join_column_in_projection/7.1.0_1633125969593/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_inner_join_-_with_both_join_column_in_projection/7.1.0_1633125968450/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_inner_join_-_with_both_join_column_in_projection/7.1.0_1633125968450/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_inner_join_-_with_both_join_column_in_projection/7.1.0_1633125968450/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_inner_join_-_with_left_join_column_in_projection/7.1.0_1633125968551/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_inner_join_-_with_left_join_column_in_projection/7.1.0_1633125968551/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_inner_join_-_with_left_join_column_in_projection/7.1.0_1633125968551/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_inner_join_-_with_only_right_join_column_in_projection/7.1.0_1633125968820/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_inner_join_-_with_only_right_join_column_in_projection/7.1.0_1633125968820/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_inner_join_-_with_only_right_join_column_in_projection/7.1.0_1633125968820/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_inner_join_-_with_right_join_column_in_projection/7.1.0_1633125968692/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_inner_join_-_with_right_join_column_in_projection/7.1.0_1633125968692/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_inner_join_-_with_right_join_column_in_projection/7.1.0_1633125968692/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_left_join_-_with_both_join_column_in_projection/7.1.0_1633125968949/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_left_join_-_with_both_join_column_in_projection/7.1.0_1633125968949/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_left_join_-_with_both_join_column_in_projection/7.1.0_1633125968949/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_left_join_-_with_left_join_column_in_projection/7.1.0_1633125969097/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_left_join_-_with_left_join_column_in_projection/7.1.0_1633125969097/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_left_join_-_with_left_join_column_in_projection/7.1.0_1633125969097/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_left_join_-_with_right_join_column_in_projection/7.1.0_1633125969245/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_left_join_-_with_right_join_column_in_projection/7.1.0_1633125969245/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_left_join_-_with_right_join_column_in_projection/7.1.0_1633125969245/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_left_join_-_with_synthetic_join_column_in_projection/7.1.0_1633125969428/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_left_join_-_with_synthetic_join_column_in_projection/7.1.0_1633125969428/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_left_join_-_with_synthetic_join_column_in_projection/7.1.0_1633125969428/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_columns_in_both_sides_=_select__/7.1.0_1633125967453/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_columns_in_both_sides_=_select__/7.1.0_1633125967453/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_columns_in_both_sides_=_select__/7.1.0_1633125967453/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_columns_in_both_sides_=_select_left.__and_right._/7.1.0_1633125967583/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_columns_in_both_sides_=_select_left.__and_right._/7.1.0_1633125967583/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_columns_in_both_sides_=_select_left.__and_right._/7.1.0_1633125967583/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_columns_in_both_sides_=_select_left.__and_right.__with_WHERE/7.1.0_1633125967732/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_columns_in_both_sides_=_select_left.__and_right.__with_WHERE/7.1.0_1633125967732/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_columns_in_both_sides_=_select_left.__and_right.__with_WHERE/7.1.0_1633125967732/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_session-windowed/7.1.0_1633125987859/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_session-windowed/7.1.0_1633125987859/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_session-windowed/7.1.0_1633125987859/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_session-windowed_-_SR-enabled_key_format/7.1.0_1633125992209/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_session-windowed_-_SR-enabled_key_format/7.1.0_1633125992209/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_session-windowed_-_SR-enabled_key_format/7.1.0_1633125992209/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_time-windowed_-_SR-enabled_key_format/7.1.0_1633125992381/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_time-windowed_-_SR-enabled_key_format/7.1.0_1633125992381/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_matching_time-windowed_-_SR-enabled_key_format/7.1.0_1633125992381/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_non-KAFKA_key_format/7.1.0_1633125988719/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_non-KAFKA_key_format/7.1.0_1633125988719/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_non-KAFKA_key_format/7.1.0_1633125988719/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_ARRAY_column_-_AVRO/7.1.0_1633125987320/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_ARRAY_column_-_AVRO/7.1.0_1633125987320/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_ARRAY_column_-_AVRO/7.1.0_1633125987320/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_ARRAY_column_-_JSON/7.1.0_1633125987458/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_ARRAY_column_-_JSON/7.1.0_1633125987458/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_ARRAY_column_-_JSON/7.1.0_1633125987458/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_BIGINT_column_-_KAFKA_-_AVRO/7.1.0_1633125985739/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_BIGINT_column_-_KAFKA_-_AVRO/7.1.0_1633125985739/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_BIGINT_column_-_KAFKA_-_AVRO/7.1.0_1633125985739/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_BIGINT_column_-_KAFKA_-_JSON/7.1.0_1633125985934/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_BIGINT_column_-_KAFKA_-_JSON/7.1.0_1633125985934/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_BIGINT_column_-_KAFKA_-_JSON/7.1.0_1633125985934/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_BIGINT_column_-_KAFKA_-_PROTOBUF/7.1.0_1633125986074/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_BIGINT_column_-_KAFKA_-_PROTOBUF/7.1.0_1633125986074/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_BIGINT_column_-_KAFKA_-_PROTOBUF/7.1.0_1633125986074/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_DOUBLE_column_=_KAFKA_-_AVRO/7.1.0_1633125986246/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_DOUBLE_column_=_KAFKA_-_AVRO/7.1.0_1633125986246/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_DOUBLE_column_=_KAFKA_-_AVRO/7.1.0_1633125986246/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_DOUBLE_column_=_KAFKA_-_JSON/7.1.0_1633125986412/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_DOUBLE_column_=_KAFKA_-_JSON/7.1.0_1633125986412/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_DOUBLE_column_=_KAFKA_-_JSON/7.1.0_1633125986412/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_DOUBLE_column_=_KAFKA_-_PROTOBUF/7.1.0_1633125986544/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_DOUBLE_column_=_KAFKA_-_PROTOBUF/7.1.0_1633125986544/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_DOUBLE_column_=_KAFKA_-_PROTOBUF/7.1.0_1633125986544/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_INT_column_-_KAFKA_-_AVRO/7.1.0_1633125985261/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_INT_column_-_KAFKA_-_AVRO/7.1.0_1633125985261/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_INT_column_-_KAFKA_-_AVRO/7.1.0_1633125985261/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_INT_column_-_KAFKA_-_JSON/7.1.0_1633125985411/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_INT_column_-_KAFKA_-_JSON/7.1.0_1633125985411/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_INT_column_-_KAFKA_-_JSON/7.1.0_1633125985411/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_INT_column_-_KAFKA_-_PROTOBUF/7.1.0_1633125985565/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_INT_column_-_KAFKA_-_PROTOBUF/7.1.0_1633125985565/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_INT_column_-_KAFKA_-_PROTOBUF/7.1.0_1633125985565/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRING_column_-_KAFKA_-_AVRO/7.1.0_1633125986722/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRING_column_-_KAFKA_-_AVRO/7.1.0_1633125986722/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRING_column_-_KAFKA_-_AVRO/7.1.0_1633125986722/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRING_column_-_KAFKA_-_JSON/7.1.0_1633125986907/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRING_column_-_KAFKA_-_JSON/7.1.0_1633125986907/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRING_column_-_KAFKA_-_JSON/7.1.0_1633125986907/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRING_column_-_KAFKA_-_PROTOBUF/7.1.0_1633125987144/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRING_column_-_KAFKA_-_PROTOBUF/7.1.0_1633125987144/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRING_column_-_KAFKA_-_PROTOBUF/7.1.0_1633125987144/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRUCT_column_-_AVRO/7.1.0_1633125987600/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRUCT_column_-_AVRO/7.1.0_1633125987600/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRUCT_column_-_AVRO/7.1.0_1633125987600/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRUCT_column_-_JSON/7.1.0_1633125987729/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRUCT_column_-_JSON/7.1.0_1633125987729/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_STRUCT_column_-_JSON/7.1.0_1633125987729/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_non-STRING_value_column/7.1.0_1633125985087/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_non-STRING_value_column/7.1.0_1633125985087/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_non-STRING_value_column/7.1.0_1633125985087/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_struct_field/7.1.0_1633125988021/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_struct_field/7.1.0_1633125988021/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_on_struct_field/7.1.0_1633125988021/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_and_value_format_-_with_inference_-_different_key_schemas/7.1.0_1633125991945/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_and_value_format_-_with_inference_-_different_key_schemas/7.1.0_1633125991945/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_and_value_format_-_with_inference_-_different_key_schemas/7.1.0_1633125991945/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_format/7.1.0_1633125990565/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_format/7.1.0_1633125990565/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_format/7.1.0_1633125990565/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_format_-_with_inference/7.1.0_1633125991419/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_format_-_with_inference/7.1.0_1633125991419/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_format_-_with_inference/7.1.0_1633125991419/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_format_-_with_inference_-_different_schemas/7.1.0_1633125991530/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_format_-_with_inference_-_different_schemas/7.1.0_1633125991530/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_format_-_with_inference_-_different_schemas/7.1.0_1633125991530/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_format_-_with_inference_-_different_schemas_-_outer_join/7.1.0_1633125992064/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_format_-_with_inference_-_different_schemas_-_outer_join/7.1.0_1633125992064/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_SR-enabled_key_format_-_with_inference_-_different_schemas_-_outer_join/7.1.0_1633125992064/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_key_format_and_default_feature_mismatch/7.1.0_1633125989052/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_key_format_and_default_feature_mismatch/7.1.0_1633125989052/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_key_format_and_default_feature_mismatch/7.1.0_1633125989052/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_key_format_mismatch/7.1.0_1633125988855/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_key_format_mismatch/7.1.0_1633125988855/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_key_format_mismatch/7.1.0_1633125988855/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_protobuf_on_left_key_mismatch/7.1.0_1633125989339/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_protobuf_on_left_key_mismatch/7.1.0_1633125989339/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_protobuf_on_left_key_mismatch/7.1.0_1633125989339/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_protobuf_on_right_key_mismatch/7.1.0_1633125989194/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_protobuf_on_right_key_mismatch/7.1.0_1633125989194/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-key_-_protobuf_on_right_key_mismatch/7.1.0_1633125989194/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-value_-_key_format_mismatch/7.1.0_1633125989684/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-value_-_key_format_mismatch/7.1.0_1633125989684/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_key-to-value_-_key_format_mismatch/7.1.0_1633125989684/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_value-to-key_-_key_format_mismatch/7.1.0_1633125989495/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_value-to-key_-_key_format_mismatch/7.1.0_1633125989495/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_value-to-key_-_key_format_mismatch/7.1.0_1633125989495/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_value-to-value_-_keyless/7.1.0_1633125989807/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_value-to-value_-_keyless/7.1.0_1633125989807/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-stream_value-to-value_-_keyless/7.1.0_1633125989807/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_key-to-key_-_SR-enabled_key_format/7.1.0_1633125990715/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_key-to-key_-_SR-enabled_key_format/7.1.0_1633125990715/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_key-to-key_-_SR-enabled_key_format/7.1.0_1633125990715/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_key-to-key_-_SR-enabled_key_format_-_with_inference_-_different_schemas/7.1.0_1633125991642/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_key-to-key_-_SR-enabled_key_format_-_with_inference_-_different_schemas/7.1.0_1633125991642/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_key-to-key_-_SR-enabled_key_format_-_with_inference_-_different_schemas/7.1.0_1633125991642/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_key-to-key_-_key_format_mismatch/7.1.0_1633125989943/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_key-to-key_-_key_format_mismatch/7.1.0_1633125989943/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_key-to-key_-_key_format_mismatch/7.1.0_1633125989943/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_val-to-key_-_keyless/7.1.0_1633125990196/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_val-to-key_-_keyless/7.1.0_1633125990196/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_val-to-key_-_keyless/7.1.0_1633125990196/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_value-to-key_-_key_format_mismatch/7.1.0_1633125990083/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_value-to-key_-_key_format_mismatch/7.1.0_1633125990083/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream-table_value-to-key_-_key_format_mismatch/7.1.0_1633125990083/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_full_outer_join_with_out_of_order_and_custom_grace_period_-_AVRO/7.1.0_1633976605709/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_full_outer_join_with_out_of_order_and_custom_grace_period_-_AVRO/7.1.0_1633976605709/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_full_outer_join_with_out_of_order_and_custom_grace_period_-_AVRO/7.1.0_1633976605709/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_full_outer_join_with_out_of_order_and_custom_grace_period_-_JSON/7.1.0_1633976605891/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_full_outer_join_with_out_of_order_and_custom_grace_period_-_JSON/7.1.0_1633976605891/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_full_outer_join_with_out_of_order_and_custom_grace_period_-_JSON/7.1.0_1633976605891/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_-_AVRO/7.1.0_1633125971839/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_-_AVRO/7.1.0_1633125971839/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_-_AVRO/7.1.0_1633125971839/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_-_JSON/7.1.0_1633125971998/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_-_JSON/7.1.0_1633125971998/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_-_JSON/7.1.0_1633125971998/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_-_PROTOBUF/7.1.0_1633125972188/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_-_PROTOBUF/7.1.0_1633125972188/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_-_PROTOBUF/7.1.0_1633125972188/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_fields_-_AVRO/7.1.0_1633125973838/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_fields_-_AVRO/7.1.0_1633125973838/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_fields_-_AVRO/7.1.0_1633125973838/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_fields_-_JSON/7.1.0_1633125974055/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_fields_-_JSON/7.1.0_1633125974055/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_fields_-_JSON/7.1.0_1633125974055/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_fields_-_PROTOBUF/7.1.0_1633125974284/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_fields_-_PROTOBUF/7.1.0_1633125974284/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_fields_-_PROTOBUF/7.1.0_1633125974284/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_left_fields_some_right_-_AVRO/7.1.0_1633125972356/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_left_fields_some_right_-_AVRO/7.1.0_1633125972356/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_left_fields_some_right_-_AVRO/7.1.0_1633125972356/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_left_fields_some_right_-_JSON/7.1.0_1633125972575/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_left_fields_some_right_-_JSON/7.1.0_1633125972575/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_left_fields_some_right_-_JSON/7.1.0_1633125972575/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_left_fields_some_right_-_PROTOBUF/7.1.0_1633125972803/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_left_fields_some_right_-_PROTOBUF/7.1.0_1633125972803/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_left_fields_some_right_-_PROTOBUF/7.1.0_1633125972803/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_right_fields_some_left_-_AVRO/7.1.0_1633125973045/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_right_fields_some_left_-_AVRO/7.1.0_1633125973045/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_right_fields_some_left_-_AVRO/7.1.0_1633125973045/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_right_fields_some_left_-_JSON/7.1.0_1633125973225/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_right_fields_some_left_-_JSON/7.1.0_1633125973225/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_right_fields_some_left_-_JSON/7.1.0_1633125973225/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_right_fields_some_left_-_PROTOBUF/7.1.0_1633125973412/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_right_fields_some_left_-_PROTOBUF/7.1.0_1633125973412/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_all_right_fields_some_left_-_PROTOBUF/7.1.0_1633125973412/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_different_before_and_after_windows_-_AVRO/7.1.0_1633125974508/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_different_before_and_after_windows_-_AVRO/7.1.0_1633125974508/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_different_before_and_after_windows_-_AVRO/7.1.0_1633125974508/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_different_before_and_after_windows_-_JSON/7.1.0_1633125974731/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_different_before_and_after_windows_-_JSON/7.1.0_1633125974731/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_different_before_and_after_windows_-_JSON/7.1.0_1633125974731/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_different_before_and_after_windows_-_PROTOBUF/7.1.0_1633125974953/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_different_before_and_after_windows_-_PROTOBUF/7.1.0_1633125974953/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_different_before_and_after_windows_-_PROTOBUF/7.1.0_1633125974953/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_and_custom_grace_period_-_AVRO/7.1.0_1633976604891/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_and_custom_grace_period_-_AVRO/7.1.0_1633976604891/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_and_custom_grace_period_-_AVRO/7.1.0_1633976604891/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_and_custom_grace_period_-_JSON/7.1.0_1633976605053/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_and_custom_grace_period_-_JSON/7.1.0_1633976605053/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_and_custom_grace_period_-_JSON/7.1.0_1633976605053/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_and_custom_grace_period_-_PROTOBUF/7.1.0_1633976605202/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_and_custom_grace_period_-_PROTOBUF/7.1.0_1633976605202/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_and_custom_grace_period_-_PROTOBUF/7.1.0_1633976605202/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_messages_-_AVRO/7.1.0_1633125975186/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_messages_-_AVRO/7.1.0_1633125975186/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_messages_-_AVRO/7.1.0_1633125975186/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_messages_-_JSON/7.1.0_1633125975398/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_messages_-_JSON/7.1.0_1633125975398/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_messages_-_JSON/7.1.0_1633125975398/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_messages_-_PROTOBUF/7.1.0_1633125975625/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_messages_-_PROTOBUF/7.1.0_1633125975625/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_out_of_order_messages_-_PROTOBUF/7.1.0_1633125975625/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_stars_and_duplicates/7.1.0_1633125973613/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_stars_and_duplicates/7.1.0_1633125973613/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_inner_join_with_stars_and_duplicates/7.1.0_1633125973613/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_CASE_expression/7.1.0_1633125984448/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_CASE_expression/7.1.0_1633125984448/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_CASE_expression/7.1.0_1633125984448/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_CAST/7.1.0_1633125983435/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_CAST/7.1.0_1633125983435/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_CAST/7.1.0_1633125983435/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_CAST_double_to_int/7.1.0_1633125983540/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_CAST_double_to_int/7.1.0_1633125983540/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_CAST_double_to_int/7.1.0_1633125983540/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_arithmetic_binary_expression/7.1.0_1633125984192/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_arithmetic_binary_expression/7.1.0_1633125984192/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_arithmetic_binary_expression/7.1.0_1633125984192/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_arithmetic_unary_expression/7.1.0_1633125984332/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_arithmetic_unary_expression/7.1.0_1633125984332/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_arithmetic_unary_expression/7.1.0_1633125984332/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_arithmetic_unary_expression_flipped_sides/7.1.0_1633125984634/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_arithmetic_unary_expression_flipped_sides/7.1.0_1633125984634/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_arithmetic_unary_expression_flipped_sides/7.1.0_1633125984634/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_function/7.1.0_1633125983331/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_function/7.1.0_1633125983331/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_function/7.1.0_1633125983331/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_subscript/7.1.0_1633125984048/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_subscript/7.1.0_1633125984048/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_-_contains_subscript/7.1.0_1633125984048/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_on_expression_where_schema_contains_ROWKEY_xx_column_names/7.1.0_1633125983644/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_on_expression_where_schema_contains_ROWKEY_xx_column_names/7.1.0_1633125983644/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_join_on_expression_where_schema_contains_ROWKEY_xx_column_names/7.1.0_1633125983644/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_AVRO/7.1.0_1633125969719/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_AVRO/7.1.0_1633125969719/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_AVRO/7.1.0_1633125969719/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_JSON/7.1.0_1633125969930/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_JSON/7.1.0_1633125969930/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_JSON/7.1.0_1633125969930/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_PROTOBUF_-_PROTOBUF/7.1.0_1633125970149/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_PROTOBUF_-_PROTOBUF/7.1.0_1633125970149/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_PROTOBUF_-_PROTOBUF/7.1.0_1633125970149/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_rekey_-_AVRO/7.1.0_1633125971129/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_rekey_-_AVRO/7.1.0_1633125971129/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_rekey_-_AVRO/7.1.0_1633125971129/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_rekey_-_JSON/7.1.0_1633125971405/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_rekey_-_JSON/7.1.0_1633125971405/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_rekey_-_JSON/7.1.0_1633125971405/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_rekey_-_PROTOBUF/7.1.0_1633125971616/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_rekey_-_PROTOBUF/7.1.0_1633125971616/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_-_rekey_-_PROTOBUF/7.1.0_1633125971616/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_key_in_projection_-_rekey_-_AVRO/7.1.0_1633125970380/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_key_in_projection_-_rekey_-_AVRO/7.1.0_1633125970380/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_key_in_projection_-_rekey_-_AVRO/7.1.0_1633125970380/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_key_in_projection_-_rekey_-_JSON/7.1.0_1633125970611/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_key_in_projection_-_rekey_-_JSON/7.1.0_1633125970611/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_key_in_projection_-_rekey_-_JSON/7.1.0_1633125970611/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_key_in_projection_-_rekey_-_PROTOBUF/7.1.0_1633125970853/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_key_in_projection_-_rekey_-_PROTOBUF/7.1.0_1633125970853/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_key_in_projection_-_rekey_-_PROTOBUF/7.1.0_1633125970853/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_out_of_order_and_custom_grace_period_-_AVRO/7.1.0_1633976605355/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_out_of_order_and_custom_grace_period_-_AVRO/7.1.0_1633976605355/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_out_of_order_and_custom_grace_period_-_AVRO/7.1.0_1633976605355/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_out_of_order_and_custom_grace_period_-_JSON/7.1.0_1633976605523/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_out_of_order_and_custom_grace_period_-_JSON/7.1.0_1633976605523/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_left_join_with_out_of_order_and_custom_grace_period_-_JSON/7.1.0_1633976605523/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_outer_join_-_AVRO/7.1.0_1633125975871/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_outer_join_-_AVRO/7.1.0_1633125975871/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_outer_join_-_AVRO/7.1.0_1633125975871/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_outer_join_-_JSON/7.1.0_1633125976122/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_outer_join_-_JSON/7.1.0_1633125976122/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_outer_join_-_JSON/7.1.0_1633125976122/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_outer_join_-_PROTOBUF/7.1.0_1633125976363/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_outer_join_-_PROTOBUF/7.1.0_1633125976363/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_stream_outer_join_-_PROTOBUF/7.1.0_1633125976363/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_inner_join_-_AVRO/7.1.0_1633125980292/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_inner_join_-_AVRO/7.1.0_1633125980292/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_inner_join_-_AVRO/7.1.0_1633125980292/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_inner_join_-_JSON/7.1.0_1633125980497/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_inner_join_-_JSON/7.1.0_1633125980497/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_inner_join_-_JSON/7.1.0_1633125980497/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_inner_join_-_PROTOBUF/7.1.0_1633125980653/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_inner_join_-_PROTOBUF/7.1.0_1633125980653/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_inner_join_-_PROTOBUF/7.1.0_1633125980653/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_left_join_-_AVRO/7.1.0_1633125979778/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_left_join_-_AVRO/7.1.0_1633125979778/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_left_join_-_AVRO/7.1.0_1633125979778/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_left_join_-_JSON/7.1.0_1633125979964/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_left_join_-_JSON/7.1.0_1633125979964/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_left_join_-_JSON/7.1.0_1633125979964/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_left_join_-_PROTOBUF/7.1.0_1633125980123/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_left_join_-_PROTOBUF/7.1.0_1633125980123/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_table_left_join_-_PROTOBUF/7.1.0_1633125980123/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_stream_unwrapped_single_field_value_schema_on_inputs/7.1.0_1633125981742/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_stream_unwrapped_single_field_value_schema_on_inputs/7.1.0_1633125981742/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_stream_unwrapped_single_field_value_schema_on_inputs/7.1.0_1633125981742/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_stream_unwrapped_single_field_value_schema_on_inputs_and_output/7.1.0_1633125981886/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_stream_unwrapped_single_field_value_schema_on_inputs_and_output/7.1.0_1633125981886/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_stream_unwrapped_single_field_value_schema_on_inputs_and_output/7.1.0_1633125981886/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_stream_wrapped_single_field_value_schema_on_inputs/7.1.0_1633125981577/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_stream_wrapped_single_field_value_schema_on_inputs/7.1.0_1633125981577/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_stream_wrapped_single_field_value_schema_on_inputs/7.1.0_1633125981577/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_table_unwrapped_single_field_value_schema_on_inputs/7.1.0_1633125982209/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_table_unwrapped_single_field_value_schema_on_inputs/7.1.0_1633125982209/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_table_unwrapped_single_field_value_schema_on_inputs/7.1.0_1633125982209/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_table_unwrapped_single_field_value_schema_on_inputs_and_output/7.1.0_1633125982318/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_table_unwrapped_single_field_value_schema_on_inputs_and_output/7.1.0_1633125982318/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_table_unwrapped_single_field_value_schema_on_inputs_and_output/7.1.0_1633125982318/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_table_wrapped_single_field_value_schema_on_inputs/7.1.0_1633125982028/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_table_wrapped_single_field_value_schema_on_inputs/7.1.0_1633125982028/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_stream_to_table_wrapped_single_field_value_schema_on_inputs/7.1.0_1633125982028/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_streams_with_no_key_columns_(stream-_stream)/7.1.0_1633125988393/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_streams_with_no_key_columns_(stream-_stream)/7.1.0_1633125988393/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_streams_with_no_key_columns_(stream-_stream)/7.1.0_1633125988393/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_streams_with_no_key_columns_(stream-_table)/7.1.0_1633125988577/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_streams_with_no_key_columns_(stream-_table)/7.1.0_1633125988577/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_streams_with_no_key_columns_(stream-_table)/7.1.0_1633125988577/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table-table_-_SR-enabled_key_format/7.1.0_1633125990830/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table-table_-_SR-enabled_key_format/7.1.0_1633125990830/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table-table_-_SR-enabled_key_format/7.1.0_1633125990830/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table-table_-_SR-enabled_key_format_-_with_inference_-_different_schemas/7.1.0_1633125991751/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table-table_-_SR-enabled_key_format_-_with_inference_-_different_schemas/7.1.0_1633125991751/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table-table_-_SR-enabled_key_format_-_with_inference_-_different_schemas/7.1.0_1633125991751/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table-table_-_SR-enabled_key_format_-_with_nulls/7.1.0_1633125991081/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table-table_-_SR-enabled_key_format_-_with_nulls/7.1.0_1633125991081/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table-table_-_SR-enabled_key_format_-_with_nulls/7.1.0_1633125991081/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table-table_key-to-key_-_key_format_mismatch/7.1.0_1633125990322/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table-table_key-to-key_-_key_format_mismatch/7.1.0_1633125990322/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table-table_key-to-key_-_key_format_mismatch/7.1.0_1633125990322/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_join_pipeline_-_JSON/7.1.0_1633125980843/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_join_pipeline_-_JSON/7.1.0_1633125980843/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_join_pipeline_-_JSON/7.1.0_1633125980843/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_inner_join_-_AVRO/7.1.0_1633125977700/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_inner_join_-_AVRO/7.1.0_1633125977700/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_inner_join_-_AVRO/7.1.0_1633125977700/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_inner_join_-_JSON/7.1.0_1633125978022/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_inner_join_-_JSON/7.1.0_1633125978022/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_inner_join_-_JSON/7.1.0_1633125978022/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_inner_join_-_PROTOBUF/7.1.0_1633125978366/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_inner_join_-_PROTOBUF/7.1.0_1633125978366/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_inner_join_-_PROTOBUF/7.1.0_1633125978366/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_join_with_where_clause/7.1.0_1633125981237/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_join_with_where_clause/7.1.0_1633125981237/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_join_with_where_clause/7.1.0_1633125981237/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_left_join_-_AVRO/7.1.0_1633125976616/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_left_join_-_AVRO/7.1.0_1633125976616/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_left_join_-_AVRO/7.1.0_1633125976616/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_left_join_-_JSON/7.1.0_1633125976940/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_left_join_-_JSON/7.1.0_1633125976940/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_left_join_-_JSON/7.1.0_1633125976940/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_left_join_-_PROTOBUF/7.1.0_1633125977316/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_left_join_-_PROTOBUF/7.1.0_1633125977316/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_left_join_-_PROTOBUF/7.1.0_1633125977316/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_outer_join_-_AVRO/7.1.0_1633125978727/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_outer_join_-_AVRO/7.1.0_1633125978727/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_outer_join_-_AVRO/7.1.0_1633125978727/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_outer_join_-_JSON/7.1.0_1633125979058/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_outer_join_-_JSON/7.1.0_1633125979058/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_outer_join_-_JSON/7.1.0_1633125979058/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_outer_join_-_PROTOBUF/7.1.0_1633125979396/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_outer_join_-_PROTOBUF/7.1.0_1633125979396/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_table_outer_join_-_PROTOBUF/7.1.0_1633125979396/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_to_table_unwrapped_single_field_value_schema_on_inputs/7.1.0_1633125982795/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_to_table_unwrapped_single_field_value_schema_on_inputs/7.1.0_1633125982795/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_to_table_unwrapped_single_field_value_schema_on_inputs/7.1.0_1633125982795/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_to_table_unwrapped_single_field_value_schema_on_inputs_and_output/7.1.0_1633125983056/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_to_table_unwrapped_single_field_value_schema_on_inputs_and_output/7.1.0_1633125983056/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_to_table_unwrapped_single_field_value_schema_on_inputs_and_output/7.1.0_1633125983056/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_to_table_wrapped_single_field_value_schema_on_inputs/7.1.0_1633125982462/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_to_table_wrapped_single_field_value_schema_on_inputs/7.1.0_1633125982462/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_table_to_table_wrapped_single_field_value_schema_on_inputs/7.1.0_1633125982462/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_unaliased_synthetic_join_key/7.1.0_1633125968288/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_unaliased_synthetic_join_key/7.1.0_1633125968288/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_unaliased_synthetic_join_key/7.1.0_1633125968288/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_unqualified_join_criteria/7.1.0_1633125984784/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_unqualified_join_criteria/7.1.0_1633125984784/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_unqualified_join_criteria/7.1.0_1633125984784/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_with_generated_column_name_clashes/7.1.0_1633125983766/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_with_generated_column_name_clashes/7.1.0_1633125983766/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_with_generated_column_name_clashes/7.1.0_1633125983766/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_with_where/7.1.0_1633125988211/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_with_where/7.1.0_1633125988211/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/joins_-_with_where/7.1.0_1633125988211/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_ARRAY_-_key/7.1.0_1633125996519/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_ARRAY_-_key/7.1.0_1633125996519/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_ARRAY_-_key/7.1.0_1633125996519/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_ARRAY_-_value_-_anonymous_-_deserialize/7.1.0_1633125996531/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_ARRAY_-_value_-_anonymous_-_deserialize/7.1.0_1633125996531/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_ARRAY_-_value_-_anonymous_-_deserialize/7.1.0_1633125996531/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_ARRAY_-_value_-_anonymous_-_serialize/7.1.0_1633125996542/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_ARRAY_-_value_-_anonymous_-_serialize/7.1.0_1633125996542/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_ARRAY_-_value_-_anonymous_-_serialize/7.1.0_1633125996542/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BIGINT_-_key/7.1.0_1633125996357/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BIGINT_-_key/7.1.0_1633125996357/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BIGINT_-_key/7.1.0_1633125996357/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BIGINT_-_value_-_anonymous_-_deserialize/7.1.0_1633125996370/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BIGINT_-_value_-_anonymous_-_deserialize/7.1.0_1633125996370/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BIGINT_-_value_-_anonymous_-_deserialize/7.1.0_1633125996370/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BIGINT_-_value_-_anonymous_-_serialize/7.1.0_1633125996383/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BIGINT_-_value_-_anonymous_-_serialize/7.1.0_1633125996383/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BIGINT_-_value_-_anonymous_-_serialize/7.1.0_1633125996383/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BOOLEAN_-_key/7.1.0_1633125996239/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BOOLEAN_-_key/7.1.0_1633125996239/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BOOLEAN_-_key/7.1.0_1633125996239/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BOOLEAN_-_value_-_anonymous_-_deserialize/7.1.0_1633125996254/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BOOLEAN_-_value_-_anonymous_-_deserialize/7.1.0_1633125996254/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BOOLEAN_-_value_-_anonymous_-_deserialize/7.1.0_1633125996254/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BOOLEAN_-_value_-_anonymous_-_serialize/7.1.0_1633125996307/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BOOLEAN_-_value_-_anonymous_-_serialize/7.1.0_1633125996307/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_BOOLEAN_-_value_-_anonymous_-_serialize/7.1.0_1633125996307/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DECIMAL_-_key/7.1.0_1633125996480/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DECIMAL_-_key/7.1.0_1633125996480/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DECIMAL_-_key/7.1.0_1633125996480/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DECIMAL_-_value_-_anonymous_-_deserialize/7.1.0_1633125996493/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DECIMAL_-_value_-_anonymous_-_deserialize/7.1.0_1633125996493/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DECIMAL_-_value_-_anonymous_-_deserialize/7.1.0_1633125996493/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DECIMAL_-_value_-_anonymous_-_serialize/7.1.0_1633125996507/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DECIMAL_-_value_-_anonymous_-_serialize/7.1.0_1633125996507/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DECIMAL_-_value_-_anonymous_-_serialize/7.1.0_1633125996507/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DOUBLE_-_key/7.1.0_1633125996398/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DOUBLE_-_key/7.1.0_1633125996398/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DOUBLE_-_key/7.1.0_1633125996398/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DOUBLE_-_value_-_anonymous_-_deserialize/7.1.0_1633125996413/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DOUBLE_-_value_-_anonymous_-_deserialize/7.1.0_1633125996413/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DOUBLE_-_value_-_anonymous_-_deserialize/7.1.0_1633125996413/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DOUBLE_-_value_-_anonymous_-_serialize/7.1.0_1633125996426/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DOUBLE_-_value_-_anonymous_-_serialize/7.1.0_1633125996426/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_DOUBLE_-_value_-_anonymous_-_serialize/7.1.0_1633125996426/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_INT_-_key/7.1.0_1633125996320/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_INT_-_key/7.1.0_1633125996320/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_INT_-_key/7.1.0_1633125996320/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_INT_-_value_-_anonymous_-_deserialize/7.1.0_1633125996333/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_INT_-_value_-_anonymous_-_deserialize/7.1.0_1633125996333/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_INT_-_value_-_anonymous_-_deserialize/7.1.0_1633125996333/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_INT_-_value_-_anonymous_-_serialize/7.1.0_1633125996345/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_INT_-_value_-_anonymous_-_serialize/7.1.0_1633125996345/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_INT_-_value_-_anonymous_-_serialize/7.1.0_1633125996345/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_MAP_-_value_-_anonymous_-_deserialize/7.1.0_1633125996555/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_MAP_-_value_-_anonymous_-_deserialize/7.1.0_1633125996555/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_MAP_-_value_-_anonymous_-_deserialize/7.1.0_1633125996555/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_MAP_-_value_-_anonymous_-_serialize/7.1.0_1633125996566/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_MAP_-_value_-_anonymous_-_serialize/7.1.0_1633125996566/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_MAP_-_value_-_anonymous_-_serialize/7.1.0_1633125996566/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRING_-_key/7.1.0_1633125996440/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRING_-_key/7.1.0_1633125996440/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRING_-_key/7.1.0_1633125996440/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRING_-_value_-_anonymous_-_deserialize/7.1.0_1633125996456/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRING_-_value_-_anonymous_-_deserialize/7.1.0_1633125996456/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRING_-_value_-_anonymous_-_deserialize/7.1.0_1633125996456/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRING_-_value_-_anonymous_-_serialize/7.1.0_1633125996468/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRING_-_value_-_anonymous_-_serialize/7.1.0_1633125996468/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRING_-_value_-_anonymous_-_serialize/7.1.0_1633125996468/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRUCT_-_key/7.1.0_1633125996577/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRUCT_-_key/7.1.0_1633125996577/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRUCT_-_key/7.1.0_1633125996577/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRUCT_-_value_-_anonymous_-_deserialize/7.1.0_1633125996591/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRUCT_-_value_-_anonymous_-_deserialize/7.1.0_1633125996591/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRUCT_-_value_-_anonymous_-_deserialize/7.1.0_1633125996591/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRUCT_-_value_-_anonymous_-_serialize/7.1.0_1633125996605/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRUCT_-_value_-_anonymous_-_serialize/7.1.0_1633125996605/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_STRUCT_-_value_-_anonymous_-_serialize/7.1.0_1633125996605/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_anonymous_array_-_value/7.1.0_1633125996634/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_anonymous_array_-_value/7.1.0_1633125996634/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_anonymous_array_-_value/7.1.0_1633125996634/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125996647/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125996647/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125996647/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_anonymous_map_-_value/7.1.0_1633125996672/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_anonymous_map_-_value/7.1.0_1633125996672/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_anonymous_map_-_value/7.1.0_1633125996672/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_nested_array_-_value/7.1.0_1633125996660/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_nested_array_-_value/7.1.0_1633125996660/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_nested_array_-_value/7.1.0_1633125996660/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_nested_map_-_value/7.1.0_1633125996685/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_nested_map_-_value/7.1.0_1633125996685/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_nested_map_-_value/7.1.0_1633125996685/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_nested_primitive_-_value/7.1.0_1633125996621/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_nested_primitive_-_value/7.1.0_1633125996621/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_deserialize_nested_primitive_-_value/7.1.0_1633125996621/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_keyless_JSON/7.1.0_1633125996825/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_keyless_JSON/7.1.0_1633125996825/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_keyless_JSON/7.1.0_1633125996825/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_anonymous_array_-_value/7.1.0_1633125996723/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_anonymous_array_-_value/7.1.0_1633125996723/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_anonymous_array_-_value/7.1.0_1633125996723/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_anonymous_map_-_value/7.1.0_1633125996758/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_anonymous_map_-_value/7.1.0_1633125996758/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_anonymous_map_-_value/7.1.0_1633125996758/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_anonymous_primitive_-_value/7.1.0_1633125996697/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_anonymous_primitive_-_value/7.1.0_1633125996697/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_anonymous_primitive_-_value/7.1.0_1633125996697/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_anonymous_struct_-_value/7.1.0_1633125996789/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_anonymous_struct_-_value/7.1.0_1633125996789/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_anonymous_struct_-_value/7.1.0_1633125996789/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_nested_array_-_value/7.1.0_1633125996740/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_nested_array_-_value/7.1.0_1633125996740/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_nested_array_-_value/7.1.0_1633125996740/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_nested_map_-_value/7.1.0_1633125996772/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_nested_map_-_value/7.1.0_1633125996772/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_nested_map_-_value/7.1.0_1633125996772/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_nested_primitive_-_value/7.1.0_1633125996710/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_nested_primitive_-_value/7.1.0_1633125996710/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_nested_primitive_-_value/7.1.0_1633125996710/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_nested_struct_-_value/7.1.0_1633125996812/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_nested_struct_-_value/7.1.0_1633125996812/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_-_serialize_nested_struct_-_value/7.1.0_1633125996812/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_array_contains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125995563/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_array_contains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125995563/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_array_contains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125995563/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_ARRAY_-_key_-_inference/7.1.0_1633125996121/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_ARRAY_-_key_-_inference/7.1.0_1633125996121/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_ARRAY_-_key_-_inference/7.1.0_1633125996121/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_ARRAY_-_key_-_no_inference/7.1.0_1633125996102/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_ARRAY_-_key_-_no_inference/7.1.0_1633125996102/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_ARRAY_-_key_-_no_inference/7.1.0_1633125996102/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_BIGINT_-_key_-_inference/7.1.0_1633125995943/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_BIGINT_-_key_-_inference/7.1.0_1633125995943/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_BIGINT_-_key_-_inference/7.1.0_1633125995943/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_BIGINT_-_key_-_no_inference/7.1.0_1633125995919/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_BIGINT_-_key_-_no_inference/7.1.0_1633125995919/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_BIGINT_-_key_-_no_inference/7.1.0_1633125995919/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_BOOLEAN_-_key_-_inference/7.1.0_1633125995850/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_BOOLEAN_-_key_-_inference/7.1.0_1633125995850/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_BOOLEAN_-_key_-_inference/7.1.0_1633125995850/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125995821/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125995821/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125995821/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_DECIMAL_-_key_-_inference/7.1.0_1633125996070/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_DECIMAL_-_key_-_inference/7.1.0_1633125996070/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_DECIMAL_-_key_-_inference/7.1.0_1633125996070/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125996049/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125996049/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125996049/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_DOUBLE_-_key_-_inference/7.1.0_1633125995987/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_DOUBLE_-_key_-_inference/7.1.0_1633125995987/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_DOUBLE_-_key_-_inference/7.1.0_1633125995987/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125995967/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125995967/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125995967/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_INT_-_key_-_inference/7.1.0_1633125995896/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_INT_-_key_-_inference/7.1.0_1633125995896/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_INT_-_key_-_inference/7.1.0_1633125995896/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125996212/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125996212/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125996212/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125996183/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125996183/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125996183/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_INT_-_key_-_no_inference/7.1.0_1633125995874/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_INT_-_key_-_no_inference/7.1.0_1633125995874/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_INT_-_key_-_no_inference/7.1.0_1633125995874/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_STRING_-_key_-_inference/7.1.0_1633125996028/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_STRING_-_key_-_inference/7.1.0_1633125996028/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_STRING_-_key_-_inference/7.1.0_1633125996028/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_STRING_-_key_-_no_inference/7.1.0_1633125996008/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_STRING_-_key_-_no_inference/7.1.0_1633125996008/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_STRING_-_key_-_no_inference/7.1.0_1633125996008/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_STRUCT_-_key_-_inference/7.1.0_1633125996163/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_STRUCT_-_key_-_inference/7.1.0_1633125996163/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_STRUCT_-_key_-_inference/7.1.0_1633125996163/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_STRUCT_-_key_-_no_inference/7.1.0_1633125996143/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_STRUCT_-_key_-_no_inference/7.1.0_1633125996143/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_STRUCT_-_key_-_no_inference/7.1.0_1633125996143/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_anonymous_array_-_value/7.1.0_1633125995630/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_anonymous_array_-_value/7.1.0_1633125995630/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_anonymous_array_-_value/7.1.0_1633125995630/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125995652/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125995652/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125995652/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125995578/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125995578/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125995578/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125995595/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125995595/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125995595/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_nested_array_-_value/7.1.0_1633125995673/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_nested_array_-_value/7.1.0_1633125995673/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_nested_array_-_value/7.1.0_1633125995673/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_nested_primitive_-_value/7.1.0_1633125995612/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_nested_primitive_-_value/7.1.0_1633125995612/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_deserialize_nested_primitive_-_value/7.1.0_1633125995612/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_anonymous_array_-_value/7.1.0_1633125995734/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_anonymous_array_-_value/7.1.0_1633125995734/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_anonymous_array_-_value/7.1.0_1633125995734/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_anonymous_primitive_-_value/7.1.0_1633125995694/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_anonymous_primitive_-_value/7.1.0_1633125995694/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_anonymous_primitive_-_value/7.1.0_1633125995694/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_anonymous_struct_-_value/7.1.0_1633125995773/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_anonymous_struct_-_value/7.1.0_1633125995773/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_anonymous_struct_-_value/7.1.0_1633125995773/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_nested_array_-_value/7.1.0_1633125995756/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_nested_array_-_value/7.1.0_1633125995756/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_nested_array_-_value/7.1.0_1633125995756/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_nested_primitive_-_value/7.1.0_1633125995713/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_nested_primitive_-_value/7.1.0_1633125995713/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_nested_primitive_-_value/7.1.0_1633125995713/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_nested_struct_-_value/7.1.0_1633125995793/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_nested_struct_-_value/7.1.0_1633125995793/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/json_sr_-_serialize_nested_struct_-_value/7.1.0_1633125995793/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_BIGINT/7.1.0_1633125996886/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_BIGINT/7.1.0_1633125996886/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_BIGINT/7.1.0_1633125996886/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_DOUBLE/7.1.0_1633125996899/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_DOUBLE/7.1.0_1633125996899/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_DOUBLE/7.1.0_1633125996899/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_Default_single_value_wrapping/7.1.0_1633125996851/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_Default_single_value_wrapping/7.1.0_1633125996851/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_Default_single_value_wrapping/7.1.0_1633125996851/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_INT/7.1.0_1633125996875/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_INT/7.1.0_1633125996875/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_INT/7.1.0_1633125996875/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_STRING/7.1.0_1633125996863/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_STRING/7.1.0_1633125996863/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_STRING/7.1.0_1633125996863/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_Unwrapped_single_values/7.1.0_1633125996839/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_Unwrapped_single_values/7.1.0_1633125996839/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/kafka_-_Unwrapped_single_values/7.1.0_1633125996839/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_KEY_key_field_name/7.1.0_1633125997495/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_KEY_key_field_name/7.1.0_1633125997495/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_KEY_key_field_name/7.1.0_1633125997495/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_KEY_value_field_name/7.1.0_1633125997513/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_KEY_value_field_name/7.1.0_1633125997513/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_KEY_value_field_name/7.1.0_1633125997513/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_VARCHAR(STRING)_as_key_and_value/7.1.0_1633125997743/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_VARCHAR(STRING)_as_key_and_value/7.1.0_1633125997743/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_VARCHAR(STRING)_as_key_and_value/7.1.0_1633125997743/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_explicit_key_field_named_other_than_KEY/7.1.0_1633125997477/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_explicit_key_field_named_other_than_KEY/7.1.0_1633125997477/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_explicit_key_field_named_other_than_KEY/7.1.0_1633125997477/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_filter_by_non-STRING_KEY/7.1.0_1633125997712/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_filter_by_non-STRING_KEY/7.1.0_1633125997712/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_filter_by_non-STRING_KEY/7.1.0_1633125997712/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_filter_by_non-STRING_KEY_in_UDF/7.1.0_1633125997727/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_filter_by_non-STRING_KEY_in_UDF/7.1.0_1633125997727/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_filter_by_non-STRING_KEY_in_UDF/7.1.0_1633125997727/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_explicit_KAFKA_BIGINT_KEY/7.1.0_1633125997271/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_explicit_KAFKA_BIGINT_KEY/7.1.0_1633125997271/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_explicit_KAFKA_BIGINT_KEY/7.1.0_1633125997271/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_explicit_KAFKA_DOUBLE_KEY/7.1.0_1633125997370/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_explicit_KAFKA_DOUBLE_KEY/7.1.0_1633125997370/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_explicit_KAFKA_DOUBLE_KEY/7.1.0_1633125997370/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_explicit_KAFKA_INT_KEY/7.1.0_1633125997160/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_explicit_KAFKA_INT_KEY/7.1.0_1633125997160/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_explicit_KAFKA_INT_KEY/7.1.0_1633125997160/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_explicit_KAFKA_STRING_KEY/7.1.0_1633125997042/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_explicit_KAFKA_STRING_KEY/7.1.0_1633125997042/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_explicit_KAFKA_STRING_KEY/7.1.0_1633125997042/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_implicit_KAFKA_STRING_KEY/7.1.0_1633125996911/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_implicit_KAFKA_STRING_KEY/7.1.0_1633125996911/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_stream_implicit_KAFKA_STRING_KEY/7.1.0_1633125996911/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_explicit_KAFKA_BIGINT_KEY/7.1.0_1633125997289/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_explicit_KAFKA_BIGINT_KEY/7.1.0_1633125997289/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_explicit_KAFKA_BIGINT_KEY/7.1.0_1633125997289/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_explicit_KAFKA_DOUBLE_KEY/7.1.0_1633125997398/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_explicit_KAFKA_DOUBLE_KEY/7.1.0_1633125997398/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_explicit_KAFKA_DOUBLE_KEY/7.1.0_1633125997398/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_explicit_KAFKA_INT_KEY/7.1.0_1633125997181/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_explicit_KAFKA_INT_KEY/7.1.0_1633125997181/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_explicit_KAFKA_INT_KEY/7.1.0_1633125997181/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_explicit_KAFKA_STRING_KEY/7.1.0_1633125997060/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_explicit_KAFKA_STRING_KEY/7.1.0_1633125997060/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_explicit_KAFKA_STRING_KEY/7.1.0_1633125997060/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_implicit_KAFKA_STRING_KEY/7.1.0_1633125996931/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_implicit_KAFKA_STRING_KEY/7.1.0_1633125996931/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_table_implicit_KAFKA_STRING_KEY/7.1.0_1633125996931/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_windowed_table_explicit_non-STRING_KEY/7.1.0_1633125997529/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_windowed_table_explicit_non-STRING_KEY/7.1.0_1633125997529/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_windowed_table_explicit_non-STRING_KEY/7.1.0_1633125997529/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_windowed_table_explicit_non-STRING_KEY_udf/7.1.0_1633125997637/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_windowed_table_explicit_non-STRING_KEY_udf/7.1.0_1633125997637/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/key-schemas_-_windowed_table_explicit_non-STRING_KEY_udf/7.1.0_1633125997637/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_by_offset/7.1.0_1633125997758/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_by_offset/7.1.0_1633125997758/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_by_offset/7.1.0_1633125997758/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_by_offset_with_all_nulls/7.1.0_1633125998251/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_by_offset_with_all_nulls/7.1.0_1633125998251/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_by_offset_with_all_nulls/7.1.0_1633125998251/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_n_by_offset/7.1.0_1633125998342/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_n_by_offset/7.1.0_1633125998342/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_n_by_offset/7.1.0_1633125998342/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_n_by_offset_with_all_nulls/7.1.0_1633125998522/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_n_by_offset_with_all_nulls/7.1.0_1633125998522/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_n_by_offset_with_all_nulls/7.1.0_1633125998522/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_n_by_offset_with_nulls/7.1.0_1633125998451/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_n_by_offset_with_nulls/7.1.0_1633125998451/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_latest_n_by_offset_with_nulls/7.1.0_1633125998451/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows/7.1.0_1633125998596/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows/7.1.0_1633125998596/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows/7.1.0_1633125998596/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_all_nulls/7.1.0_1633125998939/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_all_nulls/7.1.0_1633125998939/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_all_nulls/7.1.0_1633125998939/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_all_nulls_-_N/7.1.0_1633125999195/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_all_nulls_-_N/7.1.0_1633125999195/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_all_nulls_-_N/7.1.0_1633125999195/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored/7.1.0_1633125998659/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored/7.1.0_1633125998659/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored/7.1.0_1633125998659/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored_-_N/7.1.0_1633125999034/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored_-_N/7.1.0_1633125999034/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored_-_N/7.1.0_1633125999034/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored_when_merging/7.1.0_1633125998726/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored_when_merging/7.1.0_1633125998726/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_ignored_when_merging/7.1.0_1633125998726/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored/7.1.0_1633125998780/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored/7.1.0_1633125998780/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored/7.1.0_1633125998780/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored_-_N/7.1.0_1633125999106/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored_-_N/7.1.0_1633125999106/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored_-_N/7.1.0_1633125999106/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored_when_merging/7.1.0_1633125998856/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored_when_merging/7.1.0_1633125998856/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_merging_session_windows_-_with_nulls_not_ignored_when_merging/7.1.0_1633125998856/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_nulls_ignored_-_multiple/7.1.0_1633125997983/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_nulls_ignored_-_multiple/7.1.0_1633125997983/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_nulls_ignored_-_multiple/7.1.0_1633125997983/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_nulls_ignored_-_single/7.1.0_1633125997904/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_nulls_ignored_-_single/7.1.0_1633125997904/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_nulls_ignored_-_single/7.1.0_1633125997904/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_nulls_not_ignored_-_multiple/7.1.0_1633125998169/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_nulls_not_ignored_-_multiple/7.1.0_1633125998169/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_nulls_not_ignored_-_multiple/7.1.0_1633125998169/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_nulls_not_ignored_-_single/7.1.0_1633125998090/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_nulls_not_ignored_-_single/7.1.0_1633125998090/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/latest-offset-udaf_-_nulls_not_ignored_-_single/7.1.0_1633125998090/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_decimal_widening/7.1.0_1633125999362/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_decimal_widening/7.1.0_1633125999362/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_decimal_widening/7.1.0_1633125999362/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_implicit_casting_to_double/7.1.0_1633125999330/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_implicit_casting_to_double/7.1.0_1633125999330/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_implicit_casting_to_double/7.1.0_1633125999330/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_bigint/7.1.0_1633125999288/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_bigint/7.1.0_1633125999288/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_bigint/7.1.0_1633125999288/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_decimal/7.1.0_1633125999303/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_decimal/7.1.0_1633125999303/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_decimal/7.1.0_1633125999303/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_double/7.1.0_1633125999317/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_double/7.1.0_1633125999317/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_double/7.1.0_1633125999317/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_integer/7.1.0_1633125999273/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_integer/7.1.0_1633125999273/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_integer/7.1.0_1633125999273/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_strings/7.1.0_1633125999349/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_strings/7.1.0_1633125999349/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/least_-_test_least_with_strings/7.1.0_1633125999349/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/len_-_length_of_a_string_-_JSON/7.1.0_1633125999378/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/len_-_length_of_a_string_-_JSON/7.1.0_1633125999378/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/len_-_length_of_a_string_-_JSON/7.1.0_1633125999378/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/like_-_escape/7.1.0_1633125999427/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/like_-_escape/7.1.0_1633125999427/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/like_-_escape/7.1.0_1633125999427/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/like_-_exp/7.1.0_1633125999412/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/like_-_exp/7.1.0_1633125999412/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/like_-_exp/7.1.0_1633125999412/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/like_-_literal/7.1.0_1633125999396/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/like_-_literal/7.1.0_1633125999396/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/like_-_literal/7.1.0_1633125999396/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_BIGINT_literal_min_max/7.1.0_1633125999515/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_BIGINT_literal_min_max/7.1.0_1633125999515/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_BIGINT_literal_min_max/7.1.0_1633125999515/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_BOOLEAN_literal/7.1.0_1633125999444/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_BOOLEAN_literal/7.1.0_1633125999444/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_BOOLEAN_literal/7.1.0_1633125999444/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_DECIMAL_literal/7.1.0_1633125999584/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_DECIMAL_literal/7.1.0_1633125999584/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_DECIMAL_literal/7.1.0_1633125999584/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_DOUBLE_literal_min_max/7.1.0_1633125999539/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_DOUBLE_literal_min_max/7.1.0_1633125999539/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_DOUBLE_literal_min_max/7.1.0_1633125999539/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_INT_literal_min_max/7.1.0_1633125999483/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_INT_literal_min_max/7.1.0_1633125999483/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/literals_-_INT_literal_min_max/7.1.0_1633125999483/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_between_predicate_on_BIGINT_ROWTIME_in_WHERE/7.1.0_1633125999663/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_between_predicate_on_BIGINT_ROWTIME_in_WHERE/7.1.0_1633125999663/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_between_predicate_on_BIGINT_ROWTIME_in_WHERE/7.1.0_1633125999663/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_between_predicate_on_STRING_ROWTIME_in_WHERE/7.1.0_1633125999708/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_between_predicate_on_STRING_ROWTIME_in_WHERE/7.1.0_1633125999708/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_between_predicate_on_STRING_ROWTIME_in_WHERE/7.1.0_1633125999708/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_between_predicate_on_STRING_WINDOWSTART_in_WHERE/7.1.0_1633125999726/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_between_predicate_on_STRING_WINDOWSTART_in_WHERE/7.1.0_1633125999726/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_between_predicate_on_STRING_WINDOWSTART_in_WHERE/7.1.0_1633125999726/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_on_BIGINT_ROWTIME_in_WHERE/7.1.0_1633125999599/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_on_BIGINT_ROWTIME_in_WHERE/7.1.0_1633125999599/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_on_BIGINT_ROWTIME_in_WHERE/7.1.0_1633125999599/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_on_BIGINT_window_bounds_in_WHERE/7.1.0_1633125999631/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_on_BIGINT_window_bounds_in_WHERE/7.1.0_1633125999631/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_on_BIGINT_window_bounds_in_WHERE/7.1.0_1633125999631/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_on_STRING_ROWTIME_in_WHERE/7.1.0_1633125999616/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_on_STRING_ROWTIME_in_WHERE/7.1.0_1633125999616/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_on_STRING_ROWTIME_in_WHERE/7.1.0_1633125999616/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_on_STRING_window_bounds_in_WHERE/7.1.0_1633125999647/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_on_STRING_window_bounds_in_WHERE/7.1.0_1633125999647/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_on_STRING_window_bounds_in_WHERE/7.1.0_1633125999647/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_with_STRING_ROWTIME_containing_TZ_in_WHERE/7.1.0_1633125999743/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_with_STRING_ROWTIME_containing_TZ_in_WHERE/7.1.0_1633125999743/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_comparison_predicate_with_STRING_ROWTIME_containing_TZ_in_WHERE/7.1.0_1633125999743/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_nested_comparison_expression_on_STRING_ROWTIME_in_WHERE/7.1.0_1633125999758/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_nested_comparison_expression_on_STRING_ROWTIME_in_WHERE/7.1.0_1633125999758/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_nested_comparison_expression_on_STRING_ROWTIME_in_WHERE/7.1.0_1633125999758/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_partial_STRING_ROWTIME/7.1.0_1633125999776/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_partial_STRING_ROWTIME/7.1.0_1633125999776/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/magic-timestamp-conversion_-_partial_STRING_ROWTIME/7.1.0_1633125999776/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_Output_map_with_an_error/7.1.0_1633125999893/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_Output_map_with_an_error/7.1.0_1633125999893/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_Output_map_with_an_error/7.1.0_1633125999893/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_keys/7.1.0_1633125999824/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_keys/7.1.0_1633125999824/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_keys/7.1.0_1633125999824/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_keys_with_non-primitive_values/7.1.0_1633125999836/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_keys_with_non-primitive_values/7.1.0_1633125999836/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_keys_with_non-primitive_values/7.1.0_1633125999836/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_union/7.1.0_1633125999880/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_union/7.1.0_1633125999880/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_union/7.1.0_1633125999880/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_value_as_UDF_param/7.1.0_1633125999810/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_value_as_UDF_param/7.1.0_1633125999810/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_value_as_UDF_param/7.1.0_1633125999810/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_values/7.1.0_1633125999853/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_values/7.1.0_1633125999853/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_values/7.1.0_1633125999853/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_values_with_non-primitive_values/7.1.0_1633125999867/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_values_with_non-primitive_values/7.1.0_1633125999867/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_map_values_with_non-primitive_values/7.1.0_1633125999867/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_string_map/7.1.0_1633125999791/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_string_map/7.1.0_1633125999791/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/map_-_string_map/7.1.0_1633125999791/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_abs/7.1.0_1633126000103/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_abs/7.1.0_1633126000103/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_abs/7.1.0_1633126000103/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_calculate_CEIL_function/7.1.0_1633126000057/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_calculate_CEIL_function/7.1.0_1633126000057/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_calculate_CEIL_function/7.1.0_1633126000057/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_exp/7.1.0_1633125999914/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_exp/7.1.0_1633125999914/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_exp/7.1.0_1633125999914/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_floor/7.1.0_1633126000008/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_floor/7.1.0_1633126000008/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_floor/7.1.0_1633126000008/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_ln/7.1.0_1633125999935/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_ln/7.1.0_1633125999935/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_ln/7.1.0_1633125999935/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_round/7.1.0_1633126000145/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_round/7.1.0_1633126000145/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_round/7.1.0_1633126000145/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_round_with_large_DECIMAL_values_-_AVRO/7.1.0_1633126000234/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_round_with_large_DECIMAL_values_-_AVRO/7.1.0_1633126000234/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_round_with_large_DECIMAL_values_-_AVRO/7.1.0_1633126000234/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_round_with_large_DECIMAL_values_-_DELIMITED/7.1.0_1633126000194/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_round_with_large_DECIMAL_values_-_DELIMITED/7.1.0_1633126000194/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_round_with_large_DECIMAL_values_-_DELIMITED/7.1.0_1633126000194/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_round_with_large_DECIMAL_values_-_JSON/7.1.0_1633126000255/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_round_with_large_DECIMAL_values_-_JSON/7.1.0_1633126000255/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_round_with_large_DECIMAL_values_-_JSON/7.1.0_1633126000255/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_sign/7.1.0_1633125999984/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_sign/7.1.0_1633125999984/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_sign/7.1.0_1633125999984/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_sqrt/7.1.0_1633125999960/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_sqrt/7.1.0_1633125999960/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/math_-_sqrt/7.1.0_1633125999960/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/max-group-by_-_max_decimal_group_by/7.1.0_1633126000818/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/max-group-by_-_max_decimal_group_by/7.1.0_1633126000818/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/max-group-by_-_max_decimal_group_by/7.1.0_1633126000818/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/max-group-by_-_max_double_group_by/7.1.0_1633126000627/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/max-group-by_-_max_double_group_by/7.1.0_1633126000627/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/max-group-by_-_max_double_group_by/7.1.0_1633126000627/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/max-group-by_-_max_integer_group_by/7.1.0_1633126000273/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/max-group-by_-_max_integer_group_by/7.1.0_1633126000273/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/max-group-by_-_max_integer_group_by/7.1.0_1633126000273/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/max-group-by_-_max_long_group_by/7.1.0_1633126000423/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/max-group-by_-_max_long_group_by/7.1.0_1633126000423/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/max-group-by_-_max_long_group_by/7.1.0_1633126000423/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/min-group-by_-_min_decimal_group_by/7.1.0_1633126001542/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/min-group-by_-_min_decimal_group_by/7.1.0_1633126001542/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/min-group-by_-_min_decimal_group_by/7.1.0_1633126001542/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/min-group-by_-_min_double_group_by/7.1.0_1633126001390/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/min-group-by_-_min_double_group_by/7.1.0_1633126001390/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/min-group-by_-_min_double_group_by/7.1.0_1633126001390/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/min-group-by_-_min_integer_group_by/7.1.0_1633126000999/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/min-group-by_-_min_integer_group_by/7.1.0_1633126000999/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/min-group-by_-_min_integer_group_by/7.1.0_1633126000999/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/min-group-by_-_min_long_group_by/7.1.0_1633126001193/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/min-group-by_-_min_long_group_by/7.1.0_1633126001193/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/min-group-by_-_min_long_group_by/7.1.0_1633126001193/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/more-complex-struct_-_complex_struct_select_array,_map,_map_value_struct/7.1.0_1633126001724/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/more-complex-struct_-_complex_struct_select_array,_map,_map_value_struct/7.1.0_1633126001724/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/more-complex-struct_-_complex_struct_select_array,_map,_map_value_struct/7.1.0_1633126001724/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/more-complex-struct_-_complex_struct_select_array_and_map_items/7.1.0_1633126001746/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/more-complex-struct_-_complex_struct_select_array_and_map_items/7.1.0_1633126001746/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/more-complex-struct_-_complex_struct_select_array_and_map_items/7.1.0_1633126001746/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/more-complex-struct_-_complex_struct_select_star/7.1.0_1633126001702/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/more-complex-struct_-_complex_struct_select_star/7.1.0_1633126001702/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/more-complex-struct_-_complex_struct_select_star/7.1.0_1633126001702/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_one_col/7.1.0_1633126001976/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_one_col/7.1.0_1633126001976/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_one_col/7.1.0_1633126001976/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_one_col_table_with_tombstones/7.1.0_1633126002128/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_one_col_table_with_tombstones/7.1.0_1633126002128/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_one_col_table_with_tombstones/7.1.0_1633126002128/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_two_cols/7.1.0_1633126002038/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_two_cols/7.1.0_1633126002038/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_two_cols/7.1.0_1633126002038/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_two_cols_table_with_tombstones/7.1.0_1633126002285/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_two_cols_table_with_tombstones/7.1.0_1633126002285/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_two_cols_table_with_tombstones/7.1.0_1633126002285/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_two_cols_with_AS_VALUE_copies/7.1.0_1633126002446/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_two_cols_with_AS_VALUE_copies/7.1.0_1633126002446/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_group_by_two_cols_with_AS_VALUE_copies/7.1.0_1633126002446/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_join_with_repartition_on_single_key/7.1.0_1633126002665/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_join_with_repartition_on_single_key/7.1.0_1633126002665/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_join_with_repartition_on_single_key/7.1.0_1633126002665/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_join_with_repartition_on_single_value/7.1.0_1633126002798/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_join_with_repartition_on_single_value/7.1.0_1633126002798/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_join_with_repartition_on_single_value/7.1.0_1633126002798/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_stream/7.1.0_1633126001775/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_stream/7.1.0_1633126001775/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_stream/7.1.0_1633126001775/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_stream_-_with_key_inference/7.1.0_1633126001787/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_stream_-_with_key_inference/7.1.0_1633126001787/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_stream_-_with_key_inference/7.1.0_1633126001787/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_stream_partition_by_single_key_col/7.1.0_1633126001918/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_stream_partition_by_single_key_col/7.1.0_1633126001918/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_stream_partition_by_single_key_col/7.1.0_1633126001918/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_stream_partition_by_struct_representing_the_key/7.1.0_1633126001933/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_stream_partition_by_struct_representing_the_key/7.1.0_1633126001933/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_stream_partition_by_struct_representing_the_key/7.1.0_1633126001933/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_table/7.1.0_1633126001801/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_table/7.1.0_1633126001801/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___from_table/7.1.0_1633126001801/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___with_WHERE_on_both_key/7.1.0_1633126001904/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___with_WHERE_on_both_key/7.1.0_1633126001904/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___with_WHERE_on_both_key/7.1.0_1633126001904/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___with_WHERE_on_single_key/7.1.0_1633126001887/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___with_WHERE_on_single_key/7.1.0_1633126001887/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_select___with_WHERE_on_single_key/7.1.0_1633126001887/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_struct_as_column_in_multi-column_key/7.1.0_1633126002955/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_struct_as_column_in_multi-column_key/7.1.0_1633126002955/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_struct_as_column_in_multi-column_key/7.1.0_1633126002955/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_windowed_group_by_one_col/7.1.0_1633126002549/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_windowed_group_by_one_col/7.1.0_1633126002549/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-col-keys_-_windowed_group_by_one_col/7.1.0_1633126002549/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_first_join_column_in_projection/7.1.0_1633126002987/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_first_join_column_in_projection/7.1.0_1633126002987/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_first_join_column_in_projection/7.1.0_1633126002987/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_only_viable_in_projection/7.1.0_1633126003534/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_only_viable_in_projection/7.1.0_1633126003534/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_only_viable_in_projection/7.1.0_1633126003534/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_scoped_include_all_columns/7.1.0_1633126011506/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_scoped_include_all_columns/7.1.0_1633126011506/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_scoped_include_all_columns/7.1.0_1633126011506/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_second_join_column_in_projection/7.1.0_1633126003153/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_second_join_column_in_projection/7.1.0_1633126003153/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_second_join_column_in_projection/7.1.0_1633126003153/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_should_generate_correct_aliases_when_sources_have_some_matching_and_some_different_columns/7.1.0_1633126011322/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_should_generate_correct_aliases_when_sources_have_some_matching_and_some_different_columns/7.1.0_1633126011322/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_should_generate_correct_aliases_when_sources_have_some_matching_and_some_different_columns/7.1.0_1633126011322/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_SR-enabled_key_format/7.1.0_1633126011774/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_SR-enabled_key_format/7.1.0_1633126011774/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_SR-enabled_key_format/7.1.0_1633126011774/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_SR-enabled_key_format_-_rekey/7.1.0_1633126012088/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_SR-enabled_key_format_-_rekey/7.1.0_1633126012088/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_SR-enabled_key_format_-_rekey/7.1.0_1633126012088/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_inner-inner_-_different_windows/7.1.0_1633126010177/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_inner-inner_-_different_windows/7.1.0_1633126010177/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_inner-inner_-_different_windows/7.1.0_1633126010177/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_left-left/7.1.0_1633126009920/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_left-left/7.1.0_1633126009920/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_left-left/7.1.0_1633126009920/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_outer-outer/7.1.0_1633126009663/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_outer-outer/7.1.0_1633126009663/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-stream_-_outer-outer/7.1.0_1633126009663/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_SR-enabled_key_format/7.1.0_1633126012283/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_SR-enabled_key_format/7.1.0_1633126012283/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_SR-enabled_key_format/7.1.0_1633126012283/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_SR-enabled_key_format_-_rekey_-_differing_internal_key_formats/7.1.0_1633126012504/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_SR-enabled_key_format_-_rekey_-_differing_internal_key_formats/7.1.0_1633126012504/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_SR-enabled_key_format_-_rekey_-_differing_internal_key_formats/7.1.0_1633126012504/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_full-inner/7.1.0_1633126008745/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_full-inner/7.1.0_1633126008745/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_full-inner/7.1.0_1633126008745/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_full-inner_-_select__/7.1.0_1633126008946/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_full-inner_-_select__/7.1.0_1633126008946/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_full-inner_-_select__/7.1.0_1633126008946/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_inner-inner/7.1.0_1633126007468/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_inner-inner/7.1.0_1633126007468/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_inner-inner/7.1.0_1633126007468/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_inner-inner_-_cascading_join_criteria/7.1.0_1633126008270/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_inner-inner_-_cascading_join_criteria/7.1.0_1633126008270/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_inner-inner_-_cascading_join_criteria/7.1.0_1633126008270/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_inner-inner_-_rekey_left/7.1.0_1633126007739/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_inner-inner_-_rekey_left/7.1.0_1633126007739/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_inner-inner_-_rekey_left/7.1.0_1633126007739/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_inner-inner_-_rekey_left_and_right/7.1.0_1633126007979/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_inner-inner_-_rekey_left_and_right/7.1.0_1633126007979/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_inner-inner_-_rekey_left_and_right/7.1.0_1633126007979/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_left-inner/7.1.0_1633126008548/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_left-inner/7.1.0_1633126008548/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-stream-table_-_left-inner/7.1.0_1633126008548/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-stream_-_inner-inner/7.1.0_1633126009222/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-stream_-_inner-inner/7.1.0_1633126009222/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-stream_-_inner-inner/7.1.0_1633126009222/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-stream_-_left-inner/7.1.0_1633126009463/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-stream_-_left-inner/7.1.0_1633126009463/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-stream_-_left-inner/7.1.0_1633126009463/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_explicit_ROWTIME/7.1.0_1633126005428/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_explicit_ROWTIME/7.1.0_1633126005428/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_explicit_ROWTIME/7.1.0_1633126005428/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner/7.1.0_1633126003942/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner/7.1.0_1633126003942/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner/7.1.0_1633126003942/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_aliasing/7.1.0_1633126006919/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_aliasing/7.1.0_1633126006919/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_aliasing/7.1.0_1633126006919/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_flip_join_expression/7.1.0_1633126006495/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_flip_join_expression/7.1.0_1633126006495/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_flip_join_expression/7.1.0_1633126006495/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_rekey/7.1.0_1633126004748/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_rekey/7.1.0_1633126004748/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_rekey/7.1.0_1633126004748/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_rekey_and_flip_join_expression/7.1.0_1633126006703/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_rekey_and_flip_join_expression/7.1.0_1633126006703/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_rekey_and_flip_join_expression/7.1.0_1633126006703/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_rekey_on_different_expression/7.1.0_1633126005176/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_rekey_on_different_expression/7.1.0_1633126005176/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_rekey_on_different_expression/7.1.0_1633126005176/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_rekey_with_different_expression/7.1.0_1633126004964/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_rekey_with_different_expression/7.1.0_1633126004964/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_rekey_with_different_expression/7.1.0_1633126004964/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_select___/7.1.0_1633126005665/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_select___/7.1.0_1633126005665/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_select___/7.1.0_1633126005665/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_select_left.__and_specific_fields_from_rights/7.1.0_1633126006096/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_select_left.__and_specific_fields_from_rights/7.1.0_1633126006096/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_select_left.__and_specific_fields_from_rights/7.1.0_1633126006096/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_select_left.__only/7.1.0_1633126005883/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_select_left.__only/7.1.0_1633126005883/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_select_left.__only/7.1.0_1633126005883/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_select_sources._/7.1.0_1633126006315/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_select_sources._/7.1.0_1633126006315/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-inner_-_select_sources._/7.1.0_1633126006315/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-left/7.1.0_1633126004506/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-left/7.1.0_1633126004506/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_inner-left/7.1.0_1633126004506/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_left-inner/7.1.0_1633126004304/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_left-inner/7.1.0_1633126004304/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_left-inner/7.1.0_1633126004304/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_left-left/7.1.0_1633126004097/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_left-left/7.1.0_1633126004097/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_left-left/7.1.0_1633126004097/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_qualified_select__/7.1.0_1633126013006/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_qualified_select__/7.1.0_1633126013006/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_qualified_select__/7.1.0_1633126013006/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_table_key_format_mismatch/7.1.0_1633126003766/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_table_key_format_mismatch/7.1.0_1633126003766/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_stream-table-table_-_table_key_format_mismatch/7.1.0_1633126003766/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table-table_-_qualified_select__/7.1.0_1633126013232/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table-table_-_qualified_select__/7.1.0_1633126013232/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table-table_-_qualified_select__/7.1.0_1633126013232/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_SR-enabled_key_format/7.1.0_1633126012680/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_SR-enabled_key_format/7.1.0_1633126012680/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_SR-enabled_key_format/7.1.0_1633126012680/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_inner-full/7.1.0_1633126011001/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_inner-full/7.1.0_1633126011001/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_inner-full/7.1.0_1633126011001/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_inner-inner/7.1.0_1633126010743/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_inner-inner/7.1.0_1633126010743/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_inner-inner/7.1.0_1633126010743/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_inner-inner_-_aliasing/7.1.0_1633126007113/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_inner-inner_-_aliasing/7.1.0_1633126007113/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_inner-inner_-_aliasing/7.1.0_1633126007113/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_key_format_mismatch/7.1.0_1633126010473/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_key_format_mismatch/7.1.0_1633126010473/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_table-table-table_-_key_format_mismatch/7.1.0_1633126010473/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_third_join_column_in_projection/7.1.0_1633126003340/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_third_join_column_in_projection/7.1.0_1633126003340/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multi-joins_-_third_join_column_in_projection/7.1.0_1633126003340/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multiple-avro-maps_-_project_multiple_avro_maps/7.1.0_1633126013655/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multiple-avro-maps_-_project_multiple_avro_maps/7.1.0_1633126013655/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/multiple-avro-maps_-_project_multiple_avro_maps/7.1.0_1633126013655/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_as_key_format_of_keyless_stream/7.1.0_1633126013689/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_as_key_format_of_keyless_stream/7.1.0_1633126013689/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_as_key_format_of_keyless_stream/7.1.0_1633126013689/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_in_CSAS_from_keyless_stream/7.1.0_1633126013701/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_in_CSAS_from_keyless_stream/7.1.0_1633126013701/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_in_CSAS_from_keyless_stream/7.1.0_1633126013701/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_in_CSAS_partitioning_by_null/7.1.0_1633126013711/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_in_CSAS_partitioning_by_null/7.1.0_1633126013711/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_in_CSAS_partitioning_by_null/7.1.0_1633126013711/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_inherited_in_CSAS_-_JOIN_with_repartition/7.1.0_1633126013741/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_inherited_in_CSAS_-_JOIN_with_repartition/7.1.0_1633126013741/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_inherited_in_CSAS_-_JOIN_with_repartition/7.1.0_1633126013741/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_inherited_in_CSAS_-_PARTITION_BY/7.1.0_1633126013727/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_inherited_in_CSAS_-_PARTITION_BY/7.1.0_1633126013727/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_inherited_in_CSAS_-_PARTITION_BY/7.1.0_1633126013727/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_inherited_in_CTAS_-_GROUP_BY/7.1.0_1633126013824/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_inherited_in_CTAS_-_GROUP_BY/7.1.0_1633126013824/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/none_-_inherited_in_CTAS_-_GROUP_BY/7.1.0_1633126013824/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_coalesce/7.1.0_1633126014273/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_coalesce/7.1.0_1633126014273/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_coalesce/7.1.0_1633126014273/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_if_null/7.1.0_1633126014301/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_if_null/7.1.0_1633126014301/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_if_null/7.1.0_1633126014301/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_is_not_null/7.1.0_1633126014238/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_is_not_null/7.1.0_1633126014238/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_is_not_null/7.1.0_1633126014238/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_is_null/7.1.0_1633126014205/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_is_null/7.1.0_1633126014205/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_is_null/7.1.0_1633126014205/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_null_equals/7.1.0_1633126014255/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_null_equals/7.1.0_1633126014255/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_null_equals/7.1.0_1633126014255/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_null_if/7.1.0_1633126014325/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_null_if/7.1.0_1633126014325/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_null_if/7.1.0_1633126014325/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_GROUP_BY_IS_NULL_with_null_value/7.1.0_1633126014081/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_GROUP_BY_IS_NULL_with_null_value/7.1.0_1633126014081/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_GROUP_BY_IS_NULL_with_null_value/7.1.0_1633126014081/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_GROUP_BY_with_null_value/7.1.0_1633126014000/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_GROUP_BY_with_null_value/7.1.0_1633126014000/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_GROUP_BY_with_null_value/7.1.0_1633126014000/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_PARTITION_BY_IS_NULL_with_null_value/7.1.0_1633126013982/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_PARTITION_BY_IS_NULL_with_null_value/7.1.0_1633126013982/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_PARTITION_BY_IS_NULL_with_null_value/7.1.0_1633126013982/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_PARTITION_BY_with_null_value/7.1.0_1633126013967/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_PARTITION_BY_with_null_value/7.1.0_1633126013967/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_PARTITION_BY_with_null_value/7.1.0_1633126013967/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_clone_row_with_null_value/7.1.0_1633126013913/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_clone_row_with_null_value/7.1.0_1633126013913/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_clone_row_with_null_value/7.1.0_1633126013913/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_filter_with_null_value/7.1.0_1633126013950/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_filter_with_null_value/7.1.0_1633126013950/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/null_-_stream_filter_with_null_value/7.1.0_1633126013950/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__AND_before_BETWEEN/7.1.0_1633126014505/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__AND_before_BETWEEN/7.1.0_1633126014505/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__AND_before_BETWEEN/7.1.0_1633126014505/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__AND_before_LIKE/7.1.0_1633126014519/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__AND_before_LIKE/7.1.0_1633126014519/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__AND_before_LIKE/7.1.0_1633126014519/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__AND_before_OR/7.1.0_1633126014533/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__AND_before_OR/7.1.0_1633126014533/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__AND_before_OR/7.1.0_1633126014533/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__NOT_before_AND/7.1.0_1633126014493/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__NOT_before_AND/7.1.0_1633126014493/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__NOT_before_AND/7.1.0_1633126014493/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__asterisk_before_minus/7.1.0_1633126014369/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__asterisk_before_minus/7.1.0_1633126014369/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__asterisk_before_minus/7.1.0_1633126014369/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__asterisk_before_plus/7.1.0_1633126014357/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__asterisk_before_plus/7.1.0_1633126014357/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__asterisk_before_plus/7.1.0_1633126014357/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__comparison_before_NOT/7.1.0_1633126014481/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__comparison_before_NOT/7.1.0_1633126014481/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__comparison_before_NOT/7.1.0_1633126014481/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__percent,_slash_and_asterisk_by_order/7.1.0_1633126014445/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__percent,_slash_and_asterisk_by_order/7.1.0_1633126014445/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__percent,_slash_and_asterisk_by_order/7.1.0_1633126014445/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__percent_before_minus/7.1.0_1633126014418/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__percent_before_minus/7.1.0_1633126014418/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__percent_before_minus/7.1.0_1633126014418/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__percent_before_plus/7.1.0_1633126014406/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__percent_before_plus/7.1.0_1633126014406/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__percent_before_plus/7.1.0_1633126014406/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__plus_and_minus_before_comparison/7.1.0_1633126014467/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__plus_and_minus_before_comparison/7.1.0_1633126014467/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__plus_and_minus_before_comparison/7.1.0_1633126014467/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__plus_and_minus_by_order/7.1.0_1633126014429/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__plus_and_minus_by_order/7.1.0_1633126014429/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__plus_and_minus_by_order/7.1.0_1633126014429/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__slash_before_minus/7.1.0_1633126014393/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__slash_before_minus/7.1.0_1633126014393/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__slash_before_minus/7.1.0_1633126014393/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__slash_before_plus/7.1.0_1633126014381/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__slash_before_plus/7.1.0_1633126014381/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/operators_-_precedence__slash_before_plus/7.1.0_1633126014381/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/parse-date_-_string_to_date/7.1.0_1633126014545/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/parse-date_-_string_to_date/7.1.0_1633126014545/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/parse-date_-_string_to_date/7.1.0_1633126014545/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/parse-time_-_string_to_time/7.1.0_1633126014561/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/parse-time_-_string_to_time/7.1.0_1633126014561/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/parse-time_-_string_to_time/7.1.0_1633126014561/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_bigint_key_field/7.1.0_1633126015237/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_bigint_key_field/7.1.0_1633126015237/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_bigint_key_field/7.1.0_1633126015237/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_constant/7.1.0_1633126014752/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_constant/7.1.0_1633126014752/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_constant/7.1.0_1633126014752/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_expression_-_select_explicit/7.1.0_1633126014737/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_expression_-_select_explicit/7.1.0_1633126014737/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_expression_-_select_explicit/7.1.0_1633126014737/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_expression_-_select_star/7.1.0_1633126014721/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_expression_-_select_star/7.1.0_1633126014721/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_expression_-_select_star/7.1.0_1633126014721/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_int_column/7.1.0_1633126015224/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_int_column/7.1.0_1633126015224/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_int_column/7.1.0_1633126015224/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_key_expression_-_with_null_value/7.1.0_1633126015330/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_key_expression_-_with_null_value/7.1.0_1633126015330/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_key_expression_-_with_null_value/7.1.0_1633126015330/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_KAFKA_to_non-KAFKA_key_format/7.1.0_1633126016654/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_KAFKA_to_non-KAFKA_key_format/7.1.0_1633126016654/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_KAFKA_to_non-KAFKA_key_format/7.1.0_1633126016654/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select___-_some_key_some_value/7.1.0_1633126016532/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select___-_some_key_some_value/7.1.0_1633126016532/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select___-_some_key_some_value/7.1.0_1633126016532/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select___-_some_key_some_value_-_key_first/7.1.0_1633126016562/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select___-_some_key_some_value_-_key_first/7.1.0_1633126016562/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select___-_some_key_some_value_-_key_first/7.1.0_1633126016562/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_explicit/7.1.0_1633126016475/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_explicit/7.1.0_1633126016475/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_explicit/7.1.0_1633126016475/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_explicit_-_reorder_/7.1.0_1633126016489/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_explicit_-_reorder_/7.1.0_1633126016489/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_explicit_-_reorder_/7.1.0_1633126016489/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_explicit_-_reorder_partition_by_but_keep_same_order_in_project/7.1.0_1633126016503/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_explicit_-_reorder_partition_by_but_keep_same_order_in_project/7.1.0_1633126016503/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_explicit_-_reorder_partition_by_but_keep_same_order_in_project/7.1.0_1633126016503/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_star/7.1.0_1633126016448/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_star/7.1.0_1633126016448/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_star/7.1.0_1633126016448/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_star_-_reorder_columns/7.1.0_1633126016462/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_star_-_reorder_columns/7.1.0_1633126016462/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_select_star_-_reorder_columns/7.1.0_1633126016462/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_some_key_some_value/7.1.0_1633126016518/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_some_key_some_value/7.1.0_1633126016518/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_some_key_some_value/7.1.0_1633126016518/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_some_key_some_value_-_key_first/7.1.0_1633126016547/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_some_key_some_value_-_key_first/7.1.0_1633126016547/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_some_key_some_value_-_key_first/7.1.0_1633126016547/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_some_key_some_value_-_properly_ordered_in_selection/7.1.0_1633126016577/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_some_key_some_value_-_properly_ordered_in_selection/7.1.0_1633126016577/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_-_some_key_some_value_-_properly_ordered_in_selection/7.1.0_1633126016577/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_including_ROWTIME/7.1.0_1633126016641/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_including_ROWTIME/7.1.0_1633126016641/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_including_ROWTIME/7.1.0_1633126016641/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_with_expressions/7.1.0_1633126016621/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_with_expressions/7.1.0_1633126016621/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_columns_with_expressions/7.1.0_1633126016621/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_key_columns/7.1.0_1633126016592/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_key_columns/7.1.0_1633126016592/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_key_columns/7.1.0_1633126016592/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_key_columns_-_reordered/7.1.0_1633126016607/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_key_columns_-_reordered/7.1.0_1633126016607/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_multiple_key_columns_-_reordered/7.1.0_1633126016607/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_no_key_column/7.1.0_1633126014626/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_no_key_column/7.1.0_1633126014626/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_no_key_column/7.1.0_1633126014626/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_non-KAFKA_key_format/7.1.0_1633126016271/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_non-KAFKA_key_format/7.1.0_1633126016271/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_non-KAFKA_key_format/7.1.0_1633126016271/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_null/7.1.0_1633126014767/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_null/7.1.0_1633126014767/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_null/7.1.0_1633126014767/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_nulls/7.1.0_1633126015094/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_nulls/7.1.0_1633126015094/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_nulls/7.1.0_1633126015094/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_nulls_using_coalesce/7.1.0_1633126016244/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_nulls_using_coalesce/7.1.0_1633126016244/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_nulls_using_coalesce/7.1.0_1633126016244/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column/7.1.0_1633126016193/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column/7.1.0_1633126016193/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column/7.1.0_1633126016193/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_select_explicit/7.1.0_1633126014615/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_select_explicit/7.1.0_1633126014615/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_select_explicit/7.1.0_1633126014615/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_select_star/7.1.0_1633126014603/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_select_star/7.1.0_1633126014603/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_select_star/7.1.0_1633126014603/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_select_star_-_with_join_on_keys/7.1.0_1633126014781/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_select_star_-_with_join_on_keys/7.1.0_1633126014781/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_select_star_-_with_join_on_keys/7.1.0_1633126014781/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_select_star_-_with_join_on_value_columns/7.1.0_1633126014930/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_select_star_-_with_join_on_value_columns/7.1.0_1633126014930/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_select_star_-_with_join_on_value_columns/7.1.0_1633126014930/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_with_alias_that_matches_key_column/7.1.0_1633126015146/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_with_alias_that_matches_key_column/7.1.0_1633126015146/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_with_alias_that_matches_key_column/7.1.0_1633126015146/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_with_null_value/7.1.0_1633126015315/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_with_null_value/7.1.0_1633126015315/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_only_key_column_-_with_null_value/7.1.0_1633126015315/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_-_KAFKA/7.1.0_1633126015250/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_-_KAFKA/7.1.0_1633126015250/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_-_KAFKA/7.1.0_1633126015250/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_Key_in_join_on_Key_ALIASED/7.1.0_1633126015718/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_Key_in_join_on_Key_ALIASED/7.1.0_1633126015718/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_Key_in_join_on_Key_ALIASED/7.1.0_1633126015718/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_ROWTIME/7.1.0_1633126015420/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_ROWTIME/7.1.0_1633126015420/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_ROWTIME/7.1.0_1633126015420/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_array_key/7.1.0_1633126016283/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_array_key/7.1.0_1633126016283/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_array_key/7.1.0_1633126016283/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_create_struct/7.1.0_1633126016382/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_create_struct/7.1.0_1633126016382/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_create_struct/7.1.0_1633126016382/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_field_within_struct_key/7.1.0_1633126016348/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_field_within_struct_key/7.1.0_1633126016348/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_field_within_struct_key/7.1.0_1633126016348/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_field_within_struct_key_don't_select_struct_key/7.1.0_1633126016364/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_field_within_struct_key_don't_select_struct_key/7.1.0_1633126016364/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_field_within_struct_key_don't_select_struct_key/7.1.0_1633126016364/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_key/7.1.0_1633126015396/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_key/7.1.0_1633126015396/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_key/7.1.0_1633126015396/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_key_in_join_on_key/7.1.0_1633126015434/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_key_in_join_on_key/7.1.0_1633126015434/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_key_in_join_on_key/7.1.0_1633126015434/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_key_in_join_on_non-key/7.1.0_1633126015554/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_key_in_join_on_non-key/7.1.0_1633126015554/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_key_in_join_on_non-key/7.1.0_1633126015554/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_nested_struct/7.1.0_1633126016417/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_nested_struct/7.1.0_1633126016417/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_nested_struct/7.1.0_1633126016417/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_non-Key_in_join_on_Key/7.1.0_1633126015865/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_non-Key_in_join_on_Key/7.1.0_1633126015865/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_non-Key_in_join_on_Key/7.1.0_1633126015865/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_non-Key_in_join_on_non-Key/7.1.0_1633126016025/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_non-Key_in_join_on_non-Key/7.1.0_1633126016025/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_non-Key_in_join_on_non-Key/7.1.0_1633126016025/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_only_key_column/7.1.0_1633126015408/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_only_key_column/7.1.0_1633126015408/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_only_key_column/7.1.0_1633126015408/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_project_key/7.1.0_1633126015382/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_project_key/7.1.0_1633126015382/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_project_key/7.1.0_1633126015382/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_struct_explicitly_change_key_format/7.1.0_1633126016434/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_struct_explicitly_change_key_format/7.1.0_1633126016434/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_struct_explicitly_change_key_format/7.1.0_1633126016434/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_struct_key/7.1.0_1633126016296/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_struct_key/7.1.0_1633126016296/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_struct_key/7.1.0_1633126016296/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_struct_key_when_original_is_unwrapped/7.1.0_1633126016334/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_struct_key_when_original_is_unwrapped/7.1.0_1633126016334/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_struct_key_when_original_is_unwrapped/7.1.0_1633126016334/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_struct_with_different_key_value_formats/7.1.0_1633126016401/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_struct_with_different_key_value_formats/7.1.0_1633126016401/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_struct_with_different_key_value_formats/7.1.0_1633126016401/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_with_null_partition_by_value/7.1.0_1633126015365/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_with_null_partition_by_value/7.1.0_1633126015365/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_with_null_partition_by_value/7.1.0_1633126015365/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_with_null_value/7.1.0_1633126015298/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_with_null_value/7.1.0_1633126015298/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_with_null_value/7.1.0_1633126015298/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_with_projection_select_all/7.1.0_1633126015280/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_with_projection_select_all/7.1.0_1633126015280/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_with_projection_select_all/7.1.0_1633126015280/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_with_projection_select_some/7.1.0_1633126015212/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_with_projection_select_some/7.1.0_1633126015212/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_partition_by_with_projection_select_some/7.1.0_1633126015212/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_should_handle_PARTITION_BY_that_throws/7.1.0_1633126016258/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_should_handle_PARTITION_BY_that_throws/7.1.0_1633126016258/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_should_handle_PARTITION_BY_that_throws/7.1.0_1633126016258/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_should_handle_quoted_key_and_value/7.1.0_1633126016226/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_should_handle_quoted_key_and_value/7.1.0_1633126016226/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_should_handle_quoted_key_and_value/7.1.0_1633126016226/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_column_-_with_alias/7.1.0_1633126015118/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_column_-_with_alias/7.1.0_1633126015118/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_column_-_with_alias/7.1.0_1633126015118/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_expression_-_with_alias/7.1.0_1633126015181/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_expression_-_with_alias/7.1.0_1633126015181/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_expression_-_with_alias/7.1.0_1633126015181/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_non-key_column_-_with_alias_that_matches_old_key_column/7.1.0_1633126015165/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_non-key_column_-_with_alias_that_matches_old_key_column/7.1.0_1633126015165/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_non-key_column_-_with_alias_that_matches_old_key_column/7.1.0_1633126015165/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_value_column_-_select_explicit/7.1.0_1633126014654/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_value_column_-_select_explicit/7.1.0_1633126014654/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_value_column_-_select_explicit/7.1.0_1633126014654/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_value_column_-_select_star/7.1.0_1633126014639/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_value_column_-_select_star/7.1.0_1633126014639/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_single_value_column_-_select_star/7.1.0_1633126014639/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_struct_field_-_select_explicit/7.1.0_1633126014688/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_struct_field_-_select_explicit/7.1.0_1633126014688/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_struct_field_-_select_explicit/7.1.0_1633126014688/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_struct_field_-_select_star/7.1.0_1633126014669/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_struct_field_-_select_star/7.1.0_1633126014669/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_struct_field_-_select_star/7.1.0_1633126014669/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_struct_field_-_with_alias/7.1.0_1633126014705/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_struct_field_-_with_alias/7.1.0_1633126014705/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_struct_field_-_with_alias/7.1.0_1633126014705/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_udf_key_expression_-_with_null_value/7.1.0_1633126015347/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_udf_key_expression_-_with_null_value/7.1.0_1633126015347/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_udf_key_expression_-_with_null_value/7.1.0_1633126015347/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_with_STRING_-__BIGINT_cast/7.1.0_1633126015263/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_with_STRING_-__BIGINT_cast/7.1.0_1633126015263/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_with_STRING_-__BIGINT_cast/7.1.0_1633126015263/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_with_alias_that_matches_source_column/7.1.0_1633126015198/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_with_alias_that_matches_source_column/7.1.0_1633126015198/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/partition-by_-_with_alias_that_matches_source_column/7.1.0_1633126015198/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_CSAS_with_custom_Kafka_topic_name/7.1.0_1633126017028/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_CSAS_with_custom_Kafka_topic_name/7.1.0_1633126017028/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_CSAS_with_custom_Kafka_topic_name/7.1.0_1633126017028/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_BETWEEN/7.1.0_1633126016845/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_BETWEEN/7.1.0_1633126016845/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_BETWEEN/7.1.0_1633126016845/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_IS_DISTINCT_FROM/7.1.0_1633126016916/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_IS_DISTINCT_FROM/7.1.0_1633126016916/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_IS_DISTINCT_FROM/7.1.0_1633126016916/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_IS_NOT_DISTINCT_FROM/7.1.0_1633126016931/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_IS_NOT_DISTINCT_FROM/7.1.0_1633126016931/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_IS_NOT_DISTINCT_FROM/7.1.0_1633126016931/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_NOT_BETWEEN/7.1.0_1633126016863/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_NOT_BETWEEN/7.1.0_1633126016863/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_NOT_BETWEEN/7.1.0_1633126016863/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_NOT_NULL/7.1.0_1633126016899/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_NOT_NULL/7.1.0_1633126016899/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_NOT_NULL/7.1.0_1633126016899/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_NULL/7.1.0_1633126016881/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_NULL/7.1.0_1633126016881/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_NULL/7.1.0_1633126016881/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_like_pattern/7.1.0_1633126016827/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_like_pattern/7.1.0_1633126016827/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_like_pattern/7.1.0_1633126016827/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_like_pattern_without_wildcards/7.1.0_1633126016947/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_like_pattern_without_wildcards/7.1.0_1633126016947/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_like_pattern_without_wildcards/7.1.0_1633126016947/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_long_literal/7.1.0_1633126016791/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_long_literal/7.1.0_1633126016791/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_long_literal/7.1.0_1633126016791/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_non-STRING_key/7.1.0_1633126017045/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_non-STRING_key/7.1.0_1633126017045/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_non-STRING_key/7.1.0_1633126017045/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_not_like_pattern/7.1.0_1633126016981/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_not_like_pattern/7.1.0_1633126016981/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_not_like_pattern/7.1.0_1633126016981/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_string_literal/7.1.0_1633126016809/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_string_literal/7.1.0_1633126016809/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Filter_on_string_literal/7.1.0_1633126016809/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Json_Map_filter/7.1.0_1633126016693/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Json_Map_filter/7.1.0_1633126016693/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Json_Map_filter/7.1.0_1633126016693/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Json_Multi_Dimensional_Array/7.1.0_1633126016773/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Json_Multi_Dimensional_Array/7.1.0_1633126016773/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Json_Multi_Dimensional_Array/7.1.0_1633126016773/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Json_Multi_Dimensional_Array_2/7.1.0_1633126016756/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Json_Multi_Dimensional_Array_2/7.1.0_1633126016756/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Json_Multi_Dimensional_Array_2/7.1.0_1633126016756/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Null_row_filter/7.1.0_1633126016967/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Null_row_filter/7.1.0_1633126016967/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Null_row_filter/7.1.0_1633126016967/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Project_fields_with_reserved_name/7.1.0_1633126016999/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Project_fields_with_reserved_name/7.1.0_1633126016999/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Project_fields_with_reserved_name/7.1.0_1633126016999/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Project_struct_fields_with_reserved_name/7.1.0_1633126017014/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Project_struct_fields_with_reserved_name/7.1.0_1633126017014/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_Project_struct_fields_with_reserved_name/7.1.0_1633126017014/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_WHERE_with_many_comparisons._This_tests_the_fix_for_#1784/7.1.0_1633126016709/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_WHERE_with_many_comparisons._This_tests_the_fix_for_#1784/7.1.0_1633126016709/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_WHERE_with_many_comparisons._This_tests_the_fix_for_#1784/7.1.0_1633126016709/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_filter_nulls/7.1.0_1633126017071/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_filter_nulls/7.1.0_1633126017071/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_filter_nulls/7.1.0_1633126017071/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_and_filter/7.1.0_1633126016668/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_and_filter/7.1.0_1633126016668/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_and_filter/7.1.0_1633126016668/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_and_negative_filter/7.1.0_1633126016738/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_and_negative_filter/7.1.0_1633126016738/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_and_negative_filter/7.1.0_1633126016738/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_nulls/7.1.0_1633126017059/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_nulls/7.1.0_1633126017059/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_nulls/7.1.0_1633126017059/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_string_with_embedded_code/7.1.0_1633126016680/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_string_with_embedded_code/7.1.0_1633126016680/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_string_with_embedded_code/7.1.0_1633126016680/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_with_value_column_aliased_multiple_times/7.1.0_1633126017096/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_with_value_column_aliased_multiple_times/7.1.0_1633126017096/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_project_with_value_column_aliased_multiple_times/7.1.0_1633126017096/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_projection_with_aliased_key_column/7.1.0_1633126017084/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_projection_with_aliased_key_column/7.1.0_1633126017084/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/project-filter_-_projection_with_aliased_key_column/7.1.0_1633126017084/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_ARRAY_STRING_-_key_-_inference/7.1.0_1633126017611/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_ARRAY_STRING_-_key_-_inference/7.1.0_1633126017611/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_ARRAY_STRING_-_key_-_inference/7.1.0_1633126017611/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_ARRAY_STRING_-_key_-_no_inference/7.1.0_1633126017596/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_ARRAY_STRING_-_key_-_no_inference/7.1.0_1633126017596/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_ARRAY_STRING_-_key_-_no_inference/7.1.0_1633126017596/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_BIGINT_-_key_-_inference/7.1.0_1633126017525/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_BIGINT_-_key_-_inference/7.1.0_1633126017525/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_BIGINT_-_key_-_inference/7.1.0_1633126017525/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_BIGINT_-_key_-_no_inference/7.1.0_1633126017511/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_BIGINT_-_key_-_no_inference/7.1.0_1633126017511/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_BIGINT_-_key_-_no_inference/7.1.0_1633126017511/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_BOOLEAN_-_key_-_inference/7.1.0_1633126017465/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_BOOLEAN_-_key_-_inference/7.1.0_1633126017465/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_BOOLEAN_-_key_-_inference/7.1.0_1633126017465/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_BOOLEAN_-_key_-_no_inference/7.1.0_1633126017450/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_BOOLEAN_-_key_-_no_inference/7.1.0_1633126017450/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_BOOLEAN_-_key_-_no_inference/7.1.0_1633126017450/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_DOUBLE_-_key_-_inference/7.1.0_1633126017552/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_DOUBLE_-_key_-_inference/7.1.0_1633126017552/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_DOUBLE_-_key_-_inference/7.1.0_1633126017552/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_DOUBLE_-_key_-_no_inference/7.1.0_1633126017539/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_DOUBLE_-_key_-_no_inference/7.1.0_1633126017539/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_DOUBLE_-_key_-_no_inference/7.1.0_1633126017539/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_INT_-_key_-_inference/7.1.0_1633126017496/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_INT_-_key_-_inference/7.1.0_1633126017496/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_INT_-_key_-_inference/7.1.0_1633126017496/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_INT_-_key_-_no_inference/7.1.0_1633126017480/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_INT_-_key_-_no_inference/7.1.0_1633126017480/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_INT_-_key_-_no_inference/7.1.0_1633126017480/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_STRING_-_key_-_inference/7.1.0_1633126017582/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_STRING_-_key_-_inference/7.1.0_1633126017582/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_STRING_-_key_-_inference/7.1.0_1633126017582/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_STRING_-_key_-_no_inference/7.1.0_1633126017567/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_STRING_-_key_-_no_inference/7.1.0_1633126017567/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_STRING_-_key_-_no_inference/7.1.0_1633126017567/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_multi_field_-_key_-_no_inference/7.1.0_1633126017626/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_multi_field_-_key_-_no_inference/7.1.0_1633126017626/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_STRUCT_multi_field_-_key_-_no_inference/7.1.0_1633126017626/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_containers/7.1.0_1633126017233/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_containers/7.1.0_1633126017233/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_containers/7.1.0_1633126017233/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_defaults_-_empty_struct_fills_defaults_and_nulls_remain_nulls/7.1.0_1633126017290/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_defaults_-_empty_struct_fills_defaults_and_nulls_remain_nulls/7.1.0_1633126017290/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_defaults_-_empty_struct_fills_defaults_and_nulls_remain_nulls/7.1.0_1633126017290/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_defaults_-_nested_nulls_are_defaulted_to_0/7.1.0_1633126017274/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_defaults_-_nested_nulls_are_defaulted_to_0/7.1.0_1633126017274/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_defaults_-_nested_nulls_are_defaulted_to_0/7.1.0_1633126017274/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_defaults_-_top_level_nulls_are_defaulted_to_0/7.1.0_1633126017255/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_defaults_-_top_level_nulls_are_defaulted_to_0/7.1.0_1633126017255/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_defaults_-_top_level_nulls_are_defaulted_to_0/7.1.0_1633126017255/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_inference_-_other_scalars/7.1.0_1633126017427/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_inference_-_other_scalars/7.1.0_1633126017427/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_inference_-_other_scalars/7.1.0_1633126017427/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_inference_-_partial_schema/7.1.0_1633126017336/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_inference_-_partial_schema/7.1.0_1633126017336/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_inference_-_partial_schema/7.1.0_1633126017336/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_inference_-_primitives/7.1.0_1633126017306/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_inference_-_primitives/7.1.0_1633126017306/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_inference_-_primitives/7.1.0_1633126017306/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_primitives/7.1.0_1633126017170/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_primitives/7.1.0_1633126017170/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_protobuf_primitives/7.1.0_1633126017170/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_serialize_nested_array_-_value/7.1.0_1633126017123/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_serialize_nested_array_-_value/7.1.0_1633126017123/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_serialize_nested_array_-_value/7.1.0_1633126017123/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_serialize_nested_map_-_value/7.1.0_1633126017136/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_serialize_nested_map_-_value/7.1.0_1633126017136/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_serialize_nested_map_-_value/7.1.0_1633126017136/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_serialize_nested_primitive_-_value/7.1.0_1633126017109/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_serialize_nested_primitive_-_value/7.1.0_1633126017109/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_serialize_nested_primitive_-_value/7.1.0_1633126017109/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_serialize_nested_struct_-_value/7.1.0_1633126017152/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_serialize_nested_struct_-_value/7.1.0_1633126017152/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_serialize_nested_struct_-_value/7.1.0_1633126017152/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_should_convert_enum_to_STRING/7.1.0_1633126017377/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_should_convert_enum_to_STRING/7.1.0_1633126017377/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_should_convert_enum_to_STRING/7.1.0_1633126017377/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_should_convert_nested_types_to_STRUCT/7.1.0_1633126017412/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_should_convert_nested_types_to_STRUCT/7.1.0_1633126017412/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_should_convert_nested_types_to_STRUCT/7.1.0_1633126017412/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_should_not_filter_out_bytes/7.1.0_1633126017641/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_should_not_filter_out_bytes/7.1.0_1633126017641/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_should_not_filter_out_bytes/7.1.0_1633126017641/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_should_support_arrays/7.1.0_1633126017396/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_should_support_arrays/7.1.0_1633126017396/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/protobuf_-_should_support_arrays/7.1.0_1633126017396/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_create_table_with_key_that_is_quoted/7.1.0_1633126017724/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_create_table_with_key_that_is_quoted/7.1.0_1633126017724/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_create_table_with_key_that_is_quoted/7.1.0_1633126017724/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_joins_using_fields_that_require_quotes/7.1.0_1633126017857/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_joins_using_fields_that_require_quotes/7.1.0_1633126017857/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_joins_using_fields_that_require_quotes/7.1.0_1633126017857/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_literals_with_quotes_galore/7.1.0_1633126018045/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_literals_with_quotes_galore/7.1.0_1633126018045/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_literals_with_quotes_galore/7.1.0_1633126018045/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_math_using_fields_that_require_quotes/7.1.0_1633126017710/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_math_using_fields_that_require_quotes/7.1.0_1633126017710/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_math_using_fields_that_require_quotes/7.1.0_1633126017710/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_partition_by_quoted_field/7.1.0_1633126017815/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_partition_by_quoted_field/7.1.0_1633126017815/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_partition_by_quoted_field/7.1.0_1633126017815/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_sink_fields_that_require_quotes/7.1.0_1633126017677/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_sink_fields_that_require_quotes/7.1.0_1633126017677/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_sink_fields_that_require_quotes/7.1.0_1633126017677/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_source_fields_that_require_quotes/7.1.0_1633126017659/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_source_fields_that_require_quotes/7.1.0_1633126017659/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_source_fields_that_require_quotes/7.1.0_1633126017659/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_source_names_requiring_quotes/7.1.0_1633126018007/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_source_names_requiring_quotes/7.1.0_1633126018007/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_source_names_requiring_quotes/7.1.0_1633126018007/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_udf_using_fields_that_require_quotes/7.1.0_1633126017695/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_udf_using_fields_that_require_quotes/7.1.0_1633126017695/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/quoted-identifiers_-_udf_using_fields_that_require_quotes/7.1.0_1633126017695/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-array_-_reduce_a_string_array/7.1.0_1633126018097/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-array_-_reduce_a_string_array/7.1.0_1633126018097/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-array_-_reduce_a_string_array/7.1.0_1633126018097/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-array_-_reduce_an_array/7.1.0_1633126018062/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-array_-_reduce_an_array/7.1.0_1633126018062/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-array_-_reduce_an_array/7.1.0_1633126018062/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-array_-_reduce_an_array_with_null_initial_state/7.1.0_1633126018080/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-array_-_reduce_an_array_with_null_initial_state/7.1.0_1633126018080/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-array_-_reduce_an_array_with_null_initial_state/7.1.0_1633126018080/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-map_-_apply_reduce_lambda_function_to_map/7.1.0_1633126018116/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-map_-_apply_reduce_lambda_function_to_map/7.1.0_1633126018116/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-map_-_apply_reduce_lambda_function_to_map/7.1.0_1633126018116/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-map_-_reduce_map_with_double/7.1.0_1633126018158/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-map_-_reduce_map_with_double/7.1.0_1633126018158/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-map_-_reduce_map_with_double/7.1.0_1633126018158/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-map_-_reduce_map_with_null_initial_state/7.1.0_1633126018141/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-map_-_reduce_map_with_null_initial_state/7.1.0_1633126018141/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/reduce-map_-_reduce_map_with_null_initial_state/7.1.0_1633126018141/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_extract_with_group/7.1.0_1633126018208/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_extract_with_group/7.1.0_1633126018208/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_extract_with_group/7.1.0_1633126018208/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_extract_without_group/7.1.0_1633126018188/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_extract_without_group/7.1.0_1633126018188/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_extract_without_group/7.1.0_1633126018188/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_regex_extract_all_with_group/7.1.0_1633126018238/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_regex_extract_all_with_group/7.1.0_1633126018238/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_regex_extract_all_with_group/7.1.0_1633126018238/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_regex_extract_all_without_group/7.1.0_1633126018223/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_regex_extract_all_without_group/7.1.0_1633126018223/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_regex_extract_all_without_group/7.1.0_1633126018223/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_should_support_nested_regex_functions_with_different_signatures/7.1.0_1633126018252/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_should_support_nested_regex_functions_with_different_signatures/7.1.0_1633126018252/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/regex_-_should_support_nested_regex_functions_with_different_signatures/7.1.0_1633126018252/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/replace_-_Extract_escaped_JSON/7.1.0_1633126018338/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/replace_-_Extract_escaped_JSON/7.1.0_1633126018338/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/replace_-_Extract_escaped_JSON/7.1.0_1633126018338/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/replace_-_regexp_replace/7.1.0_1633126018323/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/replace_-_regexp_replace/7.1.0_1633126018323/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/replace_-_regexp_replace/7.1.0_1633126018323/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/replace_-_replace_-_JSON/7.1.0_1633126018269/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/replace_-_replace_-_JSON/7.1.0_1633126018269/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/replace_-_replace_-_JSON/7.1.0_1633126018269/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/replace_-_replace_-_PROTOBUF/7.1.0_1633126018296/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/replace_-_replace_-_PROTOBUF/7.1.0_1633126018296/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/replace_-_replace_-_PROTOBUF/7.1.0_1633126018296/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_CAST_ROWPARTITION_and_ROWOFFSET/7.1.0_1633126018917/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_CAST_ROWPARTITION_and_ROWOFFSET/7.1.0_1633126018917/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_CAST_ROWPARTITION_and_ROWOFFSET/7.1.0_1633126018917/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_Filter_using_ROWOFFSET/7.1.0_1633126019027/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_Filter_using_ROWOFFSET/7.1.0_1633126019027/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_Filter_using_ROWOFFSET/7.1.0_1633126019027/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_Filter_using_ROWPARTITION/7.1.0_1633126019010/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_Filter_using_ROWPARTITION/7.1.0_1633126019010/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_Filter_using_ROWPARTITION/7.1.0_1633126019010/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_GROUP_BY_ROWOFFSET/7.1.0_1633126019165/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_GROUP_BY_ROWOFFSET/7.1.0_1633126019165/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_GROUP_BY_ROWOFFSET/7.1.0_1633126019165/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_GROUP_BY_ROWPARTITION/7.1.0_1633126019048/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_GROUP_BY_ROWPARTITION/7.1.0_1633126019048/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_GROUP_BY_ROWPARTITION/7.1.0_1633126019048/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_PARTITION_BY_ROWOFFSET/7.1.0_1633126018979/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_PARTITION_BY_ROWOFFSET/7.1.0_1633126018979/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_PARTITION_BY_ROWOFFSET/7.1.0_1633126018979/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_PARTITION_BY_ROWPARTITION/7.1.0_1633126018994/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_PARTITION_BY_ROWPARTITION/7.1.0_1633126018994/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_PARTITION_BY_ROWPARTITION/7.1.0_1633126018994/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_ROWPARTITION_and_ROWOFFSET_in_mathematical_expression/7.1.0_1633126018965/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_ROWPARTITION_and_ROWOFFSET_in_mathematical_expression/7.1.0_1633126018965/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_ROWPARTITION_and_ROWOFFSET_in_mathematical_expression/7.1.0_1633126018965/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_Select_ROWPARTITION_ROWOFFSET_columns_with_aliases_-_stream/7.1.0_1633126018352/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_Select_ROWPARTITION_ROWOFFSET_columns_with_aliases_-_stream/7.1.0_1633126018352/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_Select_ROWPARTITION_ROWOFFSET_columns_with_aliases_-_stream/7.1.0_1633126018352/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_Select_ROWPARTITION_ROWOFFSET_with_aliases_-_table/7.1.0_1633126018369/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_Select_ROWPARTITION_ROWOFFSET_with_aliases_-_table/7.1.0_1633126018369/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_Select_ROWPARTITION_ROWOFFSET_with_aliases_-_table/7.1.0_1633126018369/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_join_on_ROWOFFSET/7.1.0_1633126018680/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_join_on_ROWOFFSET/7.1.0_1633126018680/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_join_on_ROWOFFSET/7.1.0_1633126018680/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_join_on_ROWPARTITION/7.1.0_1633126018468/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_join_on_ROWPARTITION/7.1.0_1633126018468/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/row-offset-and-partition_-_join_on_ROWPARTITION/7.1.0_1633126018468/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_all_columns_-_explicit/7.1.0_1633126019372/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_all_columns_-_explicit/7.1.0_1633126019372/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_all_columns_-_explicit/7.1.0_1633126019372/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_all_columns_-_star/7.1.0_1633126019360/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_all_columns_-_star/7.1.0_1633126019360/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_all_columns_-_star/7.1.0_1633126019360/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_key_column/7.1.0_1633126019310/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_key_column/7.1.0_1633126019310/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_key_column/7.1.0_1633126019310/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_multi-key_columns_reordered/7.1.0_1633126019331/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_multi-key_columns_reordered/7.1.0_1633126019331/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_multi-key_columns_reordered/7.1.0_1633126019331/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_value_column/7.1.0_1633126019348/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_value_column/7.1.0_1633126019348/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/select_-_value_column/7.1.0_1633126019348/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/serdes_-_deserialization_should_pick_up_value_wrapping_from_config/7.1.0_1633126019387/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/serdes_-_deserialization_should_pick_up_value_wrapping_from_config/7.1.0_1633126019387/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/serdes_-_deserialization_should_pick_up_value_wrapping_from_config/7.1.0_1633126019387/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/serdes_-_deserialize_and_serialize_unwrapped_struct/7.1.0_1633126019433/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/serdes_-_deserialize_and_serialize_unwrapped_struct/7.1.0_1633126019433/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/serdes_-_deserialize_and_serialize_unwrapped_struct/7.1.0_1633126019433/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/serdes_-_serialization_should_pick_up_value_wrapping_from_config/7.1.0_1633126019421/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/serdes_-_serialization_should_pick_up_value_wrapping_from_config/7.1.0_1633126019421/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/serdes_-_serialization_should_pick_up_value_wrapping_from_config/7.1.0_1633126019421/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/serdes_-_serialization_should_produce_primitive_schema_for_unwrapped/7.1.0_1633126019406/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/serdes_-_serialization_should_produce_primitive_schema_for_unwrapped/7.1.0_1633126019406/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/serdes_-_serialization_should_produce_primitive_schema_for_unwrapped/7.1.0_1633126019406/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_import_session_stream/7.1.0_1633126019869/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_import_session_stream/7.1.0_1633126019869/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_import_session_stream/7.1.0_1633126019869/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_non-KAFKA_key_format/7.1.0_1633126020101/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_non-KAFKA_key_format/7.1.0_1633126020101/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_non-KAFKA_key_format/7.1.0_1633126020101/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_out_of_order_-_explicit_grace_period/7.1.0_1633126019623/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_out_of_order_-_explicit_grace_period/7.1.0_1633126019623/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_out_of_order_-_explicit_grace_period/7.1.0_1633126019623/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_out_of_order_-_no_grace_period/7.1.0_1633126019446/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_out_of_order_-_no_grace_period/7.1.0_1633126019446/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_out_of_order_-_no_grace_period/7.1.0_1633126019446/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_session_start_stream/7.1.0_1633126019905/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_session_start_stream/7.1.0_1633126019905/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/session-windows_-_session_start_stream/7.1.0_1633126019905/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_clashing_field_name/7.1.0_1633126021094/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_clashing_field_name/7.1.0_1633126021094/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_clashing_field_name/7.1.0_1633126021094/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_generated_name/7.1.0_1633126021061/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_generated_name/7.1.0_1633126021061/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_generated_name/7.1.0_1633126021061/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_generated_name_-_quoted_identifier/7.1.0_1633126021078/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_generated_name_-_quoted_identifier/7.1.0_1633126021078/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_generated_name_-_quoted_identifier/7.1.0_1633126021078/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_read_struct_as_json_string_-_JSON/7.1.0_1633126020375/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_read_struct_as_json_string_-_JSON/7.1.0_1633126020375/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_read_struct_as_json_string_-_JSON/7.1.0_1633126020375/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_-_AVRO/7.1.0_1633126020401/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_-_AVRO/7.1.0_1633126020401/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_-_AVRO/7.1.0_1633126020401/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_-_JSON/7.1.0_1633126020438/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_-_JSON/7.1.0_1633126020438/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_-_JSON/7.1.0_1633126020438/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_-_PROTOBUF/7.1.0_1633126020462/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_-_PROTOBUF/7.1.0_1633126020462/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_-_PROTOBUF/7.1.0_1633126020462/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_2_-_AVRO/7.1.0_1633126020497/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_2_-_AVRO/7.1.0_1633126020497/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_2_-_AVRO/7.1.0_1633126020497/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_2_-_JSON/7.1.0_1633126020545/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_2_-_JSON/7.1.0_1633126020545/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_2_-_JSON/7.1.0_1633126020545/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_2_-_PROTOBUF/7.1.0_1633126020597/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_2_-_PROTOBUF/7.1.0_1633126020597/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_2_-_PROTOBUF/7.1.0_1633126020597/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_4_-_AVRO/7.1.0_1633126020812/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_4_-_AVRO/7.1.0_1633126020812/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_4_-_AVRO/7.1.0_1633126020812/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_4_-_JSON/7.1.0_1633126020888/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_4_-_JSON/7.1.0_1633126020888/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_4_-_JSON/7.1.0_1633126020888/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_4_-_PROTOBUF/7.1.0_1633126020937/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_4_-_PROTOBUF/7.1.0_1633126020937/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_filter_4_-_PROTOBUF/7.1.0_1633126020937/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_for_ambiguity/7.1.0_1633126021038/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_for_ambiguity/7.1.0_1633126021038/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_for_ambiguity/7.1.0_1633126021038/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_star_-_AVRO/7.1.0_1633126020246/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_star_-_AVRO/7.1.0_1633126020246/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_star_-_AVRO/7.1.0_1633126020246/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_star_-_JSON/7.1.0_1633126020302/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_star_-_JSON/7.1.0_1633126020302/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_star_-_JSON/7.1.0_1633126020302/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_star_-_PROTOBUF/7.1.0_1633126020336/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_star_-_PROTOBUF/7.1.0_1633126020336/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_star_-_PROTOBUF/7.1.0_1633126020336/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_with_nulls_-_AVRO/7.1.0_1633126020977/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_with_nulls_-_AVRO/7.1.0_1633126020977/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_with_nulls_-_AVRO/7.1.0_1633126020977/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_with_nulls_-_JSON/7.1.0_1633126021012/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_with_nulls_-_JSON/7.1.0_1633126021012/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simple_struct_select_with_nulls_-_JSON/7.1.0_1633126021012/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simples_struct_select_filter_3_-_AVRO/7.1.0_1633126020665/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simples_struct_select_filter_3_-_AVRO/7.1.0_1633126020665/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simples_struct_select_filter_3_-_AVRO/7.1.0_1633126020665/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simples_struct_select_filter_3_-_JSON/7.1.0_1633126020708/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simples_struct_select_filter_3_-_JSON/7.1.0_1633126020708/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simples_struct_select_filter_3_-_JSON/7.1.0_1633126020708/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simples_struct_select_filter_3_-_PROTOBUF/7.1.0_1633126020747/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simples_struct_select_filter_3_-_PROTOBUF/7.1.0_1633126020747/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/simple-struct_-_simples_struct_select_filter_3_-_PROTOBUF/7.1.0_1633126020747/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-partitions-replicas_-_Use_the_legacy_default_sink_properties_for_the_sink_topic_if_default_partitions_and_replicas_were_set/7.1.0_1633126021165/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-partitions-replicas_-_Use_the_legacy_default_sink_properties_for_the_sink_topic_if_default_partitions_and_replicas_were_set/7.1.0_1633126021165/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-partitions-replicas_-_Use_the_legacy_default_sink_properties_for_the_sink_topic_if_default_partitions_and_replicas_were_set/7.1.0_1633126021165/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-partitions-replicas_-_should_copy_partition_and_replica_count_from_source_topic/7.1.0_1633126021149/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-partitions-replicas_-_should_copy_partition_and_replica_count_from_source_topic/7.1.0_1633126021149/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-partitions-replicas_-_should_copy_partition_and_replica_count_from_source_topic/7.1.0_1633126021149/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-topic-naming_-_sink-topic-naming__default_topic_name_is_stream_name,_in_upper-case/7.1.0_1633126021181/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-topic-naming_-_sink-topic-naming__default_topic_name_is_stream_name,_in_upper-case/7.1.0_1633126021181/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-topic-naming_-_sink-topic-naming__default_topic_name_is_stream_name,_in_upper-case/7.1.0_1633126021181/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-topic-naming_-_sink-topic-naming__use_prefixed_default_topic_name_when_property_set/7.1.0_1633126021209/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-topic-naming_-_sink-topic-naming__use_prefixed_default_topic_name_when_property_set/7.1.0_1633126021209/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-topic-naming_-_sink-topic-naming__use_prefixed_default_topic_name_when_property_set/7.1.0_1633126021209/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-topic-naming_-_sink-topic-naming__use_supplied_topic_name,_when_supplied/7.1.0_1633126021195/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-topic-naming_-_sink-topic-naming__use_supplied_topic_name,_when_supplied/7.1.0_1633126021195/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sink-topic-naming_-_sink-topic-naming__use_supplied_topic_name,_when_supplied/7.1.0_1633126021195/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/slice_-_sublist_for_list_of_lists/7.1.0_1633126021234/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/slice_-_sublist_for_list_of_lists/7.1.0_1633126021234/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/slice_-_sublist_for_list_of_lists/7.1.0_1633126021234/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/slice_-_sublist_for_list_of_maps/7.1.0_1633126021247/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/slice_-_sublist_for_list_of_maps/7.1.0_1633126021247/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/slice_-_sublist_for_list_of_maps/7.1.0_1633126021247/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/slice_-_sublist_for_string_list/7.1.0_1633126021220/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/slice_-_sublist_for_string_list/7.1.0_1633126021220/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/slice_-_sublist_for_string_list/7.1.0_1633126021220/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/source-stream_-_create_source_stream/7.1.0_1633126021258/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/source-stream_-_create_source_stream/7.1.0_1633126021258/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/source-stream_-_create_source_stream/7.1.0_1633126021258/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/source-table_-_create_source_table/7.1.0_1633126021270/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/source-table_-_create_source_table/7.1.0_1633126021270/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/source-table_-_create_source_table/7.1.0_1633126021270/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split-to-map_-_split_to_map/7.1.0_1633126021714/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split-to-map_-_split_to_map/7.1.0_1633126021714/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split-to-map_-_split_to_map/7.1.0_1633126021714/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_regexp_split_to_array/7.1.0_1633126021700/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_regexp_split_to_array/7.1.0_1633126021700/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_regexp_split_to_array/7.1.0_1633126021700/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_split_a_message_by_commas_and_display_pos_0_and_2_of_the_returned_array/7.1.0_1633126021669/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_split_a_message_by_commas_and_display_pos_0_and_2_of_the_returned_array/7.1.0_1633126021669/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_split_a_message_by_commas_and_display_pos_0_and_2_of_the_returned_array/7.1.0_1633126021669/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_split_a_message_by_using_the_'$$'_delimiter/7.1.0_1633126021511/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_split_a_message_by_using_the_'$$'_delimiter/7.1.0_1633126021511/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_split_a_message_by_using_the_'$$'_delimiter/7.1.0_1633126021511/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_split_a_message_by_using_the_'.'_delimiter/7.1.0_1633126021490/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_split_a_message_by_using_the_'.'_delimiter/7.1.0_1633126021490/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_split_a_message_by_using_the_'.'_delimiter/7.1.0_1633126021490/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_split_all_characters_by_using_the_''_delimiter/7.1.0_1633126021649/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_split_all_characters_by_using_the_''_delimiter/7.1.0_1633126021649/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/split_-_split_all_characters_by_using_the_''_delimiter/7.1.0_1633126021649/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/standarddeviation_-_stddev_samp_double/7.1.0_1633126022131/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/standarddeviation_-_stddev_samp_double/7.1.0_1633126022131/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/standarddeviation_-_stddev_samp_double/7.1.0_1633126022131/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/standarddeviation_-_stddev_samp_double_map/7.1.0_1633126022335/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/standarddeviation_-_stddev_samp_double_map/7.1.0_1633126022335/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/standarddeviation_-_stddev_samp_double_map/7.1.0_1633126022335/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/standarddeviation_-_stddev_samp_int/7.1.0_1633126021728/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/standarddeviation_-_stddev_samp_int/7.1.0_1633126021728/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/standarddeviation_-_stddev_samp_int/7.1.0_1633126021728/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/standarddeviation_-_stddev_samp_long/7.1.0_1633126021911/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/standarddeviation_-_stddev_samp_long/7.1.0_1633126021911/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/standarddeviation_-_stddev_samp_long/7.1.0_1633126021911/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string-lpad-rpad_-_LPad_with_all_args_from_record_-_JSON/7.1.0_1633126022568/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string-lpad-rpad_-_LPad_with_all_args_from_record_-_JSON/7.1.0_1633126022568/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string-lpad-rpad_-_LPad_with_all_args_from_record_-_JSON/7.1.0_1633126022568/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string-lpad-rpad_-_LPad_with_literal_args_-_JSON/7.1.0_1633126022584/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string-lpad-rpad_-_LPad_with_literal_args_-_JSON/7.1.0_1633126022584/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string-lpad-rpad_-_LPad_with_literal_args_-_JSON/7.1.0_1633126022584/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string-lpad-rpad_-_RPad_with_all_args_from_record_-_JSON/7.1.0_1633126022597/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string-lpad-rpad_-_RPad_with_all_args_from_record_-_JSON/7.1.0_1633126022597/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string-lpad-rpad_-_RPad_with_all_args_from_record_-_JSON/7.1.0_1633126022597/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string-lpad-rpad_-_RPad_with_literal_args_-_JSON/7.1.0_1633126022611/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string-lpad-rpad_-_RPad_with_literal_args_-_JSON/7.1.0_1633126022611/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string-lpad-rpad_-_RPad_with_literal_args_-_JSON/7.1.0_1633126022611/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string_-_LCASE,_UCASE,_TRIM_SUBSTRING/7.1.0_1633126022527/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string_-_LCASE,_UCASE,_TRIM_SUBSTRING/7.1.0_1633126022527/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string_-_LCASE,_UCASE,_TRIM_SUBSTRING/7.1.0_1633126022527/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string_-___operator/7.1.0_1633126022500/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string_-___operator/7.1.0_1633126022500/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/string_-___operator/7.1.0_1633126022500/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/stringdate_-_string_to_date/7.1.0_1633126022553/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/stringdate_-_string_to_date/7.1.0_1633126022553/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/stringdate_-_string_to_date/7.1.0_1633126022553/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/stringtimestamp_-_format_timestamp/7.1.0_1633126022639/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/stringtimestamp_-_format_timestamp/7.1.0_1633126022639/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/stringtimestamp_-_format_timestamp/7.1.0_1633126022639/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/stringtimestamp_-_format_timestamp_with_time_zone/7.1.0_1633126022652/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/stringtimestamp_-_format_timestamp_with_time_zone/7.1.0_1633126022652/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/stringtimestamp_-_format_timestamp_with_time_zone/7.1.0_1633126022652/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/stringtimestamp_-_string_to_timestamp/7.1.0_1633126022625/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/stringtimestamp_-_string_to_timestamp/7.1.0_1633126022625/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/stringtimestamp_-_string_to_timestamp/7.1.0_1633126022625/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/struct-udfs_-_Create_a_struct_from_a_string/7.1.0_1633126022676/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/struct-udfs_-_Create_a_struct_from_a_string/7.1.0_1633126022676/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/struct-udfs_-_Create_a_struct_from_a_string/7.1.0_1633126022676/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/struct-udfs_-_Extract_value_from_struct/7.1.0_1633126022689/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/struct-udfs_-_Extract_value_from_struct/7.1.0_1633126022689/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/struct-udfs_-_Extract_value_from_struct/7.1.0_1633126022689/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/struct-udfs_-_Output_struct/7.1.0_1633126022705/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/struct-udfs_-_Output_struct/7.1.0_1633126022705/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/struct-udfs_-_Output_struct/7.1.0_1633126022705/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/struct-udfs_-_Output_struct_with_errors_in_one_field/7.1.0_1633126022716/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/struct-udfs_-_Output_struct_with_errors_in_one_field/7.1.0_1633126022716/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/struct-udfs_-_Output_struct_with_errors_in_one_field/7.1.0_1633126022716/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_bytes_with_just_pos_-_JSON/7.1.0_1633126022777/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_bytes_with_just_pos_-_JSON/7.1.0_1633126022777/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_bytes_with_just_pos_-_JSON/7.1.0_1633126022777/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_bytes_with_pos_and_length_-_JSON/7.1.0_1633126022836/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_bytes_with_pos_and_length_-_JSON/7.1.0_1633126022836/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_bytes_with_pos_and_length_-_JSON/7.1.0_1633126022836/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_strings_with_just_pos_-_JSON/7.1.0_1633126022734/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_strings_with_just_pos_-_JSON/7.1.0_1633126022734/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_strings_with_just_pos_-_JSON/7.1.0_1633126022734/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_strings_with_just_pos_-_PROTOBUF/7.1.0_1633126022755/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_strings_with_just_pos_-_PROTOBUF/7.1.0_1633126022755/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_strings_with_just_pos_-_PROTOBUF/7.1.0_1633126022755/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_strings_with_pos_and_length_-_JSON/7.1.0_1633126022791/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_strings_with_pos_and_length_-_JSON/7.1.0_1633126022791/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_strings_with_pos_and_length_-_JSON/7.1.0_1633126022791/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_strings_with_pos_and_length_-_PROTOBUF/7.1.0_1633126022814/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_strings_with_pos_and_length_-_PROTOBUF/7.1.0_1633126022814/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_do_substring_with_strings_with_pos_and_length_-_PROTOBUF/7.1.0_1633126022814/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_in_group_by/7.1.0_1633126022883/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_in_group_by/7.1.0_1633126022883/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_in_group_by/7.1.0_1633126022883/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_should_default_to_current_mode_for_new_queries_-_JSON/7.1.0_1633126022858/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_should_default_to_current_mode_for_new_queries_-_JSON/7.1.0_1633126022858/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_should_default_to_current_mode_for_new_queries_-_JSON/7.1.0_1633126022858/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_should_default_to_current_mode_for_new_queries_-_PROTOBUF/7.1.0_1633126022870/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_should_default_to_current_mode_for_new_queries_-_PROTOBUF/7.1.0_1633126022870/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/substring_-_should_default_to_current_mode_for_new_queries_-_PROTOBUF/7.1.0_1633126022870/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_decimal/7.1.0_1633126024060/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_decimal/7.1.0_1633126024060/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_decimal/7.1.0_1633126024060/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_double/7.1.0_1633126023974/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_double/7.1.0_1633126023974/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_double/7.1.0_1633126023974/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_double_map/7.1.0_1633126024198/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_double_map/7.1.0_1633126024198/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_double_map/7.1.0_1633126024198/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_int/7.1.0_1633126023067/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_int/7.1.0_1633126023067/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_int/7.1.0_1633126023067/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_int_left_join_of_table/7.1.0_1633126023245/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_int_left_join_of_table/7.1.0_1633126023245/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_int_left_join_of_table/7.1.0_1633126023245/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_list_of_doubles_into_a_single_double/7.1.0_1633126024768/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_list_of_doubles_into_a_single_double/7.1.0_1633126024768/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_list_of_doubles_into_a_single_double/7.1.0_1633126024768/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_list_of_ints_into_a_single_int/7.1.0_1633126024857/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_list_of_ints_into_a_single_int/7.1.0_1633126024857/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_list_of_ints_into_a_single_int/7.1.0_1633126024857/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_list_of_longs_into_a_single_long/7.1.0_1633126024957/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_list_of_longs_into_a_single_long/7.1.0_1633126024957/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_list_of_longs_into_a_single_long/7.1.0_1633126024957/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_long/7.1.0_1633126023812/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_long/7.1.0_1633126023812/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_long/7.1.0_1633126023812/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_with_constant_double_arg/7.1.0_1633126024636/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_with_constant_double_arg/7.1.0_1633126024636/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_with_constant_double_arg/7.1.0_1633126024636/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_with_constant_int_arg/7.1.0_1633126024350/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_with_constant_int_arg/7.1.0_1633126024350/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_with_constant_int_arg/7.1.0_1633126024350/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_with_constant_long_arg/7.1.0_1633126024512/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_with_constant_long_arg/7.1.0_1633126024512/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/sum_-_sum_with_constant_long_arg/7.1.0_1633126024512/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_drop_events_with_no_key/7.1.0_1633126026029/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_drop_events_with_no_key/7.1.0_1633126026029/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_drop_events_with_no_key/7.1.0_1633126026029/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_drop_out_of_order_event_after_window_end_plus_grace_period_passes/7.1.0_1633126025700/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_drop_out_of_order_event_after_window_end_plus_grace_period_passes/7.1.0_1633126025700/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_drop_out_of_order_event_after_window_end_plus_grace_period_passes/7.1.0_1633126025700/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_emit_at_window_end_if_no_grace_period_given/7.1.0_1633126025473/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_emit_at_window_end_if_no_grace_period_given/7.1.0_1633126025473/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_emit_at_window_end_if_no_grace_period_given/7.1.0_1633126025473/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_emit_final_result_immediately_at_window_end_if_grace_is_specified_as_zero/7.1.0_1633126025096/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_emit_final_result_immediately_at_window_end_if_grace_is_specified_as_zero/7.1.0_1633126025096/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_emit_final_result_immediately_at_window_end_if_grace_is_specified_as_zero/7.1.0_1633126025096/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_handle_null_values/7.1.0_1633126025881/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_handle_null_values/7.1.0_1633126025881/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_handle_null_values/7.1.0_1633126025881/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_include_out_of_order_events_before_window_end_plus_grace_period_passes/7.1.0_1633126025559/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_include_out_of_order_events_before_window_end_plus_grace_period_passes/7.1.0_1633126025559/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_include_out_of_order_events_before_window_end_plus_grace_period_passes/7.1.0_1633126025559/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_not_emit_before_window_end_if_no_grace_period_given/7.1.0_1633126025356/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_not_emit_before_window_end_if_no_grace_period_given/7.1.0_1633126025356/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_not_emit_before_window_end_if_no_grace_period_given/7.1.0_1633126025356/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_not_emit_final_result_before_window_end_if_grace_is_specified_as_zero/7.1.0_1633126025256/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_not_emit_final_result_before_window_end_if_grace_is_specified_as_zero/7.1.0_1633126025256/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_not_emit_final_result_before_window_end_if_grace_is_specified_as_zero/7.1.0_1633126025256/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_support_final_results_for_hopping_windows/7.1.0_1633126026600/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_support_final_results_for_hopping_windows/7.1.0_1633126026600/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_support_final_results_for_hopping_windows/7.1.0_1633126026600/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_support_final_results_for_session_windows/7.1.0_1633126026488/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_support_final_results_for_session_windows/7.1.0_1633126026488/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_support_final_results_for_session_windows/7.1.0_1633126026488/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_support_final_results_for_tumbling_windows/7.1.0_1633126026175/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_support_final_results_for_tumbling_windows/7.1.0_1633126026175/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_support_final_results_for_tumbling_windows/7.1.0_1633126026175/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_support_final_results_for_tumbling_windows_with_large_jump/7.1.0_1633126026330/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_support_final_results_for_tumbling_windows_with_large_jump/7.1.0_1633126026330/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_support_final_results_for_tumbling_windows_with_large_jump/7.1.0_1633126026330/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_suppress_after_a_filter_WHERE_clause/7.1.0_1633126027320/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_suppress_after_a_filter_WHERE_clause/7.1.0_1633126027320/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_suppress_after_a_filter_WHERE_clause/7.1.0_1633126027320/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_suppress_after_join/7.1.0_1633126026957/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_suppress_after_join/7.1.0_1633126026957/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_suppress_after_join/7.1.0_1633126026957/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_suppress_multiple_keys/7.1.0_1633126026774/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_suppress_multiple_keys/7.1.0_1633126026774/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/suppress_-_should_suppress_multiple_keys/7.1.0_1633126026774/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_multiple_table_functions/7.1.0_1633126027865/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_multiple_table_functions/7.1.0_1633126027865/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_multiple_table_functions/7.1.0_1633126027865/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_should_handle_UDTF_parameter_evaluation_that_throws/7.1.0_1633126028111/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_should_handle_UDTF_parameter_evaluation_that_throws/7.1.0_1633126028111/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_should_handle_UDTF_parameter_evaluation_that_throws/7.1.0_1633126028111/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_should_handle_UDTFs_that_throw/7.1.0_1633126028093/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_should_handle_UDTFs_that_throw/7.1.0_1633126028093/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_should_handle_UDTFs_that_throw/7.1.0_1633126028093/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_stream_without_key/7.1.0_1633126028129/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_stream_without_key/7.1.0_1633126028129/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_stream_without_key/7.1.0_1633126028129/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_as_first_select/7.1.0_1633126027795/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_as_first_select/7.1.0_1633126027795/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_as_first_select/7.1.0_1633126027795/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_as_last_select/7.1.0_1633126027776/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_as_last_select/7.1.0_1633126027776/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_as_last_select/7.1.0_1633126027776/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_with_no_alias/7.1.0_1633126027850/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_with_no_alias/7.1.0_1633126027850/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_with_no_alias/7.1.0_1633126027850/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_with_no_other_selected_columns/7.1.0_1633126027834/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_with_no_other_selected_columns/7.1.0_1633126027834/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_with_no_other_selected_columns/7.1.0_1633126027834/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_with_non_selected_columns/7.1.0_1633126027814/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_with_non_selected_columns/7.1.0_1633126027814/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_with_non_selected_columns/7.1.0_1633126027814/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_with_where_clause/7.1.0_1633126028011/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_with_where_clause/7.1.0_1633126028011/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_function_with_where_clause/7.1.0_1633126028011/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_functions_with_complex_expressions/7.1.0_1633126027886/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_functions_with_complex_expressions/7.1.0_1633126027886/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_table_functions_with_complex_expressions/7.1.0_1633126027886/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_array_params/7.1.0_1633126027945/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_array_params/7.1.0_1633126027945/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_array_params/7.1.0_1633126027945/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_key_column/7.1.0_1633126027933/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_key_column/7.1.0_1633126027933/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_key_column/7.1.0_1633126027933/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_map_params/7.1.0_1633126027963/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_map_params/7.1.0_1633126027963/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_map_params/7.1.0_1633126027963/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_return_vals/7.1.0_1633126027981/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_return_vals/7.1.0_1633126027981/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_return_vals/7.1.0_1633126027981/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_simple_params/7.1.0_1633126027918/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_simple_params/7.1.0_1633126027918/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_test_udtf_-_simple_params/7.1.0_1633126027918/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_with_duplicate_columns/7.1.0_1633126028049/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_with_duplicate_columns/7.1.0_1633126028049/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_with_duplicate_columns/7.1.0_1633126028049/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_with_duplicate_udtfs/7.1.0_1633126028074/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_with_duplicate_udtfs/7.1.0_1633126028074/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_with_duplicate_udtfs/7.1.0_1633126028074/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_with_select__/7.1.0_1633126028030/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_with_select__/7.1.0_1633126028030/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table-functions_-_with_select__/7.1.0_1633126028030/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_should_NOT_reuse_source_topic_for_change_log_if_topology_optimizations_are_off/7.1.0_1633126027562/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_should_NOT_reuse_source_topic_for_change_log_if_topology_optimizations_are_off/7.1.0_1633126027562/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_should_NOT_reuse_source_topic_for_change_log_if_topology_optimizations_are_off/7.1.0_1633126027562/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_should_forward_nulls_in_changelog_when_table_not_materialized/7.1.0_1633126027619/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_should_forward_nulls_in_changelog_when_table_not_materialized/7.1.0_1633126027619/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_should_forward_nulls_in_changelog_when_table_not_materialized/7.1.0_1633126027619/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_should_not_blow_up_on_null_key/7.1.0_1633126027697/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_should_not_blow_up_on_null_key/7.1.0_1633126027697/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_should_not_blow_up_on_null_key/7.1.0_1633126027697/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_should_not_reuse_source_topic_for_change_log_by_default/7.1.0_1633126027511/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_should_not_reuse_source_topic_for_change_log_by_default/7.1.0_1633126027511/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_should_not_reuse_source_topic_for_change_log_by_default/7.1.0_1633126027511/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_update-delete/7.1.0_1633126027429/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_update-delete/7.1.0_1633126027429/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/table_-_update-delete/7.1.0_1633126027429/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/test-custom-udaf_-_test_udaf_group_by/7.1.0_1633126028155/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/test-custom-udaf_-_test_udaf_group_by/7.1.0_1633126028155/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/test-custom-udaf_-_test_udaf_group_by/7.1.0_1633126028155/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/test-custom-udaf_-_test_udaf_on_a_table/7.1.0_1633126028317/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/test-custom-udaf_-_test_udaf_on_a_table/7.1.0_1633126028317/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/test-custom-udaf_-_test_udaf_on_a_table/7.1.0_1633126028317/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/test-custom-udaf_-_test_udaf_with_struct/7.1.0_1633126028627/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/test-custom-udaf_-_test_udaf_with_struct/7.1.0_1633126028627/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/test-custom-udaf_-_test_udaf_with_struct/7.1.0_1633126028627/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_AVRO_in_out/7.1.0_1633126028750/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_AVRO_in_out/7.1.0_1633126028750/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_AVRO_in_out/7.1.0_1633126028750/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_DELIMITED_in_out/7.1.0_1633126028739/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_DELIMITED_in_out/7.1.0_1633126028739/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_DELIMITED_in_out/7.1.0_1633126028739/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_GEQ_-_time_time/7.1.0_1633126028961/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_GEQ_-_time_time/7.1.0_1633126028961/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_GEQ_-_time_time/7.1.0_1633126028961/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_JSON_in_out/7.1.0_1633126028763/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_JSON_in_out/7.1.0_1633126028763/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_JSON_in_out/7.1.0_1633126028763/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_LEQ_-_time_time/7.1.0_1633126028946/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_LEQ_-_time_time/7.1.0_1633126028946/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_LEQ_-_time_time/7.1.0_1633126028946/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_PROTOBUF_in_out/7.1.0_1633126028773/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_PROTOBUF_in_out/7.1.0_1633126028773/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_PROTOBUF_in_out/7.1.0_1633126028773/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_between/7.1.0_1633126029022/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_between/7.1.0_1633126029022/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_between/7.1.0_1633126029022/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_casting_-_string_to_time/7.1.0_1633126028802/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_casting_-_string_to_time/7.1.0_1633126028802/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_casting_-_string_to_time/7.1.0_1633126028802/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_casting_-_time_to_string/7.1.0_1633126028786/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_casting_-_time_to_string/7.1.0_1633126028786/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_casting_-_time_to_string/7.1.0_1633126028786/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_casting_-_timestamp_to_time/7.1.0_1633126028822/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_casting_-_timestamp_to_time/7.1.0_1633126028822/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_casting_-_timestamp_to_time/7.1.0_1633126028822/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_equal_-_time_time/7.1.0_1633126028864/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_equal_-_time_time/7.1.0_1633126028864/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_equal_-_time_time/7.1.0_1633126028864/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_filter/7.1.0_1633126029007/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_filter/7.1.0_1633126029007/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_filter/7.1.0_1633126029007/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_greater_than_-_time_string/7.1.0_1633126028992/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_greater_than_-_time_string/7.1.0_1633126028992/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_greater_than_-_time_string/7.1.0_1633126028992/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_greater_than_-_time_time/7.1.0_1633126028976/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_greater_than_-_time_time/7.1.0_1633126028976/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_greater_than_-_time_time/7.1.0_1633126028976/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_is_distinct_-_time_time/7.1.0_1633126028897/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_is_distinct_-_time_time/7.1.0_1633126028897/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_is_distinct_-_time_time/7.1.0_1633126028897/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_less_than_-_time_time/7.1.0_1633126028913/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_less_than_-_time_time/7.1.0_1633126028913/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_less_than_-_time_time/7.1.0_1633126028913/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_not_equal_-_time_time/7.1.0_1633126028882/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_not_equal_-_time_time/7.1.0_1633126028882/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_not_equal_-_time_time/7.1.0_1633126028882/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_time_in_complex_types/7.1.0_1633126028841/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_time_in_complex_types/7.1.0_1633126028841/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_time_in_complex_types/7.1.0_1633126028841/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_time_schema_inference/7.1.0_1633126029037/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_time_schema_inference/7.1.0_1633126029037/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/time_-_time_schema_inference/7.1.0_1633126029037/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timeadd_-_adds/7.1.0_1633126029053/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timeadd_-_adds/7.1.0_1633126029053/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timeadd_-_adds/7.1.0_1633126029053/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timeadd_-_adds_negative_intervals/7.1.0_1633126029064/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timeadd_-_adds_negative_intervals/7.1.0_1633126029064/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timeadd_-_adds_negative_intervals/7.1.0_1633126029064/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timeadd_-_handles_null_values/7.1.0_1633126029080/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timeadd_-_handles_null_values/7.1.0_1633126029080/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timeadd_-_handles_null_values/7.1.0_1633126029080/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_sink_bigint_timestamp_column/7.1.0_1633126029463/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_sink_bigint_timestamp_column/7.1.0_1633126029463/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_sink_bigint_timestamp_column/7.1.0_1633126029463/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_sink_key_column/7.1.0_1633126029479/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_sink_key_column/7.1.0_1633126029479/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_sink_key_column/7.1.0_1633126029479/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_bigint_timestamp_column/7.1.0_1633126029451/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_bigint_timestamp_column/7.1.0_1633126029451/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_bigint_timestamp_column/7.1.0_1633126029451/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_default_timestamp/7.1.0_1633126029388/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_default_timestamp/7.1.0_1633126029388/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_default_timestamp/7.1.0_1633126029388/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_key_string_timestamp_column/7.1.0_1633126029426/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_key_string_timestamp_column/7.1.0_1633126029426/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_key_string_timestamp_column/7.1.0_1633126029426/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_key_timestamp_column/7.1.0_1633126029414/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_key_timestamp_column/7.1.0_1633126029414/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_key_timestamp_column/7.1.0_1633126029414/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_string_timestamp_column/7.1.0_1633126029399/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_string_timestamp_column/7.1.0_1633126029399/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_string_timestamp_column/7.1.0_1633126029399/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_windowed_key_timestamp_column/7.1.0_1633126029439/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_windowed_key_timestamp_column/7.1.0_1633126029439/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-extractor_-_source_windowed_key_timestamp_column/7.1.0_1633126029439/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-to-string_-_millis_to_string_in_join/7.1.0_1633126029811/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-to-string_-_millis_to_string_in_join/7.1.0_1633126029811/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-to-string_-_millis_to_string_in_join/7.1.0_1633126029811/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-to-string_-_millis_to_string_with_valid_zone/7.1.0_1633126029795/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-to-string_-_millis_to_string_with_valid_zone/7.1.0_1633126029795/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-to-string_-_millis_to_string_with_valid_zone/7.1.0_1633126029795/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-to-string_-_timestamp_to_string_with_valid_zone/7.1.0_1633126029986/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-to-string_-_timestamp_to_string_with_valid_zone/7.1.0_1633126029986/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-to-string_-_timestamp_to_string_with_valid_zone/7.1.0_1633126029986/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-to-string_-_timestamp_to_string_without_a_time_zone/7.1.0_1633126030014/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-to-string_-_timestamp_to_string_without_a_time_zone/7.1.0_1633126030014/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp-to-string_-_timestamp_to_string_without_a_time_zone/7.1.0_1633126030014/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_AVRO_in_out/7.1.0_1633126029103/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_AVRO_in_out/7.1.0_1633126029103/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_AVRO_in_out/7.1.0_1633126029103/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_DELIMITED_in_out/7.1.0_1633126029093/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_DELIMITED_in_out/7.1.0_1633126029093/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_DELIMITED_in_out/7.1.0_1633126029093/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_GEQ_-_timestamp_timestamp/7.1.0_1633126029206/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_GEQ_-_timestamp_timestamp/7.1.0_1633126029206/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_GEQ_-_timestamp_timestamp/7.1.0_1633126029206/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_JSON_in_out/7.1.0_1633126029114/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_JSON_in_out/7.1.0_1633126029114/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_JSON_in_out/7.1.0_1633126029114/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_LEQ_-_decimal_decimal/7.1.0_1633126029191/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_LEQ_-_decimal_decimal/7.1.0_1633126029191/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_LEQ_-_decimal_decimal/7.1.0_1633126029191/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_PROTOBUF_in_out/7.1.0_1633126029124/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_PROTOBUF_in_out/7.1.0_1633126029124/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_PROTOBUF_in_out/7.1.0_1633126029124/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_between/7.1.0_1633126029299/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_between/7.1.0_1633126029299/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_between/7.1.0_1633126029299/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_casting_-_string_to_timestamp/7.1.0_1633126029266/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_casting_-_string_to_timestamp/7.1.0_1633126029266/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_casting_-_string_to_timestamp/7.1.0_1633126029266/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_casting_-_timestamp_to_string/7.1.0_1633126029250/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_casting_-_timestamp_to_string/7.1.0_1633126029250/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_casting_-_timestamp_to_string/7.1.0_1633126029250/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_equal_-_timestamp_timestamp/7.1.0_1633126029136/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_equal_-_timestamp_timestamp/7.1.0_1633126029136/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_equal_-_timestamp_timestamp/7.1.0_1633126029136/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_filter/7.1.0_1633126029284/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_filter/7.1.0_1633126029284/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_filter/7.1.0_1633126029284/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_greater_than_-_timestamp_string/7.1.0_1633126029236/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_greater_than_-_timestamp_string/7.1.0_1633126029236/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_greater_than_-_timestamp_string/7.1.0_1633126029236/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_greater_than_-_timestamp_timestamp/7.1.0_1633126029221/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_greater_than_-_timestamp_timestamp/7.1.0_1633126029221/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_greater_than_-_timestamp_timestamp/7.1.0_1633126029221/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_is_distinct_-_decimal_decimal/7.1.0_1633126029163/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_is_distinct_-_decimal_decimal/7.1.0_1633126029163/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_is_distinct_-_decimal_decimal/7.1.0_1633126029163/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_less_than_-_timestamp_timestamp/7.1.0_1633126029177/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_less_than_-_timestamp_timestamp/7.1.0_1633126029177/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_less_than_-_timestamp_timestamp/7.1.0_1633126029177/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_not_equal_-_timestamp_timestamp/7.1.0_1633126029150/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_not_equal_-_timestamp_timestamp/7.1.0_1633126029150/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_not_equal_-_timestamp_timestamp/7.1.0_1633126029150/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_timestamp_in_complex_types/7.1.0_1633126029314/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_timestamp_in_complex_types/7.1.0_1633126029314/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_timestamp_in_complex_types/7.1.0_1633126029314/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_timestamp_schema_inference/7.1.0_1633126029331/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_timestamp_schema_inference/7.1.0_1633126029331/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestamp_-_timestamp_schema_inference/7.1.0_1633126029331/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampadd_-_adds/7.1.0_1633126029347/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampadd_-_adds/7.1.0_1633126029347/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampadd_-_adds/7.1.0_1633126029347/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampadd_-_adds_negative_intervals/7.1.0_1633126029359/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampadd_-_adds_negative_intervals/7.1.0_1633126029359/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampadd_-_adds_negative_intervals/7.1.0_1633126029359/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampadd_-_handles_null_values/7.1.0_1633126029373/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampadd_-_handles_null_values/7.1.0_1633126029373/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampadd_-_handles_null_values/7.1.0_1633126029373/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_Invalid_timestamp_value_should_throw_an_exception/7.1.0_1633126029726/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_Invalid_timestamp_value_should_throw_an_exception/7.1.0_1633126029726/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_Invalid_timestamp_value_should_throw_an_exception/7.1.0_1633126029726/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_override_output_timestamp_for_CSAS/7.1.0_1633126029521/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_override_output_timestamp_for_CSAS/7.1.0_1633126029521/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_override_output_timestamp_for_CSAS/7.1.0_1633126029521/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_override_output_timestamp_for_CSAS_using_a_string_TIMESTAMP_FORMAT/7.1.0_1633126029537/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_override_output_timestamp_for_CSAS_using_a_string_TIMESTAMP_FORMAT/7.1.0_1633126029537/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_override_output_timestamp_for_CSAS_using_a_string_TIMESTAMP_FORMAT/7.1.0_1633126029537/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_override_output_timestamp_for_CTAS/7.1.0_1633126029553/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_override_output_timestamp_for_CTAS/7.1.0_1633126029553/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_override_output_timestamp_for_CTAS/7.1.0_1633126029553/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_override_output_timestamp_for_CTAS_using_a_string_TIMESTAMP_FORMAT/7.1.0_1633126029671/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_override_output_timestamp_for_CTAS_using_a_string_TIMESTAMP_FORMAT/7.1.0_1633126029671/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_override_output_timestamp_for_CTAS_using_a_string_TIMESTAMP_FORMAT/7.1.0_1633126029671/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_timestamp_column_of_source_should_not_influence_sink/7.1.0_1633126029709/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_timestamp_column_of_source_should_not_influence_sink/7.1.0_1633126029709/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_timestamp_column_of_source_should_not_influence_sink/7.1.0_1633126029709/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_timestamp_format/7.1.0_1633126029492/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_timestamp_format/7.1.0_1633126029492/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_timestamp_format/7.1.0_1633126029492/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_with_single_digit_ms_and_numeric_tz/7.1.0_1633126029509/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_with_single_digit_ms_and_numeric_tz/7.1.0_1633126029509/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampformat_-_with_single_digit_ms_and_numeric_tz/7.1.0_1633126029509/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampsub_-_handles_null_values/7.1.0_1633126029778/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampsub_-_handles_null_values/7.1.0_1633126029778/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampsub_-_handles_null_values/7.1.0_1633126029778/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampsub_-_subtracts/7.1.0_1633126029744/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampsub_-_subtracts/7.1.0_1633126029744/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampsub_-_subtracts/7.1.0_1633126029744/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampsub_-_subtracts_negative_intervals/7.1.0_1633126029759/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampsub_-_subtracts_negative_intervals/7.1.0_1633126029759/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timestampsub_-_subtracts_negative_intervals/7.1.0_1633126029759/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timesub_-_handles_null_values/7.1.0_1633126030051/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timesub_-_handles_null_values/7.1.0_1633126030051/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timesub_-_handles_null_values/7.1.0_1633126030051/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timesub_-_subtracts/7.1.0_1633126030026/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timesub_-_subtracts/7.1.0_1633126030026/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timesub_-_subtracts/7.1.0_1633126030026/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timesub_-_subtracts_negative_intervals/7.1.0_1633126030037/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timesub_-_subtracts_negative_intervals/7.1.0_1633126030037/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/timesub_-_subtracts_negative_intervals/7.1.0_1633126030037/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-distinct_-_topk_distinct_decimal/7.1.0_1633126030449/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-distinct_-_topk_distinct_decimal/7.1.0_1633126030449/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-distinct_-_topk_distinct_decimal/7.1.0_1633126030449/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-distinct_-_topk_distinct_integer/7.1.0_1633126030068/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-distinct_-_topk_distinct_integer/7.1.0_1633126030068/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-distinct_-_topk_distinct_integer/7.1.0_1633126030068/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-distinct_-_topk_distinct_long/7.1.0_1633126030163/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-distinct_-_topk_distinct_long/7.1.0_1633126030163/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-distinct_-_topk_distinct_long/7.1.0_1633126030163/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-distinct_-_topk_distinct_string/7.1.0_1633126030281/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-distinct_-_topk_distinct_string/7.1.0_1633126030281/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-distinct_-_topk_distinct_string/7.1.0_1633126030281/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_double_-_AVRO/7.1.0_1633126031343/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_double_-_AVRO/7.1.0_1633126031343/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_double_-_AVRO/7.1.0_1633126031343/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_double_-_JSON/7.1.0_1633126031460/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_double_-_JSON/7.1.0_1633126031460/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_double_-_JSON/7.1.0_1633126031460/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_double_-_PROTOBUF/7.1.0_1633126031588/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_double_-_PROTOBUF/7.1.0_1633126031588/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_double_-_PROTOBUF/7.1.0_1633126031588/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_integer_-_AVRO/7.1.0_1633126030578/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_integer_-_AVRO/7.1.0_1633126030578/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_integer_-_AVRO/7.1.0_1633126030578/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_integer_-_JSON/7.1.0_1633126030680/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_integer_-_JSON/7.1.0_1633126030680/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_integer_-_JSON/7.1.0_1633126030680/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_integer_-_PROTOBUF/7.1.0_1633126030782/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_integer_-_PROTOBUF/7.1.0_1633126030782/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_integer_-_PROTOBUF/7.1.0_1633126030782/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_long_-_AVRO/7.1.0_1633126030909/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_long_-_AVRO/7.1.0_1633126030909/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_long_-_AVRO/7.1.0_1633126030909/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_long_-_JSON/7.1.0_1633126031086/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_long_-_JSON/7.1.0_1633126031086/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_long_-_JSON/7.1.0_1633126031086/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_long_-_PROTOBUF/7.1.0_1633126031192/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_long_-_PROTOBUF/7.1.0_1633126031192/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_long_-_PROTOBUF/7.1.0_1633126031192/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_string_-_AVRO/7.1.0_1633126031737/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_string_-_AVRO/7.1.0_1633126031737/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_string_-_AVRO/7.1.0_1633126031737/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_string_-_JSON/7.1.0_1633126031885/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_string_-_JSON/7.1.0_1633126031885/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_string_-_JSON/7.1.0_1633126031885/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_string_-_PROTOBUF/7.1.0_1633126032008/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_string_-_PROTOBUF/7.1.0_1633126032008/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/topk-group-by_-_topk_string_-_PROTOBUF/7.1.0_1633126032008/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_apply_transform_lambda_function_to_array/7.1.0_1633126032160/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_apply_transform_lambda_function_to_array/7.1.0_1633126032160/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_apply_transform_lambda_function_to_array/7.1.0_1633126032160/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_apply_transform_lambda_function_to_array_of_timestamps/7.1.0_1633126032271/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_apply_transform_lambda_function_to_array_of_timestamps/7.1.0_1633126032271/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_apply_transform_lambda_function_to_array_of_timestamps/7.1.0_1633126032271/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_array_max_on_array_of_arrays/7.1.0_1633126032254/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_array_max_on_array_of_arrays/7.1.0_1633126032254/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_array_max_on_array_of_arrays/7.1.0_1633126032254/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_capitalize_all_array_elements/7.1.0_1633126032195/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_capitalize_all_array_elements/7.1.0_1633126032195/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_capitalize_all_array_elements/7.1.0_1633126032195/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_case_check_on_all_array_elements_-_input__double,_output__string/7.1.0_1633126032215/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_case_check_on_all_array_elements_-_input__double,_output__string/7.1.0_1633126032215/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_case_check_on_all_array_elements_-_input__double,_output__string/7.1.0_1633126032215/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_decimal_absolute_on_all_array_elements/7.1.0_1633126032236/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_decimal_absolute_on_all_array_elements/7.1.0_1633126032236/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_decimal_absolute_on_all_array_elements/7.1.0_1633126032236/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_transform_a_list_into_compatible_mismatching_struct_elements/7.1.0_1633126032311/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_transform_a_list_into_compatible_mismatching_struct_elements/7.1.0_1633126032311/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_transform_a_list_into_compatible_mismatching_struct_elements/7.1.0_1633126032311/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_transform_array_of_struct/7.1.0_1633126032286/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_transform_array_of_struct/7.1.0_1633126032286/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-array_-_transform_array_of_struct/7.1.0_1633126032286/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-map_-_capitalize_all_keys_and_round_values_in_transformed_map/7.1.0_1633126032384/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-map_-_capitalize_all_keys_and_round_values_in_transformed_map/7.1.0_1633126032384/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-map_-_capitalize_all_keys_and_round_values_in_transformed_map/7.1.0_1633126032384/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-map_-_transform_a_map/7.1.0_1633126032343/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-map_-_transform_a_map/7.1.0_1633126032343/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-map_-_transform_a_map/7.1.0_1633126032343/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-map_-_transformed_map_with_duplicate_keys_/7.1.0_1633126032364/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-map_-_transformed_map_with_duplicate_keys_/7.1.0_1633126032364/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/transform-map_-_transformed_map_with_duplicate_keys_/7.1.0_1633126032364/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_import_tumbling_stream/7.1.0_1633126033290/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_import_tumbling_stream/7.1.0_1633126033290/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_import_tumbling_stream/7.1.0_1633126033290/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_min_tumbling/7.1.0_1633126032878/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_min_tumbling/7.1.0_1633126032878/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_min_tumbling/7.1.0_1633126032878/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_non-KAFKA_key_format/7.1.0_1633126033320/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_non-KAFKA_key_format/7.1.0_1633126033320/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_non-KAFKA_key_format/7.1.0_1633126033320/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_out_of_order_-_explicit_grace_period/7.1.0_1633126032607/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_out_of_order_-_explicit_grace_period/7.1.0_1633126032607/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_out_of_order_-_explicit_grace_period/7.1.0_1633126032607/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_out_of_order_-_no_grace_period/7.1.0_1633126032404/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_out_of_order_-_no_grace_period/7.1.0_1633126032404/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_out_of_order_-_no_grace_period/7.1.0_1633126032404/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_topk_tumbling/7.1.0_1633126033013/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_topk_tumbling/7.1.0_1633126033013/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_topk_tumbling/7.1.0_1633126033013/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_topkdistinct_tumbling/7.1.0_1633126033133/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_topkdistinct_tumbling/7.1.0_1633126033133/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/tumbling-windows_-_topkdistinct_tumbling/7.1.0_1633126033133/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udaf_-_support_more_than_one_literal_param/7.1.0_1633126033448/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udaf_-_support_more_than_one_literal_param/7.1.0_1633126033448/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udaf_-_support_more_than_one_literal_param/7.1.0_1633126033448/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_choose_the_exact_match_first/7.1.0_1633126033717/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_choose_the_exact_match_first/7.1.0_1633126033717/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_choose_the_exact_match_first/7.1.0_1633126033717/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_decimal_field_-__double/7.1.0_1633126033698/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_decimal_field_-__double/7.1.0_1633126033698/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_decimal_field_-__double/7.1.0_1633126033698/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_decimal_literal_-__double/7.1.0_1633126033663/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_decimal_literal_-__double/7.1.0_1633126033663/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_decimal_literal_-__double/7.1.0_1633126033663/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_int_field_-__double/7.1.0_1633126033622/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_int_field_-__double/7.1.0_1633126033622/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_int_field_-__double/7.1.0_1633126033622/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_int_literal_-__double/7.1.0_1633126033603/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_int_literal_-__double/7.1.0_1633126033603/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_int_literal_-__double/7.1.0_1633126033603/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_long_field_-__double/7.1.0_1633126033642/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_long_field_-__double/7.1.0_1633126033642/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf-implicit-cast_-_long_field_-__double/7.1.0_1633126033642/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf_-_nested/7.1.0_1633126033547/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf_-_nested/7.1.0_1633126033547/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf_-_nested/7.1.0_1633126033547/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf_-_null_args/7.1.0_1633126033561/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf_-_null_args/7.1.0_1633126033561/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf_-_null_args/7.1.0_1633126033561/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf_-_struct_args/7.1.0_1633126033590/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf_-_struct_args/7.1.0_1633126033590/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf_-_struct_args/7.1.0_1633126033590/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf_-_var_args/7.1.0_1633126033578/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf_-_var_args/7.1.0_1633126033578/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/udf_-_var_args/7.1.0_1633126033578/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/unix-date_-_convert_date_to_days/7.1.0_1633126033742/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/unix-date_-_convert_date_to_days/7.1.0_1633126033742/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/unix-date_-_convert_date_to_days/7.1.0_1633126033742/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/unix-date_-_returns_the_current_date/7.1.0_1633126033729/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/unix-date_-_returns_the_current_date/7.1.0_1633126033729/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/unix-date_-_returns_the_current_date/7.1.0_1633126033729/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/unix-timestamp_-_convert_timezone_to_milliseconds/7.1.0_1633126033766/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/unix-timestamp_-_convert_timezone_to_milliseconds/7.1.0_1633126033766/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/unix-timestamp_-_convert_timezone_to_milliseconds/7.1.0_1633126033766/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/unix-timestamp_-_returns_the_current_timestamp/7.1.0_1633126033754/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/unix-timestamp_-_returns_the_current_timestamp/7.1.0_1633126033754/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/unix-timestamp_-_returns_the_current_timestamp/7.1.0_1633126033754/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_chain_a_call_to_URL_EXTRACT_PARAMETER_with_URL_DECODE_PARAM_-_JSON/7.1.0_1633126033919/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_chain_a_call_to_URL_EXTRACT_PARAMETER_with_URL_DECODE_PARAM_-_JSON/7.1.0_1633126033919/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_chain_a_call_to_URL_EXTRACT_PARAMETER_with_URL_DECODE_PARAM_-_JSON/7.1.0_1633126033919/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_chain_a_call_to_URL_EXTRACT_PARAMETER_with_URL_DECODE_PARAM_-_PROTOBUF/7.1.0_1633126033932/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_chain_a_call_to_URL_EXTRACT_PARAMETER_with_URL_DECODE_PARAM_-_PROTOBUF/7.1.0_1633126033932/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_chain_a_call_to_URL_EXTRACT_PARAMETER_with_URL_DECODE_PARAM_-_PROTOBUF/7.1.0_1633126033932/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_decode_a_url_parameter_using_DECODE_URL_PARAM_-_JSON/7.1.0_1633126033806/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_decode_a_url_parameter_using_DECODE_URL_PARAM_-_JSON/7.1.0_1633126033806/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_decode_a_url_parameter_using_DECODE_URL_PARAM_-_JSON/7.1.0_1633126033806/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_decode_a_url_parameter_using_DECODE_URL_PARAM_-_PROTOBUF/7.1.0_1633126033819/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_decode_a_url_parameter_using_DECODE_URL_PARAM_-_PROTOBUF/7.1.0_1633126033819/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_decode_a_url_parameter_using_DECODE_URL_PARAM_-_PROTOBUF/7.1.0_1633126033819/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_encode_a_url_parameter_using_ENCODE_URL_PARAM_-_JSON/7.1.0_1633126033780/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_encode_a_url_parameter_using_ENCODE_URL_PARAM_-_JSON/7.1.0_1633126033780/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_encode_a_url_parameter_using_ENCODE_URL_PARAM_-_JSON/7.1.0_1633126033780/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_encode_a_url_parameter_using_ENCODE_URL_PARAM_-_PROTOBUF/7.1.0_1633126033793/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_encode_a_url_parameter_using_ENCODE_URL_PARAM_-_PROTOBUF/7.1.0_1633126033793/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_encode_a_url_parameter_using_ENCODE_URL_PARAM_-_PROTOBUF/7.1.0_1633126033793/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_fragment_from_a_URL_using_URL_EXTRACT_FRAGMENT_-_JSON/7.1.0_1633126033834/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_fragment_from_a_URL_using_URL_EXTRACT_FRAGMENT_-_JSON/7.1.0_1633126033834/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_fragment_from_a_URL_using_URL_EXTRACT_FRAGMENT_-_JSON/7.1.0_1633126033834/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_fragment_from_a_URL_using_URL_EXTRACT_FRAGMENT_-_PROTOBUF/7.1.0_1633126033849/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_fragment_from_a_URL_using_URL_EXTRACT_FRAGMENT_-_PROTOBUF/7.1.0_1633126033849/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_fragment_from_a_URL_using_URL_EXTRACT_FRAGMENT_-_PROTOBUF/7.1.0_1633126033849/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_host_from_a_URL_using_URL_EXTRACT_HOST_-_JSON/7.1.0_1633126033862/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_host_from_a_URL_using_URL_EXTRACT_HOST_-_JSON/7.1.0_1633126033862/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_host_from_a_URL_using_URL_EXTRACT_HOST_-_JSON/7.1.0_1633126033862/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_host_from_a_URL_using_URL_EXTRACT_HOST_-_PROTOBUF/7.1.0_1633126033876/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_host_from_a_URL_using_URL_EXTRACT_HOST_-_PROTOBUF/7.1.0_1633126033876/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_host_from_a_URL_using_URL_EXTRACT_HOST_-_PROTOBUF/7.1.0_1633126033876/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_parameter_from_a_URL_using_URL_EXTRACT_PARAMETER_-_JSON/7.1.0_1633126033890/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_parameter_from_a_URL_using_URL_EXTRACT_PARAMETER_-_JSON/7.1.0_1633126033890/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_parameter_from_a_URL_using_URL_EXTRACT_PARAMETER_-_JSON/7.1.0_1633126033890/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_parameter_from_a_URL_using_URL_EXTRACT_PARAMETER_-_PROTOBUF/7.1.0_1633126033905/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_parameter_from_a_URL_using_URL_EXTRACT_PARAMETER_-_PROTOBUF/7.1.0_1633126033905/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_parameter_from_a_URL_using_URL_EXTRACT_PARAMETER_-_PROTOBUF/7.1.0_1633126033905/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_path_from_a_URL_using_URL_EXTRACT_PATH_-_JSON/7.1.0_1633126033946/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_path_from_a_URL_using_URL_EXTRACT_PATH_-_JSON/7.1.0_1633126033946/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_path_from_a_URL_using_URL_EXTRACT_PATH_-_JSON/7.1.0_1633126033946/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_path_from_a_URL_using_URL_EXTRACT_PATH_-_PROTOBUF/7.1.0_1633126033959/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_path_from_a_URL_using_URL_EXTRACT_PATH_-_PROTOBUF/7.1.0_1633126033959/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_path_from_a_URL_using_URL_EXTRACT_PATH_-_PROTOBUF/7.1.0_1633126033959/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_port_from_a_URL_using_URL_EXTRACT_PORT_-_JSON/7.1.0_1633126033971/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_port_from_a_URL_using_URL_EXTRACT_PORT_-_JSON/7.1.0_1633126033971/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_port_from_a_URL_using_URL_EXTRACT_PORT_-_JSON/7.1.0_1633126033971/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_port_from_a_URL_using_URL_EXTRACT_PORT_-_PROTOBUF/7.1.0_1633126033984/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_port_from_a_URL_using_URL_EXTRACT_PORT_-_PROTOBUF/7.1.0_1633126033984/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_port_from_a_URL_using_URL_EXTRACT_PORT_-_PROTOBUF/7.1.0_1633126033984/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_protocol_from_a_URL_using_URL_EXTRACT_PROTOCOL_-_JSON/7.1.0_1633126033996/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_protocol_from_a_URL_using_URL_EXTRACT_PROTOCOL_-_JSON/7.1.0_1633126033996/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_protocol_from_a_URL_using_URL_EXTRACT_PROTOCOL_-_JSON/7.1.0_1633126033996/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_protocol_from_a_URL_using_URL_EXTRACT_PROTOCOL_-_PROTOBUF/7.1.0_1633126034008/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_protocol_from_a_URL_using_URL_EXTRACT_PROTOCOL_-_PROTOBUF/7.1.0_1633126034008/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_protocol_from_a_URL_using_URL_EXTRACT_PROTOCOL_-_PROTOBUF/7.1.0_1633126034008/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_query_from_a_URL_using_URL_EXTRACT_QUERY_-_JSON/7.1.0_1633126034020/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_query_from_a_URL_using_URL_EXTRACT_QUERY_-_JSON/7.1.0_1633126034020/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_query_from_a_URL_using_URL_EXTRACT_QUERY_-_JSON/7.1.0_1633126034020/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_query_from_a_URL_using_URL_EXTRACT_QUERY_-_PROTOBUF/7.1.0_1633126034034/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_query_from_a_URL_using_URL_EXTRACT_QUERY_-_PROTOBUF/7.1.0_1633126034034/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/url_-_extract_a_query_from_a_URL_using_URL_EXTRACT_QUERY_-_PROTOBUF/7.1.0_1633126034034/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/where_-_on_key_column/7.1.0_1633126034047/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/where_-_on_key_column/7.1.0_1633126034047/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/where_-_on_key_column/7.1.0_1633126034047/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/where_-_on_value_column/7.1.0_1633126034060/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/where_-_on_value_column/7.1.0_1633126034060/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/where_-_on_value_column/7.1.0_1633126034060/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_in_expressions/7.1.0_1633126034493/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_in_expressions/7.1.0_1633126034493/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_in_expressions/7.1.0_1633126034493/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_table_hopping/7.1.0_1633126034359/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_table_hopping/7.1.0_1633126034359/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_table_hopping/7.1.0_1633126034359/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_table_session/7.1.0_1633126034073/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_table_session/7.1.0_1633126034073/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_table_session/7.1.0_1633126034073/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_table_tumbling/7.1.0_1633126034184/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_table_tumbling/7.1.0_1633126034184/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_table_tumbling/7.1.0_1633126034184/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_windowed_group_by_-_non-aggregate_window_bounds_in_SELECT/7.1.0_1633126034606/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_windowed_group_by_-_non-aggregate_window_bounds_in_SELECT/7.1.0_1633126034606/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_windowed_group_by_-_non-aggregate_window_bounds_in_SELECT/7.1.0_1633126034606/topology create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_windowed_group_by_-_window_bounds_used_in_expression_with_aggregate_in_SELECT/7.1.0_1633126034729/plan.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_windowed_group_by_-_window_bounds_used_in_expression_with_aggregate_in_SELECT/7.1.0_1633126034729/spec.json create mode 100644 ksqldb-functional-tests/src/test/resources/historical_plans/window-bounds_-_windowed_group_by_-_window_bounds_used_in_expression_with_aggregate_in_SELECT/7.1.0_1633126034729/topology diff --git a/ksqldb-common/src/main/java/io/confluent/ksql/util/KsqlConfig.java b/ksqldb-common/src/main/java/io/confluent/ksql/util/KsqlConfig.java index 70e94cf8e505..39949cc36791 100644 --- a/ksqldb-common/src/main/java/io/confluent/ksql/util/KsqlConfig.java +++ b/ksqldb-common/src/main/java/io/confluent/ksql/util/KsqlConfig.java @@ -438,7 +438,7 @@ public class KsqlConfig extends AbstractConfig { public static final String KSQL_ROWPARTITION_ROWOFFSET_ENABLED = "ksql.rowpartition.rowoffset.enabled"; - public static final Boolean KSQL_ROWPARTITION_ROWOFFSET_DEFAULT = false; + public static final Boolean KSQL_ROWPARTITION_ROWOFFSET_DEFAULT = true; public static final String KSQL_ROWPARTITION_ROWOFFSET_DOC = "Feature flag for ROWPARTITION and ROWOFFSET pseudocolumns. If enabled, new queries will be" + "built with ROWPARTITION and ROWOFFSET pseudocolumns. If off, they will not be."; diff --git a/ksqldb-common/src/test/java/io/confluent/ksql/schema/ksql/LogicalSchemaTest.java b/ksqldb-common/src/test/java/io/confluent/ksql/schema/ksql/LogicalSchemaTest.java index 52d8f12ed352..e07e41534b40 100644 --- a/ksqldb-common/src/test/java/io/confluent/ksql/schema/ksql/LogicalSchemaTest.java +++ b/ksqldb-common/src/test/java/io/confluent/ksql/schema/ksql/LogicalSchemaTest.java @@ -36,6 +36,7 @@ import static org.hamcrest.Matchers.not; import static org.junit.Assert.assertThrows; +import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; import com.google.common.testing.EqualsTester; import io.confluent.ksql.name.ColumnName; @@ -51,7 +52,6 @@ import org.apache.kafka.connect.data.Schema; import org.junit.Test; import org.junit.runner.RunWith; -import org.mockito.Mock; import org.mockito.junit.MockitoJUnitRunner; @SuppressWarnings({"UnstableApiUsage", "unchecked"}) @@ -66,6 +66,7 @@ public class LogicalSchemaTest { private static final ColumnName F0 = ColumnName.of("f0"); private static final ColumnName F1 = ColumnName.of("f1"); private static final ColumnName VALUE = ColumnName.of("value"); + private static final KsqlConfig ksqlConfig = new KsqlConfig(ImmutableMap.of()); private static final LogicalSchema SOME_SCHEMA = LogicalSchema.builder() .valueColumn(F0, STRING) @@ -73,9 +74,6 @@ public class LogicalSchemaTest { .valueColumn(F1, BIGINT) .build(); - @Mock - private KsqlConfig ksqlConfig; - @SuppressWarnings("UnstableApiUsage") @Test public void shouldImplementEqualsProperly() { @@ -413,6 +411,8 @@ public void shouldAddMetaAndKeyColumnsToValue() { .valueColumn(F0, STRING) .valueColumn(F1, BIGINT) .valueColumn(ROWTIME_NAME, BIGINT) + .valueColumn(ROWPARTITION_NAME, INTEGER) + .valueColumn(ROWOFFSET_NAME, BIGINT) .valueColumn(K0, INTEGER) .valueColumn(K1, STRING) .build() @@ -468,6 +468,8 @@ public void shouldAddWindowedMetaAndKeyColumnsToValue() { .valueColumn(F0, STRING) .valueColumn(F1, BIGINT) .valueColumn(ROWTIME_NAME, BIGINT) + .valueColumn(ROWPARTITION_NAME, INTEGER) + .valueColumn(ROWOFFSET_NAME, BIGINT) .valueColumn(K0, INTEGER) .valueColumn(K1, STRING) .valueColumn(WINDOWSTART_NAME, BIGINT) @@ -544,6 +546,8 @@ public void shouldRemoveOthersWhenAddingMetasAndKeyColumns() { .valueColumn(F0, BIGINT) .valueColumn(F1, BIGINT) .valueColumn(ROWTIME_NAME, BIGINT) + .valueColumn(ROWPARTITION_NAME, INTEGER) + .valueColumn(ROWOFFSET_NAME, BIGINT) .valueColumn(K0, INTEGER) .build() )); diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/engine/rewrite/AstSanitizerTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/engine/rewrite/AstSanitizerTest.java index 0b762d96de85..102ec654d450 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/engine/rewrite/AstSanitizerTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/engine/rewrite/AstSanitizerTest.java @@ -22,6 +22,7 @@ import static org.hamcrest.Matchers.is; import static org.junit.Assert.assertThrows; import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; import com.google.common.collect.ImmutableList; import io.confluent.ksql.execution.expression.tree.ArithmeticBinaryExpression; @@ -47,6 +48,7 @@ import io.confluent.ksql.util.MetaStoreFixture; import java.util.List; import java.util.Optional; +import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.junit.MockitoJUnitRunner; diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/engine/rewrite/DataSourceExtractorTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/engine/rewrite/DataSourceExtractorTest.java index 1b3c007f270b..a907c4fa14d7 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/engine/rewrite/DataSourceExtractorTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/engine/rewrite/DataSourceExtractorTest.java @@ -21,6 +21,7 @@ import static org.hamcrest.Matchers.hasSize; import static org.junit.Assert.assertThrows; import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; import io.confluent.ksql.analyzer.Analysis.AliasedDataSource; import io.confluent.ksql.function.FunctionRegistry; diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/execution/ExpressionEvaluatorParityTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/execution/ExpressionEvaluatorParityTest.java index 49aede30fd7d..795c501c290d 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/execution/ExpressionEvaluatorParityTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/execution/ExpressionEvaluatorParityTest.java @@ -65,6 +65,8 @@ public class ExpressionEvaluatorParityTest { private static final String STREAM_NAME = "ORDERS"; private static final long ORDER_ID = 10; private static final long ROW_TIME = 20000; + private static final long ROWPARTITION = 5; + private static final long ROWOFFSET = 100; private static final long ORDER_TIME = 100; private static final String ITEM_ID = "item_id_0"; private static final long ITEM_ITEM_ID = 890; @@ -109,7 +111,7 @@ public void init() { final Map map = ImmutableMap.of("abc", 6.75d, "def", 9.5d); // Note key isn't included first since it's assumed that it's provided as a value ordersRow = GenericRow.genericRow(ORDER_ID, ITEM_ID, itemInfo, ORDER_UNITS, - doubleArray, map, null, TIMESTAMP, TIME, DATE, BYTES, ROW_TIME, ORDER_TIME); + doubleArray, map, null, TIMESTAMP, TIME, DATE, BYTES, ROW_TIME, ROWPARTITION, ROWOFFSET, ORDER_TIME); } @After diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/integration/SelectValueMapperIntegrationTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/integration/SelectValueMapperIntegrationTest.java index 1824c9b349ab..5437daa38de2 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/integration/SelectValueMapperIntegrationTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/integration/SelectValueMapperIntegrationTest.java @@ -70,7 +70,7 @@ public void shouldSelectChosenColumns() { // When: final GenericRow transformed = selectTransformer.transform( NON_WINDOWED_KEY, - genericRow("hi", "bye", 2.0D, "blah", "dar", 1521834663L, 1L), + genericRow("hi", "bye", 2.0D, "blah", "dar", 1521834663L, 0, 0L, 1L), ctx ); @@ -89,7 +89,7 @@ public void shouldApplyUdfsToColumns() { // When: final GenericRow row = selectTransformer.transform( NON_WINDOWED_KEY, - genericRow("foo", "whatever", 6.9D, "boo", "hoo", 1521834663L, 2L), + genericRow("foo", "whatever", 6.9D, "boo", "hoo", 0, 0L, 1521834663L, 2L), ctx ); diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/physical/PhysicalPlanBuilderTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/physical/PhysicalPlanBuilderTest.java index 3c8b4e642a8d..63b54a8beb4b 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/physical/PhysicalPlanBuilderTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/physical/PhysicalPlanBuilderTest.java @@ -195,7 +195,7 @@ public void shouldCreateExecutionPlanForInsert() { Assert.assertEquals(lines[1], "\t\t > [ PROJECT ] | Schema: ROWKEY STRING KEY, COL0 BIGINT, COL1 STRING, COL2 DOUBLE | Logger: INSERTQUERY_1.Project"); Assert.assertEquals(lines[2], - "\t\t\t\t > [ SOURCE ] | Schema: ROWKEY STRING KEY, COL0 BIGINT, COL1 STRING, COL2 DOUBLE, ROWTIME BIGINT, ROWKEY STRING | Logger: INSERTQUERY_1.KsqlTopic.Source"); + "\t\t\t\t > [ SOURCE ] | Schema: ROWKEY STRING KEY, COL0 BIGINT, COL1 STRING, COL2 DOUBLE, ROWTIME BIGINT, ROWPARTITION INTEGER, ROWOFFSET BIGINT, ROWKEY STRING | Logger: INSERTQUERY_1.KsqlTopic.Source"); assertThat(queryMetadataList.get(1), instanceOf(PersistentQueryMetadata.class)); final PersistentQueryMetadata persistentQuery = (PersistentQueryMetadata) queryMetadataList.get(1); @@ -227,7 +227,7 @@ public void shouldCreatePlanForInsertIntoStreamFromStream() { "> [ PROJECT ] | Schema: ROWKEY STRING KEY, COL0 INTEGER")); assertThat(lines[2], containsString( - "> [ SOURCE ] | Schema: ROWKEY STRING KEY, COL0 INTEGER, ROWTIME BIGINT, ROWKEY STRING")); + "> [ SOURCE ] | Schema: ROWKEY STRING KEY, COL0 INTEGER, ROWTIME BIGINT, ROWPARTITION INTEGER, ROWOFFSET BIGINT, ROWKEY STRING")); } @Test diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/LogicalPlannerTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/LogicalPlannerTest.java index 742c015c011e..251004e85797 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/LogicalPlannerTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/LogicalPlannerTest.java @@ -179,6 +179,8 @@ public void shouldAddProjectionWithSourceAliasPrefixForJoinSources() { selectCol("COL4", "T1_COL4"), selectCol("COL5", "T1_COL5"), selectCol("ROWTIME", "T1_ROWTIME"), + selectCol("ROWPARTITION", "T1_ROWPARTITION"), + selectCol("ROWOFFSET", "T1_ROWOFFSET"), selectCol("COL0", "T1_COL0") )); final ProjectNode right = (ProjectNode) joinNode.getSources().get(1); @@ -188,6 +190,8 @@ public void shouldAddProjectionWithSourceAliasPrefixForJoinSources() { selectCol("COL3", "T2_COL3"), selectCol("COL4", "T2_COL4"), selectCol("ROWTIME", "T2_ROWTIME"), + selectCol("ROWPARTITION", "T2_ROWPARTITION"), + selectCol("ROWOFFSET", "T2_ROWOFFSET"), selectCol("COL0", "T2_COL0") )); } diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/AggregateNodeTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/AggregateNodeTest.java index 7c79341f57ca..3b507e2999ca 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/AggregateNodeTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/AggregateNodeTest.java @@ -151,7 +151,7 @@ public void shouldUseConsistentOrderInPreAggSelectMapper() { final ValueTransformerWithKey preAggSelectMapper = valueTransformers.get(1).get(); preAggSelectMapper.init(ctx); final GenericRow result = (GenericRow) preAggSelectMapper - .transform(null, genericRow("1", "2", 3.0D, null, null, "rowtime", 0L)); + .transform(null, genericRow("1", "2", 3.0D, null, null, "rowtime", "rowpartition", "rowoffset", 0L)); assertThat("should select col0, col1, col2, col3", result.values(), contains(0L, "1", "2", 3.0)); } diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/DataSourceNodeTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/DataSourceNodeTest.java index 370218af896b..6ff1c6ff22a8 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/DataSourceNodeTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/DataSourceNodeTest.java @@ -194,6 +194,7 @@ public void before() { givenWindowedSource(false); + when(ksqlConfig.getBoolean(KsqlConfig.KSQL_ROWPARTITION_ROWOFFSET_ENABLED)).thenReturn(true); node = new DataSourceNode( PLAN_NODE_ID, SOME_SOURCE, diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/FinalProjectNodeTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/FinalProjectNodeTest.java index d3c5ab9f0f61..9890a99ece70 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/FinalProjectNodeTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/FinalProjectNodeTest.java @@ -90,6 +90,7 @@ public void setUp() { selects = ImmutableList.of(new SingleColumn(COL0_REF, Optional.of(ALIAS))); + when(ksqlConfig.getBoolean(KsqlConfig.KSQL_ROWPARTITION_ROWOFFSET_ENABLED)).thenReturn(true); projectNode = new FinalProjectNode( NODE_ID, source, diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/JoinNodeTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/JoinNodeTest.java index 78bdd7a8a906..eadb1e70aef4 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/JoinNodeTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/JoinNodeTest.java @@ -123,7 +123,6 @@ public class JoinNodeTest { static { final Properties props = new Properties(); - props.put(KsqlConfig.KSQL_ROWPARTITION_ROWOFFSET_ENABLED, false); ksqlConfig = new KsqlConfig(props); } @@ -647,10 +646,14 @@ public void shouldHaveFullyQualifiedJoinSchemaWithNonSyntheticKey() { .valueColumn(ColumnName.of(LEFT_ALIAS.text() + "_C0"), SqlTypes.BIGINT) .valueColumn(ColumnName.of(LEFT_ALIAS.text() + "_L1"), SqlTypes.STRING) .valueColumn(ColumnName.of(LEFT_ALIAS.text() + "_ROWTIME"), SqlTypes.BIGINT) + .valueColumn(ColumnName.of(LEFT_ALIAS.text() + "_ROWPARTITION"), SqlTypes.INTEGER) + .valueColumn(ColumnName.of(LEFT_ALIAS.text() + "_ROWOFFSET"), SqlTypes.BIGINT) .valueColumn(ColumnName.of(LEFT_ALIAS.text() + "_leftKey"), SqlTypes.BIGINT) .valueColumn(ColumnName.of(RIGHT_ALIAS.text() + "_C0"), SqlTypes.STRING) .valueColumn(ColumnName.of(RIGHT_ALIAS.text() + "_R1"), SqlTypes.BIGINT) .valueColumn(ColumnName.of(RIGHT_ALIAS.text() + "_ROWTIME"), SqlTypes.BIGINT) + .valueColumn(ColumnName.of(RIGHT_ALIAS.text() + "_ROWPARTITION"), SqlTypes.INTEGER) + .valueColumn(ColumnName.of(RIGHT_ALIAS.text() + "_ROWOFFSET"), SqlTypes.BIGINT) .valueColumn(ColumnName.of(RIGHT_ALIAS.text() + "_rightKey"), SqlTypes.BIGINT) .build() )); @@ -671,10 +674,14 @@ public void shouldHaveFullyQualifiedJoinSchemaWithSyntheticKey() { .valueColumn(ColumnName.of(LEFT_ALIAS.text() + "_C0"), SqlTypes.BIGINT) .valueColumn(ColumnName.of(LEFT_ALIAS.text() + "_L1"), SqlTypes.STRING) .valueColumn(ColumnName.of(LEFT_ALIAS.text() + "_ROWTIME"), SqlTypes.BIGINT) + .valueColumn(ColumnName.of(LEFT_ALIAS.text() + "_ROWPARTITION"), SqlTypes.INTEGER) + .valueColumn(ColumnName.of(LEFT_ALIAS.text() + "_ROWOFFSET"), SqlTypes.BIGINT) .valueColumn(ColumnName.of(LEFT_ALIAS.text() + "_leftKey"), SqlTypes.BIGINT) .valueColumn(ColumnName.of(RIGHT_ALIAS.text() + "_C0"), SqlTypes.STRING) .valueColumn(ColumnName.of(RIGHT_ALIAS.text() + "_R1"), SqlTypes.BIGINT) .valueColumn(ColumnName.of(RIGHT_ALIAS.text() + "_ROWTIME"), SqlTypes.BIGINT) + .valueColumn(ColumnName.of(RIGHT_ALIAS.text() + "_ROWPARTITION"), SqlTypes.INTEGER) + .valueColumn(ColumnName.of(RIGHT_ALIAS.text() + "_ROWOFFSET"), SqlTypes.BIGINT) .valueColumn(ColumnName.of(RIGHT_ALIAS.text() + "_rightKey"), SqlTypes.BIGINT) .valueColumn(SYNTH_KEY, SqlTypes.BIGINT) .build() diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/LogicRewriterTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/LogicRewriterTest.java index b45f64c5b767..140471054e85 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/LogicRewriterTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/LogicRewriterTest.java @@ -3,6 +3,7 @@ import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.MatcherAssert.assertThat; import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; import io.confluent.ksql.execution.expression.tree.Expression; import io.confluent.ksql.function.FunctionRegistry; diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/PullQueryRewriterTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/PullQueryRewriterTest.java index 266db3511ac3..5dae35a69d92 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/PullQueryRewriterTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/PullQueryRewriterTest.java @@ -3,6 +3,7 @@ import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.MatcherAssert.assertThat; import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; import io.confluent.ksql.execution.expression.tree.Expression; import io.confluent.ksql.function.FunctionRegistry; diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/QueryProjectNodeTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/QueryProjectNodeTest.java index 55dde4447cd1..674c462f2fd3 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/QueryProjectNodeTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/QueryProjectNodeTest.java @@ -103,6 +103,7 @@ public void setUp() { when(aliasedDataSource.getDataSource()).thenReturn(dataSource); when(dataSource.getKsqlTopic()).thenReturn(ksqlTopic); when(ksqlTopic.getKeyFormat()).thenReturn(keyFormat); + when(ksqlConfig.getBoolean(KsqlConfig.KSQL_ROWPARTITION_ROWOFFSET_ENABLED)).thenReturn(true); } @Test @@ -126,7 +127,8 @@ public void shouldBuildPullQueryIntermediateSchemaSelectKeyNonWindowed() { ); // Then: - final LogicalSchema expectedSchema = INPUT_SCHEMA.withPseudoAndKeyColsInValue(false, ksqlConfig); + final LogicalSchema expectedSchema = QueryLogicalPlanUtil.buildIntermediateSchema( + INPUT_SCHEMA, true, false, true); assertThat(expectedSchema, is(projectNode.getIntermediateSchema())); } @@ -151,7 +153,8 @@ public void shouldBuildPullQueryIntermediateSchemaSelectKeyWindowed() { ); // Then: - final LogicalSchema expectedSchema = INPUT_SCHEMA.withPseudoAndKeyColsInValue(true, ksqlConfig); + final LogicalSchema expectedSchema = QueryLogicalPlanUtil.buildIntermediateSchema( + INPUT_SCHEMA, true, true, true);; assertThat(expectedSchema, is(projectNode.getIntermediateSchema())); } @@ -310,8 +313,9 @@ public void shouldBuildPullQueryOutputSchemaSelectStar() { // Then: final LogicalSchema expectedSchema = INPUT_SCHEMA; - assertThat(expectedSchema.withPseudoAndKeyColsInValue(false, ksqlConfig), - is(projectNode.getIntermediateSchema())); + final LogicalSchema expectedIntermediateSchema = QueryLogicalPlanUtil.buildIntermediateSchema( + INPUT_SCHEMA, true, false, true); + assertThat(expectedIntermediateSchema, is(projectNode.getIntermediateSchema())); assertThat(expectedSchema.withoutPseudoAndKeyColsInValue(), is(projectNode.getSchema())); assertThrows( IllegalStateException.class, diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/UserRepartitionNodeTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/UserRepartitionNodeTest.java index 7aefb4b9cbf0..7e61e62fa1c0 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/UserRepartitionNodeTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/planner/plan/UserRepartitionNodeTest.java @@ -89,6 +89,7 @@ public class UserRepartitionNodeTest { @Before public void setUp() { + when(ksqlConfig.getBoolean(KsqlConfig.KSQL_ROWPARTITION_ROWOFFSET_ENABLED)).thenReturn(true); when(parent.getNodeOutputType()).thenReturn(DataSourceType.KSTREAM); when(parent.getSourceName()).thenReturn(Optional.of(SOURCE_NAME)); when(parent.getSourceNodes()).thenReturn(Stream.of(sourceNode)); diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/schema/ksql/inference/DefaultSchemaInjectorFunctionalTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/schema/ksql/inference/DefaultSchemaInjectorFunctionalTest.java index dc62dfb481b6..5d137e8499ba 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/schema/ksql/inference/DefaultSchemaInjectorFunctionalTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/schema/ksql/inference/DefaultSchemaInjectorFunctionalTest.java @@ -44,6 +44,7 @@ import io.confluent.ksql.util.KsqlParserTestUtil; import org.apache.kafka.connect.data.Schema; import org.apache.kafka.connect.data.SchemaBuilder; +import org.checkerframework.checker.units.qual.K; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -56,6 +57,8 @@ public class DefaultSchemaInjectorFunctionalTest { private static final SqlSchemaFormatter FORMATTER = new SqlSchemaFormatter(IdentifierUtil::needsQuotes); + private static final KsqlConfig ksqlConfig = new KsqlConfig(ImmutableMap.of()); + private static final org.apache.avro.Schema DECIMAL_SCHEMA = parseAvroSchema( "{" @@ -71,6 +74,7 @@ public class DefaultSchemaInjectorFunctionalTest { private AvroSchema avroSchema; @Mock private MetaStore metaStore; + private DefaultSchemaInjector schemaInjector; @Before diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/structured/SchemaKTableTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/structured/SchemaKTableTest.java index 62050ebc75ca..af1ddb905e1a 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/structured/SchemaKTableTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/structured/SchemaKTableTest.java @@ -468,6 +468,8 @@ public void shouldBuildSchemaKTableWithCorrectSchemaForFilter() { .valueColumn(ColumnName.of("COL3"), SqlTypes.DOUBLE) .valueColumn(ColumnName.of("COL4"), SqlTypes.BOOLEAN) .valueColumn(ColumnName.of("ROWTIME"), SqlTypes.BIGINT) + .valueColumn(ColumnName.of("ROWPARTITION"), SqlTypes.INTEGER) + .valueColumn(ColumnName.of("ROWOFFSET"), SqlTypes.BIGINT) .valueColumn(ColumnName.of("COL0"), SqlTypes.BIGINT) .build() )); diff --git a/ksqldb-functional-tests/src/test/java/io/confluent/ksql/test/planned/PlannedTestUtils.java b/ksqldb-functional-tests/src/test/java/io/confluent/ksql/test/planned/PlannedTestUtils.java index d4ff2a4b092b..a3baa393ae41 100644 --- a/ksqldb-functional-tests/src/test/java/io/confluent/ksql/test/planned/PlannedTestUtils.java +++ b/ksqldb-functional-tests/src/test/java/io/confluent/ksql/test/planned/PlannedTestUtils.java @@ -24,7 +24,6 @@ import io.confluent.ksql.test.tools.TestCase; import io.confluent.ksql.test.tools.TestCaseBuilder; import io.confluent.ksql.test.tools.TopologyAndConfigs; -import io.confluent.ksql.util.KsqlConfig; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; @@ -32,7 +31,6 @@ import java.nio.file.Paths; import java.util.ArrayList; import java.util.List; -import java.util.Map; import java.util.Optional; public final class PlannedTestUtils { @@ -49,8 +47,7 @@ public static boolean isPlannedTestCase(final TestCase testCase) { public static boolean isNotExcluded(final TestCase testCase) { // Place temporary logic here to exclude test cases based on feature flags, etc. - final Map props = testCase.properties(); - return !(boolean) props.getOrDefault(KsqlConfig.KSQL_ROWPARTITION_ROWOFFSET_ENABLED, false); + return true; } public static boolean isSamePlan( diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_max/7.1.0_1633125901561/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_max/7.1.0_1633125901561/plan.json new file mode 100644 index 000000000000..72ef2c4879ce --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_max/7.1.0_1633125901561/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, BOOL_ARRAY ARRAY, INT_ARRAY ARRAY, BIGINT_ARRAY ARRAY, DOUBLE_ARRAY ARRAY, STRING_ARRAY ARRAY, DECIMAL_ARRAY ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_MAX(INPUT.BOOL_ARRAY) BOOL_MAX,\n ARRAY_MAX(INPUT.INT_ARRAY) INT_MAX,\n ARRAY_MAX(INPUT.BIGINT_ARRAY) BIGINT_MAX,\n ARRAY_MAX(INPUT.DOUBLE_ARRAY) DOUBLE_MAX,\n ARRAY_MAX(INPUT.STRING_ARRAY) STRING_MAX,\n ARRAY_MAX(INPUT.DECIMAL_ARRAY) DECIMAL_MAX\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `BOOL_MAX` BOOLEAN, `INT_MAX` INTEGER, `BIGINT_MAX` BIGINT, `DOUBLE_MAX` DOUBLE, `STRING_MAX` STRING, `DECIMAL_MAX` DECIMAL(2, 1)", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_MAX(BOOL_ARRAY) AS BOOL_MAX", "ARRAY_MAX(INT_ARRAY) AS INT_MAX", "ARRAY_MAX(BIGINT_ARRAY) AS BIGINT_MAX", "ARRAY_MAX(DOUBLE_ARRAY) AS DOUBLE_MAX", "ARRAY_MAX(STRING_ARRAY) AS STRING_MAX", "ARRAY_MAX(DECIMAL_ARRAY) AS DECIMAL_MAX" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_max/7.1.0_1633125901561/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_max/7.1.0_1633125901561/spec.json new file mode 100644 index 000000000000..5fba2116ce27 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_max/7.1.0_1633125901561/spec.json @@ -0,0 +1,152 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901561, + "path" : "query-validation-tests/array-min-max-sort.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `BOOL_MAX` BOOLEAN, `INT_MAX` INTEGER, `BIGINT_MAX` BIGINT, `DOUBLE_MAX` DOUBLE, `STRING_MAX` STRING, `DECIMAL_MAX` DECIMAL(2, 1)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_max", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "bool_array" : [ false, true, false ], + "int_array" : [ 0, 0, 1, 0, -1 ], + "bigint_array" : [ 234, -123, 345 ], + "double_array" : [ 0.0, 0.1, -12345.678, 0.2, 0.3 ], + "string_array" : [ "foo", "bar" ], + "decimal_array" : [ 1.0, 1.1, 1.2, -0.2, 1.9, 9.0, -9.9, 1.5 ] + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "bool_array" : [ null, false, true ], + "int_array" : [ 0, null, 1, 0, -1 ], + "bigint_array" : [ null, -123, 345 ], + "double_array" : [ 0.0, 0.1, -12345.678, null, 0.3 ], + "string_array" : [ "foo", "fo", "Food", null, "F", "food" ], + "decimal_array" : [ 1.0, 1.1, 1.2, -0.2, null, 9.0 ] + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "bool_array" : [ ], + "int_array" : [ ], + "bigint_array" : [ ], + "double_array" : [ ], + "string_array" : [ ], + "decimal_array" : [ ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "BOOL_MAX" : true, + "INT_MAX" : 1, + "BIGINT_MAX" : 345, + "DOUBLE_MAX" : 0.3, + "STRING_MAX" : "foo", + "DECIMAL_MAX" : 9.0 + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "BOOL_MAX" : true, + "INT_MAX" : 1, + "BIGINT_MAX" : 345, + "DOUBLE_MAX" : 0.3, + "STRING_MAX" : "food", + "DECIMAL_MAX" : 9.0 + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "BOOL_MAX" : null, + "INT_MAX" : null, + "BIGINT_MAX" : null, + "DOUBLE_MAX" : null, + "STRING_MAX" : null, + "DECIMAL_MAX" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, bool_array ARRAY, int_array ARRAY, bigint_array ARRAY, double_array ARRAY, string_array ARRAY, decimal_array ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, array_max(bool_array) as bool_max, array_max(int_array) as int_max, array_max(bigint_array) as bigint_max, array_max(double_array) as double_max, array_max(string_array) as string_max, array_max(decimal_array) as decimal_max FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOL_MAX` BOOLEAN, `INT_MAX` INTEGER, `BIGINT_MAX` BIGINT, `DOUBLE_MAX` DOUBLE, `STRING_MAX` STRING, `DECIMAL_MAX` DECIMAL(2, 1)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_max/7.1.0_1633125901561/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_max/7.1.0_1633125901561/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_max/7.1.0_1633125901561/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_min/7.1.0_1633125901614/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_min/7.1.0_1633125901614/plan.json new file mode 100644 index 000000000000..d5588149cf4b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_min/7.1.0_1633125901614/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, BOOL_ARRAY ARRAY, INT_ARRAY ARRAY, BIGINT_ARRAY ARRAY, DOUBLE_ARRAY ARRAY, STRING_ARRAY ARRAY, DECIMAL_ARRAY ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_MIN(INPUT.BOOL_ARRAY) BOOL_MIN,\n ARRAY_MIN(INPUT.INT_ARRAY) INT_MIN,\n ARRAY_MIN(INPUT.BIGINT_ARRAY) BIGINT_MIN,\n ARRAY_MIN(INPUT.DOUBLE_ARRAY) DOUBLE_MIN,\n ARRAY_MIN(INPUT.STRING_ARRAY) STRING_MIN,\n ARRAY_MIN(INPUT.DECIMAL_ARRAY) DECIMAL_MIN\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `BOOL_MIN` BOOLEAN, `INT_MIN` INTEGER, `BIGINT_MIN` BIGINT, `DOUBLE_MIN` DOUBLE, `STRING_MIN` STRING, `DECIMAL_MIN` DECIMAL(2, 1)", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_MIN(BOOL_ARRAY) AS BOOL_MIN", "ARRAY_MIN(INT_ARRAY) AS INT_MIN", "ARRAY_MIN(BIGINT_ARRAY) AS BIGINT_MIN", "ARRAY_MIN(DOUBLE_ARRAY) AS DOUBLE_MIN", "ARRAY_MIN(STRING_ARRAY) AS STRING_MIN", "ARRAY_MIN(DECIMAL_ARRAY) AS DECIMAL_MIN" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_min/7.1.0_1633125901614/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_min/7.1.0_1633125901614/spec.json new file mode 100644 index 000000000000..fc0638df8be5 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_min/7.1.0_1633125901614/spec.json @@ -0,0 +1,152 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901614, + "path" : "query-validation-tests/array-min-max-sort.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `BOOL_MIN` BOOLEAN, `INT_MIN` INTEGER, `BIGINT_MIN` BIGINT, `DOUBLE_MIN` DOUBLE, `STRING_MIN` STRING, `DECIMAL_MIN` DECIMAL(2, 1)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_min", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "bool_array" : [ false, true, false ], + "int_array" : [ 0, 0, 1, 0, -1 ], + "bigint_array" : [ 234, -123, 345 ], + "double_array" : [ 0.0, 0.1, -12345.678, 0.2, 0.3 ], + "string_array" : [ "foo", "bar" ], + "decimal_array" : [ 1.0, 1.1, 1.2, -0.2, 1.9, 9.0, -9.9, 1.5 ] + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "bool_array" : [ null, false, true ], + "int_array" : [ 0, null, 1, 0, -1 ], + "bigint_array" : [ null, -123, 345 ], + "double_array" : [ 0.0, 0.1, -12345.678, null, 0.3 ], + "string_array" : [ "foo", "fo", "Food", null, "F", "food" ], + "decimal_array" : [ 1.0, 1.1, 1.2, -0.2, null, 9.0 ] + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "bool_array" : [ ], + "int_array" : [ ], + "bigint_array" : [ ], + "double_array" : [ ], + "string_array" : [ ], + "decimal_array" : [ ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "BOOL_MIN" : false, + "INT_MIN" : -1, + "BIGINT_MIN" : -123, + "DOUBLE_MIN" : -12345.678, + "STRING_MIN" : "bar", + "DECIMAL_MIN" : -9.9 + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "BOOL_MIN" : false, + "INT_MIN" : -1, + "BIGINT_MIN" : -123, + "DOUBLE_MIN" : -12345.678, + "STRING_MIN" : "F", + "DECIMAL_MIN" : -0.2 + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "BOOL_MIN" : null, + "INT_MIN" : null, + "BIGINT_MIN" : null, + "DOUBLE_MIN" : null, + "STRING_MIN" : null, + "DECIMAL_MIN" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, bool_array ARRAY, int_array ARRAY, bigint_array ARRAY, double_array ARRAY, string_array ARRAY, decimal_array ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, array_min(bool_array) as bool_min, array_min(int_array) as int_min, array_min(bigint_array) as bigint_min, array_min(double_array) as double_min, array_min(string_array) as string_min, array_min(decimal_array) as decimal_min FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOL_MIN` BOOLEAN, `INT_MIN` INTEGER, `BIGINT_MIN` BIGINT, `DOUBLE_MIN` DOUBLE, `STRING_MIN` STRING, `DECIMAL_MIN` DECIMAL(2, 1)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_min/7.1.0_1633125901614/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_min/7.1.0_1633125901614/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_min/7.1.0_1633125901614/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_asc/7.1.0_1633125901669/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_asc/7.1.0_1633125901669/plan.json new file mode 100644 index 000000000000..5c43d1c8f481 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_asc/7.1.0_1633125901669/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, BOOL_ARRAY ARRAY, INT_ARRAY ARRAY, BIGINT_ARRAY ARRAY, DOUBLE_ARRAY ARRAY, STRING_ARRAY ARRAY, DECIMAL_ARRAY ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_SORT(INPUT.BOOL_ARRAY) BOOLS,\n ARRAY_SORT(INPUT.INT_ARRAY) INTS,\n ARRAY_SORT(INPUT.BIGINT_ARRAY) BIGINTS,\n ARRAY_SORT(INPUT.DOUBLE_ARRAY) DOUBLES,\n ARRAY_SORT(INPUT.STRING_ARRAY) STRINGS,\n ARRAY_SORT(INPUT.DECIMAL_ARRAY) DECIMALS\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `INTS` ARRAY, `BIGINTS` ARRAY, `DOUBLES` ARRAY, `STRINGS` ARRAY, `DECIMALS` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_SORT(BOOL_ARRAY) AS BOOLS", "ARRAY_SORT(INT_ARRAY) AS INTS", "ARRAY_SORT(BIGINT_ARRAY) AS BIGINTS", "ARRAY_SORT(DOUBLE_ARRAY) AS DOUBLES", "ARRAY_SORT(STRING_ARRAY) AS STRINGS", "ARRAY_SORT(DECIMAL_ARRAY) AS DECIMALS" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_asc/7.1.0_1633125901669/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_asc/7.1.0_1633125901669/spec.json new file mode 100644 index 000000000000..88232123cf13 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_asc/7.1.0_1633125901669/spec.json @@ -0,0 +1,174 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901669, + "path" : "query-validation-tests/array-min-max-sort.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `INTS` ARRAY, `BIGINTS` ARRAY, `DOUBLES` ARRAY, `STRINGS` ARRAY, `DECIMALS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_sort_asc", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "bool_array" : [ false, true, false ], + "int_array" : [ 0, 0, 1, 0, -1 ], + "bigint_array" : [ 234, -123, 345 ], + "double_array" : [ 0.0, 0.1, -12345.678, 0.2, 0.3 ], + "string_array" : [ "foo", "bar" ], + "decimal_array" : [ 1.0, 1.1, -0.2, 1.9, 9.0, -9.9 ] + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "bool_array" : [ null, false, true ], + "int_array" : [ 0, null, 1, 0, -1 ], + "bigint_array" : [ null, -123, 345 ], + "double_array" : [ 0.0, 0.1, -12345.678, null, 0.3 ], + "string_array" : [ "foo", "fo", "Food", null, "F", "food" ], + "decimal_array" : [ 1.0, 1.1, 1.2, -0.2, null, 9.0 ] + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "bool_array" : [ ], + "int_array" : [ ], + "bigint_array" : [ ], + "double_array" : [ ], + "string_array" : [ ], + "decimal_array" : [ ] + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "bool_array" : null, + "int_array" : null, + "bigint_array" : null, + "double_array" : null, + "string_array" : null, + "decimal_array" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "BOOLS" : [ false, false, true ], + "INTS" : [ -1, 0, 0, 0, 1 ], + "BIGINTS" : [ -123, 234, 345 ], + "DOUBLES" : [ -12345.678, 0.0, 0.1, 0.2, 0.3 ], + "STRINGS" : [ "bar", "foo" ], + "DECIMALS" : [ -9.9, -0.2, 1.0, 1.1, 1.9, 9.0 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "BOOLS" : [ false, true, null ], + "INTS" : [ -1, 0, 0, 1, null ], + "BIGINTS" : [ -123, 345, null ], + "DOUBLES" : [ -12345.678, 0.0, 0.1, 0.3, null ], + "STRINGS" : [ "F", "Food", "fo", "foo", "food", null ], + "DECIMALS" : [ -0.2, 1.0, 1.1, 1.2, 9.0, null ] + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "BOOLS" : [ ], + "INTS" : [ ], + "BIGINTS" : [ ], + "DOUBLES" : [ ], + "STRINGS" : [ ], + "DECIMALS" : [ ] + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "BOOLS" : null, + "INTS" : null, + "BIGINTS" : null, + "DOUBLES" : null, + "STRINGS" : null, + "DECIMALS" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, bool_array ARRAY, int_array ARRAY, bigint_array ARRAY, double_array ARRAY, string_array ARRAY, decimal_array ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, array_sort(bool_array) as bools, array_sort(int_array) as ints, array_sort(bigint_array) as bigints, array_sort(double_array) as doubles, array_sort(string_array) as strings, array_sort(decimal_array) as decimals FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `INTS` ARRAY, `BIGINTS` ARRAY, `DOUBLES` ARRAY, `STRINGS` ARRAY, `DECIMALS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_asc/7.1.0_1633125901669/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_asc/7.1.0_1633125901669/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_asc/7.1.0_1633125901669/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_desc/7.1.0_1633125901714/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_desc/7.1.0_1633125901714/plan.json new file mode 100644 index 000000000000..371146d1552f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_desc/7.1.0_1633125901714/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, BOOL_ARRAY ARRAY, INT_ARRAY ARRAY, BIGINT_ARRAY ARRAY, DOUBLE_ARRAY ARRAY, STRING_ARRAY ARRAY, DECIMAL_ARRAY ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_SORT(INPUT.BOOL_ARRAY, 'desc') BOOLS,\n ARRAY_SORT(INPUT.INT_ARRAY, 'desc') INTS,\n ARRAY_SORT(INPUT.BIGINT_ARRAY, 'desc') BIGINTS,\n ARRAY_SORT(INPUT.DOUBLE_ARRAY, 'desc') DOUBLES,\n ARRAY_SORT(INPUT.STRING_ARRAY, 'desc') STRINGS,\n ARRAY_SORT(INPUT.DECIMAL_ARRAY, 'desc') DECIMALS\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `INTS` ARRAY, `BIGINTS` ARRAY, `DOUBLES` ARRAY, `STRINGS` ARRAY, `DECIMALS` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_SORT(BOOL_ARRAY, 'desc') AS BOOLS", "ARRAY_SORT(INT_ARRAY, 'desc') AS INTS", "ARRAY_SORT(BIGINT_ARRAY, 'desc') AS BIGINTS", "ARRAY_SORT(DOUBLE_ARRAY, 'desc') AS DOUBLES", "ARRAY_SORT(STRING_ARRAY, 'desc') AS STRINGS", "ARRAY_SORT(DECIMAL_ARRAY, 'desc') AS DECIMALS" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_desc/7.1.0_1633125901714/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_desc/7.1.0_1633125901714/spec.json new file mode 100644 index 000000000000..c9c4efe87f0b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_desc/7.1.0_1633125901714/spec.json @@ -0,0 +1,174 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901714, + "path" : "query-validation-tests/array-min-max-sort.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `INTS` ARRAY, `BIGINTS` ARRAY, `DOUBLES` ARRAY, `STRINGS` ARRAY, `DECIMALS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_sort_desc", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "bool_array" : [ false, true, false ], + "int_array" : [ 0, 0, 1, 0, -1 ], + "bigint_array" : [ 234, -123, 345 ], + "double_array" : [ 0.0, 0.1, -12345.678, 0.2, 0.3 ], + "string_array" : [ "foo", "bar" ], + "decimal_array" : [ 1.0, 1.1, -0.2, 1.9, 9.0, -9.9 ] + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "bool_array" : [ null, false, true ], + "int_array" : [ 0, null, 1, 0, -1 ], + "bigint_array" : [ null, -123, 345 ], + "double_array" : [ 0.0, 0.1, -12345.678, null, 0.3 ], + "string_array" : [ "foo", "fo", "Food", null, "F", "food" ], + "decimal_array" : [ 1.0, 1.1, 1.2, -0.2, null, 9.0 ] + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "bool_array" : [ ], + "int_array" : [ ], + "bigint_array" : [ ], + "double_array" : [ ], + "string_array" : [ ], + "decimal_array" : [ ] + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "bool_array" : null, + "int_array" : null, + "bigint_array" : null, + "double_array" : null, + "string_array" : null, + "decimal_array" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "BOOLS" : [ true, false, false ], + "INTS" : [ 1, 0, 0, 0, -1 ], + "BIGINTS" : [ 345, 234, -123 ], + "DOUBLES" : [ 0.3, 0.2, 0.1, 0.0, -12345.678 ], + "STRINGS" : [ "foo", "bar" ], + "DECIMALS" : [ 9.0, 1.9, 1.1, 1.0, -0.2, -9.9 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "BOOLS" : [ true, false, null ], + "INTS" : [ 1, 0, 0, -1, null ], + "BIGINTS" : [ 345, -123, null ], + "DOUBLES" : [ 0.3, 0.1, 0.0, -12345.678, null ], + "STRINGS" : [ "food", "foo", "fo", "Food", "F", null ], + "DECIMALS" : [ 9.0, 1.2, 1.1, 1.0, -0.2, null ] + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "BOOLS" : [ ], + "INTS" : [ ], + "BIGINTS" : [ ], + "DOUBLES" : [ ], + "STRINGS" : [ ], + "DECIMALS" : [ ] + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "BOOLS" : null, + "INTS" : null, + "BIGINTS" : null, + "DOUBLES" : null, + "STRINGS" : null, + "DECIMALS" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, bool_array ARRAY, int_array ARRAY, bigint_array ARRAY, double_array ARRAY, string_array ARRAY, decimal_array ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, array_sort(bool_array, 'desc') as bools, array_sort(int_array, 'desc') as ints, array_sort(bigint_array, 'desc') as bigints, array_sort(double_array, 'desc') as doubles, array_sort(string_array, 'desc') as strings, array_sort(decimal_array, 'desc') as decimals FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOL_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `INTS` ARRAY, `BIGINTS` ARRAY, `DOUBLES` ARRAY, `STRINGS` ARRAY, `DECIMALS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_desc/7.1.0_1633125901714/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_desc/7.1.0_1633125901714/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-min-max-sort_-_array_sort_desc/7.1.0_1633125901714/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_all_primitive_types/7.1.0_1633125901799/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_all_primitive_types/7.1.0_1633125901799/plan.json new file mode 100644 index 000000000000..3a8e6544148f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_all_primitive_types/7.1.0_1633125901799/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, BOOLS ARRAY, BAD_BOOL BOOLEAN, INTS ARRAY, BAD_INT INTEGER, BIGINTS ARRAY, BAD_BIGINT BIGINT, DOUBLES ARRAY, BAD_DOUBLE DOUBLE, STRINGS ARRAY, BAD_STRING STRING, DECIMALS ARRAY, BAD_DECIMAL DECIMAL(2, 1)) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `BAD_BOOL` BOOLEAN, `INTS` ARRAY, `BAD_INT` INTEGER, `BIGINTS` ARRAY, `BAD_BIGINT` BIGINT, `DOUBLES` ARRAY, `BAD_DOUBLE` DOUBLE, `STRINGS` ARRAY, `BAD_STRING` STRING, `DECIMALS` ARRAY, `BAD_DECIMAL` DECIMAL(2, 1)", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_REMOVE(INPUT.BOOLS, INPUT.BAD_BOOL) BOOLS,\n ARRAY_REMOVE(INPUT.INTS, INPUT.BAD_INT) INTS,\n ARRAY_REMOVE(INPUT.BIGINTS, INPUT.BAD_BIGINT) BIGINTS,\n ARRAY_REMOVE(INPUT.DOUBLES, INPUT.BAD_DOUBLE) DOUBLES,\n ARRAY_REMOVE(INPUT.STRINGS, INPUT.BAD_STRING) STRINGS,\n ARRAY_REMOVE(INPUT.DECIMALS, INPUT.BAD_DECIMAL) DECIMALS\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `INTS` ARRAY, `BIGINTS` ARRAY, `DOUBLES` ARRAY, `STRINGS` ARRAY, `DECIMALS` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `BOOLS` ARRAY, `BAD_BOOL` BOOLEAN, `INTS` ARRAY, `BAD_INT` INTEGER, `BIGINTS` ARRAY, `BAD_BIGINT` BIGINT, `DOUBLES` ARRAY, `BAD_DOUBLE` DOUBLE, `STRINGS` ARRAY, `BAD_STRING` STRING, `DECIMALS` ARRAY, `BAD_DECIMAL` DECIMAL(2, 1)", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_REMOVE(BOOLS, BAD_BOOL) AS BOOLS", "ARRAY_REMOVE(INTS, BAD_INT) AS INTS", "ARRAY_REMOVE(BIGINTS, BAD_BIGINT) AS BIGINTS", "ARRAY_REMOVE(DOUBLES, BAD_DOUBLE) AS DOUBLES", "ARRAY_REMOVE(STRINGS, BAD_STRING) AS STRINGS", "ARRAY_REMOVE(DECIMALS, BAD_DECIMAL) AS DECIMALS" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_all_primitive_types/7.1.0_1633125901799/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_all_primitive_types/7.1.0_1633125901799/spec.json new file mode 100644 index 000000000000..0bf5d75312d1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_all_primitive_types/7.1.0_1633125901799/spec.json @@ -0,0 +1,226 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901799, + "path" : "query-validation-tests/array-remove.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `BAD_BOOL` BOOLEAN, `INTS` ARRAY, `BAD_INT` INTEGER, `BIGINTS` ARRAY, `BAD_BIGINT` BIGINT, `DOUBLES` ARRAY, `BAD_DOUBLE` DOUBLE, `STRINGS` ARRAY, `BAD_STRING` STRING, `DECIMALS` ARRAY, `BAD_DECIMAL` DECIMAL(2, 1)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `INTS` ARRAY, `BIGINTS` ARRAY, `DOUBLES` ARRAY, `STRINGS` ARRAY, `DECIMALS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_remove with all primitive types", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "bools" : [ false, true, false ], + "bad_bool" : true, + "ints" : [ 0, 0, 1, 0, -1 ], + "bad_int" : -1, + "bigints" : [ 345, -123, 345 ], + "bad_bigint" : 345, + "doubles" : [ 0.0, 0.2, -12345.678, 0.2 ], + "bad_double" : 0.2, + "strings" : [ "foo", "bar", "foo" ], + "bad_string" : "foo", + "decimals" : [ 1.0, -0.2, 1.0, -9.9 ], + "bad_decimal" : -0.2 + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "bools" : [ null, false, true ], + "bad_bool" : true, + "ints" : [ 0, null, 1, 0, -1 ], + "bad_int" : -1, + "bigints" : [ null, -123, 345 ], + "bad_bigint" : 345, + "doubles" : [ 0.3, -12345.678, null, 0.3 ], + "bad_double" : 0.3, + "strings" : [ "foo", "Food", null, "food" ], + "bad_string" : "foo", + "decimals" : [ 1.0, 1.1, 1.1, -0.2, null, 1.0 ], + "bad_decimal" : -0.2 + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "bools" : [ null, false, true ], + "bad_bool" : null, + "ints" : [ 0, null, 1, 0, -1 ], + "bad_int" : null, + "bigints" : [ null, -123, 345 ], + "bad_bigint" : null, + "doubles" : [ 0.3, -12345.678, null, 0.3 ], + "bad_double" : null, + "strings" : [ "foo", "Food", null, "food" ], + "bad_string" : null, + "decimals" : [ 1.0, 1.1, 1.1, -0.2, null, 1.0 ], + "bad_decimal" : null + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "bools" : [ ], + "bad_bool" : true, + "ints" : [ ], + "bad_int" : -1, + "bigints" : [ ], + "bad_bigint" : 345, + "doubles" : [ ], + "bad_double" : 0.2, + "strings" : [ ], + "bad_string" : "foo", + "decimals" : [ ], + "bad_decimal" : -0.2 + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "bools" : null, + "bad_bool" : true, + "ints" : null, + "bad_int" : -1, + "bigints" : null, + "bad_bigint" : 345, + "doubles" : null, + "bad_double" : 0.2, + "strings" : null, + "bad_string" : "foo", + "decimals" : null, + "bad_decimal" : -0.2 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "BOOLS" : [ false, false ], + "INTS" : [ 0, 0, 1, 0 ], + "BIGINTS" : [ -123 ], + "DOUBLES" : [ 0.0, -12345.678 ], + "STRINGS" : [ "bar" ], + "DECIMALS" : [ 1.0, 1.0, -9.9 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "BOOLS" : [ null, false ], + "INTS" : [ 0, null, 1, 0 ], + "BIGINTS" : [ null, -123 ], + "DOUBLES" : [ -12345.678, null ], + "STRINGS" : [ "Food", null, "food" ], + "DECIMALS" : [ 1.0, 1.1, 1.1, null, 1.0 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "BOOLS" : [ false, true ], + "INTS" : [ 0, 1, 0, -1 ], + "BIGINTS" : [ -123, 345 ], + "DOUBLES" : [ 0.3, -12345.678, 0.3 ], + "STRINGS" : [ "foo", "Food", "food" ], + "DECIMALS" : [ 1.0, 1.1, 1.1, -0.2, 1.0 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "BOOLS" : [ ], + "INTS" : [ ], + "BIGINTS" : [ ], + "DOUBLES" : [ ], + "STRINGS" : [ ], + "DECIMALS" : [ ] + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "BOOLS" : null, + "INTS" : null, + "BIGINTS" : null, + "DOUBLES" : null, + "STRINGS" : null, + "DECIMALS" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, bools ARRAY, bad_bool BOOLEAN, ints ARRAY, bad_int INT, bigints ARRAY, bad_bigint BIGINT, doubles ARRAY, bad_double DOUBLE, strings ARRAY, bad_string STRING, decimals ARRAY, bad_decimal DECIMAL(2,1)) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_remove(bools, bad_bool) as bools, array_remove(ints, bad_int) as ints, array_remove(bigints, bad_bigint) as bigints, array_remove(doubles, bad_double) as doubles, array_remove(strings, bad_string) as strings, array_remove(decimals, bad_decimal) as decimals FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `BAD_BOOL` BOOLEAN, `INTS` ARRAY, `BAD_INT` INTEGER, `BIGINTS` ARRAY, `BAD_BIGINT` BIGINT, `DOUBLES` ARRAY, `BAD_DOUBLE` DOUBLE, `STRINGS` ARRAY, `BAD_STRING` STRING, `DECIMALS` ARRAY, `BAD_DECIMAL` DECIMAL(2, 1)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `INTS` ARRAY, `BIGINTS` ARRAY, `DOUBLES` ARRAY, `STRINGS` ARRAY, `DECIMALS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_all_primitive_types/7.1.0_1633125901799/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_all_primitive_types/7.1.0_1633125901799/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_all_primitive_types/7.1.0_1633125901799/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_complex_types/7.1.0_1633125901853/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_complex_types/7.1.0_1633125901853/plan.json new file mode 100644 index 000000000000..b28f2abefc50 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_complex_types/7.1.0_1633125901853/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, LISTS ARRAY>, BAD_LIST ARRAY, MAPS ARRAY>, BAD_MAP MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `LISTS` ARRAY>, `BAD_LIST` ARRAY, `MAPS` ARRAY>, `BAD_MAP` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_REMOVE(INPUT.LISTS, INPUT.BAD_LIST) LISTS,\n ARRAY_REMOVE(INPUT.MAPS, INPUT.BAD_MAP) MAPS\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `LISTS` ARRAY>, `MAPS` ARRAY>", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `LISTS` ARRAY>, `BAD_LIST` ARRAY, `MAPS` ARRAY>, `BAD_MAP` MAP", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_REMOVE(LISTS, BAD_LIST) AS LISTS", "ARRAY_REMOVE(MAPS, BAD_MAP) AS MAPS" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_complex_types/7.1.0_1633125901853/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_complex_types/7.1.0_1633125901853/spec.json new file mode 100644 index 000000000000..3de5b6fc1c75 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_complex_types/7.1.0_1633125901853/spec.json @@ -0,0 +1,179 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901853, + "path" : "query-validation-tests/array-remove.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `LISTS` ARRAY>, `BAD_LIST` ARRAY, `MAPS` ARRAY>, `BAD_MAP` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `LISTS` ARRAY>, `MAPS` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_remove with complex types", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "lists" : [ [ "foo", "bar", "foo" ], [ "foo", "bar", "foo" ], [ "foo" ] ], + "bad_list" : [ "foo", "bar", "foo" ], + "maps" : [ { + "apple" : 1, + "banana" : 2 + }, { + "apple" : 3, + "banana" : 4 + }, { + "apple" : 1, + "banana" : 2 + } ], + "bad_map" : { + "apple" : 1, + "banana" : 2 + } + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "lists" : [ null, [ "foo" ], [ "foo", "bar" ] ], + "bad_list" : [ "foo" ], + "maps" : [ { + "apple" : 1, + "banana" : 2 + }, { + "apple" : 3, + "banana" : 4 + }, null ], + "bad_map" : { + "apple" : 1, + "banana" : 2 + } + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "lists" : [ ], + "bad_list" : [ "foo" ], + "maps" : [ ] + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "lists" : null, + "bad_list" : [ "foo" ], + "maps" : null, + "bad_map" : { + "apple" : 1, + "banana" : 2 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "LISTS" : [ [ "foo" ] ], + "MAPS" : [ { + "apple" : 3, + "banana" : 4 + } ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "LISTS" : [ null, [ "foo", "bar" ] ], + "MAPS" : [ { + "apple" : 3, + "banana" : 4 + }, null ] + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "LISTS" : [ ], + "MAPS" : [ ] + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "LISTS" : null, + "MAPS" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, lists ARRAY>, bad_list ARRAY, maps ARRAY>, bad_map MAP) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_remove(lists, bad_list) as lists, array_remove(maps, bad_map) as maps FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `LISTS` ARRAY>, `BAD_LIST` ARRAY, `MAPS` ARRAY>, `BAD_MAP` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `LISTS` ARRAY>, `MAPS` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_complex_types/7.1.0_1633125901853/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_complex_types/7.1.0_1633125901853/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_complex_types/7.1.0_1633125901853/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_literal_array/7.1.0_1633125901765/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_literal_array/7.1.0_1633125901765/plan.json new file mode 100644 index 000000000000..730d43625e70 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_literal_array/7.1.0_1633125901765/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, DUMMY INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_REMOVE(ARRAY['foo', 'bar', 'foo'], 'foo') A1\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_REMOVE(ARRAY['foo', 'bar', 'foo'], 'foo') AS A1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_literal_array/7.1.0_1633125901765/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_literal_array/7.1.0_1633125901765/spec.json new file mode 100644 index 000000000000..0dbf77922a11 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_literal_array/7.1.0_1633125901765/spec.json @@ -0,0 +1,110 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901765, + "path" : "query-validation-tests/array-remove.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_remove with literal array", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "dummy" : 0 + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "dummy" : 0 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "A1" : [ "bar" ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "A1" : [ "bar" ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, dummy INTEGER) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_remove(array['foo', 'bar', 'foo'], 'foo') as a1 FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_literal_array/7.1.0_1633125901765/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_literal_array/7.1.0_1633125901765/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-remove_-_array_remove_with_literal_array/7.1.0_1633125901765/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_both_null/7.1.0_1633125902336/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_both_null/7.1.0_1633125902336/plan.json new file mode 100644 index 000000000000..e68adb98184f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_both_null/7.1.0_1633125902336/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, ARR1 ARRAY, ARR2 ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_CONCAT(INPUT.ARR1, INPUT.ARR2) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_CONCAT(ARR1, ARR2) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_both_null/7.1.0_1633125902336/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_both_null/7.1.0_1633125902336/spec.json new file mode 100644 index 000000000000..44fec0a23785 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_both_null/7.1.0_1633125902336/spec.json @@ -0,0 +1,112 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902336, + "path" : "query-validation-tests/array-set-functions.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_concat with both null", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : [ 1, -2, 0 ] + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "arr1" : null, + "arr2" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : [ 0, 0, 1, 0, -1, 1, -2, 0 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "RESULT" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, arr1 ARRAY, arr2 ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_concat(arr1, arr2) as result FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_both_null/7.1.0_1633125902336/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_both_null/7.1.0_1633125902336/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_both_null/7.1.0_1633125902336/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_left_null/7.1.0_1633125902295/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_left_null/7.1.0_1633125902295/plan.json new file mode 100644 index 000000000000..e68adb98184f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_left_null/7.1.0_1633125902295/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, ARR1 ARRAY, ARR2 ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_CONCAT(INPUT.ARR1, INPUT.ARR2) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_CONCAT(ARR1, ARR2) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_left_null/7.1.0_1633125902295/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_left_null/7.1.0_1633125902295/spec.json new file mode 100644 index 000000000000..f8db16d73e35 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_left_null/7.1.0_1633125902295/spec.json @@ -0,0 +1,112 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902295, + "path" : "query-validation-tests/array-set-functions.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_concat with left null", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : [ 1, -2, 0 ] + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "arr1" : null, + "arr2" : [ 1, -2 ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : [ 0, 0, 1, 0, -1, 1, -2, 0 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "RESULT" : [ 1, -2 ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, arr1 ARRAY, arr2 ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_concat(arr1, arr2) as result FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_left_null/7.1.0_1633125902295/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_left_null/7.1.0_1633125902295/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_left_null/7.1.0_1633125902295/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_literals/7.1.0_1633125902185/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_literals/7.1.0_1633125902185/plan.json new file mode 100644 index 000000000000..9cb4e0a509c0 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_literals/7.1.0_1633125902185/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, DUMMY INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_CONCAT(ARRAY['foo', 'bar', 'foo'], ARRAY['foo', 'baz']) A1\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_CONCAT(ARRAY['foo', 'bar', 'foo'], ARRAY['foo', 'baz']) AS A1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_literals/7.1.0_1633125902185/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_literals/7.1.0_1633125902185/spec.json new file mode 100644 index 000000000000..a2c7c0ae7ebc --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_literals/7.1.0_1633125902185/spec.json @@ -0,0 +1,110 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902185, + "path" : "query-validation-tests/array-set-functions.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_concat with literals", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "dummy" : 0 + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "dummy" : 0 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "A1" : [ "foo", "bar", "foo", "foo", "baz" ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "A1" : [ "foo", "bar", "foo", "foo", "baz" ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, dummy INTEGER) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_concat(array['foo', 'bar', 'foo'], array['foo', 'baz']) as a1 FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_literals/7.1.0_1633125902185/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_literals/7.1.0_1633125902185/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_literals/7.1.0_1633125902185/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_primitive_type/7.1.0_1633125902273/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_primitive_type/7.1.0_1633125902273/plan.json new file mode 100644 index 000000000000..e68adb98184f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_primitive_type/7.1.0_1633125902273/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, ARR1 ARRAY, ARR2 ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_CONCAT(INPUT.ARR1, INPUT.ARR2) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_CONCAT(ARR1, ARR2) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_primitive_type/7.1.0_1633125902273/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_primitive_type/7.1.0_1633125902273/spec.json new file mode 100644 index 000000000000..87289101bc63 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_primitive_type/7.1.0_1633125902273/spec.json @@ -0,0 +1,164 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902273, + "path" : "query-validation-tests/array-set-functions.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_concat with primitive type", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : [ 1, -2, 0 ] + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : [ 3, 4 ] + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "arr1" : [ ], + "arr2" : [ 1, -2 ] + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : [ ] + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "arr1" : null, + "arr2" : [ 1, -2 ] + } + }, { + "topic" : "test_topic", + "key" : "r6", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : [ 0, 0, 1, 0, -1, 1, -2, 0 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "RESULT" : [ 0, 0, 1, 0, -1, 3, 4 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "RESULT" : [ 1, -2 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "RESULT" : [ 0, 0, 1, 0, -1 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "RESULT" : [ 1, -2 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r6", + "value" : { + "RESULT" : [ 0, 0, 1, 0, -1 ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, arr1 ARRAY, arr2 ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_concat(arr1, arr2) as result FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_primitive_type/7.1.0_1633125902273/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_primitive_type/7.1.0_1633125902273/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_primitive_type/7.1.0_1633125902273/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_right_null/7.1.0_1633125902316/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_right_null/7.1.0_1633125902316/plan.json new file mode 100644 index 000000000000..e68adb98184f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_right_null/7.1.0_1633125902316/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, ARR1 ARRAY, ARR2 ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_CONCAT(INPUT.ARR1, INPUT.ARR2) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_CONCAT(ARR1, ARR2) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_right_null/7.1.0_1633125902316/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_right_null/7.1.0_1633125902316/spec.json new file mode 100644 index 000000000000..4ba02645cbfb --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_right_null/7.1.0_1633125902316/spec.json @@ -0,0 +1,112 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902316, + "path" : "query-validation-tests/array-set-functions.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_concat with right null", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : [ 1, -2, 0 ] + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "arr1" : [ 0, 3, 2 ], + "arr2" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : [ 0, 0, 1, 0, -1, 1, -2, 0 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "RESULT" : [ 0, 3, 2 ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, arr1 ARRAY, arr2 ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_concat(arr1, arr2) as result FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_right_null/7.1.0_1633125902316/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_right_null/7.1.0_1633125902316/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_concat_with_right_null/7.1.0_1633125902316/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_complex_types/7.1.0_1633125901970/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_complex_types/7.1.0_1633125901970/plan.json new file mode 100644 index 000000000000..665bfe4ed343 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_complex_types/7.1.0_1633125901970/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, LISTS ARRAY>, MAPS ARRAY>) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `LISTS` ARRAY>, `MAPS` ARRAY>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_DISTINCT(INPUT.LISTS) LISTS_DIST,\n ARRAY_DISTINCT(INPUT.MAPS) MAPS_DIST\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `LISTS_DIST` ARRAY>, `MAPS_DIST` ARRAY>", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `LISTS` ARRAY>, `MAPS` ARRAY>", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_DISTINCT(LISTS) AS LISTS_DIST", "ARRAY_DISTINCT(MAPS) AS MAPS_DIST" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_complex_types/7.1.0_1633125901970/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_complex_types/7.1.0_1633125901970/spec.json new file mode 100644 index 000000000000..a66a09d1511f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_complex_types/7.1.0_1633125901970/spec.json @@ -0,0 +1,192 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901970, + "path" : "query-validation-tests/array-set-functions.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `LISTS` ARRAY>, `MAPS` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `LISTS_DIST` ARRAY>, `MAPS_DIST` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_distinct with complex types", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "lists" : [ [ "foo", "bar", "foo" ], [ "foo", "bar", "foo" ], [ "foo" ] ], + "maps" : [ { + "apple" : 1, + "banana" : 2 + }, { + "apple" : 3, + "banana" : 4 + }, { + "apple" : 1, + "banana" : 2 + } ] + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "lists" : [ [ "foo", null ], [ "foo", "bar" ], [ "foo" ] ], + "maps" : [ { + "apple" : null, + "banana" : 2 + }, { + "apple" : 1, + "banana" : 2 + }, { + "apple" : 1, + "banana" : 2 + } ] + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "lists" : [ null, [ "foo" ] ], + "maps" : [ { + "apple" : 1, + "banana" : 2 + }, null ] + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "lists" : [ ], + "maps" : [ ] + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "lists" : null, + "maps" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "LISTS_DIST" : [ [ "foo", "bar", "foo" ], [ "foo" ] ], + "MAPS_DIST" : [ { + "apple" : 1, + "banana" : 2 + }, { + "apple" : 3, + "banana" : 4 + } ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "LISTS_DIST" : [ [ "foo", null ], [ "foo", "bar" ], [ "foo" ] ], + "MAPS_DIST" : [ { + "apple" : null, + "banana" : 2 + }, { + "apple" : 1, + "banana" : 2 + } ] + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "LISTS_DIST" : [ null, [ "foo" ] ], + "MAPS_DIST" : [ { + "apple" : 1, + "banana" : 2 + }, null ] + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "LISTS_DIST" : [ ], + "MAPS_DIST" : [ ] + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "LISTS_DIST" : null, + "MAPS_DIST" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, lists ARRAY>, maps ARRAY>) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_distinct(lists) as lists_dist, array_distinct(maps) as maps_dist FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `LISTS` ARRAY>, `MAPS` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `LISTS_DIST` ARRAY>, `MAPS_DIST` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_complex_types/7.1.0_1633125901970/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_complex_types/7.1.0_1633125901970/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_complex_types/7.1.0_1633125901970/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_literals/7.1.0_1633125901884/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_literals/7.1.0_1633125901884/plan.json new file mode 100644 index 000000000000..0badd0ddfd67 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_literals/7.1.0_1633125901884/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, DUMMY INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_DISTINCT(ARRAY['foo', 'bar', 'foo']) A1\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_DISTINCT(ARRAY['foo', 'bar', 'foo']) AS A1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_literals/7.1.0_1633125901884/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_literals/7.1.0_1633125901884/spec.json new file mode 100644 index 000000000000..46a98c8e4450 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_literals/7.1.0_1633125901884/spec.json @@ -0,0 +1,110 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901884, + "path" : "query-validation-tests/array-set-functions.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_distinct with literals", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "dummy" : 0 + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "dummy" : 0 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "A1" : [ "foo", "bar" ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "A1" : [ "foo", "bar" ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, dummy INTEGER) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_distinct(array['foo', 'bar', 'foo']) as a1 FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_literals/7.1.0_1633125901884/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_literals/7.1.0_1633125901884/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_literals/7.1.0_1633125901884/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_primitive_types/7.1.0_1633125901919/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_primitive_types/7.1.0_1633125901919/plan.json new file mode 100644 index 000000000000..399b44e6e9b1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_primitive_types/7.1.0_1633125901919/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, BOOLS ARRAY, INTS ARRAY, BIGINTS ARRAY, DOUBLES ARRAY, STRINGS ARRAY, DECIMALS ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `INTS` ARRAY, `BIGINTS` ARRAY, `DOUBLES` ARRAY, `STRINGS` ARRAY, `DECIMALS` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_DISTINCT(INPUT.BOOLS) BOOLS_DIST,\n ARRAY_DISTINCT(INPUT.INTS) INTS_DIST,\n ARRAY_DISTINCT(INPUT.BIGINTS) BIGINTS_DIST,\n ARRAY_DISTINCT(INPUT.DOUBLES) DOUBLES_DIST,\n ARRAY_DISTINCT(INPUT.STRINGS) STRINGS_DIST,\n ARRAY_DISTINCT(INPUT.DECIMALS) DECIMALS_DIST\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `BOOLS_DIST` ARRAY, `INTS_DIST` ARRAY, `BIGINTS_DIST` ARRAY, `DOUBLES_DIST` ARRAY, `STRINGS_DIST` ARRAY, `DECIMALS_DIST` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `BOOLS` ARRAY, `INTS` ARRAY, `BIGINTS` ARRAY, `DOUBLES` ARRAY, `STRINGS` ARRAY, `DECIMALS` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_DISTINCT(BOOLS) AS BOOLS_DIST", "ARRAY_DISTINCT(INTS) AS INTS_DIST", "ARRAY_DISTINCT(BIGINTS) AS BIGINTS_DIST", "ARRAY_DISTINCT(DOUBLES) AS DOUBLES_DIST", "ARRAY_DISTINCT(STRINGS) AS STRINGS_DIST", "ARRAY_DISTINCT(DECIMALS) AS DECIMALS_DIST" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_primitive_types/7.1.0_1633125901919/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_primitive_types/7.1.0_1633125901919/spec.json new file mode 100644 index 000000000000..c42cdd080918 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_primitive_types/7.1.0_1633125901919/spec.json @@ -0,0 +1,174 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901919, + "path" : "query-validation-tests/array-set-functions.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `INTS` ARRAY, `BIGINTS` ARRAY, `DOUBLES` ARRAY, `STRINGS` ARRAY, `DECIMALS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `BOOLS_DIST` ARRAY, `INTS_DIST` ARRAY, `BIGINTS_DIST` ARRAY, `DOUBLES_DIST` ARRAY, `STRINGS_DIST` ARRAY, `DECIMALS_DIST` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_distinct with primitive types", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "bools" : [ false, true, false ], + "ints" : [ 0, 0, 1, 0, -1 ], + "bigints" : [ 345, -123, 345 ], + "doubles" : [ 0.0, 0.2, -12345.678, 0.2 ], + "strings" : [ "foo", "bar", "foo" ], + "decimals" : [ 1.0, -0.2, 1.0, -9.9 ] + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "bools" : [ null, false, true ], + "ints" : [ 0, null, 1, 0, -1 ], + "bigints" : [ null, -123 ], + "doubles" : [ 0.3, -12345.678, null, 0.3 ], + "strings" : [ "foo", "Food", null, "food" ], + "decimals" : [ 1.0, 1.1, 1.1, -0.2, null, 1.0 ] + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "bools" : [ ], + "ints" : [ ], + "bigints" : [ ], + "doubles" : [ ], + "strings" : [ ], + "decimals" : [ ] + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "bools" : null, + "ints" : null, + "bigints" : null, + "doubles" : null, + "strings" : null, + "decimals" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "BOOLS_DIST" : [ false, true ], + "INTS_DIST" : [ 0, 1, -1 ], + "BIGINTS_DIST" : [ 345, -123 ], + "DOUBLES_DIST" : [ 0.0, 0.2, -12345.678 ], + "STRINGS_DIST" : [ "foo", "bar" ], + "DECIMALS_DIST" : [ 1.0, -0.2, -9.9 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "BOOLS_DIST" : [ null, false, true ], + "INTS_DIST" : [ 0, null, 1, -1 ], + "BIGINTS_DIST" : [ null, -123 ], + "DOUBLES_DIST" : [ 0.3, -12345.678, null ], + "STRINGS_DIST" : [ "foo", "Food", null, "food" ], + "DECIMALS_DIST" : [ 1.0, 1.1, -0.2, null ] + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "BOOLS_DIST" : [ ], + "INTS_DIST" : [ ], + "BIGINTS_DIST" : [ ], + "DOUBLES_DIST" : [ ], + "STRINGS_DIST" : [ ], + "DECIMALS_DIST" : [ ] + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "BOOLS_DIST" : null, + "INTS_DIST" : null, + "BIGINTS_DIST" : null, + "DOUBLES_DIST" : null, + "STRINGS_DIST" : null, + "DECIMALS_DIST" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, bools ARRAY, ints ARRAY, bigints ARRAY, doubles ARRAY, strings ARRAY, decimals ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_distinct(bools) as bools_dist, array_distinct(ints) as ints_dist, array_distinct(bigints) as bigints_dist, array_distinct(doubles) as doubles_dist, array_distinct(strings) as strings_dist, array_distinct(decimals) as decimals_dist FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOLS` ARRAY, `INTS` ARRAY, `BIGINTS` ARRAY, `DOUBLES` ARRAY, `STRINGS` ARRAY, `DECIMALS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOLS_DIST` ARRAY, `INTS_DIST` ARRAY, `BIGINTS_DIST` ARRAY, `DOUBLES_DIST` ARRAY, `STRINGS_DIST` ARRAY, `DECIMALS_DIST` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_primitive_types/7.1.0_1633125901919/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_primitive_types/7.1.0_1633125901919/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_distinct_with_primitive_types/7.1.0_1633125901919/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_literals/7.1.0_1633125902001/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_literals/7.1.0_1633125902001/plan.json new file mode 100644 index 000000000000..f0ff7080884e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_literals/7.1.0_1633125902001/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, DUMMY INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_EXCEPT(ARRAY['foo', 'bar', 'foo'], ARRAY['bar', 'baz']) A1\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_EXCEPT(ARRAY['foo', 'bar', 'foo'], ARRAY['bar', 'baz']) AS A1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_literals/7.1.0_1633125902001/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_literals/7.1.0_1633125902001/spec.json new file mode 100644 index 000000000000..e9f3218b6814 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_literals/7.1.0_1633125902001/spec.json @@ -0,0 +1,110 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902001, + "path" : "query-validation-tests/array-set-functions.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_except with literals", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "dummy" : 0 + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "dummy" : 0 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "A1" : [ "foo" ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "A1" : [ "foo" ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, dummy INTEGER) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_except(array['foo', 'bar', 'foo'], array['bar', 'baz']) as a1 FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_literals/7.1.0_1633125902001/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_literals/7.1.0_1633125902001/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_literals/7.1.0_1633125902001/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_primitive_type/7.1.0_1633125902037/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_primitive_type/7.1.0_1633125902037/plan.json new file mode 100644 index 000000000000..77665a799be3 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_primitive_type/7.1.0_1633125902037/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, INTS ARRAY, INT_EXCEPTIONS ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `INTS` ARRAY, `INT_EXCEPTIONS` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_EXCEPT(INPUT.INTS, INPUT.INT_EXCEPTIONS) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `INTS` ARRAY, `INT_EXCEPTIONS` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_EXCEPT(INTS, INT_EXCEPTIONS) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_primitive_type/7.1.0_1633125902037/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_primitive_type/7.1.0_1633125902037/spec.json new file mode 100644 index 000000000000..7f546f12ec0d --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_primitive_type/7.1.0_1633125902037/spec.json @@ -0,0 +1,164 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902037, + "path" : "query-validation-tests/array-set-functions.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `INTS` ARRAY, `INT_EXCEPTIONS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_except with primitive type", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "ints" : [ 0, 0, 1, 0, -1 ], + "int_exceptions" : [ 1, -2 ] + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "ints" : [ 0, 0, 1, 0, -1 ], + "int_exceptions" : [ 1, -1, 0 ] + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "ints" : [ ], + "int_exceptions" : [ 1, -2 ] + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "ints" : [ 0, 0, 1, 0, -1 ], + "int_exceptions" : [ ] + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "ints" : null, + "int_exceptions" : [ 1, -2 ] + } + }, { + "topic" : "test_topic", + "key" : "r6", + "value" : { + "ints" : [ 0, 0, 1, 0, -1 ], + "int_exceptions" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : [ 0, -1 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "RESULT" : [ ] + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "RESULT" : [ ] + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "RESULT" : [ 0, 1, -1 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r6", + "value" : { + "RESULT" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, ints ARRAY, int_exceptions ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_except(ints, int_exceptions) as result FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `INTS` ARRAY, `INT_EXCEPTIONS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_primitive_type/7.1.0_1633125902037/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_primitive_type/7.1.0_1633125902037/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_except_with_primitive_type/7.1.0_1633125902037/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_literals/7.1.0_1633125902062/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_literals/7.1.0_1633125902062/plan.json new file mode 100644 index 000000000000..8bc503d4240d --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_literals/7.1.0_1633125902062/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, DUMMY INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_INTERSECT(ARRAY['foo', 'bar', 'foo'], ARRAY['foo', 'baz']) A1\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_INTERSECT(ARRAY['foo', 'bar', 'foo'], ARRAY['foo', 'baz']) AS A1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_literals/7.1.0_1633125902062/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_literals/7.1.0_1633125902062/spec.json new file mode 100644 index 000000000000..7f8464e15546 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_literals/7.1.0_1633125902062/spec.json @@ -0,0 +1,110 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902062, + "path" : "query-validation-tests/array-set-functions.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_intersect with literals", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "dummy" : 0 + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "dummy" : 0 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "A1" : [ "foo" ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "A1" : [ "foo" ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, dummy INTEGER) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_intersect(array['foo', 'bar', 'foo'], array['foo', 'baz']) as a1 FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_literals/7.1.0_1633125902062/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_literals/7.1.0_1633125902062/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_literals/7.1.0_1633125902062/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_primitive_type/7.1.0_1633125902097/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_primitive_type/7.1.0_1633125902097/plan.json new file mode 100644 index 000000000000..437ec218be39 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_primitive_type/7.1.0_1633125902097/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, ARR1 ARRAY, ARR2 ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_INTERSECT(INPUT.ARR1, INPUT.ARR2) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_INTERSECT(ARR1, ARR2) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_primitive_type/7.1.0_1633125902097/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_primitive_type/7.1.0_1633125902097/spec.json new file mode 100644 index 000000000000..d397318ff81f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_primitive_type/7.1.0_1633125902097/spec.json @@ -0,0 +1,164 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902097, + "path" : "query-validation-tests/array-set-functions.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_intersect with primitive type", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : [ 1, -2, 0 ] + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : [ 3, 4 ] + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "arr1" : [ ], + "arr2" : [ 1, -2 ] + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : [ ] + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "arr1" : null, + "arr2" : [ 1, -2 ] + } + }, { + "topic" : "test_topic", + "key" : "r6", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : [ 0, 1 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "RESULT" : [ ] + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "RESULT" : [ ] + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "RESULT" : [ ] + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r6", + "value" : { + "RESULT" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, arr1 ARRAY, arr2 ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_intersect(arr1, arr2) as result FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_primitive_type/7.1.0_1633125902097/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_primitive_type/7.1.0_1633125902097/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_intersect_with_primitive_type/7.1.0_1633125902097/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_literals/7.1.0_1633125902121/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_literals/7.1.0_1633125902121/plan.json new file mode 100644 index 000000000000..0bcc77c6121f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_literals/7.1.0_1633125902121/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, DUMMY INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_UNION(ARRAY['foo', 'bar', 'foo'], ARRAY['foo', 'baz']) A1\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_UNION(ARRAY['foo', 'bar', 'foo'], ARRAY['foo', 'baz']) AS A1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_literals/7.1.0_1633125902121/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_literals/7.1.0_1633125902121/spec.json new file mode 100644 index 000000000000..c43d4c40af68 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_literals/7.1.0_1633125902121/spec.json @@ -0,0 +1,110 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902121, + "path" : "query-validation-tests/array-set-functions.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_union with literals", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "dummy" : 0 + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "dummy" : 0 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "A1" : [ "foo", "bar", "baz" ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "A1" : [ "foo", "bar", "baz" ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, dummy INTEGER) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_union(array['foo', 'bar', 'foo'], array['foo', 'baz']) as a1 FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `DUMMY` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `A1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_literals/7.1.0_1633125902121/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_literals/7.1.0_1633125902121/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_literals/7.1.0_1633125902121/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_primitive_type/7.1.0_1633125902156/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_primitive_type/7.1.0_1633125902156/plan.json new file mode 100644 index 000000000000..5e2785119bfb --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_primitive_type/7.1.0_1633125902156/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, ARR1 ARRAY, ARR2 ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_UNION(INPUT.ARR1, INPUT.ARR2) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_UNION(ARR1, ARR2) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_primitive_type/7.1.0_1633125902156/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_primitive_type/7.1.0_1633125902156/spec.json new file mode 100644 index 000000000000..2c07017ef589 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_primitive_type/7.1.0_1633125902156/spec.json @@ -0,0 +1,164 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902156, + "path" : "query-validation-tests/array-set-functions.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_union with primitive type", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : [ 1, -2, 0 ] + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : [ 3, 4 ] + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "arr1" : [ ], + "arr2" : [ 1, -2 ] + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : [ ] + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "arr1" : null, + "arr2" : [ 1, -2 ] + } + }, { + "topic" : "test_topic", + "key" : "r6", + "value" : { + "arr1" : [ 0, 0, 1, 0, -1 ], + "arr2" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : [ 0, 1, -1, -2 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "RESULT" : [ 0, 1, -1, 3, 4 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "RESULT" : [ 1, -2 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "RESULT" : [ 0, 1, -1 ] + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r6", + "value" : { + "RESULT" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, arr1 ARRAY, arr2 ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, array_union(arr1, arr2) as result FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ARR1` ARRAY, `ARR2` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_primitive_type/7.1.0_1633125902156/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_primitive_type/7.1.0_1633125902156/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array-set-functions_-_array_union_with_primitive_type/7.1.0_1633125902156/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES/7.1.0_1633125901013/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES/7.1.0_1633125901013/plan.json new file mode 100644 index 000000000000..2a8ea1274f96 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES/7.1.0_1633125901013/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, F0 INTEGER, F1 INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `F0` INTEGER, `F1` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n GENERATE_SERIES(TEST.F0, TEST.F1) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `F0` INTEGER, `F1` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "GENERATE_SERIES(F0, F1) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES/7.1.0_1633125901013/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES/7.1.0_1633125901013/spec.json new file mode 100644 index 000000000000..d0fe66c83fe5 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES/7.1.0_1633125901013/spec.json @@ -0,0 +1,138 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901013, + "path" : "query-validation-tests/array.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `F0` INTEGER, `F1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "GENERATE_SERIES", + "inputs" : [ { + "topic" : "test_topic", + "key" : "1", + "value" : { + "F0" : 0, + "F1" : 3 + } + }, { + "topic" : "test_topic", + "key" : "1", + "value" : { + "F0" : -2, + "F1" : 1 + } + }, { + "topic" : "test_topic", + "key" : "1", + "value" : { + "F0" : 4, + "F1" : 3 + } + }, { + "topic" : "test_topic", + "key" : "1", + "value" : { + "F0" : 4, + "F1" : 0 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "KSQL_COL_0" : [ 0, 1, 2, 3 ] + } + }, { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "KSQL_COL_0" : [ -2, -1, 0, 1 ] + } + }, { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "KSQL_COL_0" : [ 4, 3 ] + } + }, { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "KSQL_COL_0" : [ 4, 3, 2, 1, 0 ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, F0 INT, F1 INT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, GENERATE_SERIES(F0, F1) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `F0` INTEGER, `F1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES/7.1.0_1633125901013/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES/7.1.0_1633125901013/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES/7.1.0_1633125901013/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES_with_step/7.1.0_1633125901047/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES_with_step/7.1.0_1633125901047/plan.json new file mode 100644 index 000000000000..88a927c25d86 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES_with_step/7.1.0_1633125901047/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, F0 INTEGER, F1 INTEGER, F2 INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `F0` INTEGER, `F1` INTEGER, `F2` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n GENERATE_SERIES(TEST.F0, TEST.F1, TEST.F2) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `F0` INTEGER, `F1` INTEGER, `F2` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "GENERATE_SERIES(F0, F1, F2) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES_with_step/7.1.0_1633125901047/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES_with_step/7.1.0_1633125901047/spec.json new file mode 100644 index 000000000000..fb1cfbd31637 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES_with_step/7.1.0_1633125901047/spec.json @@ -0,0 +1,170 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901047, + "path" : "query-validation-tests/array.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `F0` INTEGER, `F1` INTEGER, `F2` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "GENERATE_SERIES with step", + "inputs" : [ { + "topic" : "test_topic", + "key" : "1", + "value" : { + "F0" : 0, + "F1" : 3, + "F2" : 1 + } + }, { + "topic" : "test_topic", + "key" : "1", + "value" : { + "F0" : -2, + "F1" : 1, + "F2" : 2 + } + }, { + "topic" : "test_topic", + "key" : "1", + "value" : { + "F0" : 0, + "F1" : 9, + "F2" : 3 + } + }, { + "topic" : "test_topic", + "key" : "1", + "value" : { + "F0" : 3, + "F1" : 0, + "F2" : -1 + } + }, { + "topic" : "test_topic", + "key" : "1", + "value" : { + "F0" : 1, + "F1" : -2, + "F2" : -2 + } + }, { + "topic" : "test_topic", + "key" : "1", + "value" : { + "F0" : 9, + "F1" : 0, + "F2" : -3 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "KSQL_COL_0" : [ 0, 1, 2, 3 ] + } + }, { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "KSQL_COL_0" : [ -2, 0 ] + } + }, { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "KSQL_COL_0" : [ 0, 3, 6, 9 ] + } + }, { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "KSQL_COL_0" : [ 3, 2, 1, 0 ] + } + }, { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "KSQL_COL_0" : [ 1, -1 ] + } + }, { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "KSQL_COL_0" : [ 9, 6, 3, 0 ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, F0 INT, F1 INT, F2 INT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, GENERATE_SERIES(F0, F1, F2) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `F0` INTEGER, `F1` INTEGER, `F2` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES_with_step/7.1.0_1633125901047/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES_with_step/7.1.0_1633125901047/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_GENERATE_SERIES_with_step/7.1.0_1633125901047/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_Output_array_with_an_error/7.1.0_1633125901207/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_Output_array_with_an_error/7.1.0_1633125901207/plan.json new file mode 100644 index 000000000000..5c5be7a14170 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_Output_array_with_an_error/7.1.0_1633125901207/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (K STRING KEY, VAL STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`K` STRING KEY, `VAL` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.K K,\n ARRAY[44, STRINGTODATE(TEST.VAL, 'yyyyMMdd')] VALUE\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`K` STRING KEY, `VALUE` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`K` STRING KEY, `VAL` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "ARRAY[44, STRINGTODATE(VAL, 'yyyyMMdd')] AS VALUE" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_Output_array_with_an_error/7.1.0_1633125901207/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_Output_array_with_an_error/7.1.0_1633125901207/spec.json new file mode 100644 index 000000000000..f1212b8b1bfd --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_Output_array_with_an_error/7.1.0_1633125901207/spec.json @@ -0,0 +1,100 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901207, + "path" : "query-validation-tests/array.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`K` STRING KEY, `VAL` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` STRING KEY, `VALUE` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "Output array with an error", + "inputs" : [ { + "topic" : "test_topic", + "key" : "1", + "value" : { + "val" : "foo" + }, + "timestamp" : 0 + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "VALUE" : [ 44, null ] + }, + "timestamp" : 0 + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM test (K STRING KEY, val VARCHAR) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT K, ARRAY[44, stringtodate(val, 'yyyyMMdd')] AS VALUE FROM test;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`K` STRING KEY, `VALUE` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`K` STRING KEY, `VAL` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_Output_array_with_an_error/7.1.0_1633125901207/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_Output_array_with_an_error/7.1.0_1633125901207/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_Output_array_with_an_error/7.1.0_1633125901207/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_primitives/7.1.0_1633125901079/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_primitives/7.1.0_1633125901079/plan.json new file mode 100644 index 000000000000..8e49db29c5af --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_primitives/7.1.0_1633125901079/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, BOOLEAN_ARRAY ARRAY, INT_ARRAY ARRAY, BIGINT_ARRAY ARRAY, DOUBLE_ARRAY ARRAY, STRING_ARRAY ARRAY, DECIMAL_ARRAY ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `BOOLEAN_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_LENGTH(INPUT.BOOLEAN_ARRAY) BOOLEAN_LEN,\n ARRAY_LENGTH(INPUT.INT_ARRAY) INT_LEN,\n ARRAY_LENGTH(INPUT.BIGINT_ARRAY) BIGINT_LEN,\n ARRAY_LENGTH(INPUT.DOUBLE_ARRAY) DOUBLE_LEN,\n ARRAY_LENGTH(INPUT.STRING_ARRAY) STRING_LEN,\n ARRAY_LENGTH(INPUT.DECIMAL_ARRAY) DECIMAL_LEN\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `BOOLEAN_LEN` INTEGER, `INT_LEN` INTEGER, `BIGINT_LEN` INTEGER, `DOUBLE_LEN` INTEGER, `STRING_LEN` INTEGER, `DECIMAL_LEN` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `BOOLEAN_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_LENGTH(BOOLEAN_ARRAY) AS BOOLEAN_LEN", "ARRAY_LENGTH(INT_ARRAY) AS INT_LEN", "ARRAY_LENGTH(BIGINT_ARRAY) AS BIGINT_LEN", "ARRAY_LENGTH(DOUBLE_ARRAY) AS DOUBLE_LEN", "ARRAY_LENGTH(STRING_ARRAY) AS STRING_LEN", "ARRAY_LENGTH(DECIMAL_ARRAY) AS DECIMAL_LEN" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_primitives/7.1.0_1633125901079/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_primitives/7.1.0_1633125901079/spec.json new file mode 100644 index 000000000000..c1a54def3267 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_primitives/7.1.0_1633125901079/spec.json @@ -0,0 +1,123 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901079, + "path" : "query-validation-tests/array.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `BOOLEAN_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `BOOLEAN_LEN` INTEGER, `INT_LEN` INTEGER, `BIGINT_LEN` INTEGER, `DOUBLE_LEN` INTEGER, `STRING_LEN` INTEGER, `DECIMAL_LEN` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_length - primitives", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "boolean_array" : [ true ], + "int_array" : [ -1, 0 ], + "bigint_array" : [ -1, 0, 1 ], + "double_array" : [ 0.0, 0.1, 0.2, 0.3 ], + "string_array" : [ "a", "b", "c", "d", "e" ], + "decimal_array" : [ 1.0, 1.1, 1.2, 1.3, 1.4, 1.5 ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "BOOLEAN_LEN" : 1, + "INT_LEN" : 2, + "BIGINT_LEN" : 3, + "DOUBLE_LEN" : 4, + "STRING_LEN" : 5, + "DECIMAL_LEN" : 6 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "BOOLEAN_LEN" : null, + "INT_LEN" : null, + "BIGINT_LEN" : null, + "DOUBLE_LEN" : null, + "STRING_LEN" : null, + "DECIMAL_LEN" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, boolean_array ARRAY, int_array ARRAY, bigint_array ARRAY, double_array ARRAY, string_array ARRAY, decimal_array ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, ARRAY_LENGTH(boolean_array) AS boolean_len, ARRAY_LENGTH(int_array) AS int_len, ARRAY_LENGTH(bigint_array) AS bigint_len, ARRAY_LENGTH(double_array) AS double_len, ARRAY_LENGTH(string_array) AS string_len , ARRAY_LENGTH(decimal_array) AS decimal_len FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOLEAN_ARRAY` ARRAY, `INT_ARRAY` ARRAY, `BIGINT_ARRAY` ARRAY, `DOUBLE_ARRAY` ARRAY, `STRING_ARRAY` ARRAY, `DECIMAL_ARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOLEAN_LEN` INTEGER, `INT_LEN` INTEGER, `BIGINT_LEN` INTEGER, `DOUBLE_LEN` INTEGER, `STRING_LEN` INTEGER, `DECIMAL_LEN` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_primitives/7.1.0_1633125901079/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_primitives/7.1.0_1633125901079/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_primitives/7.1.0_1633125901079/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_structured/7.1.0_1633125901142/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_structured/7.1.0_1633125901142/plan.json new file mode 100644 index 000000000000..efe44cab88c3 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_structured/7.1.0_1633125901142/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, ARRAY_ARRAY ARRAY>, MAP_ARRAY ARRAY>, STRUCT_ARRAY ARRAY>) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `ARRAY_ARRAY` ARRAY>, `MAP_ARRAY` ARRAY>, `STRUCT_ARRAY` ARRAY>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n ARRAY_LENGTH(INPUT.ARRAY_ARRAY) ARRAY_LEN,\n ARRAY_LENGTH(INPUT.MAP_ARRAY) MAP_LEN,\n ARRAY_LENGTH(INPUT.STRUCT_ARRAY) STRUCT_LEN\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `ARRAY_LEN` INTEGER, `MAP_LEN` INTEGER, `STRUCT_LEN` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `ARRAY_ARRAY` ARRAY>, `MAP_ARRAY` ARRAY>, `STRUCT_ARRAY` ARRAY>", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_LENGTH(ARRAY_ARRAY) AS ARRAY_LEN", "ARRAY_LENGTH(MAP_ARRAY) AS MAP_LEN", "ARRAY_LENGTH(STRUCT_ARRAY) AS STRUCT_LEN" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_structured/7.1.0_1633125901142/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_structured/7.1.0_1633125901142/spec.json new file mode 100644 index 000000000000..dda143f06652 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_structured/7.1.0_1633125901142/spec.json @@ -0,0 +1,114 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901142, + "path" : "query-validation-tests/array.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `ARRAY_ARRAY` ARRAY>, `MAP_ARRAY` ARRAY>, `STRUCT_ARRAY` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `ARRAY_LEN` INTEGER, `MAP_LEN` INTEGER, `STRUCT_LEN` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array_length - structured", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "array_array" : [ [ ] ], + "map_array" : [ { }, { } ], + "struct_array" : [ { }, { }, { } ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "ARRAY_LEN" : 1, + "MAP_LEN" : 2, + "STRUCT_LEN" : 3 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "ARRAY_LEN" : null, + "MAP_LEN" : null, + "STRUCT_LEN" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, array_array ARRAY>, map_array ARRAY>, struct_array ARRAY>) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, ARRAY_LENGTH(array_array) AS array_len, ARRAY_LENGTH(map_array) AS map_len, ARRAY_LENGTH(struct_array) AS struct_len FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ARRAY_ARRAY` ARRAY>, `MAP_ARRAY` ARRAY>, `STRUCT_ARRAY` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ARRAY_LEN` INTEGER, `MAP_LEN` INTEGER, `STRUCT_LEN` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_structured/7.1.0_1633125901142/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_structured/7.1.0_1633125901142/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_array_length_-_structured/7.1.0_1633125901142/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_entries_sorted/7.1.0_1633125898233/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_entries_sorted/7.1.0_1633125898233/plan.json new file mode 100644 index 000000000000..52f7dd97b4c2 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_entries_sorted/7.1.0_1633125898233/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, INTMAP MAP, BIGINTMAP MAP, DOUBLEMAP MAP, BOOLEANMAP MAP, STRINGMAP MAP, NULLMAP MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `INTMAP` MAP, `BIGINTMAP` MAP, `DOUBLEMAP` MAP, `BOOLEANMAP` MAP, `STRINGMAP` MAP, `NULLMAP` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n ENTRIES(TEST.INTMAP, true) KSQL_COL_0,\n ENTRIES(TEST.BIGINTMAP, true) KSQL_COL_1,\n ENTRIES(TEST.DOUBLEMAP, true) KSQL_COL_2,\n ENTRIES(TEST.BOOLEANMAP, true) KSQL_COL_3,\n ENTRIES(TEST.STRINGMAP, true) KSQL_COL_4,\n ENTRIES(TEST.NULLMAP, true) KSQL_COL_5\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY>, `KSQL_COL_1` ARRAY>, `KSQL_COL_2` ARRAY>, `KSQL_COL_3` ARRAY>, `KSQL_COL_4` ARRAY>, `KSQL_COL_5` ARRAY>", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `INTMAP` MAP, `BIGINTMAP` MAP, `DOUBLEMAP` MAP, `BOOLEANMAP` MAP, `STRINGMAP` MAP, `NULLMAP` MAP", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ENTRIES(INTMAP, true) AS KSQL_COL_0", "ENTRIES(BIGINTMAP, true) AS KSQL_COL_1", "ENTRIES(DOUBLEMAP, true) AS KSQL_COL_2", "ENTRIES(BOOLEANMAP, true) AS KSQL_COL_3", "ENTRIES(STRINGMAP, true) AS KSQL_COL_4", "ENTRIES(NULLMAP, true) AS KSQL_COL_5" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_entries_sorted/7.1.0_1633125898233/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_entries_sorted/7.1.0_1633125898233/spec.json new file mode 100644 index 000000000000..ea45c32605d8 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_entries_sorted/7.1.0_1633125898233/spec.json @@ -0,0 +1,173 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125898233, + "path" : "query-validation-tests/array.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `INTMAP` MAP, `BIGINTMAP` MAP, `DOUBLEMAP` MAP, `BOOLEANMAP` MAP, `STRINGMAP` MAP, `NULLMAP` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY>, `KSQL_COL_1` ARRAY>, `KSQL_COL_2` ARRAY>, `KSQL_COL_3` ARRAY>, `KSQL_COL_4` ARRAY>, `KSQL_COL_5` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "entries sorted", + "inputs" : [ { + "topic" : "test_topic", + "key" : "1", + "value" : { + "INTMAP" : { + "K1" : 1, + "K2" : 2, + "K3" : 3 + }, + "BIGINTMAP" : { + "K1" : 1, + "K2" : 2, + "K3" : 3 + }, + "DOUBLEMAP" : { + "K1" : 1.0, + "K2" : 2.0, + "K3" : 3.0 + }, + "BOOLEANMAP" : { + "K1" : true, + "K2" : false, + "K3" : true + }, + "STRINGMAP" : { + "K1" : "V1", + "K2" : "V2", + "K3" : "V3" + }, + "NULLMAP" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "KSQL_COL_0" : [ { + "K" : "K1", + "V" : 1 + }, { + "K" : "K2", + "V" : 2 + }, { + "K" : "K3", + "V" : 3 + } ], + "KSQL_COL_1" : [ { + "K" : "K1", + "V" : 1 + }, { + "K" : "K2", + "V" : 2 + }, { + "K" : "K3", + "V" : 3 + } ], + "KSQL_COL_2" : [ { + "K" : "K1", + "V" : 1.0 + }, { + "K" : "K2", + "V" : 2.0 + }, { + "K" : "K3", + "V" : 3.0 + } ], + "KSQL_COL_3" : [ { + "K" : "K1", + "V" : true + }, { + "K" : "K2", + "V" : false + }, { + "K" : "K3", + "V" : true + } ], + "KSQL_COL_4" : [ { + "K" : "K1", + "V" : "V1" + }, { + "K" : "K2", + "V" : "V2" + }, { + "K" : "K3", + "V" : "V3" + } ], + "KSQL_COL_5" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, INTMAP MAP, BIGINTMAP MAP, DOUBLEMAP MAP, BOOLEANMAP MAP, STRINGMAP MAP, NULLMAP MAP) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, ENTRIES(INTMAP, TRUE), ENTRIES(BIGINTMAP, TRUE), ENTRIES(DOUBLEMAP, TRUE), ENTRIES(BOOLEANMAP, TRUE), ENTRIES(STRINGMAP, TRUE), ENTRIES(NULLMAP, TRUE) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY>, `KSQL_COL_1` ARRAY>, `KSQL_COL_2` ARRAY>, `KSQL_COL_3` ARRAY>, `KSQL_COL_4` ARRAY>, `KSQL_COL_5` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `INTMAP` MAP, `BIGINTMAP` MAP, `DOUBLEMAP` MAP, `BOOLEANMAP` MAP, `STRINGMAP` MAP, `NULLMAP` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_entries_sorted/7.1.0_1633125898233/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_entries_sorted/7.1.0_1633125898233/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_entries_sorted/7.1.0_1633125898233/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_multi-dimensional/7.1.0_1633125901180/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_multi-dimensional/7.1.0_1633125901180/plan.json new file mode 100644 index 000000000000..93a9f3ec5225 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_multi-dimensional/7.1.0_1633125901180/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, COL0 ARRAY>) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `COL0` ARRAY>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n INPUT.COL0[1][2] KSQL_COL_0\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `COL0` ARRAY>", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "COL0[1][2] AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_multi-dimensional/7.1.0_1633125901180/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_multi-dimensional/7.1.0_1633125901180/spec.json new file mode 100644 index 000000000000..23e0816b9ca6 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_multi-dimensional/7.1.0_1633125901180/spec.json @@ -0,0 +1,98 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901180, + "path" : "query-validation-tests/array.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `COL0` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "multi-dimensional", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "col0" : [ [ 0, 1 ], [ 2 ] ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : 1 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, col0 ARRAY>) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, col0[1][2] FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `COL0` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_multi-dimensional/7.1.0_1633125901180/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_multi-dimensional/7.1.0_1633125901180/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/array_-_multi-dimensional/7.1.0_1633125901180/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901272/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901272/plan.json new file mode 100644 index 000000000000..a406559451bb --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901272/plan.json @@ -0,0 +1,173 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, COLORS ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n TEST.COLORS COLORS\nFROM TEST TEST\nWHERE ARRAY_CONTAINS(TEST.COLORS, 'Pink')\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamFilterV1", + "properties" : { + "queryContext" : "WhereFilter" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `COLORS` ARRAY", + "pseudoColumnVersion" : 1 + }, + "filterExpression" : "ARRAY_CONTAINS(COLORS, 'Pink')" + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "COLORS AS COLORS" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901272/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901272/spec.json new file mode 100644 index 000000000000..e71a5eeaeff4 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901272/spec.json @@ -0,0 +1,140 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901272, + "path" : "query-validation-tests/arraycontains.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "filter rows where the ARRAY column contains a specified STRING", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ "Red", "Green" ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ "Black" ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ "Pink", "Yellow", "Pink" ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ "White", "Pink" ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ "Pink", null ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "COLORS" : [ "Pink", "Yellow", "Pink" ] + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "COLORS" : [ "White", "Pink" ] + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "COLORS" : [ "Pink", null ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM test (ID STRING KEY, colors ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, colors FROM test WHERE ARRAY_CONTAINS(colors, 'Pink');" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901272/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901272/topology new file mode 100644 index 000000000000..7b6119f7a4ae --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901272/topology @@ -0,0 +1,16 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> WhereFilter + <-- KSTREAM-SOURCE-0000000000 + Processor: WhereFilter (stores: []) + --> Project + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000004 + <-- WhereFilter + Sink: KSTREAM-SINK-0000000004 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_STRUCT-_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901323/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_STRUCT-_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901323/plan.json new file mode 100644 index 000000000000..512bb6a59c6a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_STRUCT-_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901323/plan.json @@ -0,0 +1,173 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, C1 STRUCT>) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `C1` STRUCT<`COLORS` ARRAY>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n TEST.C1->COLORS COLORS\nFROM TEST TEST\nWHERE ARRAY_CONTAINS(TEST.C1->COLORS, 'Pink')\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamFilterV1", + "properties" : { + "queryContext" : "WhereFilter" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `C1` STRUCT<`COLORS` ARRAY>", + "pseudoColumnVersion" : 1 + }, + "filterExpression" : "ARRAY_CONTAINS(C1->COLORS, 'Pink')" + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "C1->COLORS AS COLORS" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_STRUCT-_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901323/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_STRUCT-_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901323/spec.json new file mode 100644 index 000000000000..f88e3f7f1c6f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_STRUCT-_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901323/spec.json @@ -0,0 +1,152 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901323, + "path" : "query-validation-tests/arraycontains.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `C1` STRUCT<`COLORS` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "filter rows where the STRUCT->ARRAY column contains a specified STRING", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "c1" : { + "colors" : [ "Red", "Green" ] + } + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "c1" : { + "colors" : [ "Black" ] + } + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "c1" : { + "colors" : [ "Pink", "Yellow", "Pink" ] + } + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "c1" : { + "colors" : [ "White", "Pink" ] + } + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "c1" : { + "colors" : [ "Pink", null ] + } + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "c1" : { + "colors" : null + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "COLORS" : [ "Pink", "Yellow", "Pink" ] + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "COLORS" : [ "White", "Pink" ] + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "COLORS" : [ "Pink", null ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM test (ID STRING KEY, c1 STRUCT>) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, c1->colors AS colors FROM test WHERE ARRAY_CONTAINS(c1->colors, 'Pink');" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `C1` STRUCT<`COLORS` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_STRUCT-_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901323/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_STRUCT-_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901323/topology new file mode 100644 index 000000000000..7b6119f7a4ae --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arraycontains_-_filter_rows_where_the_STRUCT-_ARRAY_column_contains_a_specified_STRING/7.1.0_1633125901323/topology @@ -0,0 +1,16 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> WhereFilter + <-- KSTREAM-SOURCE-0000000000 + Processor: WhereFilter (stores: []) + --> Project + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000004 + <-- WhereFilter + Sink: KSTREAM-SINK-0000000004 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_first_element_of_an_Array/7.1.0_1633125901353/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_first_element_of_an_Array/7.1.0_1633125901353/plan.json new file mode 100644 index 000000000000..4f2e65577c53 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_first_element_of_an_Array/7.1.0_1633125901353/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, COLORS ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n TEST.COLORS[1] C\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `C` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `COLORS` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "COLORS[1] AS C" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_first_element_of_an_Array/7.1.0_1633125901353/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_first_element_of_an_Array/7.1.0_1633125901353/spec.json new file mode 100644 index 000000000000..2dba7e2f70ba --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_first_element_of_an_Array/7.1.0_1633125901353/spec.json @@ -0,0 +1,134 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901353, + "path" : "query-validation-tests/arrayindex.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `C` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "select the first element of an Array", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ "Red", "Green" ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ "Black" ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ null, "Yellow", "Pink" ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C" : "Red" + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C" : "Black" + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C" : null + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM test (ID STRING KEY, colors ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, colors[1] as C FROM test;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `C` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_first_element_of_an_Array/7.1.0_1633125901353/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_first_element_of_an_Array/7.1.0_1633125901353/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_first_element_of_an_Array/7.1.0_1633125901353/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_last_element_of_an_Array_(-1)/7.1.0_1633125901379/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_last_element_of_an_Array_(-1)/7.1.0_1633125901379/plan.json new file mode 100644 index 000000000000..8dc22a8159c4 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_last_element_of_an_Array_(-1)/7.1.0_1633125901379/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, COLORS ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n TEST.COLORS[-1] C\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `C` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `COLORS` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "COLORS[-1] AS C" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_last_element_of_an_Array_(-1)/7.1.0_1633125901379/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_last_element_of_an_Array_(-1)/7.1.0_1633125901379/spec.json new file mode 100644 index 000000000000..740155bce3d9 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_last_element_of_an_Array_(-1)/7.1.0_1633125901379/spec.json @@ -0,0 +1,158 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901379, + "path" : "query-validation-tests/arrayindex.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `C` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "select the last element of an Array (-1)", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ "Red", "Green" ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ "Black" ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ "Pink", "Yellow", "Pink" ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ "White", "Pink" ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ "Pink", null ] + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "colors" : [ ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C" : "Green" + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C" : "Black" + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C" : "Pink" + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C" : "Pink" + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C" : null + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM test (ID STRING KEY, colors ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, colors[-1] as C FROM test;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `C` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `COLORS` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_last_element_of_an_Array_(-1)/7.1.0_1633125901379/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_last_element_of_an_Array_(-1)/7.1.0_1633125901379/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayindex_-_select_the_last_element_of_an_Array_(-1)/7.1.0_1633125901379/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_custom_delimiters/7.1.0_1633125901455/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_custom_delimiters/7.1.0_1633125901455/plan.json new file mode 100644 index 000000000000..84da1d075f53 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_custom_delimiters/7.1.0_1633125901455/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, BOOLEANARRAY ARRAY, INTARRAY ARRAY, BIGINTARRAY ARRAY, DOUBLEARRAY ARRAY, DECIMALARRAY ARRAY, STRINGARRAY ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `BOOLEANARRAY` ARRAY, `INTARRAY` ARRAY, `BIGINTARRAY` ARRAY, `DOUBLEARRAY` ARRAY, `DECIMALARRAY` ARRAY, `STRINGARRAY` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n ARRAY_JOIN(TEST.BOOLEANARRAY, '|') KSQL_COL_0,\n ARRAY_JOIN(TEST.INTARRAY, '?') KSQL_COL_1,\n ARRAY_JOIN(TEST.BIGINTARRAY, ';') KSQL_COL_2,\n ARRAY_JOIN(TEST.DOUBLEARRAY, ' ') KSQL_COL_3,\n ARRAY_JOIN(TEST.DECIMALARRAY, '#') KSQL_COL_4,\n ARRAY_JOIN(TEST.STRINGARRAY, '_') KSQL_COL_5\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRING, `KSQL_COL_1` STRING, `KSQL_COL_2` STRING, `KSQL_COL_3` STRING, `KSQL_COL_4` STRING, `KSQL_COL_5` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `BOOLEANARRAY` ARRAY, `INTARRAY` ARRAY, `BIGINTARRAY` ARRAY, `DOUBLEARRAY` ARRAY, `DECIMALARRAY` ARRAY, `STRINGARRAY` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_JOIN(BOOLEANARRAY, '|') AS KSQL_COL_0", "ARRAY_JOIN(INTARRAY, '?') AS KSQL_COL_1", "ARRAY_JOIN(BIGINTARRAY, ';') AS KSQL_COL_2", "ARRAY_JOIN(DOUBLEARRAY, ' ') AS KSQL_COL_3", "ARRAY_JOIN(DECIMALARRAY, '#') AS KSQL_COL_4", "ARRAY_JOIN(STRINGARRAY, '_') AS KSQL_COL_5" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_custom_delimiters/7.1.0_1633125901455/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_custom_delimiters/7.1.0_1633125901455/spec.json new file mode 100644 index 000000000000..727ee448b7a1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_custom_delimiters/7.1.0_1633125901455/spec.json @@ -0,0 +1,108 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901455, + "path" : "query-validation-tests/arrayjoin.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `BOOLEANARRAY` ARRAY, `INTARRAY` ARRAY, `BIGINTARRAY` ARRAY, `DOUBLEARRAY` ARRAY, `DECIMALARRAY` ARRAY, `STRINGARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRING, `KSQL_COL_1` STRING, `KSQL_COL_2` STRING, `KSQL_COL_3` STRING, `KSQL_COL_4` STRING, `KSQL_COL_5` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "join flat arrays with primitive ksqldb types and custom delimiters", + "inputs" : [ { + "topic" : "test_topic", + "key" : "1", + "value" : { + "BOOLEANARRAY" : [ true, null, false ], + "INTARRAY" : [ 1, 23, -42, 0 ], + "BIGINTARRAY" : [ -4294967297, 8589934592 ], + "DOUBLEARRAY" : [ 1.23, -23.42, 0.0 ], + "DECIMALARRAY" : [ 123.45, 987.65 ], + "STRINGARRAY" : [ "Hello", "From", "", "Ksqldb", "Udf" ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "KSQL_COL_0" : "true|null|false", + "KSQL_COL_1" : "1?23?-42?0", + "KSQL_COL_2" : "-4294967297;8589934592", + "KSQL_COL_3" : "1.23 -23.42 0.0", + "KSQL_COL_4" : "123.45#987.65", + "KSQL_COL_5" : "Hello_From__Ksqldb_Udf" + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, BOOLEANARRAY ARRAY, INTARRAY ARRAY, BIGINTARRAY ARRAY, DOUBLEARRAY ARRAY, DECIMALARRAY ARRAY, STRINGARRAY ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, ARRAY_JOIN(BOOLEANARRAY,'|'), ARRAY_JOIN(INTARRAY,'?'), ARRAY_JOIN(BIGINTARRAY,';'), ARRAY_JOIN(DOUBLEARRAY,' '), ARRAY_JOIN(DECIMALARRAY,'#'), ARRAY_JOIN(STRINGARRAY,'_') FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRING, `KSQL_COL_1` STRING, `KSQL_COL_2` STRING, `KSQL_COL_3` STRING, `KSQL_COL_4` STRING, `KSQL_COL_5` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOLEANARRAY` ARRAY, `INTARRAY` ARRAY, `BIGINTARRAY` ARRAY, `DOUBLEARRAY` ARRAY, `DECIMALARRAY` ARRAY, `STRINGARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_custom_delimiters/7.1.0_1633125901455/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_custom_delimiters/7.1.0_1633125901455/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_custom_delimiters/7.1.0_1633125901455/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_default_delimiter/7.1.0_1633125901405/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_default_delimiter/7.1.0_1633125901405/plan.json new file mode 100644 index 000000000000..8bc6d9bccf0f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_default_delimiter/7.1.0_1633125901405/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, BOOLEANARRAY ARRAY, INTARRAY ARRAY, BIGINTARRAY ARRAY, DOUBLEARRAY ARRAY, DECIMALARRAY ARRAY, STRINGARRAY ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `BOOLEANARRAY` ARRAY, `INTARRAY` ARRAY, `BIGINTARRAY` ARRAY, `DOUBLEARRAY` ARRAY, `DECIMALARRAY` ARRAY, `STRINGARRAY` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n ARRAY_JOIN(TEST.BOOLEANARRAY) KSQL_COL_0,\n ARRAY_JOIN(TEST.INTARRAY) KSQL_COL_1,\n ARRAY_JOIN(TEST.BIGINTARRAY) KSQL_COL_2,\n ARRAY_JOIN(TEST.DOUBLEARRAY) KSQL_COL_3,\n ARRAY_JOIN(TEST.DECIMALARRAY) KSQL_COL_4,\n ARRAY_JOIN(TEST.STRINGARRAY) KSQL_COL_5\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRING, `KSQL_COL_1` STRING, `KSQL_COL_2` STRING, `KSQL_COL_3` STRING, `KSQL_COL_4` STRING, `KSQL_COL_5` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `BOOLEANARRAY` ARRAY, `INTARRAY` ARRAY, `BIGINTARRAY` ARRAY, `DOUBLEARRAY` ARRAY, `DECIMALARRAY` ARRAY, `STRINGARRAY` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_JOIN(BOOLEANARRAY) AS KSQL_COL_0", "ARRAY_JOIN(INTARRAY) AS KSQL_COL_1", "ARRAY_JOIN(BIGINTARRAY) AS KSQL_COL_2", "ARRAY_JOIN(DOUBLEARRAY) AS KSQL_COL_3", "ARRAY_JOIN(DECIMALARRAY) AS KSQL_COL_4", "ARRAY_JOIN(STRINGARRAY) AS KSQL_COL_5" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_default_delimiter/7.1.0_1633125901405/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_default_delimiter/7.1.0_1633125901405/spec.json new file mode 100644 index 000000000000..5930b2325779 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_default_delimiter/7.1.0_1633125901405/spec.json @@ -0,0 +1,108 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901405, + "path" : "query-validation-tests/arrayjoin.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `BOOLEANARRAY` ARRAY, `INTARRAY` ARRAY, `BIGINTARRAY` ARRAY, `DOUBLEARRAY` ARRAY, `DECIMALARRAY` ARRAY, `STRINGARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRING, `KSQL_COL_1` STRING, `KSQL_COL_2` STRING, `KSQL_COL_3` STRING, `KSQL_COL_4` STRING, `KSQL_COL_5` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "join flat arrays with primitive ksqldb types and default delimiter", + "inputs" : [ { + "topic" : "test_topic", + "key" : "1", + "value" : { + "BOOLEANARRAY" : [ true, null, false ], + "INTARRAY" : [ 1, 23, -42, 0 ], + "BIGINTARRAY" : [ -4294967297, 8589934592 ], + "DOUBLEARRAY" : [ 1.23, -23.42, 0.0 ], + "DECIMALARRAY" : [ 123.45, 987.65 ], + "STRINGARRAY" : [ "Hello", "From", "", "Ksqldb", "Udf" ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "KSQL_COL_0" : "true,null,false", + "KSQL_COL_1" : "1,23,-42,0", + "KSQL_COL_2" : "-4294967297,8589934592", + "KSQL_COL_3" : "1.23,-23.42,0.0", + "KSQL_COL_4" : "123.45,987.65", + "KSQL_COL_5" : "Hello,From,,Ksqldb,Udf" + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, BOOLEANARRAY ARRAY, INTARRAY ARRAY, BIGINTARRAY ARRAY, DOUBLEARRAY ARRAY, DECIMALARRAY ARRAY, STRINGARRAY ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, ARRAY_JOIN(BOOLEANARRAY), ARRAY_JOIN(INTARRAY), ARRAY_JOIN(BIGINTARRAY), ARRAY_JOIN(DOUBLEARRAY), ARRAY_JOIN(DECIMALARRAY), ARRAY_JOIN(STRINGARRAY) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRING, `KSQL_COL_1` STRING, `KSQL_COL_2` STRING, `KSQL_COL_3` STRING, `KSQL_COL_4` STRING, `KSQL_COL_5` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOLEANARRAY` ARRAY, `INTARRAY` ARRAY, `BIGINTARRAY` ARRAY, `DOUBLEARRAY` ARRAY, `DECIMALARRAY` ARRAY, `STRINGARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_default_delimiter/7.1.0_1633125901405/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_default_delimiter/7.1.0_1633125901405/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_default_delimiter/7.1.0_1633125901405/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_empty_or_null_delimiter/7.1.0_1633125901510/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_empty_or_null_delimiter/7.1.0_1633125901510/plan.json new file mode 100644 index 000000000000..3df6b4168093 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_empty_or_null_delimiter/7.1.0_1633125901510/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, BOOLEANARRAY ARRAY, INTARRAY ARRAY, BIGINTARRAY ARRAY, DOUBLEARRAY ARRAY, DECIMALARRAY ARRAY, STRINGARRAY ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `BOOLEANARRAY` ARRAY, `INTARRAY` ARRAY, `BIGINTARRAY` ARRAY, `DOUBLEARRAY` ARRAY, `DECIMALARRAY` ARRAY, `STRINGARRAY` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n ARRAY_JOIN(TEST.BOOLEANARRAY, '') KSQL_COL_0,\n ARRAY_JOIN(TEST.INTARRAY, null) KSQL_COL_1,\n ARRAY_JOIN(TEST.BIGINTARRAY, '') KSQL_COL_2,\n ARRAY_JOIN(TEST.DOUBLEARRAY, null) KSQL_COL_3,\n ARRAY_JOIN(TEST.DECIMALARRAY, '') KSQL_COL_4,\n ARRAY_JOIN(TEST.STRINGARRAY, null) KSQL_COL_5\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRING, `KSQL_COL_1` STRING, `KSQL_COL_2` STRING, `KSQL_COL_3` STRING, `KSQL_COL_4` STRING, `KSQL_COL_5` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `BOOLEANARRAY` ARRAY, `INTARRAY` ARRAY, `BIGINTARRAY` ARRAY, `DOUBLEARRAY` ARRAY, `DECIMALARRAY` ARRAY, `STRINGARRAY` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ARRAY_JOIN(BOOLEANARRAY, '') AS KSQL_COL_0", "ARRAY_JOIN(INTARRAY, null) AS KSQL_COL_1", "ARRAY_JOIN(BIGINTARRAY, '') AS KSQL_COL_2", "ARRAY_JOIN(DOUBLEARRAY, null) AS KSQL_COL_3", "ARRAY_JOIN(DECIMALARRAY, '') AS KSQL_COL_4", "ARRAY_JOIN(STRINGARRAY, null) AS KSQL_COL_5" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_empty_or_null_delimiter/7.1.0_1633125901510/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_empty_or_null_delimiter/7.1.0_1633125901510/spec.json new file mode 100644 index 000000000000..8ddc8db835b8 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_empty_or_null_delimiter/7.1.0_1633125901510/spec.json @@ -0,0 +1,108 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125901510, + "path" : "query-validation-tests/arrayjoin.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `BOOLEANARRAY` ARRAY, `INTARRAY` ARRAY, `BIGINTARRAY` ARRAY, `DOUBLEARRAY` ARRAY, `DECIMALARRAY` ARRAY, `STRINGARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRING, `KSQL_COL_1` STRING, `KSQL_COL_2` STRING, `KSQL_COL_3` STRING, `KSQL_COL_4` STRING, `KSQL_COL_5` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "join flat arrays with primitive ksqldb types and empty or null delimiter", + "inputs" : [ { + "topic" : "test_topic", + "key" : "1", + "value" : { + "BOOLEANARRAY" : [ true, null, false ], + "INTARRAY" : [ 1, 23, -42, 0 ], + "BIGINTARRAY" : [ -4294967297, 8589934592 ], + "DOUBLEARRAY" : [ 1.23, -23.42, 0.0 ], + "DECIMALARRAY" : [ 123.45, 987.65 ], + "STRINGARRAY" : [ "Hello", "From", "", "Ksqldb", "Udf" ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "KSQL_COL_0" : "truenullfalse", + "KSQL_COL_1" : "123-420", + "KSQL_COL_2" : "-42949672978589934592", + "KSQL_COL_3" : "1.23-23.420.0", + "KSQL_COL_4" : "123.45987.65", + "KSQL_COL_5" : "HelloFromKsqldbUdf" + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, BOOLEANARRAY ARRAY, INTARRAY ARRAY, BIGINTARRAY ARRAY, DOUBLEARRAY ARRAY, DECIMALARRAY ARRAY, STRINGARRAY ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, ARRAY_JOIN(BOOLEANARRAY,''), ARRAY_JOIN(INTARRAY,null), ARRAY_JOIN(BIGINTARRAY,''), ARRAY_JOIN(DOUBLEARRAY,null), ARRAY_JOIN(DECIMALARRAY,''), ARRAY_JOIN(STRINGARRAY,null) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRING, `KSQL_COL_1` STRING, `KSQL_COL_2` STRING, `KSQL_COL_3` STRING, `KSQL_COL_4` STRING, `KSQL_COL_5` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `BOOLEANARRAY` ARRAY, `INTARRAY` ARRAY, `BIGINTARRAY` ARRAY, `DOUBLEARRAY` ARRAY, `DECIMALARRAY` ARRAY, `STRINGARRAY` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_empty_or_null_delimiter/7.1.0_1633125901510/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_empty_or_null_delimiter/7.1.0_1633125901510/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/arrayjoin_-_join_flat_arrays_with_primitive_ksqldb_types_and_empty_or_null_delimiter/7.1.0_1633125901510/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_ARRAY/7.1.0_1633125902923/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_ARRAY/7.1.0_1633125902923/plan.json new file mode 100644 index 000000000000..ba326f8e0465 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_ARRAY/7.1.0_1633125902923/plan.json @@ -0,0 +1,170 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID ARRAY KEY, V0 INTEGER, V1 INTEGER) WITH (FORMAT='JSON', KAFKA_TOPIC='input');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` ARRAY KEY, `V0` INTEGER, `V1` INTEGER", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n AS_VALUE(INPUT.ID) ID_COPY,\n INPUT.V1 V1\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` ARRAY KEY, `ID_COPY` ARRAY, `V1` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ID` ARRAY KEY, `V0` INTEGER, `V1` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "AS_VALUE(ID) AS ID_COPY", "V1 AS V1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_ARRAY/7.1.0_1633125902923/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_ARRAY/7.1.0_1633125902923/spec.json new file mode 100644 index 000000000000..43e5ac5796fb --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_ARRAY/7.1.0_1633125902923/spec.json @@ -0,0 +1,105 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902923, + "path" : "query-validation-tests/as_value.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` ARRAY KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` ARRAY KEY, `ID_COPY` ARRAY, `V1` INTEGER", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "ARRAY", + "inputs" : [ { + "topic" : "input", + "key" : [ "foo" ], + "value" : { + "V0" : 2, + "V1" : 3 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : [ "foo" ], + "value" : { + "ID_COPY" : [ "foo" ], + "V1" : 3 + } + } ], + "topics" : [ { + "name" : "input", + "replicas" : 1, + "keySerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 4 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID ARRAY KEY, V0 INT, V1 INT) WITH (kafka_topic='input', format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, AS_VALUE(ID) AS ID_COPY, V1 FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` ARRAY KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` ARRAY KEY, `ID_COPY` ARRAY, `V1` INTEGER", + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_ARRAY/7.1.0_1633125902923/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_ARRAY/7.1.0_1633125902923/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_ARRAY/7.1.0_1633125902923/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_BOOLEAN/7.1.0_1633125902879/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_BOOLEAN/7.1.0_1633125902879/plan.json new file mode 100644 index 000000000000..8e360245e4a3 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_BOOLEAN/7.1.0_1633125902879/plan.json @@ -0,0 +1,170 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID BOOLEAN KEY, V0 INTEGER, V1 INTEGER) WITH (FORMAT='JSON', KAFKA_TOPIC='input');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` BOOLEAN KEY, `V0` INTEGER, `V1` INTEGER", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n AS_VALUE(INPUT.ID) ID_COPY,\n INPUT.V1 V1\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` BOOLEAN KEY, `ID_COPY` BOOLEAN, `V1` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ID` BOOLEAN KEY, `V0` INTEGER, `V1` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "AS_VALUE(ID) AS ID_COPY", "V1 AS V1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_BOOLEAN/7.1.0_1633125902879/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_BOOLEAN/7.1.0_1633125902879/spec.json new file mode 100644 index 000000000000..f891b496eee8 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_BOOLEAN/7.1.0_1633125902879/spec.json @@ -0,0 +1,105 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902879, + "path" : "query-validation-tests/as_value.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` BOOLEAN KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` BOOLEAN KEY, `ID_COPY` BOOLEAN, `V1` INTEGER", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "BOOLEAN", + "inputs" : [ { + "topic" : "input", + "key" : true, + "value" : { + "V0" : 2, + "V1" : 3 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : true, + "value" : { + "ID_COPY" : true, + "V1" : 3 + } + } ], + "topics" : [ { + "name" : "input", + "replicas" : 1, + "keySerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 4 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID BOOLEAN KEY, V0 INT, V1 INT) WITH (kafka_topic='input', format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, AS_VALUE(ID) AS ID_COPY, V1 FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` BOOLEAN KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` BOOLEAN KEY, `ID_COPY` BOOLEAN, `V1` INTEGER", + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_BOOLEAN/7.1.0_1633125902879/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_BOOLEAN/7.1.0_1633125902879/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_BOOLEAN/7.1.0_1633125902879/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_DECIMAL/7.1.0_1633125902902/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_DECIMAL/7.1.0_1633125902902/plan.json new file mode 100644 index 000000000000..5dd25b60e84e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_DECIMAL/7.1.0_1633125902902/plan.json @@ -0,0 +1,170 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID DECIMAL(4, 2) KEY, V0 INTEGER, V1 INTEGER) WITH (FORMAT='JSON', KAFKA_TOPIC='input');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` DECIMAL(4, 2) KEY, `V0` INTEGER, `V1` INTEGER", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n AS_VALUE(INPUT.ID) ID_COPY,\n INPUT.V1 V1\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` DECIMAL(4, 2) KEY, `ID_COPY` DECIMAL(4, 2), `V1` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ID` DECIMAL(4, 2) KEY, `V0` INTEGER, `V1` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "AS_VALUE(ID) AS ID_COPY", "V1 AS V1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_DECIMAL/7.1.0_1633125902902/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_DECIMAL/7.1.0_1633125902902/spec.json new file mode 100644 index 000000000000..6607655b70f0 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_DECIMAL/7.1.0_1633125902902/spec.json @@ -0,0 +1,105 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902902, + "path" : "query-validation-tests/as_value.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` DECIMAL(4, 2) KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` DECIMAL(4, 2) KEY, `ID_COPY` DECIMAL(4, 2), `V1` INTEGER", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "DECIMAL", + "inputs" : [ { + "topic" : "input", + "key" : 12.30, + "value" : { + "V0" : 2, + "V1" : 3 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 12.30, + "value" : { + "ID_COPY" : 12.30, + "V1" : 3 + } + } ], + "topics" : [ { + "name" : "input", + "replicas" : 1, + "keySerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 4 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID DECIMAL(4,2) KEY, V0 INT, V1 INT) WITH (kafka_topic='input', format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, AS_VALUE(ID) AS ID_COPY, V1 FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` DECIMAL(4, 2) KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` DECIMAL(4, 2) KEY, `ID_COPY` DECIMAL(4, 2), `V1` INTEGER", + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_DECIMAL/7.1.0_1633125902902/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_DECIMAL/7.1.0_1633125902902/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_DECIMAL/7.1.0_1633125902902/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_STRUCT/7.1.0_1633125902943/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_STRUCT/7.1.0_1633125902943/plan.json new file mode 100644 index 000000000000..a8676c488e84 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_STRUCT/7.1.0_1633125902943/plan.json @@ -0,0 +1,170 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRUCT KEY, V0 INTEGER, V1 INTEGER) WITH (FORMAT='JSON', KAFKA_TOPIC='input');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRUCT<`F1` STRING> KEY, `V0` INTEGER, `V1` INTEGER", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n AS_VALUE(INPUT.ID) ID_COPY,\n INPUT.V1 V1\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRUCT<`F1` STRING> KEY, `ID_COPY` STRUCT<`F1` STRING>, `V1` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ID` STRUCT<`F1` STRING> KEY, `V0` INTEGER, `V1` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "AS_VALUE(ID) AS ID_COPY", "V1 AS V1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : { + "format" : "JSON" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_STRUCT/7.1.0_1633125902943/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_STRUCT/7.1.0_1633125902943/spec.json new file mode 100644 index 000000000000..a615776fc916 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_STRUCT/7.1.0_1633125902943/spec.json @@ -0,0 +1,111 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902943, + "path" : "query-validation-tests/as_value.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRUCT<`F1` STRING> KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRUCT<`F1` STRING> KEY, `ID_COPY` STRUCT<`F1` STRING>, `V1` INTEGER", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "STRUCT", + "inputs" : [ { + "topic" : "input", + "key" : { + "F1" : "foo" + }, + "value" : { + "V0" : 2, + "V1" : 3 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : { + "F1" : "foo" + }, + "value" : { + "ID_COPY" : { + "F1" : "foo" + }, + "V1" : 3 + } + } ], + "topics" : [ { + "name" : "input", + "replicas" : 1, + "keySerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 4 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRUCT KEY, V0 INT, V1 INT) WITH (kafka_topic='input', format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, AS_VALUE(ID) AS ID_COPY, V1 FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRUCT<`F1` STRING> KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRUCT<`F1` STRING> KEY, `ID_COPY` STRUCT<`F1` STRING>, `V1` INTEGER", + "keyFormat" : { + "format" : "JSON" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "JSON", + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_STRUCT/7.1.0_1633125902943/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_STRUCT/7.1.0_1633125902943/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_STRUCT/7.1.0_1633125902943/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_expression/7.1.0_1633125902405/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_expression/7.1.0_1633125902405/plan.json new file mode 100644 index 000000000000..90c41ff69049 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_expression/7.1.0_1633125902405/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID INTEGER KEY, V0 INTEGER, V1 INTEGER) WITH (KAFKA_TOPIC='input', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n AS_VALUE((INPUT.V0 + INPUT.V1)) KSQL_COL_0\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` INTEGER KEY, `KSQL_COL_0` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "AS_VALUE((V0 + V1)) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_expression/7.1.0_1633125902405/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_expression/7.1.0_1633125902405/spec.json new file mode 100644 index 000000000000..5570dae32725 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_expression/7.1.0_1633125902405/spec.json @@ -0,0 +1,99 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902405, + "path" : "query-validation-tests/as_value.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` INTEGER KEY, `KSQL_COL_0` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "expression", + "inputs" : [ { + "topic" : "input", + "key" : 1, + "value" : { + "V0" : 2, + "V1" : 3 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : 5 + } + } ], + "topics" : [ { + "name" : "input", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID INT KEY, V0 INT, V1 INT) WITH (kafka_topic='input', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, AS_VALUE(V0 + V1) FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `KSQL_COL_0` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_expression/7.1.0_1633125902405/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_expression/7.1.0_1633125902405/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_expression/7.1.0_1633125902405/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_group_by/7.1.0_1633125902482/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_group_by/7.1.0_1633125902482/plan.json new file mode 100644 index 000000000000..b82a4b1b69d8 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_group_by/7.1.0_1633125902482/plan.json @@ -0,0 +1,213 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID INTEGER KEY, V0 INTEGER, V1 INTEGER) WITH (KAFKA_TOPIC='input', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE OUTPUT AS SELECT\n AS_VALUE(INPUT.ID) K,\n COUNT(1) KSQL_COL_0\nFROM INPUT INPUT\nGROUP BY AS_VALUE(INPUT.ID)\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "OUTPUT", + "schema" : "`K` INTEGER KEY, `KSQL_COL_0` BIGINT", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "1 AS KSQL_INTERNAL_COL_1" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "groupByExpressions" : [ "AS_VALUE(ID)" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID" ], + "aggregationFunctions" : [ "COUNT(KSQL_INTERNAL_COL_1)" ] + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS KSQL_COL_0" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CTAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_group_by/7.1.0_1633125902482/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_group_by/7.1.0_1633125902482/spec.json new file mode 100644 index 000000000000..664b7c3b05c4 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_group_by/7.1.0_1633125902482/spec.json @@ -0,0 +1,142 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902482, + "path" : "query-validation-tests/as_value.json", + "schemas" : { + "CTAS_OUTPUT_0.Aggregate.Project" : { + "schema" : "`K` INTEGER KEY, `KSQL_COL_0` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.Aggregate.GroupBy" : { + "schema" : "`KSQL_COL_0` INTEGER KEY, `ID` INTEGER, `KSQL_INTERNAL_COL_1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`KSQL_COL_0` INTEGER KEY, `ID` INTEGER, `KSQL_AGG_VARIABLE_0` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` INTEGER KEY, `KSQL_COL_0` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "group by", + "inputs" : [ { + "topic" : "input", + "key" : 1, + "value" : { + "V0" : 2, + "V1" : 3 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : 1 + } + } ], + "topics" : [ { + "name" : "input", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID INT KEY, V0 INT, V1 INT) WITH (kafka_topic='input', value_format='JSON');", "CREATE TABLE OUTPUT AS SELECT AS_VALUE(ID) AS K, COUNT(1) FROM INPUT GROUP BY AS_VALUE(ID);" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "TABLE", + "schema" : "`K` INTEGER KEY, `KSQL_COL_0` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_OUTPUT_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "input", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_OUTPUT_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_group_by/7.1.0_1633125902482/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_group_by/7.1.0_1633125902482/topology new file mode 100644 index 000000000000..efaf31bc5c28 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_group_by/7.1.0_1633125902482/topology @@ -0,0 +1,40 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-FILTER-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-FILTER-0000000003 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> Aggregate-GroupBy-repartition-filter + <-- KSTREAM-FILTER-0000000003 + Processor: Aggregate-GroupBy-repartition-filter (stores: []) + --> Aggregate-GroupBy-repartition-sink + <-- Aggregate-GroupBy + Sink: Aggregate-GroupBy-repartition-sink (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy-repartition-filter + + Sub-topology: 1 + Source: Aggregate-GroupBy-repartition-source (topics: [Aggregate-GroupBy-repartition]) + --> KSTREAM-AGGREGATE-0000000005 + Processor: KSTREAM-AGGREGATE-0000000005 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-GroupBy-repartition-source + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000005 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000011 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000011 (stores: []) + --> KSTREAM-SINK-0000000012 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000012 (topic: OUTPUT) + <-- KTABLE-TOSTREAM-0000000011 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_join/7.1.0_1633125902722/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_join/7.1.0_1633125902722/plan.json new file mode 100644 index 000000000000..a79cf910290b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_join/7.1.0_1633125902722/plan.json @@ -0,0 +1,257 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM I1 (ID INTEGER KEY, V0 INTEGER, V1 INTEGER) WITH (KAFKA_TOPIC='i1', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "I1", + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "topicName" : "i1", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE I2 (ID INTEGER PRIMARY KEY, V0 INTEGER, V1 INTEGER) WITH (KAFKA_TOPIC='i2', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "I2", + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "topicName" : "i2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM I1 I1\nINNER JOIN I2 I2 ON ((AS_VALUE(I1.ID) = I2.ID))\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`I2_ID` INTEGER KEY, `I1_ID` INTEGER, `I1_V0` INTEGER, `I1_V1` INTEGER, `I2_V0` INTEGER, `I2_V1` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "I1", "I2" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamTableJoinV1", + "properties" : { + "queryContext" : "Join" + }, + "joinType" : "INNER", + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "leftSource" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "PrependAliasLeft" + }, + "source" : { + "@type" : "streamSelectKeyV2", + "properties" : { + "queryContext" : "LeftSourceKeyed" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KafkaTopic_Left/Source" + }, + "topicName" : "i1", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyExpression" : [ "AS_VALUE(ID)" ] + }, + "keyColumnNames" : [ "I1_KSQL_COL_0" ], + "selectExpressions" : [ "V0 AS I1_V0", "V1 AS I1_V1", "ROWTIME AS I1_ROWTIME", "ROWPARTITION AS I1_ROWPARTITION", "ROWOFFSET AS I1_ROWOFFSET", "ID AS I1_ID", "KSQL_COL_0 AS I1_KSQL_COL_0" ] + }, + "rightSource" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "PrependAliasRight" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KafkaTopic_Right/Source" + }, + "topicName" : "i2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "keyColumnNames" : [ "I2_ID" ], + "selectExpressions" : [ "V0 AS I2_V0", "V1 AS I2_V1", "ROWTIME AS I2_ROWTIME", "ROWPARTITION AS I2_ROWPARTITION", "ROWOFFSET AS I2_ROWOFFSET", "ID AS I2_ID" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "keyColName" : "I2_ID" + }, + "keyColumnNames" : [ "I2_ID" ], + "selectExpressions" : [ "I1_ID AS I1_ID", "I1_V0 AS I1_V0", "I1_V1 AS I1_V1", "I2_V0 AS I2_V0", "I2_V1 AS I2_V1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_join/7.1.0_1633125902722/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_join/7.1.0_1633125902722/spec.json new file mode 100644 index 000000000000..55a030ac4d26 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_join/7.1.0_1633125902722/spec.json @@ -0,0 +1,189 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902722, + "path" : "query-validation-tests/as_value.json", + "schemas" : { + "CSAS_OUTPUT_0.KafkaTopic_Right.Source" : { + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.KafkaTopic_Right.Source.Materialized" : { + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.Join.Left" : { + "schema" : "`I1_KSQL_COL_0` INTEGER KEY, `I1_V0` INTEGER, `I1_V1` INTEGER, `I1_ROWTIME` BIGINT, `I1_ROWPARTITION` INTEGER, `I1_ROWOFFSET` BIGINT, `I1_ID` INTEGER, `I1_KSQL_COL_0` INTEGER", + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`I2_ID` INTEGER KEY, `I1_ID` INTEGER, `I1_V0` INTEGER, `I1_V1` INTEGER, `I2_V0` INTEGER, `I2_V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.KafkaTopic_Left.Source" : { + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.Join" : { + "schema" : "`I1_KSQL_COL_0` INTEGER KEY, `I1_V0` INTEGER, `I1_V1` INTEGER, `I1_ROWTIME` BIGINT, `I1_ROWPARTITION` INTEGER, `I1_ROWOFFSET` BIGINT, `I1_ID` INTEGER, `I1_KSQL_COL_0` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + } + }, + "CSAS_OUTPUT_0.PrependAliasRight" : { + "schema" : "`I2_ID` INTEGER KEY, `I2_V0` INTEGER, `I2_V1` INTEGER, `I2_ROWTIME` BIGINT, `I2_ROWPARTITION` INTEGER, `I2_ROWOFFSET` BIGINT, `I2_ID` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "join", + "inputs" : [ { + "topic" : "i2", + "key" : 1, + "value" : { + "V0" : 2, + "V1" : 3 + } + }, { + "topic" : "i1", + "key" : 1, + "value" : { + "V0" : 2, + "V1" : 3 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "I1_ID" : 1, + "I1_V0" : 2, + "I1_V1" : 3, + "I2_V0" : 2, + "I2_V1" : 3 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "i1", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "i2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM I1 (ID INT KEY, V0 INT, V1 INT) WITH (kafka_topic='i1', value_format='JSON');", "CREATE TABLE I2 (ID INT PRIMARY KEY, V0 INT, V1 INT) WITH (kafka_topic='i2', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT * FROM I1 JOIN I2 ON AS_VALUE(I1.ID) = I2.ID;" ], + "post" : { + "sources" : [ { + "name" : "I1", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "I2", + "type" : "TABLE", + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`I2_ID` INTEGER KEY, `I1_ID` INTEGER, `I1_V0` INTEGER, `I1_V1` INTEGER, `I2_V0` INTEGER, `I2_V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CSAS_OUTPUT_0-KafkaTopic_Right-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "i2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "i1", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CSAS_OUTPUT_0-Join-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_join/7.1.0_1633125902722/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_join/7.1.0_1633125902722/topology new file mode 100644 index 000000000000..140810a90c37 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_join/7.1.0_1633125902722/topology @@ -0,0 +1,45 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [i2]) + --> KTABLE-SOURCE-0000000002 + Source: Join-repartition-source (topics: [Join-repartition]) + --> Join + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: Join (stores: [KafkaTopic_Right-Reduce]) + --> Project + <-- Join-repartition-source + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KafkaTopic_Right-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> PrependAliasRight + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000015 + <-- Join + Sink: KSTREAM-SINK-0000000015 (topic: OUTPUT) + <-- Project + Processor: PrependAliasRight (stores: []) + --> none + <-- KTABLE-TRANSFORMVALUES-0000000004 + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000006 (topics: [i1]) + --> KSTREAM-TRANSFORMVALUES-0000000007 + Processor: KSTREAM-TRANSFORMVALUES-0000000007 (stores: []) + --> LeftSourceKeyed-SelectKey + <-- KSTREAM-SOURCE-0000000006 + Processor: LeftSourceKeyed-SelectKey (stores: []) + --> PrependAliasLeft + <-- KSTREAM-TRANSFORMVALUES-0000000007 + Processor: PrependAliasLeft (stores: []) + --> Join-repartition-filter + <-- LeftSourceKeyed-SelectKey + Processor: Join-repartition-filter (stores: []) + --> Join-repartition-sink + <-- PrependAliasLeft + Sink: Join-repartition-sink (topic: Join-repartition) + <-- Join-repartition-filter + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_key_column/7.1.0_1633125902361/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_key_column/7.1.0_1633125902361/plan.json new file mode 100644 index 000000000000..2ce476b6a9c9 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_key_column/7.1.0_1633125902361/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID INTEGER KEY, V0 INTEGER, V1 INTEGER) WITH (KAFKA_TOPIC='input', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n AS_VALUE(INPUT.ID) ID_COPY,\n INPUT.V1 V1\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` INTEGER KEY, `ID_COPY` INTEGER, `V1` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "AS_VALUE(ID) AS ID_COPY", "V1 AS V1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_key_column/7.1.0_1633125902361/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_key_column/7.1.0_1633125902361/spec.json new file mode 100644 index 000000000000..0ce35dc0929f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_key_column/7.1.0_1633125902361/spec.json @@ -0,0 +1,100 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902361, + "path" : "query-validation-tests/as_value.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` INTEGER KEY, `ID_COPY` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "key column", + "inputs" : [ { + "topic" : "input", + "key" : 1, + "value" : { + "V0" : 2, + "V1" : 3 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "ID_COPY" : 1, + "V1" : 3 + } + } ], + "topics" : [ { + "name" : "input", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID INT KEY, V0 INT, V1 INT) WITH (kafka_topic='input', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, AS_VALUE(ID) AS ID_COPY, V1 FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `ID_COPY` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_key_column/7.1.0_1633125902361/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_key_column/7.1.0_1633125902361/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_key_column/7.1.0_1633125902361/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_partition_by/7.1.0_1633125902431/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_partition_by/7.1.0_1633125902431/plan.json new file mode 100644 index 000000000000..76e70d4db953 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_partition_by/7.1.0_1633125902431/plan.json @@ -0,0 +1,173 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID INTEGER KEY, V0 INTEGER, V1 INTEGER) WITH (KAFKA_TOPIC='input', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nPARTITION BY AS_VALUE(INPUT.ID)\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`KSQL_COL_0` INTEGER KEY, `V0` INTEGER, `V1` INTEGER, `ID` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSelectKeyV2", + "properties" : { + "queryContext" : "PartitionBy" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyExpression" : [ "AS_VALUE(ID)" ] + }, + "keyColumnNames" : [ "KSQL_COL_0" ], + "selectExpressions" : [ "V0 AS V0", "V1 AS V1", "ID AS ID" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_partition_by/7.1.0_1633125902431/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_partition_by/7.1.0_1633125902431/spec.json new file mode 100644 index 000000000000..6d48efe7881f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_partition_by/7.1.0_1633125902431/spec.json @@ -0,0 +1,101 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902431, + "path" : "query-validation-tests/as_value.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`KSQL_COL_0` INTEGER KEY, `V0` INTEGER, `V1` INTEGER, `ID` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "partition by", + "inputs" : [ { + "topic" : "input", + "key" : 1, + "value" : { + "V0" : 2, + "V1" : 3 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "V0" : 2, + "V1" : 3, + "ID" : 1 + } + } ], + "topics" : [ { + "name" : "input", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID INT KEY, V0 INT, V1 INT) WITH (kafka_topic='input', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT PARTITION BY AS_VALUE(ID);" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`KSQL_COL_0` INTEGER KEY, `V0` INTEGER, `V1` INTEGER, `ID` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_partition_by/7.1.0_1633125902431/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_partition_by/7.1.0_1633125902431/topology new file mode 100644 index 000000000000..a8325d21f26b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_partition_by/7.1.0_1633125902431/topology @@ -0,0 +1,16 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> PartitionBy-SelectKey + <-- KSTREAM-SOURCE-0000000000 + Processor: PartitionBy-SelectKey (stores: []) + --> Project + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000004 + <-- PartitionBy-SelectKey + Sink: KSTREAM-SINK-0000000004 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_value_column/7.1.0_1633125902384/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_value_column/7.1.0_1633125902384/plan.json new file mode 100644 index 000000000000..0d5c154ad609 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_value_column/7.1.0_1633125902384/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID INTEGER KEY, V0 INTEGER, V1 INTEGER) WITH (KAFKA_TOPIC='input', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n AS_VALUE(INPUT.V0) KSQL_COL_0\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` INTEGER KEY, `KSQL_COL_0` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "AS_VALUE(V0) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_value_column/7.1.0_1633125902384/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_value_column/7.1.0_1633125902384/spec.json new file mode 100644 index 000000000000..0f0128ea9f48 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_value_column/7.1.0_1633125902384/spec.json @@ -0,0 +1,99 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902384, + "path" : "query-validation-tests/as_value.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` INTEGER KEY, `KSQL_COL_0` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "value column", + "inputs" : [ { + "topic" : "input", + "key" : 1, + "value" : { + "V0" : 2, + "V1" : 3 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : 2 + } + } ], + "topics" : [ { + "name" : "input", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID INT KEY, V0 INT, V1 INT) WITH (kafka_topic='input', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, AS_VALUE(V0) FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `V0` INTEGER, `V1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `KSQL_COL_0` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_value_column/7.1.0_1633125902384/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_value_column/7.1.0_1633125902384/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/as_value_-_value_column/7.1.0_1633125902384/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_double/7.1.0_1633125903360/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_double/7.1.0_1633125903360/plan.json new file mode 100644 index 000000000000..5768c5228178 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_double/7.1.0_1633125903360/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, VALUE DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `VALUE` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE OUTPUT AS SELECT\n INPUT.ID ID,\n AVG(INPUT.VALUE) AVG\nFROM INPUT INPUT\nGROUP BY INPUT.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `AVG` DOUBLE", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `VALUE` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "AVG(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS AVG" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CTAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_double/7.1.0_1633125903360/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_double/7.1.0_1633125903360/spec.json new file mode 100644 index 000000000000..80ae96a83af6 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_double/7.1.0_1633125903360/spec.json @@ -0,0 +1,205 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903360, + "path" : "query-validation-tests/average-udaf.json", + "schemas" : { + "CTAS_OUTPUT_0.Aggregate.Project" : { + "schema" : "`ID` STRING KEY, `AVG` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.Aggregate.GroupBy" : { + "schema" : "`ID` STRING KEY, `ID` STRING, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` STRING KEY, `ID` STRING, `VALUE` DOUBLE, `KSQL_AGG_VARIABLE_0` STRUCT<`SUM` DOUBLE, `COUNT` BIGINT>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `AVG` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "average double", + "inputs" : [ { + "topic" : "test_topic", + "key" : "alice", + "value" : { + "value" : -1.8 + } + }, { + "topic" : "test_topic", + "key" : "bob", + "value" : { + "value" : 2.3 + } + }, { + "topic" : "test_topic", + "key" : "alice", + "value" : { + "value" : 9223372036854.775807 + } + }, { + "topic" : "test_topic", + "key" : "alice", + "value" : { + "value" : 100.2 + } + }, { + "topic" : "test_topic", + "key" : "bob", + "value" : { + "value" : -200000.6 + } + }, { + "topic" : "test_topic", + "key" : "bob", + "value" : { + "value" : 0.0 + } + }, { + "topic" : "test_topic", + "key" : "alice", + "value" : { + "value" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "alice", + "value" : { + "AVG" : -1.8 + } + }, { + "topic" : "OUTPUT", + "key" : "bob", + "value" : { + "AVG" : 2.3 + } + }, { + "topic" : "OUTPUT", + "key" : "alice", + "value" : { + "AVG" : 4611686018426.487 + } + }, { + "topic" : "OUTPUT", + "key" : "alice", + "value" : { + "AVG" : 3074457345651.058 + } + }, { + "topic" : "OUTPUT", + "key" : "bob", + "value" : { + "AVG" : -99999.15000000001 + } + }, { + "topic" : "OUTPUT", + "key" : "bob", + "value" : { + "AVG" : -66666.1 + } + }, { + "topic" : "OUTPUT", + "key" : "alice", + "value" : { + "AVG" : 3074457345651.058 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, VALUE double) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE OUTPUT AS SELECT ID, avg(value) AS avg FROM INPUT group by ID;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "TABLE", + "schema" : "`ID` STRING KEY, `AVG` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_OUTPUT_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_double/7.1.0_1633125903360/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_double/7.1.0_1633125903360/topology new file mode 100644 index 000000000000..e000b160c4db --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_double/7.1.0_1633125903360/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: OUTPUT) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_int/7.1.0_1633125903105/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_int/7.1.0_1633125903105/plan.json new file mode 100644 index 000000000000..4d4220ad1ed3 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_int/7.1.0_1633125903105/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, VALUE INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `VALUE` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE OUTPUT AS SELECT\n INPUT.ID ID,\n AVG(INPUT.VALUE) AVG\nFROM INPUT INPUT\nGROUP BY INPUT.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `AVG` DOUBLE", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `VALUE` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "AVG(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS AVG" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CTAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_int/7.1.0_1633125903105/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_int/7.1.0_1633125903105/spec.json new file mode 100644 index 000000000000..41d20361f051 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_int/7.1.0_1633125903105/spec.json @@ -0,0 +1,205 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903105, + "path" : "query-validation-tests/average-udaf.json", + "schemas" : { + "CTAS_OUTPUT_0.Aggregate.Project" : { + "schema" : "`ID` STRING KEY, `AVG` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.Aggregate.GroupBy" : { + "schema" : "`ID` STRING KEY, `ID` STRING, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` STRING KEY, `ID` STRING, `VALUE` INTEGER, `KSQL_AGG_VARIABLE_0` STRUCT<`SUM` INTEGER, `COUNT` BIGINT>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `AVG` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "average int", + "inputs" : [ { + "topic" : "test_topic", + "key" : "alice", + "value" : { + "value" : 1 + } + }, { + "topic" : "test_topic", + "key" : "bob", + "value" : { + "value" : 2 + } + }, { + "topic" : "test_topic", + "key" : "alice", + "value" : { + "value" : 2 + } + }, { + "topic" : "test_topic", + "key" : "alice", + "value" : { + "value" : 2 + } + }, { + "topic" : "test_topic", + "key" : "bob", + "value" : { + "value" : 2 + } + }, { + "topic" : "test_topic", + "key" : "bob", + "value" : { + "value" : 0 + } + }, { + "topic" : "test_topic", + "key" : "alice", + "value" : { + "value" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "alice", + "value" : { + "AVG" : 1.0 + } + }, { + "topic" : "OUTPUT", + "key" : "bob", + "value" : { + "AVG" : 2.0 + } + }, { + "topic" : "OUTPUT", + "key" : "alice", + "value" : { + "AVG" : 1.5 + } + }, { + "topic" : "OUTPUT", + "key" : "alice", + "value" : { + "AVG" : 1.6666666666666667 + } + }, { + "topic" : "OUTPUT", + "key" : "bob", + "value" : { + "AVG" : 2.0 + } + }, { + "topic" : "OUTPUT", + "key" : "bob", + "value" : { + "AVG" : 1.3333333333333333 + } + }, { + "topic" : "OUTPUT", + "key" : "alice", + "value" : { + "AVG" : 1.6666666666666667 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, VALUE integer) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE OUTPUT AS SELECT ID, avg(value) AS avg FROM INPUT group by ID;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "TABLE", + "schema" : "`ID` STRING KEY, `AVG` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_OUTPUT_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_int/7.1.0_1633125903105/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_int/7.1.0_1633125903105/topology new file mode 100644 index 000000000000..e000b160c4db --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_int/7.1.0_1633125903105/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: OUTPUT) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_long/7.1.0_1633125903232/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_long/7.1.0_1633125903232/plan.json new file mode 100644 index 000000000000..e8f17ba34e6a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_long/7.1.0_1633125903232/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, VALUE BIGINT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `VALUE` BIGINT", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE OUTPUT AS SELECT\n INPUT.ID ID,\n AVG(INPUT.VALUE) AVG\nFROM INPUT INPUT\nGROUP BY INPUT.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `AVG` DOUBLE", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `VALUE` BIGINT", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "AVG(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS AVG" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CTAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_long/7.1.0_1633125903232/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_long/7.1.0_1633125903232/spec.json new file mode 100644 index 000000000000..c0140a48e269 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_long/7.1.0_1633125903232/spec.json @@ -0,0 +1,205 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903232, + "path" : "query-validation-tests/average-udaf.json", + "schemas" : { + "CTAS_OUTPUT_0.Aggregate.Project" : { + "schema" : "`ID` STRING KEY, `AVG` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.Aggregate.GroupBy" : { + "schema" : "`ID` STRING KEY, `ID` STRING, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` STRING KEY, `ID` STRING, `VALUE` BIGINT, `KSQL_AGG_VARIABLE_0` STRUCT<`SUM` BIGINT, `COUNT` BIGINT>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `AVG` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "average long", + "inputs" : [ { + "topic" : "test_topic", + "key" : "alice", + "value" : { + "value" : -1 + } + }, { + "topic" : "test_topic", + "key" : "bob", + "value" : { + "value" : 2 + } + }, { + "topic" : "test_topic", + "key" : "alice", + "value" : { + "value" : 9223372036854775807 + } + }, { + "topic" : "test_topic", + "key" : "alice", + "value" : { + "value" : 1 + } + }, { + "topic" : "test_topic", + "key" : "bob", + "value" : { + "value" : -2 + } + }, { + "topic" : "test_topic", + "key" : "bob", + "value" : { + "value" : 0 + } + }, { + "topic" : "test_topic", + "key" : "alice", + "value" : { + "value" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "alice", + "value" : { + "AVG" : -1.0 + } + }, { + "topic" : "OUTPUT", + "key" : "bob", + "value" : { + "AVG" : 2.0 + } + }, { + "topic" : "OUTPUT", + "key" : "alice", + "value" : { + "AVG" : 4611686018427387900 + } + }, { + "topic" : "OUTPUT", + "key" : "alice", + "value" : { + "AVG" : 3074457345618258400 + } + }, { + "topic" : "OUTPUT", + "key" : "bob", + "value" : { + "AVG" : 0.0 + } + }, { + "topic" : "OUTPUT", + "key" : "bob", + "value" : { + "AVG" : 0.0 + } + }, { + "topic" : "OUTPUT", + "key" : "alice", + "value" : { + "AVG" : 3074457345618258400 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, VALUE bigint) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE OUTPUT AS SELECT ID, avg(value) AS avg FROM INPUT group by ID;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "TABLE", + "schema" : "`ID` STRING KEY, `AVG` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_OUTPUT_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_long/7.1.0_1633125903232/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_long/7.1.0_1633125903232/topology new file mode 100644 index 000000000000..e000b160c4db --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/average-udaf_-_average_long/7.1.0_1633125903232/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: OUTPUT) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/average_-_calculate_average_in_select/7.1.0_1633125902969/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/average_-_calculate_average_in_select/7.1.0_1633125902969/plan.json new file mode 100644 index 000000000000..c6f79a1e4c53 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/average_-_calculate_average_in_select/7.1.0_1633125902969/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, NAME STRING, VALUE BIGINT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='DELIMITED');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` BIGINT", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE AVG AS SELECT\n TEST.ID ID,\n (ABS((SUM(TEST.VALUE) / COUNT(TEST.ID))) * 10) AVG\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "AVG", + "schema" : "`ID` BIGINT KEY, `AVG` BIGINT", + "topicName" : "AVG", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "AVG", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "AVG" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` BIGINT", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "SUM(VALUE)", "COUNT(ID)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "(ABS((KSQL_AGG_VARIABLE_0 / KSQL_AGG_VARIABLE_1)) * 10) AS AVG" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "topicName" : "AVG" + }, + "queryId" : "CTAS_AVG_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/average_-_calculate_average_in_select/7.1.0_1633125902969/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/average_-_calculate_average_in_select/7.1.0_1633125902969/spec.json new file mode 100644 index 000000000000..ea2448431f0e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/average_-_calculate_average_in_select/7.1.0_1633125902969/spec.json @@ -0,0 +1,161 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125902969, + "path" : "query-validation-tests/average.json", + "schemas" : { + "CTAS_AVG_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `AVG` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "CTAS_AVG_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "CTAS_AVG_0.AVG" : { + "schema" : "`ID` BIGINT KEY, `AVG` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "CTAS_AVG_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT, `KSQL_AGG_VARIABLE_0` BIGINT, `KSQL_AGG_VARIABLE_1` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "CTAS_AVG_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + } + }, + "testCase" : { + "name" : "calculate average in select", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : "zero,-50" + }, { + "topic" : "test_topic", + "key" : 0, + "value" : "zero,-10" + }, { + "topic" : "test_topic", + "key" : 0, + "value" : "zero,-15" + }, { + "topic" : "test_topic", + "key" : 1, + "value" : "one,100" + }, { + "topic" : "test_topic", + "key" : 1, + "value" : "one,10" + } ], + "outputs" : [ { + "topic" : "AVG", + "key" : 0, + "value" : "500" + }, { + "topic" : "AVG", + "key" : 0, + "value" : "300" + }, { + "topic" : "AVG", + "key" : 0, + "value" : "250" + }, { + "topic" : "AVG", + "key" : 1, + "value" : "1000" + }, { + "topic" : "AVG", + "key" : 1, + "value" : "550" + } ], + "topics" : [ { + "name" : "AVG", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, NAME varchar, VALUE bigint) WITH (kafka_topic='test_topic', value_format='DELIMITED');", "CREATE TABLE AVG AS select ID, abs(sum(value)/count(id)) * 10 as avg from test GROUP BY id;" ], + "post" : { + "sources" : [ { + "name" : "AVG", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `AVG` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + }, { + "name" : "AVG", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_AVG_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/average_-_calculate_average_in_select/7.1.0_1633125902969/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/average_-_calculate_average_in_select/7.1.0_1633125902969/topology new file mode 100644 index 000000000000..357afa2a96d7 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/average_-_calculate_average_in_select/7.1.0_1633125902969/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: AVG) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_inference/7.1.0_1633125904474/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_inference/7.1.0_1633125904474/plan.json new file mode 100644 index 000000000000..b0974c9374d8 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_inference/7.1.0_1633125904474/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ROWKEY ARRAY KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic', KEY_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ROWKEY` ARRAY KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ROWKEY` ARRAY KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ROWKEY` ARRAY KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ROWKEY" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_inference/7.1.0_1633125904474/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_inference/7.1.0_1633125904474/spec.json new file mode 100644 index 000000000000..e29545b49931 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_inference/7.1.0_1633125904474/spec.json @@ -0,0 +1,184 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904474, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ROWKEY` ARRAY KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ROWKEY` ARRAY KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "ARRAY - key - inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : [ "foo" ], + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : [ null ], + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : [ "foo" ], + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : [ null ], + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : { + "type" : "array", + "items" : [ "null", "string" ] + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` ARRAY KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` ARRAY KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "keySchema" : { + "type" : "array", + "items" : [ "null", "string" ] + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : { + "type" : "array", + "items" : [ "null", "string" ] + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_inference/7.1.0_1633125904474/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_inference/7.1.0_1633125904474/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_inference/7.1.0_1633125904474/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_no_inference/7.1.0_1633125904455/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_no_inference/7.1.0_1633125904455/plan.json new file mode 100644 index 000000000000..26bcb07fbe9b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_no_inference/7.1.0_1633125904455/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (K ARRAY KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`K` ARRAY KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`K` ARRAY KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`K` ARRAY KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_no_inference/7.1.0_1633125904455/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_no_inference/7.1.0_1633125904455/spec.json new file mode 100644 index 000000000000..8f91c79d388b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_no_inference/7.1.0_1633125904455/spec.json @@ -0,0 +1,185 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904455, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`K` ARRAY KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` ARRAY KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "ARRAY - key - no inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : [ "foo" ], + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : [ null ], + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : [ "foo" ], + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : [ null ], + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : { + "type" : "array", + "items" : [ "null", "string" ] + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "keySerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (K ARRAY KEY, foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`K` ARRAY KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`K` ARRAY KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : { + "type" : "array", + "items" : [ "null", "string" ] + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : { + "type" : "array", + "items" : [ "null", "string" ] + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_no_inference/7.1.0_1633125904455/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_no_inference/7.1.0_1633125904455/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_ARRAY_-_key_-_no_inference/7.1.0_1633125904455/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_inference/7.1.0_1633125904306/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_inference/7.1.0_1633125904306/plan.json new file mode 100644 index 000000000000..9d8824779e37 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_inference/7.1.0_1633125904306/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ROWKEY BIGINT KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic', KEY_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ROWKEY` BIGINT KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ROWKEY` BIGINT KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ROWKEY` BIGINT KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ROWKEY" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_inference/7.1.0_1633125904306/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_inference/7.1.0_1633125904306/spec.json new file mode 100644 index 000000000000..4eecc5078412 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_inference/7.1.0_1633125904306/spec.json @@ -0,0 +1,163 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904306, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ROWKEY` BIGINT KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ROWKEY` BIGINT KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "BIGINT - key - inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : 998877665544332211, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 998877665544332211, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : "long", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` BIGINT KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` BIGINT KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "keySchema" : "long", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "long", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_inference/7.1.0_1633125904306/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_inference/7.1.0_1633125904306/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_inference/7.1.0_1633125904306/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_no_inference/7.1.0_1633125904287/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_no_inference/7.1.0_1633125904287/plan.json new file mode 100644 index 000000000000..f684e41c7e1f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_no_inference/7.1.0_1633125904287/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (K BIGINT KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`K` BIGINT KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`K` BIGINT KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`K` BIGINT KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_no_inference/7.1.0_1633125904287/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_no_inference/7.1.0_1633125904287/spec.json new file mode 100644 index 000000000000..3b57bf8841b2 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_no_inference/7.1.0_1633125904287/spec.json @@ -0,0 +1,164 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904287, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`K` BIGINT KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` BIGINT KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "BIGINT - key - no inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : 998877665544332211, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 998877665544332211, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : "long", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "keySerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (K BIGINT KEY, foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`K` BIGINT KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`K` BIGINT KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "long", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "long", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_no_inference/7.1.0_1633125904287/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_no_inference/7.1.0_1633125904287/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BIGINT_-_key_-_no_inference/7.1.0_1633125904287/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_inference/7.1.0_1633125904231/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_inference/7.1.0_1633125904231/plan.json new file mode 100644 index 000000000000..29a0ce802324 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_inference/7.1.0_1633125904231/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ROWKEY BOOLEAN KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic', KEY_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ROWKEY` BOOLEAN KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ROWKEY` BOOLEAN KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ROWKEY` BOOLEAN KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ROWKEY" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_inference/7.1.0_1633125904231/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_inference/7.1.0_1633125904231/spec.json new file mode 100644 index 000000000000..08122167400e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_inference/7.1.0_1633125904231/spec.json @@ -0,0 +1,159 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904231, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ROWKEY` BOOLEAN KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ROWKEY` BOOLEAN KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "BOOLEAN - key - inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : true, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : true, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : "boolean", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` BOOLEAN KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` BOOLEAN KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "keySchema" : "boolean", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "boolean", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_inference/7.1.0_1633125904231/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_inference/7.1.0_1633125904231/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_inference/7.1.0_1633125904231/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125904212/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125904212/plan.json new file mode 100644 index 000000000000..0b6aba1e0603 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125904212/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (K BOOLEAN KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`K` BOOLEAN KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`K` BOOLEAN KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`K` BOOLEAN KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125904212/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125904212/spec.json new file mode 100644 index 000000000000..70115c60d6a9 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125904212/spec.json @@ -0,0 +1,160 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904212, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`K` BOOLEAN KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` BOOLEAN KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "BOOLEAN - key - no inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : true, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : true, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : "boolean", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "keySerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (K BOOLEAN KEY, foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`K` BOOLEAN KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`K` BOOLEAN KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "boolean", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "boolean", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125904212/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125904212/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_BOOLEAN_-_key_-_no_inference/7.1.0_1633125904212/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference/7.1.0_1633125904418/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference/7.1.0_1633125904418/plan.json new file mode 100644 index 000000000000..52351491002b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference/7.1.0_1633125904418/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ROWKEY DECIMAL(4, 2) KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic', KEY_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ROWKEY` DECIMAL(4, 2) KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ROWKEY` DECIMAL(4, 2) KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ROWKEY` DECIMAL(4, 2) KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ROWKEY" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference/7.1.0_1633125904418/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference/7.1.0_1633125904418/spec.json new file mode 100644 index 000000000000..17275261a219 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference/7.1.0_1633125904418/spec.json @@ -0,0 +1,184 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904418, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ROWKEY` DECIMAL(4, 2) KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ROWKEY` DECIMAL(4, 2) KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "DECIMAL - key - inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : 65.21, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 65.21, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : { + "type" : "bytes", + "logicalType" : "decimal", + "precision" : 4, + "scale" : 2 + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` DECIMAL(4, 2) KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` DECIMAL(4, 2) KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "keySchema" : { + "type" : "bytes", + "scale" : 2, + "precision" : 4, + "connect.version" : 1, + "connect.parameters" : { + "scale" : "2", + "connect.decimal.precision" : "4" + }, + "connect.name" : "org.apache.kafka.connect.data.Decimal", + "logicalType" : "decimal" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : { + "type" : "bytes", + "scale" : 2, + "precision" : 4, + "logicalType" : "decimal" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference/7.1.0_1633125904418/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference/7.1.0_1633125904418/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference/7.1.0_1633125904418/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference_-_default_precision/7.1.0_1633125904436/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference_-_default_precision/7.1.0_1633125904436/plan.json new file mode 100644 index 000000000000..dd156ece1fe6 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference_-_default_precision/7.1.0_1633125904436/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ROWKEY DECIMAL(64, 2) KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic', KEY_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ROWKEY` DECIMAL(64, 2) KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ROWKEY` DECIMAL(64, 2) KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ROWKEY` DECIMAL(64, 2) KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ROWKEY" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference_-_default_precision/7.1.0_1633125904436/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference_-_default_precision/7.1.0_1633125904436/spec.json new file mode 100644 index 000000000000..ac686fee756f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference_-_default_precision/7.1.0_1633125904436/spec.json @@ -0,0 +1,182 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904436, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ROWKEY` DECIMAL(64, 2) KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ROWKEY` DECIMAL(64, 2) KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "DECIMAL - key - inference - default precision", + "inputs" : [ { + "topic" : "input_topic", + "key" : 65.21, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 65.21, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : { + "type" : "bytes", + "logicalType" : "decimal", + "scale" : 2 + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` DECIMAL(64, 2) KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` DECIMAL(64, 2) KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "keySchema" : { + "type" : "bytes", + "scale" : 2, + "precision" : 64, + "connect.version" : 1, + "connect.parameters" : { + "scale" : "2" + }, + "connect.name" : "org.apache.kafka.connect.data.Decimal", + "logicalType" : "decimal" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : { + "type" : "bytes", + "scale" : 2, + "precision" : 64, + "logicalType" : "decimal" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference_-_default_precision/7.1.0_1633125904436/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference_-_default_precision/7.1.0_1633125904436/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_inference_-_default_precision/7.1.0_1633125904436/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125904398/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125904398/plan.json new file mode 100644 index 000000000000..f605eb20c566 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125904398/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (K DECIMAL(4, 2) KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`K` DECIMAL(4, 2) KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`K` DECIMAL(4, 2) KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`K` DECIMAL(4, 2) KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125904398/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125904398/spec.json new file mode 100644 index 000000000000..139db933e933 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125904398/spec.json @@ -0,0 +1,190 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904398, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`K` DECIMAL(4, 2) KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` DECIMAL(4, 2) KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "DECIMAL - key - no inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : 65.21, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 65.21, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : { + "type" : "bytes", + "scale" : 2, + "precision" : 4, + "connect.parameters" : { + "scale" : "2", + "connect.decimal.precision" : "4" + }, + "connect.name" : "org.apache.kafka.connect.data.Decimal", + "logicalType" : "decimal" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "keySerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (K DECIMAL(4,2) KEY, foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`K` DECIMAL(4, 2) KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`K` DECIMAL(4, 2) KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : { + "type" : "bytes", + "scale" : 2, + "precision" : 4, + "connect.version" : 1, + "connect.parameters" : { + "scale" : "2", + "connect.decimal.precision" : "4" + }, + "connect.name" : "org.apache.kafka.connect.data.Decimal", + "logicalType" : "decimal" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : { + "type" : "bytes", + "scale" : 2, + "precision" : 4, + "logicalType" : "decimal" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125904398/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125904398/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DECIMAL_-_key_-_no_inference/7.1.0_1633125904398/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_inference/7.1.0_1633125904342/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_inference/7.1.0_1633125904342/plan.json new file mode 100644 index 000000000000..3e18a9dfffdc --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_inference/7.1.0_1633125904342/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ROWKEY DOUBLE KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic', KEY_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ROWKEY` DOUBLE KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ROWKEY` DOUBLE KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ROWKEY` DOUBLE KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ROWKEY" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_inference/7.1.0_1633125904342/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_inference/7.1.0_1633125904342/spec.json new file mode 100644 index 000000000000..4ab032e841de --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_inference/7.1.0_1633125904342/spec.json @@ -0,0 +1,163 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904342, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ROWKEY` DOUBLE KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ROWKEY` DOUBLE KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "DOUBLE - key - inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : 654.321, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 654.321, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : "double", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` DOUBLE KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` DOUBLE KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "keySchema" : "double", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "double", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_inference/7.1.0_1633125904342/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_inference/7.1.0_1633125904342/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_inference/7.1.0_1633125904342/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125904324/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125904324/plan.json new file mode 100644 index 000000000000..504e9aa80ad2 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125904324/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (K DOUBLE KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`K` DOUBLE KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`K` DOUBLE KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`K` DOUBLE KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125904324/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125904324/spec.json new file mode 100644 index 000000000000..f16a9b5de3ed --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125904324/spec.json @@ -0,0 +1,164 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904324, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`K` DOUBLE KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` DOUBLE KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "DOUBLE - key - no inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : 654.321, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 654.321, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : "double", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "keySerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (K DOUBLE KEY, foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`K` DOUBLE KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`K` DOUBLE KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "double", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "double", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125904324/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125904324/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_DOUBLE_-_key_-_no_inference/7.1.0_1633125904324/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_inference/7.1.0_1633125904268/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_inference/7.1.0_1633125904268/plan.json new file mode 100644 index 000000000000..5336da061e85 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_inference/7.1.0_1633125904268/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ROWKEY INTEGER KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic', KEY_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ROWKEY` INTEGER KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ROWKEY` INTEGER KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ROWKEY` INTEGER KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ROWKEY" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_inference/7.1.0_1633125904268/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_inference/7.1.0_1633125904268/spec.json new file mode 100644 index 000000000000..aae415b0ae74 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_inference/7.1.0_1633125904268/spec.json @@ -0,0 +1,175 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904268, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ROWKEY` INTEGER KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ROWKEY` INTEGER KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "INT - key - inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : 10, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : 12, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 10, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : 12, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : "int", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` INTEGER KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` INTEGER KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "keySchema" : "int", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "int", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_inference/7.1.0_1633125904268/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_inference/7.1.0_1633125904268/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_inference/7.1.0_1633125904268/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125904554/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125904554/plan.json new file mode 100644 index 000000000000..5bc4f31a84fd --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125904554/plan.json @@ -0,0 +1,184 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ROWKEY INTEGER KEY, ROWVAL INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic', KEY_SCHEMA_ID=1, VALUE_SCHEMA_ID=1, WRAP_SINGLE_VALUE=false);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ROWKEY` INTEGER KEY, `ROWVAL` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ROWKEY` INTEGER KEY, `ROWVAL` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ROWKEY` INTEGER KEY, `ROWVAL` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ROWKEY" ], + "selectExpressions" : [ "ROWVAL AS ROWVAL" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125904554/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125904554/spec.json new file mode 100644 index 000000000000..d07b70d0d37c --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125904554/spec.json @@ -0,0 +1,149 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904554, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ROWKEY` INTEGER KEY, `ROWVAL` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ROWKEY` INTEGER KEY, `ROWVAL` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "INT - key - key and anonymous value inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : 10, + "value" : 10 + }, { + "topic" : "input_topic", + "key" : 12, + "value" : null + }, { + "topic" : "input_topic", + "key" : null, + "value" : 10 + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 10, + "value" : { + "ROWVAL" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : 12, + "value" : null + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "ROWVAL" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : "int", + "valueSchema" : "int", + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT WITH (kafka_topic='input_topic', format='AVRO', wrap_single_value=false);", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` INTEGER KEY, `ROWVAL` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` INTEGER KEY, `ROWVAL` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 1, + "keySchema" : "int", + "valueSchema" : "int" + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "int", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ROWVAL", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125904554/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125904554/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_anonymous_value_inference/7.1.0_1633125904554/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125904535/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125904535/plan.json new file mode 100644 index 000000000000..41299e83a1f0 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125904535/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ROWKEY INTEGER KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic', KEY_SCHEMA_ID=1, VALUE_SCHEMA_ID=2);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ROWKEY` INTEGER KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ROWKEY` INTEGER KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ROWKEY` INTEGER KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ROWKEY" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125904535/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125904535/spec.json new file mode 100644 index 000000000000..9a0e046ee1b0 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125904535/spec.json @@ -0,0 +1,170 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904535, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ROWKEY` INTEGER KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ROWKEY` INTEGER KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "INT - key - key and value inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : 10, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : 12, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 10, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : 12, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : "int", + "valueSchema" : { + "type" : "record", + "name" : "most_recent_value_schema_at_SR", + "fields" : [ { + "name" : "FOO", + "type" : "int" + } ] + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` INTEGER KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` INTEGER KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "keySchema" : "int", + "valueSchema" : { + "type" : "record", + "name" : "most_recent_value_schema_at_SR", + "fields" : [ { + "name" : "FOO", + "type" : "int" + } ], + "connect.name" : "most_recent_value_schema_at_SR" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "int", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125904535/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125904535/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_key_and_value_inference/7.1.0_1633125904535/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_no_inference/7.1.0_1633125904250/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_no_inference/7.1.0_1633125904250/plan.json new file mode 100644 index 000000000000..c189a6b91f61 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_no_inference/7.1.0_1633125904250/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (K INTEGER KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`K` INTEGER KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`K` INTEGER KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`K` INTEGER KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_no_inference/7.1.0_1633125904250/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_no_inference/7.1.0_1633125904250/spec.json new file mode 100644 index 000000000000..e24d5987255e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_no_inference/7.1.0_1633125904250/spec.json @@ -0,0 +1,176 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904250, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`K` INTEGER KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` INTEGER KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "INT - key - no inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : 10, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : 12, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 10, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : 12, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : "int", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "keySerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (K INT KEY, foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`K` INTEGER KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`K` INTEGER KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "int", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "int", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_no_inference/7.1.0_1633125904250/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_no_inference/7.1.0_1633125904250/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_INT_-_key_-_no_inference/7.1.0_1633125904250/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_inference/7.1.0_1633125904379/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_inference/7.1.0_1633125904379/plan.json new file mode 100644 index 000000000000..b4d6dec814a0 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_inference/7.1.0_1633125904379/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ROWKEY STRING KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic', KEY_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ROWKEY` STRING KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ROWKEY` STRING KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ROWKEY` STRING KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ROWKEY" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_inference/7.1.0_1633125904379/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_inference/7.1.0_1633125904379/spec.json new file mode 100644 index 000000000000..d116fc44a812 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_inference/7.1.0_1633125904379/spec.json @@ -0,0 +1,163 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904379, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ROWKEY` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ROWKEY` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "STRING - key - inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : "foo", + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "foo", + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : "string", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "keySchema" : "string", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "string", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_inference/7.1.0_1633125904379/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_inference/7.1.0_1633125904379/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_inference/7.1.0_1633125904379/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_no_inference/7.1.0_1633125904361/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_no_inference/7.1.0_1633125904361/plan.json new file mode 100644 index 000000000000..3ef670c81bb5 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_no_inference/7.1.0_1633125904361/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (K STRING KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`K` STRING KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_no_inference/7.1.0_1633125904361/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_no_inference/7.1.0_1633125904361/spec.json new file mode 100644 index 000000000000..11326a680ea1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_no_inference/7.1.0_1633125904361/spec.json @@ -0,0 +1,164 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904361, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "STRING - key - no inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : "foo", + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "foo", + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : "string", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "keySerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (K VARCHAR KEY, foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "string", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : "string", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_no_inference/7.1.0_1633125904361/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_no_inference/7.1.0_1633125904361/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRING_-_key_-_no_inference/7.1.0_1633125904361/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_inference/7.1.0_1633125904516/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_inference/7.1.0_1633125904516/plan.json new file mode 100644 index 000000000000..7cb1f72d29db --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_inference/7.1.0_1633125904516/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ROWKEY STRUCT KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic', KEY_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ROWKEY` STRUCT<`F1` STRING> KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ROWKEY` STRUCT<`F1` STRING> KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ROWKEY` STRUCT<`F1` STRING> KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ROWKEY" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_inference/7.1.0_1633125904516/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_inference/7.1.0_1633125904516/spec.json new file mode 100644 index 000000000000..7d835a74a59c --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_inference/7.1.0_1633125904516/spec.json @@ -0,0 +1,208 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904516, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ROWKEY` STRUCT<`F1` STRING> KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ROWKEY` STRUCT<`F1` STRING> KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "STRUCT - key - inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : { + "F1" : "foo" + }, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : { + "F1" : null + }, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : { + "F1" : "foo" + }, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : { + "F1" : null + }, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : { + "type" : "record", + "name" : "key", + "fields" : [ { + "name" : "F1", + "type" : [ "null", "string" ] + } ] + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` STRUCT<`F1` STRING> KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ROWKEY` STRUCT<`F1` STRING> KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "keySchema" : { + "type" : "record", + "name" : "key", + "fields" : [ { + "name" : "F1", + "type" : [ "null", "string" ], + "default" : null + } ], + "connect.name" : "key" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : { + "type" : "record", + "name" : "OutputKey", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "F1", + "type" : [ "null", "string" ], + "default" : null + } ] + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_inference/7.1.0_1633125904516/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_inference/7.1.0_1633125904516/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_inference/7.1.0_1633125904516/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_no_inference/7.1.0_1633125904494/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_no_inference/7.1.0_1633125904494/plan.json new file mode 100644 index 000000000000..1891c5ebedc3 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_no_inference/7.1.0_1633125904494/plan.json @@ -0,0 +1,182 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (K STRUCT KEY, FOO INTEGER) WITH (FORMAT='AVRO', KAFKA_TOPIC='input_topic');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`K` STRUCT<`F1` STRING> KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`K` STRUCT<`F1` STRING> KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`K` STRUCT<`F1` STRING> KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + } + }, + "valueFormat" : { + "format" : "AVRO" + }, + "keyFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_no_inference/7.1.0_1633125904494/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_no_inference/7.1.0_1633125904494/spec.json new file mode 100644 index 000000000000..1b154fe157e3 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_no_inference/7.1.0_1633125904494/spec.json @@ -0,0 +1,213 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904494, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`K` STRUCT<`F1` STRING> KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` STRUCT<`F1` STRING> KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "STRUCT - key - no inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : { + "F1" : "foo" + }, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : { + "F1" : null + }, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : { + "F1" : "foo" + }, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : { + "F1" : null + }, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "keySchema" : { + "type" : "record", + "name" : "InputKey", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "F1", + "type" : [ "null", "string" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "keyFormat" : "AVRO", + "valueFormat" : "AVRO", + "replicas" : 1, + "keySerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (K STRUCT KEY, foo INT) WITH (kafka_topic='input_topic', format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`K` STRUCT<`F1` STRING> KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`K` STRUCT<`F1` STRING> KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "AVRO" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ "UNWRAP_SINGLES" ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : { + "type" : "record", + "name" : "InputKey", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "F1", + "type" : [ "null", "string" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.InputKey" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "AVRO", + "properties" : { + "fullSchemaName" : "io.confluent.ksql.avro_schemas.OutputKey" + }, + "features" : [ "UNWRAP_SINGLES" ] + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "keySchema" : { + "type" : "record", + "name" : "OutputKey", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "F1", + "type" : [ "null", "string" ], + "default" : null + } ] + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_no_inference/7.1.0_1633125904494/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_no_inference/7.1.0_1633125904494/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_STRUCT_-_key_-_no_inference/7.1.0_1633125904494/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value/7.1.0_1633125903716/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value/7.1.0_1633125903716/plan.json new file mode 100644 index 000000000000..b9b5f3024a86 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value/7.1.0_1633125903716/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (FOO ARRAY) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', WRAP_SINGLE_VALUE=false);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`FOO` ARRAY", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`FOO` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`FOO` ARRAY", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value/7.1.0_1633125903716/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value/7.1.0_1633125903716/spec.json new file mode 100644 index 000000000000..bf898bdeceb5 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value/7.1.0_1633125903716/spec.json @@ -0,0 +1,139 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903716, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "deserialize anonymous array - value", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : [ "a", "b", "c" ] + }, { + "topic" : "input_topic", + "key" : null, + "value" : [ "a", "b", null ] + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : [ "a", "b", "c" ] + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : [ "a", "b", null ] + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "array", + "items" : [ "null", "string" ] + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "valueSerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo ARRAY) WITH (WRAP_SINGLE_VALUE=false, kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 1, + "valueSchema" : { + "type" : "array", + "items" : [ "null", "string" ] + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "string" ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value/7.1.0_1633125903716/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value/7.1.0_1633125903716/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value/7.1.0_1633125903716/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_non-nullable/7.1.0_1633125903776/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_non-nullable/7.1.0_1633125903776/plan.json new file mode 100644 index 000000000000..b9b5f3024a86 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_non-nullable/7.1.0_1633125903776/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (FOO ARRAY) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', WRAP_SINGLE_VALUE=false);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`FOO` ARRAY", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`FOO` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`FOO` ARRAY", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_non-nullable/7.1.0_1633125903776/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_non-nullable/7.1.0_1633125903776/spec.json new file mode 100644 index 000000000000..a10248d7effd --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_non-nullable/7.1.0_1633125903776/spec.json @@ -0,0 +1,121 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903776, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "deserialize anonymous array - value - non-nullable", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : [ "a", "b", "c" ] + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : [ "a", "b", "c" ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "array", + "items" : "string" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "valueSerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo ARRAY) WITH (WRAP_SINGLE_VALUE=false, kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 1, + "valueSchema" : { + "type" : "array", + "items" : "string" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "string" ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_non-nullable/7.1.0_1633125903776/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_non-nullable/7.1.0_1633125903776/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_non-nullable/7.1.0_1633125903776/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125903739/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125903739/plan.json new file mode 100644 index 000000000000..b9b5f3024a86 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125903739/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (FOO ARRAY) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', WRAP_SINGLE_VALUE=false);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`FOO` ARRAY", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`FOO` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`FOO` ARRAY", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125903739/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125903739/spec.json new file mode 100644 index 000000000000..d5ffb1f35bcd --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125903739/spec.json @@ -0,0 +1,121 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903739, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "deserialize anonymous array - value - with coercion", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : [ 1, 2, 3 ] + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : [ "1", "2", "3" ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "array", + "items" : [ "null", "string" ] + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "valueSerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo ARRAY) WITH (WRAP_SINGLE_VALUE=false, kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 1, + "valueSchema" : { + "type" : "array", + "items" : [ "null", "string" ] + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "string" ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125903739/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125903739/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_array_-_value_-_with_coercion/7.1.0_1633125903739/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value/7.1.0_1633125903793/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value/7.1.0_1633125903793/plan.json new file mode 100644 index 000000000000..63fe6eee1b09 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value/7.1.0_1633125903793/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (FOO MAP) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', WRAP_SINGLE_VALUE=false);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`FOO` MAP", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`FOO` MAP", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`FOO` MAP", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value/7.1.0_1633125903793/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value/7.1.0_1633125903793/spec.json new file mode 100644 index 000000000000..2018655ec11a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value/7.1.0_1633125903793/spec.json @@ -0,0 +1,168 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903793, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "deserialize anonymous map - value", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "a" : 1, + "b" : 2, + "c" : 3 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "a" : 1, + "b" : 2, + "c" : null + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : { + "a" : 1, + "b" : 2, + "c" : 3 + } + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : { + "a" : 1, + "b" : 2, + "c" : null + } + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "map", + "values" : [ "null", "int" ] + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "valueSerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo MAP) WITH (WRAP_SINGLE_VALUE=false, kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 1, + "valueSchema" : { + "type" : "map", + "values" : [ "null", "int" ] + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : { + "type" : "record", + "name" : "KsqlDataSourceSchema_FOO", + "fields" : [ { + "name" : "key", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "value", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.internal.type" : "MapEntry" + } + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value/7.1.0_1633125903793/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value/7.1.0_1633125903793/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value/7.1.0_1633125903793/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_non-nullable/7.1.0_1633125903830/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_non-nullable/7.1.0_1633125903830/plan.json new file mode 100644 index 000000000000..63fe6eee1b09 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_non-nullable/7.1.0_1633125903830/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (FOO MAP) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', WRAP_SINGLE_VALUE=false);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`FOO` MAP", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`FOO` MAP", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`FOO` MAP", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_non-nullable/7.1.0_1633125903830/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_non-nullable/7.1.0_1633125903830/spec.json new file mode 100644 index 000000000000..6864bdc003f9 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_non-nullable/7.1.0_1633125903830/spec.json @@ -0,0 +1,142 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903830, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "deserialize anonymous map - value - non-nullable", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "a" : 1, + "b" : 2, + "c" : 3 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : { + "a" : 1, + "b" : 2, + "c" : 3 + } + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "map", + "values" : "int" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "valueSerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo MAP) WITH (WRAP_SINGLE_VALUE=false, kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 1, + "valueSchema" : { + "type" : "map", + "values" : "int" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : { + "type" : "record", + "name" : "KsqlDataSourceSchema_FOO", + "fields" : [ { + "name" : "key", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "value", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.internal.type" : "MapEntry" + } + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_non-nullable/7.1.0_1633125903830/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_non-nullable/7.1.0_1633125903830/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_non-nullable/7.1.0_1633125903830/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_with_coercion_-_AVRO/7.1.0_1633125903813/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_with_coercion_-_AVRO/7.1.0_1633125903813/plan.json new file mode 100644 index 000000000000..4079338956fb --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_with_coercion_-_AVRO/7.1.0_1633125903813/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (FOO MAP) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', WRAP_SINGLE_VALUE=false);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`FOO` MAP", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`FOO` MAP", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`FOO` MAP", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_with_coercion_-_AVRO/7.1.0_1633125903813/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_with_coercion_-_AVRO/7.1.0_1633125903813/spec.json new file mode 100644 index 000000000000..86ea92035052 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_with_coercion_-_AVRO/7.1.0_1633125903813/spec.json @@ -0,0 +1,142 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903813, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "deserialize anonymous map - value - with coercion - AVRO", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "a" : 1, + "b" : 2, + "c" : 3 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : { + "a" : "1", + "b" : "2", + "c" : "3" + } + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "map", + "values" : [ "null", "int" ] + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "valueSerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (foo MAP) WITH (WRAP_SINGLE_VALUE=false, kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 1, + "valueSchema" : { + "type" : "map", + "values" : [ "null", "int" ] + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : { + "type" : "record", + "name" : "KsqlDataSourceSchema_FOO", + "fields" : [ { + "name" : "key", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "value", + "type" : [ "null", "string" ], + "default" : null + } ], + "connect.internal.type" : "MapEntry" + } + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_with_coercion_-_AVRO/7.1.0_1633125903813/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_with_coercion_-_AVRO/7.1.0_1633125903813/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_map_-_value_-_with_coercion_-_AVRO/7.1.0_1633125903813/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125903485/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125903485/plan.json new file mode 100644 index 000000000000..29f120274094 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125903485/plan.json @@ -0,0 +1,168 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (K STRING KEY, FOO INTEGER) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', WRAP_SINGLE_VALUE=false);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`K` STRING KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125903485/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125903485/spec.json new file mode 100644 index 000000000000..72ccd2cc5fbd --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125903485/spec.json @@ -0,0 +1,120 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903485, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "deserialize anonymous primitive - value", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : 10 + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : "int", + "valueFormat" : "AVRO", + "replicas" : 1, + "valueSerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (K STRING KEY, foo INT) WITH (WRAP_SINGLE_VALUE=false, kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 1, + "valueSchema" : "int" + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125903485/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125903485/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value/7.1.0_1633125903485/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125903676/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125903676/plan.json new file mode 100644 index 000000000000..197ae41d9431 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125903676/plan.json @@ -0,0 +1,168 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (K STRING KEY, FOO STRING) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', WRAP_SINGLE_VALUE=false);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`K` STRING KEY, `FOO` STRING", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`K` STRING KEY, `FOO` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`K` STRING KEY, `FOO` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125903676/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125903676/spec.json new file mode 100644 index 000000000000..f0a2ca009c82 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125903676/spec.json @@ -0,0 +1,112 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903676, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`K` STRING KEY, `FOO` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` STRING KEY, `FOO` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "deserialize anonymous primitive - value - with coercion", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : 10 + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : "10" + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : "int", + "valueFormat" : "AVRO", + "replicas" : 1, + "valueSerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT (K STRING KEY, foo STRING) WITH (WRAP_SINGLE_VALUE=false, kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`K` STRING KEY, `FOO` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`K` STRING KEY, `FOO` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 1, + "valueSchema" : "int" + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "string" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125903676/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125903676/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_primitive_-_value_-_with_coercion/7.1.0_1633125903676/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_inference/7.1.0_1633125903985/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_inference/7.1.0_1633125903985/plan.json new file mode 100644 index 000000000000..7ef4853286ea --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_inference/7.1.0_1633125903985/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ROWVAL STRUCT) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', VALUE_SCHEMA_ID=1, WRAP_SINGLE_VALUE=false);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ROWVAL` STRUCT<`F0` INTEGER>", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ROWVAL` STRUCT<`F0` INTEGER>", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`ROWVAL` STRUCT<`F0` INTEGER>", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "ROWVAL AS ROWVAL" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_inference/7.1.0_1633125903985/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_inference/7.1.0_1633125903985/spec.json new file mode 100644 index 000000000000..1101c8e4b55c --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_inference/7.1.0_1633125903985/spec.json @@ -0,0 +1,161 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903985, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ROWVAL` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ROWVAL` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "deserialize anonymous struct - value - inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "F0" : 1 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "F0" : null + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "ROWVAL" : { + "F0" : 1 + } + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "ROWVAL" : { + "F0" : null + } + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "record", + "name" : "most_recent_value_schema_at_SR", + "fields" : [ { + "name" : "F0", + "type" : [ "null", "int" ] + } ] + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT WITH (kafka_topic='input_topic', value_format='AVRO', wrap_single_value=false);", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ROWVAL` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ROWVAL` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 1, + "valueSchema" : { + "type" : "record", + "name" : "most_recent_value_schema_at_SR", + "fields" : [ { + "name" : "F0", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "most_recent_value_schema_at_SR" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ROWVAL", + "type" : [ "null", { + "type" : "record", + "name" : "KsqlDataSourceSchema_ROWVAL", + "fields" : [ { + "name" : "F0", + "type" : [ "null", "int" ], + "default" : null + } ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_inference/7.1.0_1633125903985/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_inference/7.1.0_1633125903985/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_inference/7.1.0_1633125903985/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_no_inference/7.1.0_1633125903966/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_no_inference/7.1.0_1633125903966/plan.json new file mode 100644 index 000000000000..f5a8942e9f8f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_no_inference/7.1.0_1633125903966/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (FOO STRUCT) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', WRAP_SINGLE_VALUE=false);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "sourceSchema" : "`FOO` STRUCT<`F0` INTEGER>", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_no_inference/7.1.0_1633125903966/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_no_inference/7.1.0_1633125903966/spec.json new file mode 100644 index 000000000000..777c4d8c0934 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_no_inference/7.1.0_1633125903966/spec.json @@ -0,0 +1,166 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903966, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "deserialize anonymous struct - value - no inference", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "F0" : 1 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "F0" : null + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : { + "F0" : 1 + } + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : { + "F0" : null + } + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "F0", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "valueSerdeFeatures" : [ "UNWRAP_SINGLES" ], + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (foo STRUCT) WITH (kafka_topic='input_topic', value_format='AVRO', wrap_single_value=false);", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "F0", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "record", + "name" : "KsqlDataSourceSchema_FOO", + "fields" : [ { + "name" : "F0", + "type" : [ "null", "int" ], + "default" : null + } ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_no_inference/7.1.0_1633125903966/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_no_inference/7.1.0_1633125903966/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_anonymous_struct_-_value_-_no_inference/7.1.0_1633125903966/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_array_-_value/7.1.0_1633125903757/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_array_-_value/7.1.0_1633125903757/plan.json new file mode 100644 index 000000000000..530a92d2f95c --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_array_-_value/7.1.0_1633125903757/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (FOO ARRAY) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', WRAP_SINGLE_VALUE=true);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`FOO` ARRAY", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "WRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`FOO` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "WRAP_SINGLES" ] + }, + "sourceSchema" : "`FOO` ARRAY", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_array_-_value/7.1.0_1633125903757/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_array_-_value/7.1.0_1633125903757/spec.json new file mode 100644 index 000000000000..de1d9e78daf8 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_array_-_value/7.1.0_1633125903757/spec.json @@ -0,0 +1,175 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903757, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "WRAP_SINGLES" ] + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "deserialize nested array - value", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : [ "a", "b", "c" ] + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : [ "a", "b", null ] + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : null + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : [ "a", "b", "c" ] + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : [ "a", "b", null ] + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : null + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "string" ] + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "valueSerdeFeatures" : [ "WRAP_SINGLES" ], + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (foo ARRAY) WITH (WRAP_SINGLE_VALUE=true, kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "WRAP_SINGLES" ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "WRAP_SINGLES" ] + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "string" ] + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "string" ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_array_-_value/7.1.0_1633125903757/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_array_-_value/7.1.0_1633125903757/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_array_-_value/7.1.0_1633125903757/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_primitive_-_value/7.1.0_1633125903695/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_primitive_-_value/7.1.0_1633125903695/plan.json new file mode 100644 index 000000000000..b53550f9aebc --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_primitive_-_value/7.1.0_1633125903695/plan.json @@ -0,0 +1,168 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (K STRING KEY, FOO INTEGER) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', WRAP_SINGLE_VALUE=true);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "WRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "WRAP_SINGLES" ] + }, + "sourceSchema" : "`K` STRING KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_primitive_-_value/7.1.0_1633125903695/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_primitive_-_value/7.1.0_1633125903695/spec.json new file mode 100644 index 000000000000..ae94ec73482d --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_primitive_-_value/7.1.0_1633125903695/spec.json @@ -0,0 +1,142 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903695, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "WRAP_SINGLES" ] + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "deserialize nested primitive - value", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : 10 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "valueSerdeFeatures" : [ "WRAP_SINGLES" ], + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (K STRING KEY, foo INT) WITH (WRAP_SINGLE_VALUE=true, kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "WRAP_SINGLES" ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`K` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "WRAP_SINGLES" ] + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_primitive_-_value/7.1.0_1633125903695/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_primitive_-_value/7.1.0_1633125903695/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_deserialize_nested_primitive_-_value/7.1.0_1633125903695/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_array_-_value/7.1.0_1633125903884/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_array_-_value/7.1.0_1633125903884/plan.json new file mode 100644 index 000000000000..c00fee3153f1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_array_-_value/7.1.0_1633125903884/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (FOO ARRAY) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`FOO` ARRAY", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=false) AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`FOO` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`FOO` ARRAY", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_array_-_value/7.1.0_1633125903884/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_array_-_value/7.1.0_1633125903884/spec.json new file mode 100644 index 000000000000..73ed6e5f56ae --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_array_-_value/7.1.0_1633125903884/spec.json @@ -0,0 +1,164 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903884, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + } + }, + "testCase" : { + "name" : "serialize anonymous array - value", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : [ 12, 34, 999 ] + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : [ 12, 34, null ] + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : null + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : [ 12, 34, 999 ] + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : [ 12, 34, null ] + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "valueSchema" : { + "type" : "array", + "items" : [ "null", "long" ] + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "long" ] + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (foo ARRAY) WITH (kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=false) AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "long" ] + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 4, + "valueSchema" : { + "type" : "array", + "items" : [ "null", "long" ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_array_-_value/7.1.0_1633125903884/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_array_-_value/7.1.0_1633125903884/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_array_-_value/7.1.0_1633125903884/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_map_-_value/7.1.0_1633125903924/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_map_-_value/7.1.0_1633125903924/plan.json new file mode 100644 index 000000000000..64c87c9d1db0 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_map_-_value/7.1.0_1633125903924/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (FOO MAP) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`FOO` MAP", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=false) AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`FOO` MAP", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`FOO` MAP", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_map_-_value/7.1.0_1633125903924/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_map_-_value/7.1.0_1633125903924/spec.json new file mode 100644 index 000000000000..47803972388e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_map_-_value/7.1.0_1633125903924/spec.json @@ -0,0 +1,234 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903924, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + } + }, + "testCase" : { + "name" : "serialize anonymous map - value", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : { + "a" : 1.1, + "b" : 2.2, + "c" : 3.456 + } + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : { + "a" : 1.1, + "b" : 2.2, + "c" : null + } + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : null + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "a" : 1.1, + "b" : 2.2, + "c" : 3.456 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "a" : 1.1, + "b" : 2.2, + "c" : null + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "valueSchema" : { + "type" : "array", + "items" : { + "type" : "record", + "name" : "test", + "fields" : [ { + "name" : "key", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "value", + "type" : [ "null", "double" ], + "default" : null + } ] + } + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : { + "type" : "record", + "name" : "KsqlDataSourceSchema_FOO", + "fields" : [ { + "name" : "key", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "value", + "type" : [ "null", "double" ], + "default" : null + } ], + "connect.internal.type" : "MapEntry" + }, + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema_FOO" + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (foo MAP) WITH (kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=false) AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : { + "type" : "record", + "name" : "KsqlDataSourceSchema_FOO", + "fields" : [ { + "name" : "key", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "value", + "type" : [ "null", "double" ], + "default" : null + } ], + "connect.internal.type" : "MapEntry" + }, + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema_FOO" + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 4, + "valueSchema" : { + "type" : "array", + "items" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "key", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "value", + "type" : [ "null", "double" ], + "default" : null + } ], + "connect.internal.type" : "MapEntry" + } + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_map_-_value/7.1.0_1633125903924/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_map_-_value/7.1.0_1633125903924/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_map_-_value/7.1.0_1633125903924/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_primitive_-_value/7.1.0_1633125903848/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_primitive_-_value/7.1.0_1633125903848/plan.json new file mode 100644 index 000000000000..43a3be1a70fb --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_primitive_-_value/7.1.0_1633125903848/plan.json @@ -0,0 +1,168 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (K STRING KEY, FOO BOOLEAN) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`K` STRING KEY, `FOO` BOOLEAN", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=false) AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`K` STRING KEY, `FOO` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`K` STRING KEY, `FOO` BOOLEAN", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_primitive_-_value/7.1.0_1633125903848/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_primitive_-_value/7.1.0_1633125903848/spec.json new file mode 100644 index 000000000000..8040a00ea968 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_primitive_-_value/7.1.0_1633125903848/spec.json @@ -0,0 +1,142 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903848, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`K` STRING KEY, `FOO` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` STRING KEY, `FOO` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + } + }, + "testCase" : { + "name" : "serialize anonymous primitive - value", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : true + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : null + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : true + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "valueSchema" : "boolean", + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "boolean" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (K STRING KEY, foo BOOLEAN) WITH (kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=false) AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`K` STRING KEY, `FOO` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`K` STRING KEY, `FOO` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "boolean" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 4, + "valueSchema" : "boolean" + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_primitive_-_value/7.1.0_1633125903848/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_primitive_-_value/7.1.0_1633125903848/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_primitive_-_value/7.1.0_1633125903848/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_struct_-_value/7.1.0_1633125904004/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_struct_-_value/7.1.0_1633125904004/plan.json new file mode 100644 index 000000000000..60fe7ff88c3e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_struct_-_value/7.1.0_1633125904004/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (FOO STRUCT) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=false) AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`FOO` STRUCT<`F0` INTEGER>", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "UNWRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_struct_-_value/7.1.0_1633125904004/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_struct_-_value/7.1.0_1633125904004/spec.json new file mode 100644 index 000000000000..c1981fdbfe0e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_struct_-_value/7.1.0_1633125904004/spec.json @@ -0,0 +1,185 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904004, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + } + } + }, + "testCase" : { + "name" : "serialize anonymous struct - value", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : { + "F0" : 1 + } + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : { + "F0" : null + } + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : null + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "F0" : 1 + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "F0" : null + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "record", + "name" : "KsqlDataSourceSchema_FOO", + "fields" : [ { + "name" : "F0", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema_FOO" + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (foo STRUCT) WITH (kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=false) AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "UNWRAP_SINGLES" ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "record", + "name" : "KsqlDataSourceSchema_FOO", + "fields" : [ { + "name" : "F0", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema_FOO" + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "UNWRAP_SINGLES" ] + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "F0", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_struct_-_value/7.1.0_1633125904004/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_struct_-_value/7.1.0_1633125904004/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_anonymous_struct_-_value/7.1.0_1633125904004/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_array_-_value/7.1.0_1633125903903/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_array_-_value/7.1.0_1633125903903/plan.json new file mode 100644 index 000000000000..a719e909ed71 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_array_-_value/7.1.0_1633125903903/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (FOO ARRAY) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`FOO` ARRAY", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=true) AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`FOO` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "WRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`FOO` ARRAY", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "WRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_array_-_value/7.1.0_1633125903903/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_array_-_value/7.1.0_1633125903903/spec.json new file mode 100644 index 000000000000..646c25c6cc9b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_array_-_value/7.1.0_1633125903903/spec.json @@ -0,0 +1,174 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903903, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "WRAP_SINGLES" ] + } + } + }, + "testCase" : { + "name" : "serialize nested array - value", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : [ 12, 34, 999 ] + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : [ 12, 34, null ] + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : null + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : [ 12, 34, 999 ] + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : [ 12, 34, null ] + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : null + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "long" ] + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (foo ARRAY) WITH (kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=true) AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`FOO` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "WRAP_SINGLES" ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "long" ] + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "WRAP_SINGLES" ] + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "long" ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_array_-_value/7.1.0_1633125903903/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_array_-_value/7.1.0_1633125903903/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_array_-_value/7.1.0_1633125903903/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_map_-_value/7.1.0_1633125903946/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_map_-_value/7.1.0_1633125903946/plan.json new file mode 100644 index 000000000000..68851797f793 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_map_-_value/7.1.0_1633125903946/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (FOO MAP) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`FOO` MAP", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=true) AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`FOO` MAP", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "WRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`FOO` MAP", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "WRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_map_-_value/7.1.0_1633125903946/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_map_-_value/7.1.0_1633125903946/spec.json new file mode 100644 index 000000000000..ef25c92db1a6 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_map_-_value/7.1.0_1633125903946/spec.json @@ -0,0 +1,231 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903946, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "WRAP_SINGLES" ] + } + } + }, + "testCase" : { + "name" : "serialize nested map - value", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : { + "a" : 1.1, + "b" : 2.2, + "c" : 3.456 + } + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : { + "a" : 1.1, + "b" : 2.2, + "c" : null + } + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : null + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : { + "a" : 1.1, + "b" : 2.2, + "c" : 3.456 + } + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : { + "a" : 1.1, + "b" : 2.2, + "c" : null + } + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : null + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : { + "type" : "record", + "name" : "KsqlDataSourceSchema_FOO", + "fields" : [ { + "name" : "key", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "value", + "type" : [ "null", "double" ], + "default" : null + } ], + "connect.internal.type" : "MapEntry" + }, + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema_FOO" + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (foo MAP) WITH (kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=true) AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`FOO` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "WRAP_SINGLES" ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : { + "type" : "record", + "name" : "KsqlDataSourceSchema_FOO", + "fields" : [ { + "name" : "key", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "value", + "type" : [ "null", "double" ], + "default" : null + } ], + "connect.internal.type" : "MapEntry" + }, + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema_FOO" + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "WRAP_SINGLES" ] + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "array", + "items" : { + "type" : "record", + "name" : "KsqlDataSourceSchema_FOO", + "fields" : [ { + "name" : "key", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "value", + "type" : [ "null", "double" ], + "default" : null + } ], + "connect.internal.type" : "MapEntry" + } + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_map_-_value/7.1.0_1633125903946/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_map_-_value/7.1.0_1633125903946/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_map_-_value/7.1.0_1633125903946/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_primitive_-_value/7.1.0_1633125903866/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_primitive_-_value/7.1.0_1633125903866/plan.json new file mode 100644 index 000000000000..63cd771d2ead --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_primitive_-_value/7.1.0_1633125903866/plan.json @@ -0,0 +1,168 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (K STRING KEY, FOO BOOLEAN) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`K` STRING KEY, `FOO` BOOLEAN", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=true) AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`K` STRING KEY, `FOO` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "WRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`K` STRING KEY, `FOO` BOOLEAN", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "K" ], + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "WRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_primitive_-_value/7.1.0_1633125903866/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_primitive_-_value/7.1.0_1633125903866/spec.json new file mode 100644 index 000000000000..00fb25bb6eeb --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_primitive_-_value/7.1.0_1633125903866/spec.json @@ -0,0 +1,153 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125903866, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`K` STRING KEY, `FOO` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`K` STRING KEY, `FOO` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "WRAP_SINGLES" ] + } + } + }, + "testCase" : { + "name" : "serialize nested primitive - value", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : true + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : null + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : true + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : null + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "boolean" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (K STRING KEY, foo BOOLEAN) WITH (kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=true) AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`K` STRING KEY, `FOO` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`K` STRING KEY, `FOO` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "WRAP_SINGLES" ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "boolean" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "WRAP_SINGLES" ] + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "boolean" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_primitive_-_value/7.1.0_1633125903866/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_primitive_-_value/7.1.0_1633125903866/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_primitive_-_value/7.1.0_1633125903866/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_struct_-_value/7.1.0_1633125904023/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_struct_-_value/7.1.0_1633125904023/plan.json new file mode 100644 index 000000000000..4d33a79c57fd --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_struct_-_value/7.1.0_1633125904023/plan.json @@ -0,0 +1,167 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (FOO STRUCT) WITH (KAFKA_TOPIC='input_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=true) AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "WRAP_SINGLES" ] + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`FOO` STRUCT<`F0` INTEGER>", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FOO AS FOO" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueFeatures" : [ "WRAP_SINGLES" ] + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_struct_-_value/7.1.0_1633125904023/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_struct_-_value/7.1.0_1633125904023/spec.json new file mode 100644 index 000000000000..6805eadb26c8 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_struct_-_value/7.1.0_1633125904023/spec.json @@ -0,0 +1,199 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904023, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "WRAP_SINGLES" ] + } + } + }, + "testCase" : { + "name" : "serialize nested struct - value", + "inputs" : [ { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : { + "F0" : 1 + } + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : { + "F0" : null + } + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : { + "FOO" : null + } + }, { + "topic" : "input_topic", + "key" : null, + "value" : null + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : { + "F0" : 1 + } + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : { + "F0" : null + } + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "FOO" : null + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : null + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "input_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "record", + "name" : "KsqlDataSourceSchema_FOO", + "fields" : [ { + "name" : "F0", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema_FOO" + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (foo STRUCT) WITH (kafka_topic='input_topic', value_format='AVRO');", "CREATE STREAM OUTPUT WITH (WRAP_SINGLE_VALUE=true) AS SELECT * FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`FOO` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ "WRAP_SINGLES" ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "record", + "name" : "KsqlDataSourceSchema_FOO", + "fields" : [ { + "name" : "F0", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema_FOO" + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO", + "features" : [ "WRAP_SINGLES" ] + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", { + "type" : "record", + "name" : "KsqlDataSourceSchema_FOO", + "fields" : [ { + "name" : "F0", + "type" : [ "null", "int" ], + "default" : null + } ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_struct_-_value/7.1.0_1633125904023/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_struct_-_value/7.1.0_1633125904023/topology new file mode 100644 index 000000000000..12f8f6574002 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_serialize_nested_struct_-_value/7.1.0_1633125904023/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_coerce_column_types_that_are_not_directly_supported/7.1.0_1633125904146/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_coerce_column_types_that_are_not_directly_supported/7.1.0_1633125904146/plan.json new file mode 100644 index 000000000000..084bc494dc83 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_coerce_column_types_that_are_not_directly_supported/7.1.0_1633125904146/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (C1 DOUBLE) WITH (KAFKA_TOPIC='input', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', VALUE_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`C1` DOUBLE", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`C1` DOUBLE", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`C1` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "C1 AS C1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_coerce_column_types_that_are_not_directly_supported/7.1.0_1633125904146/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_coerce_column_types_that_are_not_directly_supported/7.1.0_1633125904146/spec.json new file mode 100644 index 000000000000..7db8358f7269 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_coerce_column_types_that_are_not_directly_supported/7.1.0_1633125904146/spec.json @@ -0,0 +1,126 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904146, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`C1` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`C1` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "should coerce column types that are not directly supported", + "inputs" : [ { + "topic" : "input", + "key" : null, + "value" : { + "c1" : 4.0 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C1" : 4.0 + } + } ], + "topics" : [ { + "name" : "input", + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "c1", + "type" : "float" + } ] + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM INPUT WITH (kafka_topic='input', value_format='AvRo');", "CREATE STREAM OUTPUT AS SELECT * FROM input;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`C1` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`C1` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "c1", + "type" : "float" + } ], + "connect.name" : "blah" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "C1", + "type" : [ "null", "double" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_coerce_column_types_that_are_not_directly_supported/7.1.0_1633125904146/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_coerce_column_types_that_are_not_directly_supported/7.1.0_1633125904146/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_coerce_column_types_that_are_not_directly_supported/7.1.0_1633125904146/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_enum_to_STRING/7.1.0_1633125904071/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_enum_to_STRING/7.1.0_1633125904071/plan.json new file mode 100644 index 000000000000..73c1ca786cdc --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_enum_to_STRING/7.1.0_1633125904071/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (C1 STRING) WITH (KAFKA_TOPIC='input', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', VALUE_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`C1` STRING", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`C1` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`C1` STRING", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "C1 AS C1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_enum_to_STRING/7.1.0_1633125904071/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_enum_to_STRING/7.1.0_1633125904071/spec.json new file mode 100644 index 000000000000..6a260967d9b1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_enum_to_STRING/7.1.0_1633125904071/spec.json @@ -0,0 +1,140 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904071, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`C1` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`C1` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "should convert enum to STRING", + "inputs" : [ { + "topic" : "input", + "key" : null, + "value" : { + "c1" : "SPADES" + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C1" : "SPADES" + } + } ], + "topics" : [ { + "name" : "input", + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "c1", + "type" : { + "type" : "enum", + "name" : "Suit", + "symbols" : [ "SPADES", "HEARTS", "DIAMONDS", "CLUBS" ] + } + } ] + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT WITH (kafka_topic='input', value_format='AvRo');", "CREATE STREAM OUTPUT AS SELECT * FROM input;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`C1` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`C1` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "c1", + "type" : { + "type" : "string", + "connect.parameters" : { + "io.confluent.connect.avro.Enum" : "Suit", + "io.confluent.connect.avro.Enum.SPADES" : "SPADES", + "io.confluent.connect.avro.Enum.HEARTS" : "HEARTS", + "io.confluent.connect.avro.Enum.DIAMONDS" : "DIAMONDS", + "io.confluent.connect.avro.Enum.CLUBS" : "CLUBS" + }, + "connect.name" : "Suit" + } + } ], + "connect.name" : "blah" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "C1", + "type" : [ "null", "string" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_enum_to_STRING/7.1.0_1633125904071/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_enum_to_STRING/7.1.0_1633125904071/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_enum_to_STRING/7.1.0_1633125904071/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_record_to_STRUCT/7.1.0_1633125904128/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_record_to_STRUCT/7.1.0_1633125904128/plan.json new file mode 100644 index 000000000000..55b4e76a4d1d --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_record_to_STRUCT/7.1.0_1633125904128/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (C1 STRUCT) WITH (KAFKA_TOPIC='input', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', VALUE_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`C1` STRUCT<`F1` INTEGER>", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`C1` STRUCT<`F1` INTEGER>", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`C1` STRUCT<`F1` INTEGER>", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "C1 AS C1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_record_to_STRUCT/7.1.0_1633125904128/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_record_to_STRUCT/7.1.0_1633125904128/spec.json new file mode 100644 index 000000000000..62515c3f78be --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_record_to_STRUCT/7.1.0_1633125904128/spec.json @@ -0,0 +1,153 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904128, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`C1` STRUCT<`F1` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`C1` STRUCT<`F1` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "should convert record to STRUCT", + "inputs" : [ { + "topic" : "input", + "key" : null, + "value" : { + "c1" : { + "f1" : 1 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C1" : { + "F1" : 1 + } + } + } ], + "topics" : [ { + "name" : "input", + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "c1", + "type" : { + "type" : "record", + "name" : "something", + "fields" : [ { + "name" : "f1", + "type" : "int" + } ] + } + } ] + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT WITH (kafka_topic='input', value_format='AvRo');", "CREATE STREAM OUTPUT AS SELECT * FROM input;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`C1` STRUCT<`F1` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`C1` STRUCT<`F1` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "c1", + "type" : { + "type" : "record", + "name" : "something", + "fields" : [ { + "name" : "f1", + "type" : "int" + } ], + "connect.name" : "something" + } + } ], + "connect.name" : "blah" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "C1", + "type" : [ "null", { + "type" : "record", + "name" : "KsqlDataSourceSchema_C1", + "fields" : [ { + "name" : "F1", + "type" : [ "null", "int" ], + "default" : null + } ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_record_to_STRUCT/7.1.0_1633125904128/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_record_to_STRUCT/7.1.0_1633125904128/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_convert_record_to_STRUCT/7.1.0_1633125904128/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_not_filter_out_bytes/7.1.0_1633125904162/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_not_filter_out_bytes/7.1.0_1633125904162/plan.json new file mode 100644 index 000000000000..01bdbe92e7bf --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_not_filter_out_bytes/7.1.0_1633125904162/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (EXPECTED INTEGER, C1 BYTES, C2 BYTES) WITH (KAFKA_TOPIC='input', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', VALUE_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`EXPECTED` INTEGER, `C1` BYTES, `C2` BYTES", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`EXPECTED` INTEGER, `C1` BYTES, `C2` BYTES", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`EXPECTED` INTEGER, `C1` BYTES, `C2` BYTES", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "EXPECTED AS EXPECTED", "C1 AS C1", "C2 AS C2" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_not_filter_out_bytes/7.1.0_1633125904162/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_not_filter_out_bytes/7.1.0_1633125904162/spec.json new file mode 100644 index 000000000000..d51a4785c7b5 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_not_filter_out_bytes/7.1.0_1633125904162/spec.json @@ -0,0 +1,165 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904162, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`EXPECTED` INTEGER, `C1` BYTES, `C2` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`EXPECTED` INTEGER, `C1` BYTES, `C2` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "should not filter out bytes", + "inputs" : [ { + "topic" : "input", + "key" : null, + "value" : { + "expected" : 1, + "c1" : null, + "c2" : null, + "c3" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "EXPECTED" : 1, + "c1" : null, + "c2" : null + } + } ], + "topics" : [ { + "name" : "input", + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "expected", + "type" : "int" + }, { + "name" : "c1", + "type" : [ "null", "bytes" ] + }, { + "name" : "c2", + "type" : [ "null", { + "type" : "fixed", + "name" : "md5", + "size" : 16 + } ] + } ] + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT WITH (kafka_topic='input', value_format='AvRo');", "CREATE STREAM OUTPUT AS SELECT * FROM input;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`EXPECTED` INTEGER, `C1` BYTES, `C2` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`EXPECTED` INTEGER, `C1` BYTES, `C2` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "expected", + "type" : "int" + }, { + "name" : "c1", + "type" : [ "null", "bytes" ], + "default" : null + }, { + "name" : "c2", + "type" : [ "null", { + "type" : "fixed", + "name" : "md5", + "size" : 16, + "connect.parameters" : { + "connect.fixed.size" : "16" + }, + "connect.name" : "md5" + } ], + "default" : null + } ], + "connect.name" : "blah" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "EXPECTED", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "C1", + "type" : [ "null", "bytes" ], + "default" : null + }, { + "name" : "C2", + "type" : [ "null", "bytes" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_not_filter_out_bytes/7.1.0_1633125904162/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_not_filter_out_bytes/7.1.0_1633125904162/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_not_filter_out_bytes/7.1.0_1633125904162/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_arrays/7.1.0_1633125904091/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_arrays/7.1.0_1633125904091/plan.json new file mode 100644 index 000000000000..2a172c084df1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_arrays/7.1.0_1633125904091/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (C1 ARRAY) WITH (KAFKA_TOPIC='input', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', VALUE_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`C1` ARRAY", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`C1` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`C1` ARRAY", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "C1 AS C1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_arrays/7.1.0_1633125904091/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_arrays/7.1.0_1633125904091/spec.json new file mode 100644 index 000000000000..bf3c9b76e651 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_arrays/7.1.0_1633125904091/spec.json @@ -0,0 +1,135 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904091, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`C1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`C1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "should support arrays", + "inputs" : [ { + "topic" : "input", + "key" : null, + "value" : { + "c1" : [ "a", "", "Bc" ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C1" : [ "a", "", "Bc" ] + } + } ], + "topics" : [ { + "name" : "input", + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "c1", + "type" : { + "type" : "array", + "items" : "string" + } + } ] + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT WITH (kafka_topic='input', value_format='AvRo');", "CREATE STREAM OUTPUT AS SELECT * FROM input;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`C1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`C1` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "c1", + "type" : { + "type" : "array", + "items" : "string" + } + } ], + "connect.name" : "blah" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "C1", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "string" ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_arrays/7.1.0_1633125904091/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_arrays/7.1.0_1633125904091/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_arrays/7.1.0_1633125904091/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_maps/7.1.0_1633125904110/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_maps/7.1.0_1633125904110/plan.json new file mode 100644 index 000000000000..0ab503e79208 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_maps/7.1.0_1633125904110/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (C1 MAP) WITH (KAFKA_TOPIC='input', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', VALUE_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`C1` MAP", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`C1` MAP", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`C1` MAP", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "C1 AS C1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_maps/7.1.0_1633125904110/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_maps/7.1.0_1633125904110/spec.json new file mode 100644 index 000000000000..abd4fd8ae0ed --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_maps/7.1.0_1633125904110/spec.json @@ -0,0 +1,152 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904110, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`C1` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`C1` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "should support maps", + "inputs" : [ { + "topic" : "input", + "key" : null, + "value" : { + "c1" : { + "f1" : 1 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C1" : { + "f1" : 1 + } + } + } ], + "topics" : [ { + "name" : "input", + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "c1", + "type" : { + "type" : "map", + "values" : "long" + } + } ] + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT WITH (kafka_topic='input', value_format='AvRo');", "CREATE STREAM OUTPUT AS SELECT * FROM input;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`C1` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`C1` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "c1", + "type" : { + "type" : "map", + "values" : "long" + } + } ], + "connect.name" : "blah" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "C1", + "type" : [ "null", { + "type" : "array", + "items" : { + "type" : "record", + "name" : "KsqlDataSourceSchema_C1", + "fields" : [ { + "name" : "key", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "value", + "type" : [ "null", "long" ], + "default" : null + } ], + "connect.internal.type" : "MapEntry" + } + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_maps/7.1.0_1633125904110/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_maps/7.1.0_1633125904110/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_maps/7.1.0_1633125904110/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_partial_schemas/7.1.0_1633125904185/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_partial_schemas/7.1.0_1633125904185/plan.json new file mode 100644 index 000000000000..7225e2860d7d --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_partial_schemas/7.1.0_1633125904185/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID INTEGER KEY, C1 BOOLEAN, C2 INTEGER, C3 BIGINT, C4 DOUBLE, C5 STRING) WITH (KAFKA_TOPIC='input', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', VALUE_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` INTEGER KEY, `C1` BOOLEAN, `C2` INTEGER, `C3` BIGINT, `C4` DOUBLE, `C5` STRING", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` INTEGER KEY, `C1` BOOLEAN, `C2` INTEGER, `C3` BIGINT, `C4` DOUBLE, `C5` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` INTEGER KEY, `C1` BOOLEAN, `C2` INTEGER, `C3` BIGINT, `C4` DOUBLE, `C5` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "C1 AS C1", "C2 AS C2", "C3 AS C3", "C4 AS C4", "C5 AS C5" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_partial_schemas/7.1.0_1633125904185/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_partial_schemas/7.1.0_1633125904185/spec.json new file mode 100644 index 000000000000..7c0a82ac5092 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_partial_schemas/7.1.0_1633125904185/spec.json @@ -0,0 +1,174 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904185, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` INTEGER KEY, `C1` BOOLEAN, `C2` INTEGER, `C3` BIGINT, `C4` DOUBLE, `C5` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` INTEGER KEY, `C1` BOOLEAN, `C2` INTEGER, `C3` BIGINT, `C4` DOUBLE, `C5` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "should support partial schemas", + "inputs" : [ { + "topic" : "input", + "key" : 1, + "value" : { + "c1" : true, + "c2" : 1, + "c3" : 400000000000, + "c4" : 1.284765648, + "c5" : "hello" + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "C1" : true, + "C2" : 1, + "C3" : 400000000000, + "C4" : 1.284765648, + "C5" : "hello" + } + } ], + "topics" : [ { + "name" : "input", + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "c1", + "type" : "boolean" + }, { + "name" : "c2", + "type" : "int" + }, { + "name" : "c3", + "type" : "long" + }, { + "name" : "c4", + "type" : "double" + }, { + "name" : "c5", + "type" : "string" + } ] + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID INT KEY) WITH (kafka_topic='input', value_format='AvRo');", "CREATE STREAM OUTPUT AS SELECT * FROM input;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `C1` BOOLEAN, `C2` INTEGER, `C3` BIGINT, `C4` DOUBLE, `C5` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `C1` BOOLEAN, `C2` INTEGER, `C3` BIGINT, `C4` DOUBLE, `C5` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "c1", + "type" : "boolean" + }, { + "name" : "c2", + "type" : "int" + }, { + "name" : "c3", + "type" : "long" + }, { + "name" : "c4", + "type" : "double" + }, { + "name" : "c5", + "type" : "string" + } ], + "connect.name" : "blah" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "C1", + "type" : [ "null", "boolean" ], + "default" : null + }, { + "name" : "C2", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "C3", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "C4", + "type" : [ "null", "double" ], + "default" : null + }, { + "name" : "C5", + "type" : [ "null", "string" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_partial_schemas/7.1.0_1633125904185/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_partial_schemas/7.1.0_1633125904185/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_partial_schemas/7.1.0_1633125904185/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_primitives/7.1.0_1633125904043/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_primitives/7.1.0_1633125904043/plan.json new file mode 100644 index 000000000000..d326ae5c9e11 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_primitives/7.1.0_1633125904043/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (C1 BOOLEAN, C2 INTEGER, C3 BIGINT, C4 DOUBLE, C5 STRING) WITH (KAFKA_TOPIC='input', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO', VALUE_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`C1` BOOLEAN, `C2` INTEGER, `C3` BIGINT, `C4` DOUBLE, `C5` STRING", + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT *\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`C1` BOOLEAN, `C2` INTEGER, `C3` BIGINT, `C4` DOUBLE, `C5` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "input", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`C1` BOOLEAN, `C2` INTEGER, `C3` BIGINT, `C4` DOUBLE, `C5` STRING", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "C1 AS C1", "C2 AS C2", "C3 AS C3", "C4 AS C4", "C5 AS C5" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_primitives/7.1.0_1633125904043/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_primitives/7.1.0_1633125904043/spec.json new file mode 100644 index 000000000000..6d1452e8c47e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_primitives/7.1.0_1633125904043/spec.json @@ -0,0 +1,174 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904043, + "path" : "query-validation-tests/avro.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`C1` BOOLEAN, `C2` INTEGER, `C3` BIGINT, `C4` DOUBLE, `C5` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`C1` BOOLEAN, `C2` INTEGER, `C3` BIGINT, `C4` DOUBLE, `C5` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "should support primitives", + "inputs" : [ { + "topic" : "input", + "key" : null, + "value" : { + "c1" : true, + "c2" : 1, + "c3" : 400000000000, + "c4" : 1.284765648, + "c5" : "hello" + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "C1" : true, + "C2" : 1, + "C3" : 400000000000, + "C4" : 1.284765648, + "C5" : "hello" + } + } ], + "topics" : [ { + "name" : "input", + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "c1", + "type" : "boolean" + }, { + "name" : "c2", + "type" : "int" + }, { + "name" : "c3", + "type" : "long" + }, { + "name" : "c4", + "type" : "double" + }, { + "name" : "c5", + "type" : "string" + } ] + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + }, { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT WITH (kafka_topic='input', value_format='AvRo');", "CREATE STREAM OUTPUT AS SELECT * FROM input;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`C1` BOOLEAN, `C2` INTEGER, `C3` BIGINT, `C4` DOUBLE, `C5` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`C1` BOOLEAN, `C2` INTEGER, `C3` BIGINT, `C4` DOUBLE, `C5` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "input", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "valueSchema" : { + "type" : "record", + "name" : "blah", + "fields" : [ { + "name" : "c1", + "type" : "boolean" + }, { + "name" : "c2", + "type" : "int" + }, { + "name" : "c3", + "type" : "long" + }, { + "name" : "c4", + "type" : "double" + }, { + "name" : "c5", + "type" : "string" + } ], + "connect.name" : "blah" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "C1", + "type" : [ "null", "boolean" ], + "default" : null + }, { + "name" : "C2", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "C3", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "C4", + "type" : [ "null", "double" ], + "default" : null + }, { + "name" : "C5", + "type" : [ "null", "string" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_primitives/7.1.0_1633125904043/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_primitives/7.1.0_1633125904043/topology new file mode 100644 index 000000000000..a70a4e91e301 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/avro_-_should_support_primitives/7.1.0_1633125904043/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [input]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_array_dereference/7.1.0_1633125904713/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_array_dereference/7.1.0_1633125904713/plan.json new file mode 100644 index 000000000000..1c91e5aad9ef --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_array_dereference/7.1.0_1633125904713/plan.json @@ -0,0 +1,173 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, SOURCE ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `SOURCE` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n TEST.SOURCE[2] THING\nFROM TEST TEST\nWHERE (TEST.SOURCE[2] BETWEEN 2 AND 4)\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamFilterV1", + "properties" : { + "queryContext" : "WhereFilter" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `SOURCE` ARRAY", + "pseudoColumnVersion" : 1 + }, + "filterExpression" : "(SOURCE[2] BETWEEN 2 AND 4)" + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "SOURCE[2] AS THING" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_array_dereference/7.1.0_1633125904713/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_array_dereference/7.1.0_1633125904713/spec.json new file mode 100644 index 000000000000..7a89064674da --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_array_dereference/7.1.0_1633125904713/spec.json @@ -0,0 +1,142 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904713, + "path" : "query-validation-tests/between.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `SOURCE` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "test BETWEEN with array dereference", + "inputs" : [ { + "topic" : "test_topic", + "key" : "1", + "value" : { + "source" : [ 10, 1 ] + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "2", + "value" : { + "source" : [ 10, 2 ] + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "3", + "value" : { + "source" : [ 10, 3 ] + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "4", + "value" : { + "source" : [ 10, 4 ] + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "5", + "value" : { + "source" : [ 10, 5 ] + }, + "timestamp" : 0 + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "2", + "value" : { + "THING" : 2 + }, + "timestamp" : 0 + }, { + "topic" : "OUTPUT", + "key" : "3", + "value" : { + "THING" : 3 + }, + "timestamp" : 0 + }, { + "topic" : "OUTPUT", + "key" : "4", + "value" : { + "THING" : 4 + }, + "timestamp" : 0 + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, source array) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, source[2] AS THING FROM TEST WHERE source[2] BETWEEN 2 AND 4;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `SOURCE` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_array_dereference/7.1.0_1633125904713/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_array_dereference/7.1.0_1633125904713/topology new file mode 100644 index 000000000000..7b6119f7a4ae --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_array_dereference/7.1.0_1633125904713/topology @@ -0,0 +1,16 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> WhereFilter + <-- KSTREAM-SOURCE-0000000000 + Processor: WhereFilter (stores: []) + --> Project + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000004 + <-- WhereFilter + Sink: KSTREAM-SINK-0000000004 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_bigint/7.1.0_1633125904598/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_bigint/7.1.0_1633125904598/plan.json new file mode 100644 index 000000000000..efd82bde43f7 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_bigint/7.1.0_1633125904598/plan.json @@ -0,0 +1,173 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, SOURCE BIGINT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `SOURCE` BIGINT", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n TEST.SOURCE THING\nFROM TEST TEST\nWHERE (TEST.SOURCE BETWEEN 2 AND 4)\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `THING` BIGINT", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamFilterV1", + "properties" : { + "queryContext" : "WhereFilter" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `SOURCE` BIGINT", + "pseudoColumnVersion" : 1 + }, + "filterExpression" : "(SOURCE BETWEEN 2 AND 4)" + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "SOURCE AS THING" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_bigint/7.1.0_1633125904598/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_bigint/7.1.0_1633125904598/spec.json new file mode 100644 index 000000000000..c6be6db89e83 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_bigint/7.1.0_1633125904598/spec.json @@ -0,0 +1,149 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904598, + "path" : "query-validation-tests/between.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `SOURCE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `THING` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "test BETWEEN with bigint", + "inputs" : [ { + "topic" : "test_topic", + "key" : "0", + "value" : { + "source" : null + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "1", + "value" : { + "source" : 1 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "2", + "value" : { + "source" : 2 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "3", + "value" : { + "source" : 3 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "4", + "value" : { + "source" : 4 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "5", + "value" : { + "source" : 5 + }, + "timestamp" : 0 + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "2", + "value" : { + "THING" : 2 + }, + "timestamp" : 0 + }, { + "topic" : "OUTPUT", + "key" : "3", + "value" : { + "THING" : 3 + }, + "timestamp" : 0 + }, { + "topic" : "OUTPUT", + "key" : "4", + "value" : { + "THING" : 4 + }, + "timestamp" : 0 + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, source bigint) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, source AS THING FROM TEST WHERE source BETWEEN 2 AND 4;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `THING` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `SOURCE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_bigint/7.1.0_1633125904598/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_bigint/7.1.0_1633125904598/topology new file mode 100644 index 000000000000..7b6119f7a4ae --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_bigint/7.1.0_1633125904598/topology @@ -0,0 +1,16 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> WhereFilter + <-- KSTREAM-SOURCE-0000000000 + Processor: WhereFilter (stores: []) + --> Project + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000004 + <-- WhereFilter + Sink: KSTREAM-SINK-0000000004 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_floating_point/7.1.0_1633125904618/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_floating_point/7.1.0_1633125904618/plan.json new file mode 100644 index 000000000000..49f0f0259e56 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_floating_point/7.1.0_1633125904618/plan.json @@ -0,0 +1,173 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, SOURCE DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `SOURCE` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n TEST.SOURCE THING\nFROM TEST TEST\nWHERE (TEST.SOURCE BETWEEN 2 AND 3.9)\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `THING` DOUBLE", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamFilterV1", + "properties" : { + "queryContext" : "WhereFilter" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `SOURCE` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "filterExpression" : "(SOURCE BETWEEN 2 AND 3.9)" + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "SOURCE AS THING" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_floating_point/7.1.0_1633125904618/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_floating_point/7.1.0_1633125904618/spec.json new file mode 100644 index 000000000000..7428f1551f68 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_floating_point/7.1.0_1633125904618/spec.json @@ -0,0 +1,149 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904618, + "path" : "query-validation-tests/between.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `SOURCE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `THING` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "test BETWEEN with floating point", + "inputs" : [ { + "topic" : "test_topic", + "key" : "0", + "value" : { + "source" : null + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "1", + "value" : { + "source" : 1.9 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "2", + "value" : { + "source" : 2.0 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "3", + "value" : { + "source" : 2.1 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "4", + "value" : { + "source" : 3.9 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "5", + "value" : { + "source" : 4.0 + }, + "timestamp" : 0 + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "2", + "value" : { + "THING" : 2.0 + }, + "timestamp" : 0 + }, { + "topic" : "OUTPUT", + "key" : "3", + "value" : { + "THING" : 2.1 + }, + "timestamp" : 0 + }, { + "topic" : "OUTPUT", + "key" : "4", + "value" : { + "THING" : 3.9 + }, + "timestamp" : 0 + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, source double) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, source AS THING FROM TEST WHERE source BETWEEN 2 AND 3.9;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `THING` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `SOURCE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_floating_point/7.1.0_1633125904618/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_floating_point/7.1.0_1633125904618/topology new file mode 100644 index 000000000000..7b6119f7a4ae --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_floating_point/7.1.0_1633125904618/topology @@ -0,0 +1,16 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> WhereFilter + <-- KSTREAM-SOURCE-0000000000 + Processor: WhereFilter (stores: []) + --> Project + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000004 + <-- WhereFilter + Sink: KSTREAM-SINK-0000000004 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers/7.1.0_1633125904575/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers/7.1.0_1633125904575/plan.json new file mode 100644 index 000000000000..a7ed856d3d71 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers/7.1.0_1633125904575/plan.json @@ -0,0 +1,173 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, SOURCE INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `SOURCE` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n TEST.SOURCE THING\nFROM TEST TEST\nWHERE (TEST.SOURCE BETWEEN 2 AND 4)\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamFilterV1", + "properties" : { + "queryContext" : "WhereFilter" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `SOURCE` INTEGER", + "pseudoColumnVersion" : 1 + }, + "filterExpression" : "(SOURCE BETWEEN 2 AND 4)" + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "SOURCE AS THING" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers/7.1.0_1633125904575/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers/7.1.0_1633125904575/spec.json new file mode 100644 index 000000000000..2259780d8e00 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers/7.1.0_1633125904575/spec.json @@ -0,0 +1,149 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904575, + "path" : "query-validation-tests/between.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `SOURCE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "test BETWEEN with integers", + "inputs" : [ { + "topic" : "test_topic", + "key" : "0", + "value" : { + "source" : null + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "1", + "value" : { + "source" : 1 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "2", + "value" : { + "source" : 2 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "3", + "value" : { + "source" : 3 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "4", + "value" : { + "source" : 4 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "5", + "value" : { + "source" : 5 + }, + "timestamp" : 0 + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "2", + "value" : { + "THING" : 2 + }, + "timestamp" : 0 + }, { + "topic" : "OUTPUT", + "key" : "3", + "value" : { + "THING" : 3 + }, + "timestamp" : 0 + }, { + "topic" : "OUTPUT", + "key" : "4", + "value" : { + "THING" : 4 + }, + "timestamp" : 0 + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, source int) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, source AS THING FROM TEST WHERE source BETWEEN 2 AND 4;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `SOURCE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers/7.1.0_1633125904575/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers/7.1.0_1633125904575/topology new file mode 100644 index 000000000000..7b6119f7a4ae --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers/7.1.0_1633125904575/topology @@ -0,0 +1,16 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> WhereFilter + <-- KSTREAM-SOURCE-0000000000 + Processor: WhereFilter (stores: []) + --> Project + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000004 + <-- WhereFilter + Sink: KSTREAM-SINK-0000000004 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_expressions/7.1.0_1633125904676/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_expressions/7.1.0_1633125904676/plan.json new file mode 100644 index 000000000000..4e4280931b00 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_expressions/7.1.0_1633125904676/plan.json @@ -0,0 +1,173 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, SOURCE INTEGER, AVG INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `SOURCE` INTEGER, `AVG` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n TEST.SOURCE THING\nFROM TEST TEST\nWHERE ((TEST.SOURCE + 2) BETWEEN (TEST.AVG / 2) AND (TEST.AVG * 2))\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamFilterV1", + "properties" : { + "queryContext" : "WhereFilter" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `SOURCE` INTEGER, `AVG` INTEGER", + "pseudoColumnVersion" : 1 + }, + "filterExpression" : "((SOURCE + 2) BETWEEN (AVG / 2) AND (AVG * 2))" + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "SOURCE AS THING" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_expressions/7.1.0_1633125904676/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_expressions/7.1.0_1633125904676/spec.json new file mode 100644 index 000000000000..5303d901c067 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_expressions/7.1.0_1633125904676/spec.json @@ -0,0 +1,132 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904676, + "path" : "query-validation-tests/between.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `SOURCE` INTEGER, `AVG` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "test BETWEEN with integers and expressions", + "inputs" : [ { + "topic" : "test_topic", + "key" : "1", + "value" : { + "source" : null, + "avg" : 10 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "2", + "value" : { + "source" : 1, + "avg" : 10 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "3", + "value" : { + "source" : 10, + "avg" : 10 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "4", + "value" : { + "source" : 4, + "avg" : 10 + }, + "timestamp" : 0 + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "3", + "value" : { + "THING" : 10 + }, + "timestamp" : 0 + }, { + "topic" : "OUTPUT", + "key" : "4", + "value" : { + "THING" : 4 + }, + "timestamp" : 0 + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, source int, avg int) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, source AS THING FROM TEST WHERE source + 2 BETWEEN avg / 2 AND avg * 2;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `SOURCE` INTEGER, `AVG` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_expressions/7.1.0_1633125904676/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_expressions/7.1.0_1633125904676/topology new file mode 100644 index 000000000000..7b6119f7a4ae --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_expressions/7.1.0_1633125904676/topology @@ -0,0 +1,16 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> WhereFilter + <-- KSTREAM-SOURCE-0000000000 + Processor: WhereFilter (stores: []) + --> Project + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000004 + <-- WhereFilter + Sink: KSTREAM-SINK-0000000004 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_variable_values/7.1.0_1633125904657/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_variable_values/7.1.0_1633125904657/plan.json new file mode 100644 index 000000000000..fa6546d70126 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_variable_values/7.1.0_1633125904657/plan.json @@ -0,0 +1,173 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, SOURCE INTEGER, MIN INTEGER, MAX INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `SOURCE` INTEGER, `MIN` INTEGER, `MAX` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n TEST.SOURCE THING\nFROM TEST TEST\nWHERE (TEST.SOURCE BETWEEN TEST.MIN AND TEST.MAX)\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamFilterV1", + "properties" : { + "queryContext" : "WhereFilter" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `SOURCE` INTEGER, `MIN` INTEGER, `MAX` INTEGER", + "pseudoColumnVersion" : 1 + }, + "filterExpression" : "(SOURCE BETWEEN MIN AND MAX)" + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "SOURCE AS THING" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_variable_values/7.1.0_1633125904657/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_variable_values/7.1.0_1633125904657/spec.json new file mode 100644 index 000000000000..3c0173da4bd2 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_variable_values/7.1.0_1633125904657/spec.json @@ -0,0 +1,138 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904657, + "path" : "query-validation-tests/between.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `SOURCE` INTEGER, `MIN` INTEGER, `MAX` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "test BETWEEN with integers and variable values", + "inputs" : [ { + "topic" : "test_topic", + "key" : "0", + "value" : { + "source" : null, + "min" : 0, + "max" : 2 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "1", + "value" : { + "source" : 1, + "min" : 0, + "max" : 2 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "2", + "value" : { + "source" : 2, + "min" : null, + "max" : 2 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "3", + "value" : { + "source" : 3, + "min" : 0, + "max" : null + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "4", + "value" : { + "source" : 4, + "min" : null, + "max" : null + }, + "timestamp" : 0 + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "THING" : 1 + }, + "timestamp" : 0 + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, source int, min int, max int) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, source AS THING FROM TEST WHERE source BETWEEN min AND max;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `SOURCE` INTEGER, `MIN` INTEGER, `MAX` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_variable_values/7.1.0_1633125904657/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_variable_values/7.1.0_1633125904657/topology new file mode 100644 index 000000000000..7b6119f7a4ae --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_integers_and_variable_values/7.1.0_1633125904657/topology @@ -0,0 +1,16 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> WhereFilter + <-- KSTREAM-SOURCE-0000000000 + Processor: WhereFilter (stores: []) + --> Project + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000004 + <-- WhereFilter + Sink: KSTREAM-SINK-0000000004 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values/7.1.0_1633125904639/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values/7.1.0_1633125904639/plan.json new file mode 100644 index 000000000000..fc57a9641e8e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values/7.1.0_1633125904639/plan.json @@ -0,0 +1,173 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, SOURCE STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `SOURCE` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n TEST.SOURCE THING\nFROM TEST TEST\nWHERE (TEST.SOURCE BETWEEN 'b' AND 'c')\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `THING` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamFilterV1", + "properties" : { + "queryContext" : "WhereFilter" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `SOURCE` STRING", + "pseudoColumnVersion" : 1 + }, + "filterExpression" : "(SOURCE BETWEEN 'b' AND 'c')" + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "SOURCE AS THING" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values/7.1.0_1633125904639/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values/7.1.0_1633125904639/spec.json new file mode 100644 index 000000000000..07bd03d295e8 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values/7.1.0_1633125904639/spec.json @@ -0,0 +1,149 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904639, + "path" : "query-validation-tests/between.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `SOURCE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `THING` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "test BETWEEN with string values", + "inputs" : [ { + "topic" : "test_topic", + "key" : "0", + "value" : { + "source" : null + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "1", + "value" : { + "source" : "a" + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "2", + "value" : { + "source" : "b" + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "3", + "value" : { + "source" : "ba" + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "4", + "value" : { + "source" : "c" + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "5", + "value" : { + "source" : "ca" + }, + "timestamp" : 0 + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "2", + "value" : { + "THING" : "b" + }, + "timestamp" : 0 + }, { + "topic" : "OUTPUT", + "key" : "3", + "value" : { + "THING" : "ba" + }, + "timestamp" : 0 + }, { + "topic" : "OUTPUT", + "key" : "4", + "value" : { + "THING" : "c" + }, + "timestamp" : 0 + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, source string) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, source AS THING FROM TEST WHERE source BETWEEN 'b' AND 'c';" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `THING` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `SOURCE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values/7.1.0_1633125904639/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values/7.1.0_1633125904639/topology new file mode 100644 index 000000000000..7b6119f7a4ae --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values/7.1.0_1633125904639/topology @@ -0,0 +1,16 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> WhereFilter + <-- KSTREAM-SOURCE-0000000000 + Processor: WhereFilter (stores: []) + --> Project + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000004 + <-- WhereFilter + Sink: KSTREAM-SINK-0000000004 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values_with_substring/7.1.0_1633125904739/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values_with_substring/7.1.0_1633125904739/plan.json new file mode 100644 index 000000000000..6f568e62e5d2 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values_with_substring/7.1.0_1633125904739/plan.json @@ -0,0 +1,173 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, SOURCE STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `SOURCE` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n TEST.SOURCE THING\nFROM TEST TEST\nWHERE (TEST.SOURCE BETWEEN SUBSTRING('zb', 2) AND 'c')\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `THING` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamFilterV1", + "properties" : { + "queryContext" : "WhereFilter" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `SOURCE` STRING", + "pseudoColumnVersion" : 1 + }, + "filterExpression" : "(SOURCE BETWEEN SUBSTRING('zb', 2) AND 'c')" + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "SOURCE AS THING" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values_with_substring/7.1.0_1633125904739/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values_with_substring/7.1.0_1633125904739/spec.json new file mode 100644 index 000000000000..76eb0521dff9 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values_with_substring/7.1.0_1633125904739/spec.json @@ -0,0 +1,149 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904739, + "path" : "query-validation-tests/between.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `SOURCE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `THING` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "test BETWEEN with string values with substring", + "inputs" : [ { + "topic" : "test_topic", + "key" : "0", + "value" : { + "source" : null + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "1", + "value" : { + "source" : "a" + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "2", + "value" : { + "source" : "b" + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "3", + "value" : { + "source" : "ba" + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "4", + "value" : { + "source" : "c" + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "5", + "value" : { + "source" : "ca" + }, + "timestamp" : 0 + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "2", + "value" : { + "THING" : "b" + }, + "timestamp" : 0 + }, { + "topic" : "OUTPUT", + "key" : "3", + "value" : { + "THING" : "ba" + }, + "timestamp" : 0 + }, { + "topic" : "OUTPUT", + "key" : "4", + "value" : { + "THING" : "c" + }, + "timestamp" : 0 + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, source string) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, source AS THING FROM TEST WHERE source BETWEEN SUBSTRING('zb',2) AND 'c';" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `THING` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `SOURCE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values_with_substring/7.1.0_1633125904739/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values_with_substring/7.1.0_1633125904739/topology new file mode 100644 index 000000000000..7b6119f7a4ae --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_BETWEEN_with_string_values_with_substring/7.1.0_1633125904739/topology @@ -0,0 +1,16 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> WhereFilter + <-- KSTREAM-SOURCE-0000000000 + Processor: WhereFilter (stores: []) + --> Project + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000004 + <-- WhereFilter + Sink: KSTREAM-SINK-0000000004 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_NOT_BETWEEN_with_integers/7.1.0_1633125904695/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_NOT_BETWEEN_with_integers/7.1.0_1633125904695/plan.json new file mode 100644 index 000000000000..2b376cb9095f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_NOT_BETWEEN_with_integers/7.1.0_1633125904695/plan.json @@ -0,0 +1,173 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, SOURCE INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `SOURCE` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n TEST.SOURCE THING\nFROM TEST TEST\nWHERE (NOT (TEST.SOURCE BETWEEN 2 AND 4))\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamFilterV1", + "properties" : { + "queryContext" : "WhereFilter" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `SOURCE` INTEGER", + "pseudoColumnVersion" : 1 + }, + "filterExpression" : "(NOT (SOURCE BETWEEN 2 AND 4))" + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "SOURCE AS THING" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_NOT_BETWEEN_with_integers/7.1.0_1633125904695/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_NOT_BETWEEN_with_integers/7.1.0_1633125904695/spec.json new file mode 100644 index 000000000000..d1d2bbb5bf02 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_NOT_BETWEEN_with_integers/7.1.0_1633125904695/spec.json @@ -0,0 +1,135 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904695, + "path" : "query-validation-tests/between.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `SOURCE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "test NOT BETWEEN with integers", + "inputs" : [ { + "topic" : "test_topic", + "key" : "1", + "value" : { + "source" : 1 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "2", + "value" : { + "source" : 2 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "3", + "value" : { + "source" : 3 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "4", + "value" : { + "source" : 4 + }, + "timestamp" : 0 + }, { + "topic" : "test_topic", + "key" : "5", + "value" : { + "source" : 5 + }, + "timestamp" : 0 + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "1", + "value" : { + "THING" : 1 + }, + "timestamp" : 0 + }, { + "topic" : "OUTPUT", + "key" : "5", + "value" : { + "THING" : 5 + }, + "timestamp" : 0 + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, source int) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, source AS THING FROM TEST WHERE source NOT BETWEEN 2 AND 4;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `THING` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `SOURCE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_NOT_BETWEEN_with_integers/7.1.0_1633125904695/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_NOT_BETWEEN_with_integers/7.1.0_1633125904695/topology new file mode 100644 index 000000000000..7b6119f7a4ae --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/between_-_test_NOT_BETWEEN_with_integers/7.1.0_1633125904695/topology @@ -0,0 +1,16 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> WhereFilter + <-- KSTREAM-SOURCE-0000000000 + Processor: WhereFilter (stores: []) + --> Project + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000004 + <-- WhereFilter + Sink: KSTREAM-SINK-0000000004 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-arithmetic_-_in_projection/7.1.0_1633125904758/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-arithmetic_-_in_projection/7.1.0_1633125904758/plan.json new file mode 100644 index 000000000000..db5a975e4298 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-arithmetic_-_in_projection/7.1.0_1633125904758/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (COL0 INTEGER KEY, COL1 BIGINT, COL2 DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`COL0` INTEGER KEY, `COL1` BIGINT, `COL2` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.COL0 COL0,\n (INPUT.COL0 + INPUT.COL1) KSQL_COL_0,\n (INPUT.COL2 + 10) KSQL_COL_1,\n (INPUT.COL1 * 25) KSQL_COL_2,\n ((12 * 4) + 2) KSQL_COL_3\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`COL0` INTEGER KEY, `KSQL_COL_0` BIGINT, `KSQL_COL_1` DOUBLE, `KSQL_COL_2` BIGINT, `KSQL_COL_3` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`COL0` INTEGER KEY, `COL1` BIGINT, `COL2` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "COL0" ], + "selectExpressions" : [ "(COL0 + COL1) AS KSQL_COL_0", "(COL2 + 10) AS KSQL_COL_1", "(COL1 * 25) AS KSQL_COL_2", "((12 * 4) + 2) AS KSQL_COL_3" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-arithmetic_-_in_projection/7.1.0_1633125904758/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-arithmetic_-_in_projection/7.1.0_1633125904758/spec.json new file mode 100644 index 000000000000..1201c9a94dcc --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-arithmetic_-_in_projection/7.1.0_1633125904758/spec.json @@ -0,0 +1,102 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904758, + "path" : "query-validation-tests/binary-arithmetic.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`COL0` INTEGER KEY, `COL1` BIGINT, `COL2` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`COL0` INTEGER KEY, `KSQL_COL_0` BIGINT, `KSQL_COL_1` DOUBLE, `KSQL_COL_2` BIGINT, `KSQL_COL_3` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "in projection", + "inputs" : [ { + "topic" : "test_topic", + "key" : 6, + "value" : { + "col1" : 25, + "col2" : 3.21 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 6, + "value" : { + "KSQL_COL_0" : 31, + "KSQL_COL_1" : 13.21, + "KSQL_COL_2" : 625, + "KSQL_COL_3" : 50 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (col0 INT KEY, col1 BIGINT, col2 DOUBLE) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT col0, col0+col1, col2+10, col1*25, 12*4+2 FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`COL0` INTEGER KEY, `COL1` BIGINT, `COL2` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`COL0` INTEGER KEY, `KSQL_COL_0` BIGINT, `KSQL_COL_1` DOUBLE, `KSQL_COL_2` BIGINT, `KSQL_COL_3` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-arithmetic_-_in_projection/7.1.0_1633125904758/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-arithmetic_-_in_projection/7.1.0_1633125904758/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-arithmetic_-_in_projection/7.1.0_1633125904758/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_array_equality/7.1.0_1633125905430/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_array_equality/7.1.0_1633125905430/plan.json new file mode 100644 index 000000000000..78d4c167ae36 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_array_equality/7.1.0_1633125905430/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (A INTEGER KEY, B ARRAY, C ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`A` INTEGER KEY, `B` ARRAY, `C` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.A A,\n (INPUT.B = INPUT.C) KSQL_COL_0,\n (INPUT.B <> INPUT.C) KSQL_COL_1,\n (NOT (INPUT.B IS DISTINCT FROM INPUT.C)) KSQL_COL_2,\n (INPUT.B IS DISTINCT FROM INPUT.C) KSQL_COL_3\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`A` INTEGER KEY, `B` ARRAY, `C` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "A" ], + "selectExpressions" : [ "(B = C) AS KSQL_COL_0", "(B <> C) AS KSQL_COL_1", "(NOT (B IS DISTINCT FROM C)) AS KSQL_COL_2", "(B IS DISTINCT FROM C) AS KSQL_COL_3" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_array_equality/7.1.0_1633125905430/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_array_equality/7.1.0_1633125905430/spec.json new file mode 100644 index 000000000000..aa891ff73cb9 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_array_equality/7.1.0_1633125905430/spec.json @@ -0,0 +1,118 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905430, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`A` INTEGER KEY, `B` ARRAY, `C` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array equality", + "inputs" : [ { + "topic" : "test_topic", + "key" : 1, + "value" : { + "B" : [ 1, 2 ], + "C" : [ 1, 2.0 ] + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "B" : [ 1, 2 ], + "C" : [ 1 ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : false, + "KSQL_COL_2" : true, + "KSQL_COL_3" : false + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : true, + "KSQL_COL_2" : false, + "KSQL_COL_3" : true + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (A INT KEY, B ARRAY, C ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT A, B = C, B <> C, B IS NOT DISTINCT FROM C, B IS DISTINCT FROM C FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `B` ARRAY, `C` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_array_equality/7.1.0_1633125905430/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_array_equality/7.1.0_1633125905430/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_array_equality/7.1.0_1633125905430/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_between/7.1.0_1633125905160/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_between/7.1.0_1633125905160/plan.json new file mode 100644 index 000000000000..b9485a2a4503 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_between/7.1.0_1633125905160/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (A INTEGER KEY, B BIGINT, C DOUBLE, D DECIMAL(4, 3), E STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.A A,\n (INPUT.A BETWEEN 0 AND 2) KSQL_COL_0,\n (INPUT.B BETWEEN 10 AND 12) KSQL_COL_1,\n (INPUT.C BETWEEN 1.0 AND 1.11) KSQL_COL_2,\n (INPUT.D BETWEEN 1.19 AND 1.21) KSQL_COL_3,\n (INPUT.E BETWEEN 'eoo' AND 'goo') KSQL_COL_4\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "A" ], + "selectExpressions" : [ "(A BETWEEN 0 AND 2) AS KSQL_COL_0", "(B BETWEEN 10 AND 12) AS KSQL_COL_1", "(C BETWEEN 1.0 AND 1.11) AS KSQL_COL_2", "(D BETWEEN 1.19 AND 1.21) AS KSQL_COL_3", "(E BETWEEN 'eoo' AND 'goo') AS KSQL_COL_4" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_between/7.1.0_1633125905160/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_between/7.1.0_1633125905160/spec.json new file mode 100644 index 000000000000..6057021306b1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_between/7.1.0_1633125905160/spec.json @@ -0,0 +1,181 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905160, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "between", + "inputs" : [ { + "topic" : "test_topic", + "key" : -1, + "value" : { + "B" : 9, + "C" : 0.99, + "D" : 1.18, + "E" : "doo" + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "B" : 10, + "C" : 1.0, + "D" : 1.19, + "E" : "eoo" + } + }, { + "topic" : "test_topic", + "key" : 1, + "value" : { + "B" : 11, + "C" : 1.1, + "D" : 1.20, + "E" : "foo" + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "B" : 12, + "C" : 1.11, + "D" : 1.21, + "E" : "goo" + } + }, { + "topic" : "test_topic", + "key" : 3, + "value" : { + "B" : 13, + "C" : 1.12, + "D" : 1.22, + "E" : "hoo" + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : -1, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : false, + "KSQL_COL_2" : false, + "KSQL_COL_3" : false, + "KSQL_COL_4" : false + } + }, { + "topic" : "OUTPUT", + "key" : 0, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true + } + }, { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true + } + }, { + "topic" : "OUTPUT", + "key" : 3, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : false, + "KSQL_COL_2" : false, + "KSQL_COL_3" : false, + "KSQL_COL_4" : false + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (A INT KEY, B BIGINT, C DOUBLE, D DECIMAL(4,3), E STRING) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT A, A BETWEEN 0 AND 2, B BETWEEN 10 AND 12, C BETWEEN 1.0 AND 1.11, D BETWEEN 1.19 AND 1.21, E BETWEEN 'eoo' AND 'goo' FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_between/7.1.0_1633125905160/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_between/7.1.0_1633125905160/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_between/7.1.0_1633125905160/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_equals/7.1.0_1633125904785/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_equals/7.1.0_1633125904785/plan.json new file mode 100644 index 000000000000..a6d90cfe3c35 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_equals/7.1.0_1633125904785/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (A INTEGER KEY, B BOOLEAN, C BIGINT, D DOUBLE, E DECIMAL(4, 3), F STRING, G ARRAY, H MAP, I STRUCT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.A A,\n (INPUT.A = 1) KSQL_COL_0,\n (INPUT.B = true) KSQL_COL_1,\n (INPUT.C = 11) KSQL_COL_2,\n (INPUT.D = 1.1) KSQL_COL_3,\n (INPUT.E = 1.20) KSQL_COL_4,\n (INPUT.F = 'foo') KSQL_COL_5,\n (INPUT.G = ARRAY[1, 2]) KSQL_COL_6,\n (INPUT.H = MAP('a':=1)) KSQL_COL_7,\n (INPUT.I = STRUCT(ID:=2)) KSQL_COL_8\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN, `KSQL_COL_5` BOOLEAN, `KSQL_COL_6` BOOLEAN, `KSQL_COL_7` BOOLEAN, `KSQL_COL_8` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "A" ], + "selectExpressions" : [ "(A = 1) AS KSQL_COL_0", "(B = true) AS KSQL_COL_1", "(C = 11) AS KSQL_COL_2", "(D = 1.1) AS KSQL_COL_3", "(E = 1.20) AS KSQL_COL_4", "(F = 'foo') AS KSQL_COL_5", "(G = ARRAY[1, 2]) AS KSQL_COL_6", "(H = MAP('a':=1)) AS KSQL_COL_7", "(I = STRUCT(ID:=2)) AS KSQL_COL_8" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_equals/7.1.0_1633125904785/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_equals/7.1.0_1633125904785/spec.json new file mode 100644 index 000000000000..ac4858f7a0c4 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_equals/7.1.0_1633125904785/spec.json @@ -0,0 +1,148 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904785, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN, `KSQL_COL_5` BOOLEAN, `KSQL_COL_6` BOOLEAN, `KSQL_COL_7` BOOLEAN, `KSQL_COL_8` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "equals", + "inputs" : [ { + "topic" : "test_topic", + "key" : 1, + "value" : { + "B" : true, + "C" : 11, + "D" : 1.1, + "E" : 1.20, + "F" : "foo", + "G" : [ 1, 2 ], + "H" : { + "a" : 1 + }, + "I" : { + "id" : 2 + } + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "B" : false, + "C" : 10, + "D" : 1.0, + "E" : 1.21, + "F" : "Foo", + "G" : [ 1 ], + "H" : { + "b" : 1 + }, + "I" : { + "id" : 3 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true, + "KSQL_COL_5" : true, + "KSQL_COL_6" : true, + "KSQL_COL_7" : true, + "KSQL_COL_8" : true + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : false, + "KSQL_COL_2" : false, + "KSQL_COL_3" : false, + "KSQL_COL_4" : false, + "KSQL_COL_5" : false, + "KSQL_COL_6" : false, + "KSQL_COL_7" : false, + "KSQL_COL_8" : false + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (A INT KEY, B BOOLEAN, C BIGINT, D DOUBLE, E DECIMAL(4,3), F STRING, G ARRAY, H MAP, I STRUCT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT A, A = 1, B = true, C = 11, D = 1.1, E = 1.20, F = 'foo', G = ARRAY[1,2], H = MAP('a':=1), I = STRUCT(ID:=2) FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN, `KSQL_COL_5` BOOLEAN, `KSQL_COL_6` BOOLEAN, `KSQL_COL_7` BOOLEAN, `KSQL_COL_8` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_equals/7.1.0_1633125904785/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_equals/7.1.0_1633125904785/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_equals/7.1.0_1633125904785/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than/7.1.0_1633125905090/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than/7.1.0_1633125905090/plan.json new file mode 100644 index 000000000000..afd50095ff18 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than/7.1.0_1633125905090/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (A INTEGER KEY, B BIGINT, C DOUBLE, D DECIMAL(4, 3), E STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.A A,\n (INPUT.A > 1) KSQL_COL_0,\n (INPUT.B > 11) KSQL_COL_1,\n (INPUT.C > 1.1) KSQL_COL_2,\n (INPUT.D > 1.20) KSQL_COL_3,\n (INPUT.E > 'foo') KSQL_COL_4\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "A" ], + "selectExpressions" : [ "(A > 1) AS KSQL_COL_0", "(B > 11) AS KSQL_COL_1", "(C > 1.1) AS KSQL_COL_2", "(D > 1.20) AS KSQL_COL_3", "(E > 'foo') AS KSQL_COL_4" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than/7.1.0_1633125905090/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than/7.1.0_1633125905090/spec.json new file mode 100644 index 000000000000..973a251463ab --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than/7.1.0_1633125905090/spec.json @@ -0,0 +1,124 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905090, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "greater than", + "inputs" : [ { + "topic" : "test_topic", + "key" : 1, + "value" : { + "B" : 11, + "C" : 1.1, + "D" : 1.20, + "E" : "foo" + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "B" : 12, + "C" : 1.11, + "D" : 1.21, + "E" : "goo" + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : false, + "KSQL_COL_2" : false, + "KSQL_COL_3" : false, + "KSQL_COL_4" : false + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (A INT KEY, B BIGINT, C DOUBLE, D DECIMAL(4,3), E STRING) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT A, A > 1, B > 11, C > 1.1, D > 1.20, E > 'foo' FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than/7.1.0_1633125905090/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than/7.1.0_1633125905090/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than/7.1.0_1633125905090/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than_or_equal/7.1.0_1633125905125/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than_or_equal/7.1.0_1633125905125/plan.json new file mode 100644 index 000000000000..17e82c44730a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than_or_equal/7.1.0_1633125905125/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (A INTEGER KEY, B BIGINT, C DOUBLE, D DECIMAL(4, 3), E STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.A A,\n (INPUT.A >= 1) KSQL_COL_0,\n (INPUT.B >= 11) KSQL_COL_1,\n (INPUT.C >= 1.1) KSQL_COL_2,\n (INPUT.D >= 1.20) KSQL_COL_3,\n (INPUT.E >= 'foo') KSQL_COL_4\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "A" ], + "selectExpressions" : [ "(A >= 1) AS KSQL_COL_0", "(B >= 11) AS KSQL_COL_1", "(C >= 1.1) AS KSQL_COL_2", "(D >= 1.20) AS KSQL_COL_3", "(E >= 'foo') AS KSQL_COL_4" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than_or_equal/7.1.0_1633125905125/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than_or_equal/7.1.0_1633125905125/spec.json new file mode 100644 index 000000000000..c6d05a2c51bb --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than_or_equal/7.1.0_1633125905125/spec.json @@ -0,0 +1,143 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905125, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "greater than or equal", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "B" : 10, + "C" : 1.0, + "D" : 1.19, + "E" : "Foo" + } + }, { + "topic" : "test_topic", + "key" : 1, + "value" : { + "B" : 11, + "C" : 1.1, + "D" : 1.20, + "E" : "foo" + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "B" : 12, + "C" : 1.11, + "D" : 1.21, + "E" : "goo" + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 0, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : false, + "KSQL_COL_2" : false, + "KSQL_COL_3" : false, + "KSQL_COL_4" : false + } + }, { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (A INT KEY, B BIGINT, C DOUBLE, D DECIMAL(4,3), E STRING) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT A, A >= 1, B >= 11, C >= 1.1, D >= 1.20, E >= 'foo' FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than_or_equal/7.1.0_1633125905125/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than_or_equal/7.1.0_1633125905125/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_greater_than_or_equal/7.1.0_1633125905125/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from/7.1.0_1633125905238/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from/7.1.0_1633125905238/plan.json new file mode 100644 index 000000000000..2f0bf75524d6 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from/7.1.0_1633125905238/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID INTEGER KEY, ID2 INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` INTEGER KEY, `ID2` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n (INPUT.ID IS DISTINCT FROM INPUT.ID2) KSQL_COL_0\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` INTEGER KEY, `KSQL_COL_0` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` INTEGER KEY, `ID2` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "(ID IS DISTINCT FROM ID2) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from/7.1.0_1633125905238/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from/7.1.0_1633125905238/spec.json new file mode 100644 index 000000000000..73166a87a869 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from/7.1.0_1633125905238/spec.json @@ -0,0 +1,146 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905238, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` INTEGER KEY, `ID2` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` INTEGER KEY, `KSQL_COL_0` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "is distinct from", + "inputs" : [ { + "topic" : "test_topic", + "key" : 1, + "value" : { + "ID2" : 1 + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "ID2" : 1 + } + }, { + "topic" : "test_topic", + "key" : 3, + "value" : { + "ID2" : null + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ID2" : 1 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ID2" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : false + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : true + } + }, { + "topic" : "OUTPUT", + "key" : 3, + "value" : { + "KSQL_COL_0" : true + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : true + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : false + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID INT KEY, ID2 INT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, ID IS DISTINCT FROM ID2 FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `ID2` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `KSQL_COL_0` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from/7.1.0_1633125905238/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from/7.1.0_1633125905238/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from/7.1.0_1633125905238/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from_(2)/7.1.0_1633125905254/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from_(2)/7.1.0_1633125905254/plan.json new file mode 100644 index 000000000000..e1337bc59d91 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from_(2)/7.1.0_1633125905254/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (A INTEGER KEY, B BOOLEAN, C BIGINT, D DOUBLE, E DECIMAL(4, 3), F STRING, G ARRAY, H MAP, I STRUCT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.A A,\n (INPUT.A IS DISTINCT FROM 1) KSQL_COL_0,\n (INPUT.B IS DISTINCT FROM true) KSQL_COL_1,\n (INPUT.C IS DISTINCT FROM 11) KSQL_COL_2,\n (INPUT.D IS DISTINCT FROM 1.1) KSQL_COL_3,\n (INPUT.E IS DISTINCT FROM 1.20) KSQL_COL_4,\n (INPUT.F IS DISTINCT FROM 'foo') KSQL_COL_5,\n (INPUT.G IS DISTINCT FROM ARRAY[1, 2]) KSQL_COL_6,\n (INPUT.H IS DISTINCT FROM MAP('a':=1)) KSQL_COL_7,\n (INPUT.I IS DISTINCT FROM STRUCT(ID:=2)) KSQL_COL_8\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN, `KSQL_COL_5` BOOLEAN, `KSQL_COL_6` BOOLEAN, `KSQL_COL_7` BOOLEAN, `KSQL_COL_8` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "A" ], + "selectExpressions" : [ "(A IS DISTINCT FROM 1) AS KSQL_COL_0", "(B IS DISTINCT FROM true) AS KSQL_COL_1", "(C IS DISTINCT FROM 11) AS KSQL_COL_2", "(D IS DISTINCT FROM 1.1) AS KSQL_COL_3", "(E IS DISTINCT FROM 1.20) AS KSQL_COL_4", "(F IS DISTINCT FROM 'foo') AS KSQL_COL_5", "(G IS DISTINCT FROM ARRAY[1, 2]) AS KSQL_COL_6", "(H IS DISTINCT FROM MAP('a':=1)) AS KSQL_COL_7", "(I IS DISTINCT FROM STRUCT(ID:=2)) AS KSQL_COL_8" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from_(2)/7.1.0_1633125905254/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from_(2)/7.1.0_1633125905254/spec.json new file mode 100644 index 000000000000..b182cbec0d1d --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from_(2)/7.1.0_1633125905254/spec.json @@ -0,0 +1,148 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905254, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN, `KSQL_COL_5` BOOLEAN, `KSQL_COL_6` BOOLEAN, `KSQL_COL_7` BOOLEAN, `KSQL_COL_8` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "is distinct from (2)", + "inputs" : [ { + "topic" : "test_topic", + "key" : 1, + "value" : { + "B" : true, + "C" : 11, + "D" : 1.1, + "E" : 1.20, + "F" : "foo", + "G" : [ 1, 2 ], + "H" : { + "a" : 1 + }, + "I" : { + "id" : 2 + } + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "B" : false, + "C" : 10, + "D" : 1.0, + "E" : 1.21, + "F" : "Foo", + "G" : [ 1 ], + "H" : { + "b" : 1 + }, + "I" : { + "id" : 3 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : false, + "KSQL_COL_2" : false, + "KSQL_COL_3" : false, + "KSQL_COL_4" : false, + "KSQL_COL_5" : false, + "KSQL_COL_6" : false, + "KSQL_COL_7" : false, + "KSQL_COL_8" : false + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true, + "KSQL_COL_5" : true, + "KSQL_COL_6" : true, + "KSQL_COL_7" : true, + "KSQL_COL_8" : true + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (A INT KEY, B BOOLEAN, C BIGINT, D DOUBLE, E DECIMAL(4,3), F STRING, G ARRAY, H MAP, I STRUCT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT A, A IS DISTINCT FROM 1, B IS DISTINCT FROM true, C IS DISTINCT FROM 11, D IS DISTINCT FROM 1.1, E IS DISTINCT FROM 1.20, F IS DISTINCT FROM 'foo', G IS DISTINCT FROM ARRAY[1,2], H IS DISTINCT FROM MAP('a':=1), I IS DISTINCT FROM STRUCT(ID:=2) FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN, `KSQL_COL_5` BOOLEAN, `KSQL_COL_6` BOOLEAN, `KSQL_COL_7` BOOLEAN, `KSQL_COL_8` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from_(2)/7.1.0_1633125905254/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from_(2)/7.1.0_1633125905254/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_distinct_from_(2)/7.1.0_1633125905254/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from/7.1.0_1633125905334/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from/7.1.0_1633125905334/plan.json new file mode 100644 index 000000000000..577420dded03 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from/7.1.0_1633125905334/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID INTEGER KEY, ID2 INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` INTEGER KEY, `ID2` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n (NOT (INPUT.ID IS DISTINCT FROM INPUT.ID2)) KSQL_COL_0\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` INTEGER KEY, `KSQL_COL_0` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` INTEGER KEY, `ID2` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "(NOT (ID IS DISTINCT FROM ID2)) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from/7.1.0_1633125905334/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from/7.1.0_1633125905334/spec.json new file mode 100644 index 000000000000..7cbc934e152b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from/7.1.0_1633125905334/spec.json @@ -0,0 +1,146 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905334, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` INTEGER KEY, `ID2` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` INTEGER KEY, `KSQL_COL_0` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "is not distinct from", + "inputs" : [ { + "topic" : "test_topic", + "key" : 1, + "value" : { + "ID2" : 1 + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "ID2" : 1 + } + }, { + "topic" : "test_topic", + "key" : 3, + "value" : { + "ID2" : null + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ID2" : 1 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ID2" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : true + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : false + } + }, { + "topic" : "OUTPUT", + "key" : 3, + "value" : { + "KSQL_COL_0" : false + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : false + } + }, { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : true + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID INT KEY, ID2 INT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, ID IS NOT DISTINCT FROM ID2 FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `ID2` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` INTEGER KEY, `KSQL_COL_0` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from/7.1.0_1633125905334/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from/7.1.0_1633125905334/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from/7.1.0_1633125905334/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from_(2)/7.1.0_1633125905351/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from_(2)/7.1.0_1633125905351/plan.json new file mode 100644 index 000000000000..6bcbffae4dbb --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from_(2)/7.1.0_1633125905351/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (A INTEGER KEY, B BOOLEAN, C BIGINT, D DOUBLE, E DECIMAL(4, 3), F STRING, G ARRAY, H MAP, I STRUCT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.A A,\n (NOT (INPUT.A IS DISTINCT FROM 1)) KSQL_COL_0,\n (NOT (INPUT.B IS DISTINCT FROM true)) KSQL_COL_1,\n (NOT (INPUT.C IS DISTINCT FROM 11)) KSQL_COL_2,\n (NOT (INPUT.D IS DISTINCT FROM 1.1)) KSQL_COL_3,\n (NOT (INPUT.E IS DISTINCT FROM 1.20)) KSQL_COL_4,\n (NOT (INPUT.F IS DISTINCT FROM 'foo')) KSQL_COL_5,\n (NOT (INPUT.G IS DISTINCT FROM ARRAY[1, 2])) KSQL_COL_6,\n (NOT (INPUT.H IS DISTINCT FROM MAP('a':=1))) KSQL_COL_7,\n (NOT (INPUT.I IS DISTINCT FROM STRUCT(ID:=2))) KSQL_COL_8\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN, `KSQL_COL_5` BOOLEAN, `KSQL_COL_6` BOOLEAN, `KSQL_COL_7` BOOLEAN, `KSQL_COL_8` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "A" ], + "selectExpressions" : [ "(NOT (A IS DISTINCT FROM 1)) AS KSQL_COL_0", "(NOT (B IS DISTINCT FROM true)) AS KSQL_COL_1", "(NOT (C IS DISTINCT FROM 11)) AS KSQL_COL_2", "(NOT (D IS DISTINCT FROM 1.1)) AS KSQL_COL_3", "(NOT (E IS DISTINCT FROM 1.20)) AS KSQL_COL_4", "(NOT (F IS DISTINCT FROM 'foo')) AS KSQL_COL_5", "(NOT (G IS DISTINCT FROM ARRAY[1, 2])) AS KSQL_COL_6", "(NOT (H IS DISTINCT FROM MAP('a':=1))) AS KSQL_COL_7", "(NOT (I IS DISTINCT FROM STRUCT(ID:=2))) AS KSQL_COL_8" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from_(2)/7.1.0_1633125905351/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from_(2)/7.1.0_1633125905351/spec.json new file mode 100644 index 000000000000..14ae2795e696 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from_(2)/7.1.0_1633125905351/spec.json @@ -0,0 +1,148 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905351, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN, `KSQL_COL_5` BOOLEAN, `KSQL_COL_6` BOOLEAN, `KSQL_COL_7` BOOLEAN, `KSQL_COL_8` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "is not distinct from (2)", + "inputs" : [ { + "topic" : "test_topic", + "key" : 1, + "value" : { + "B" : true, + "C" : 11, + "D" : 1.1, + "E" : 1.20, + "F" : "foo", + "G" : [ 1, 2 ], + "H" : { + "a" : 1 + }, + "I" : { + "id" : 2 + } + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "B" : false, + "C" : 10, + "D" : 1.0, + "E" : 1.21, + "F" : "Foo", + "G" : [ 1 ], + "H" : { + "b" : 1 + }, + "I" : { + "id" : 3 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true, + "KSQL_COL_5" : true, + "KSQL_COL_6" : true, + "KSQL_COL_7" : true, + "KSQL_COL_8" : true + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : false, + "KSQL_COL_2" : false, + "KSQL_COL_3" : false, + "KSQL_COL_4" : false, + "KSQL_COL_5" : false, + "KSQL_COL_6" : false, + "KSQL_COL_7" : false, + "KSQL_COL_8" : false + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (A INT KEY, B BOOLEAN, C BIGINT, D DOUBLE, E DECIMAL(4,3), F STRING, G ARRAY, H MAP, I STRUCT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT A, A IS NOT DISTINCT FROM 1, B IS NOT DISTINCT FROM true, C IS NOT DISTINCT FROM 11, D IS NOT DISTINCT FROM 1.1, E IS NOT DISTINCT FROM 1.20, F IS NOT DISTINCT FROM 'foo', G IS NOT DISTINCT FROM ARRAY[1,2], H IS NOT DISTINCT FROM MAP('a':=1), I IS NOT DISTINCT FROM STRUCT(ID:=2) FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN, `KSQL_COL_5` BOOLEAN, `KSQL_COL_6` BOOLEAN, `KSQL_COL_7` BOOLEAN, `KSQL_COL_8` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from_(2)/7.1.0_1633125905351/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from_(2)/7.1.0_1633125905351/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_is_not_distinct_from_(2)/7.1.0_1633125905351/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than/7.1.0_1633125904971/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than/7.1.0_1633125904971/plan.json new file mode 100644 index 000000000000..ed7c834fb6c5 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than/7.1.0_1633125904971/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (A INTEGER KEY, B BIGINT, C DOUBLE, D DECIMAL(4, 3), E STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.A A,\n (INPUT.A < 1) KSQL_COL_0,\n (INPUT.B < 11) KSQL_COL_1,\n (INPUT.C < 1.1) KSQL_COL_2,\n (INPUT.D < 1.20) KSQL_COL_3,\n (INPUT.E < 'foo') KSQL_COL_4\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "A" ], + "selectExpressions" : [ "(A < 1) AS KSQL_COL_0", "(B < 11) AS KSQL_COL_1", "(C < 1.1) AS KSQL_COL_2", "(D < 1.20) AS KSQL_COL_3", "(E < 'foo') AS KSQL_COL_4" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than/7.1.0_1633125904971/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than/7.1.0_1633125904971/spec.json new file mode 100644 index 000000000000..b6d52a490445 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than/7.1.0_1633125904971/spec.json @@ -0,0 +1,124 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904971, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "less than", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "B" : 10, + "C" : 1.0, + "D" : 1.19, + "E" : "Foo" + } + }, { + "topic" : "test_topic", + "key" : 1, + "value" : { + "B" : 11, + "C" : 1.1, + "D" : 1.20, + "E" : "foo" + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 0, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true + } + }, { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : false, + "KSQL_COL_2" : false, + "KSQL_COL_3" : false, + "KSQL_COL_4" : false + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (A INT KEY, B BIGINT, C DOUBLE, D DECIMAL(4,3), E STRING) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT A, A < 1, B < 11, C < 1.1, D < 1.20, E < 'foo' FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than/7.1.0_1633125904971/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than/7.1.0_1633125904971/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than/7.1.0_1633125904971/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than_or_equal/7.1.0_1633125905019/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than_or_equal/7.1.0_1633125905019/plan.json new file mode 100644 index 000000000000..d082b367708b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than_or_equal/7.1.0_1633125905019/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (A INTEGER KEY, B BIGINT, C DOUBLE, D DECIMAL(4, 3), E STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.A A,\n (INPUT.A <= 1) KSQL_COL_0,\n (INPUT.B <= 11) KSQL_COL_1,\n (INPUT.C <= 1.1) KSQL_COL_2,\n (INPUT.D <= 1.20) KSQL_COL_3,\n (INPUT.E <= 'foo') KSQL_COL_4\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "A" ], + "selectExpressions" : [ "(A <= 1) AS KSQL_COL_0", "(B <= 11) AS KSQL_COL_1", "(C <= 1.1) AS KSQL_COL_2", "(D <= 1.20) AS KSQL_COL_3", "(E <= 'foo') AS KSQL_COL_4" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than_or_equal/7.1.0_1633125905019/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than_or_equal/7.1.0_1633125905019/spec.json new file mode 100644 index 000000000000..1a82edf7b848 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than_or_equal/7.1.0_1633125905019/spec.json @@ -0,0 +1,143 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905019, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "less than or equal", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "B" : 10, + "C" : 1.0, + "D" : 1.19, + "E" : "Foo" + } + }, { + "topic" : "test_topic", + "key" : 1, + "value" : { + "B" : 11, + "C" : 1.1, + "D" : 1.20, + "E" : "foo" + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "B" : 12, + "C" : 1.11, + "D" : 1.21, + "E" : "goo" + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 0, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true + } + }, { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : false, + "KSQL_COL_2" : false, + "KSQL_COL_3" : false, + "KSQL_COL_4" : false + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (A INT KEY, B BIGINT, C DOUBLE, D DECIMAL(4,3), E STRING) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT A, A <= 1, B <= 11, C <= 1.1, D <= 1.20, E <= 'foo' FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than_or_equal/7.1.0_1633125905019/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than_or_equal/7.1.0_1633125905019/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_less_than_or_equal/7.1.0_1633125905019/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_map_equality/7.1.0_1633125905457/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_map_equality/7.1.0_1633125905457/plan.json new file mode 100644 index 000000000000..bf57d7db3f8a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_map_equality/7.1.0_1633125905457/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (A INTEGER KEY, B MAP, C MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`A` INTEGER KEY, `B` MAP, `C` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.A A,\n (INPUT.B = INPUT.C) KSQL_COL_0,\n (INPUT.B <> INPUT.C) KSQL_COL_1,\n (NOT (INPUT.B IS DISTINCT FROM INPUT.C)) KSQL_COL_2,\n (INPUT.B IS DISTINCT FROM INPUT.C) KSQL_COL_3\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`A` INTEGER KEY, `B` MAP, `C` MAP", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "A" ], + "selectExpressions" : [ "(B = C) AS KSQL_COL_0", "(B <> C) AS KSQL_COL_1", "(NOT (B IS DISTINCT FROM C)) AS KSQL_COL_2", "(B IS DISTINCT FROM C) AS KSQL_COL_3" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_map_equality/7.1.0_1633125905457/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_map_equality/7.1.0_1633125905457/spec.json new file mode 100644 index 000000000000..8305886d452f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_map_equality/7.1.0_1633125905457/spec.json @@ -0,0 +1,146 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905457, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`A` INTEGER KEY, `B` MAP, `C` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "map equality", + "inputs" : [ { + "topic" : "test_topic", + "key" : 1, + "value" : { + "B" : { + "a" : 1 + }, + "C" : { + "a" : 1.0 + } + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "B" : { + "a" : 1 + }, + "C" : { + "a" : 2 + } + } + }, { + "topic" : "test_topic", + "key" : 3, + "value" : { + "B" : { + "a" : 1 + }, + "C" : { + "b" : 1 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : false, + "KSQL_COL_2" : true, + "KSQL_COL_3" : false + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : true, + "KSQL_COL_2" : false, + "KSQL_COL_3" : true + } + }, { + "topic" : "OUTPUT", + "key" : 3, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : true, + "KSQL_COL_2" : false, + "KSQL_COL_3" : true + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (A INT KEY, B MAP, C MAP) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT A, B = C, B <> C, B IS NOT DISTINCT FROM C, B IS DISTINCT FROM C FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `B` MAP, `C` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_map_equality/7.1.0_1633125905457/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_map_equality/7.1.0_1633125905457/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_map_equality/7.1.0_1633125905457/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_nested_collections_comparison/7.1.0_1633125905515/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_nested_collections_comparison/7.1.0_1633125905515/plan.json new file mode 100644 index 000000000000..6dc7d6846f86 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_nested_collections_comparison/7.1.0_1633125905515/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (A INTEGER KEY, B ARRAY>, C ARRAY>) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`A` INTEGER KEY, `B` ARRAY>, `C` ARRAY>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.A A,\n (INPUT.B = INPUT.C) KSQL_COL_0\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`A` INTEGER KEY, `B` ARRAY>, `C` ARRAY>", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "A" ], + "selectExpressions" : [ "(B = C) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_nested_collections_comparison/7.1.0_1633125905515/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_nested_collections_comparison/7.1.0_1633125905515/spec.json new file mode 100644 index 000000000000..907717aab087 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_nested_collections_comparison/7.1.0_1633125905515/spec.json @@ -0,0 +1,140 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905515, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`A` INTEGER KEY, `B` ARRAY>, `C` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "nested collections comparison", + "inputs" : [ { + "topic" : "test_topic", + "key" : 1, + "value" : { + "B" : [ { + "X" : { + "foo" : 1 + } + }, { + "Y" : { + "bar" : 2 + } + } ], + "C" : [ { + "Y" : { + "foo" : 2 + } + }, { + "X" : { + "bar" : 1 + } + } ] + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "B" : [ { + "X" : { + "foo" : 1 + } + }, { + "Y" : { + "bar" : 2 + } + } ], + "C" : [ { + "X" : { + "foo" : 1 + } + } ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : true + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : false + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (A INT KEY, B ARRAY>, C ARRAY>) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT A, B = C FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `B` ARRAY>, `C` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_nested_collections_comparison/7.1.0_1633125905515/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_nested_collections_comparison/7.1.0_1633125905515/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_nested_collections_comparison/7.1.0_1633125905515/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_between/7.1.0_1633125905200/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_between/7.1.0_1633125905200/plan.json new file mode 100644 index 000000000000..50ded250d4b8 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_between/7.1.0_1633125905200/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (A INTEGER KEY, B BIGINT, C DOUBLE, D DECIMAL(4, 3), E STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.A A,\n (NOT (INPUT.A BETWEEN 0 AND 2)) KSQL_COL_0,\n (NOT (INPUT.B BETWEEN 10 AND 12)) KSQL_COL_1,\n (NOT (INPUT.C BETWEEN 1.0 AND 1.11)) KSQL_COL_2,\n (NOT (INPUT.D BETWEEN 1.19 AND 1.21)) KSQL_COL_3,\n (NOT (INPUT.E BETWEEN 'eoo' AND 'goo')) KSQL_COL_4\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "A" ], + "selectExpressions" : [ "(NOT (A BETWEEN 0 AND 2)) AS KSQL_COL_0", "(NOT (B BETWEEN 10 AND 12)) AS KSQL_COL_1", "(NOT (C BETWEEN 1.0 AND 1.11)) AS KSQL_COL_2", "(NOT (D BETWEEN 1.19 AND 1.21)) AS KSQL_COL_3", "(NOT (E BETWEEN 'eoo' AND 'goo')) AS KSQL_COL_4" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_between/7.1.0_1633125905200/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_between/7.1.0_1633125905200/spec.json new file mode 100644 index 000000000000..7ec8161fd633 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_between/7.1.0_1633125905200/spec.json @@ -0,0 +1,181 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905200, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "not between", + "inputs" : [ { + "topic" : "test_topic", + "key" : -1, + "value" : { + "B" : 9, + "C" : 0.99, + "D" : 1.18, + "E" : "doo" + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "B" : 10, + "C" : 1.0, + "D" : 1.19, + "E" : "eoo" + } + }, { + "topic" : "test_topic", + "key" : 1, + "value" : { + "B" : 11, + "C" : 1.1, + "D" : 1.20, + "E" : "foo" + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "B" : 12, + "C" : 1.11, + "D" : 1.21, + "E" : "goo" + } + }, { + "topic" : "test_topic", + "key" : 3, + "value" : { + "B" : 13, + "C" : 1.12, + "D" : 1.22, + "E" : "hoo" + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : -1, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true + } + }, { + "topic" : "OUTPUT", + "key" : 0, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : false, + "KSQL_COL_2" : false, + "KSQL_COL_3" : false, + "KSQL_COL_4" : false + } + }, { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : false, + "KSQL_COL_2" : false, + "KSQL_COL_3" : false, + "KSQL_COL_4" : false + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : false, + "KSQL_COL_2" : false, + "KSQL_COL_3" : false, + "KSQL_COL_4" : false + } + }, { + "topic" : "OUTPUT", + "key" : 3, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (A INT KEY, B BIGINT, C DOUBLE, D DECIMAL(4,3), E STRING) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT A, A NOT BETWEEN 0 AND 2, B NOT BETWEEN 10 AND 12, C NOT BETWEEN 1.0 AND 1.11, D NOT BETWEEN 1.19 AND 1.21, E NOT BETWEEN 'eoo' AND 'goo' FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `B` BIGINT, `C` DOUBLE, `D` DECIMAL(4, 3), `E` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_between/7.1.0_1633125905200/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_between/7.1.0_1633125905200/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_between/7.1.0_1633125905200/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_equals/7.1.0_1633125904879/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_equals/7.1.0_1633125904879/plan.json new file mode 100644 index 000000000000..758c66061d8b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_equals/7.1.0_1633125904879/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (A INTEGER KEY, B BOOLEAN, C BIGINT, D DOUBLE, E DECIMAL(4, 3), F STRING, G ARRAY, H MAP, I STRUCT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.A A,\n (INPUT.A <> 1) KSQL_COL_0,\n (INPUT.B <> true) KSQL_COL_1,\n (INPUT.C <> 11) KSQL_COL_2,\n (INPUT.D <> 1.1) KSQL_COL_3,\n (INPUT.E <> 1.20) KSQL_COL_4,\n (INPUT.F <> 'foo') KSQL_COL_5,\n (INPUT.G <> ARRAY[1, 2]) KSQL_COL_6,\n (INPUT.H <> MAP('a':=1)) KSQL_COL_7,\n (INPUT.I <> STRUCT(ID:=2)) KSQL_COL_8\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN, `KSQL_COL_5` BOOLEAN, `KSQL_COL_6` BOOLEAN, `KSQL_COL_7` BOOLEAN, `KSQL_COL_8` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "A" ], + "selectExpressions" : [ "(A <> 1) AS KSQL_COL_0", "(B <> true) AS KSQL_COL_1", "(C <> 11) AS KSQL_COL_2", "(D <> 1.1) AS KSQL_COL_3", "(E <> 1.20) AS KSQL_COL_4", "(F <> 'foo') AS KSQL_COL_5", "(G <> ARRAY[1, 2]) AS KSQL_COL_6", "(H <> MAP('a':=1)) AS KSQL_COL_7", "(I <> STRUCT(ID:=2)) AS KSQL_COL_8" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_equals/7.1.0_1633125904879/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_equals/7.1.0_1633125904879/spec.json new file mode 100644 index 000000000000..a66874f6b04d --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_equals/7.1.0_1633125904879/spec.json @@ -0,0 +1,148 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125904879, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN, `KSQL_COL_5` BOOLEAN, `KSQL_COL_6` BOOLEAN, `KSQL_COL_7` BOOLEAN, `KSQL_COL_8` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "not equals", + "inputs" : [ { + "topic" : "test_topic", + "key" : 1, + "value" : { + "B" : true, + "C" : 11, + "D" : 1.1, + "E" : 1.20, + "F" : "foo", + "G" : [ 1, 2 ], + "H" : { + "a" : 1 + }, + "I" : { + "id" : 2 + } + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "B" : false, + "C" : 10, + "D" : 1.0, + "E" : 1.21, + "F" : "Foo", + "G" : [ 1 ], + "H" : { + "b" : 1 + }, + "I" : { + "id" : 3 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : false, + "KSQL_COL_2" : false, + "KSQL_COL_3" : false, + "KSQL_COL_4" : false, + "KSQL_COL_5" : false, + "KSQL_COL_6" : false, + "KSQL_COL_7" : false, + "KSQL_COL_8" : false + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : true, + "KSQL_COL_2" : true, + "KSQL_COL_3" : true, + "KSQL_COL_4" : true, + "KSQL_COL_5" : true, + "KSQL_COL_6" : true, + "KSQL_COL_7" : true, + "KSQL_COL_8" : true + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (A INT KEY, B BOOLEAN, C BIGINT, D DOUBLE, E DECIMAL(4,3), F STRING, G ARRAY, H MAP, I STRUCT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT A, A <> 1, B <> true, C <> 11, D <> 1.1, E <> 1.20, F <> 'foo', G <> ARRAY[1,2], H <> MAP('a':=1), I <> STRUCT(ID:=2) FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `B` BOOLEAN, `C` BIGINT, `D` DOUBLE, `E` DECIMAL(4, 3), `F` STRING, `G` ARRAY, `H` MAP, `I` STRUCT<`ID` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN, `KSQL_COL_4` BOOLEAN, `KSQL_COL_5` BOOLEAN, `KSQL_COL_6` BOOLEAN, `KSQL_COL_7` BOOLEAN, `KSQL_COL_8` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_equals/7.1.0_1633125904879/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_equals/7.1.0_1633125904879/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_not_equals/7.1.0_1633125904879/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_struct_equality/7.1.0_1633125905485/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_struct_equality/7.1.0_1633125905485/plan.json new file mode 100644 index 000000000000..3e358b7c088c --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_struct_equality/7.1.0_1633125905485/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (A INTEGER KEY, B STRUCT, C STRUCT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`A` INTEGER KEY, `B` STRUCT<`ID` INTEGER>, `C` STRUCT<`ID` INTEGER>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.A A,\n (INPUT.B = INPUT.C) KSQL_COL_0,\n (INPUT.B <> INPUT.C) KSQL_COL_1,\n (NOT (INPUT.B IS DISTINCT FROM INPUT.C)) KSQL_COL_2,\n (INPUT.B IS DISTINCT FROM INPUT.C) KSQL_COL_3\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`A` INTEGER KEY, `B` STRUCT<`ID` INTEGER>, `C` STRUCT<`ID` INTEGER>", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "A" ], + "selectExpressions" : [ "(B = C) AS KSQL_COL_0", "(B <> C) AS KSQL_COL_1", "(NOT (B IS DISTINCT FROM C)) AS KSQL_COL_2", "(B IS DISTINCT FROM C) AS KSQL_COL_3" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_struct_equality/7.1.0_1633125905485/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_struct_equality/7.1.0_1633125905485/spec.json new file mode 100644 index 000000000000..4e68e6cbb824 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_struct_equality/7.1.0_1633125905485/spec.json @@ -0,0 +1,146 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905485, + "path" : "query-validation-tests/binary-comparison.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`A` INTEGER KEY, `B` STRUCT<`ID` INTEGER>, `C` STRUCT<`ID` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "struct equality", + "inputs" : [ { + "topic" : "test_topic", + "key" : 1, + "value" : { + "B" : { + "id" : 2 + }, + "C" : { + "id" : 2.0 + } + } + }, { + "topic" : "test_topic", + "key" : 2, + "value" : { + "B" : { + "id" : 2 + }, + "C" : { + "id" : 1 + } + } + }, { + "topic" : "test_topic", + "key" : 3, + "value" : { + "B" : { + "id" : 2 + }, + "C" : { + "i" : 2 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : 1, + "value" : { + "KSQL_COL_0" : true, + "KSQL_COL_1" : false, + "KSQL_COL_2" : true, + "KSQL_COL_3" : false + } + }, { + "topic" : "OUTPUT", + "key" : 2, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : true, + "KSQL_COL_2" : false, + "KSQL_COL_3" : true + } + }, { + "topic" : "OUTPUT", + "key" : 3, + "value" : { + "KSQL_COL_0" : false, + "KSQL_COL_1" : true, + "KSQL_COL_2" : false, + "KSQL_COL_3" : true + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (A INT KEY, B STRUCT, C STRUCT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT A, B = C, B <> C, B IS NOT DISTINCT FROM C, B IS DISTINCT FROM C FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `B` STRUCT<`ID` INTEGER>, `C` STRUCT<`ID` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`A` INTEGER KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` BOOLEAN, `KSQL_COL_2` BOOLEAN, `KSQL_COL_3` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_struct_equality/7.1.0_1633125905485/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_struct_equality/7.1.0_1633125905485/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/binary-comparison_-_struct_equality/7.1.0_1633125905485/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_ASCII_encoded_string/7.1.0_1633125905696/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_ASCII_encoded_string/7.1.0_1633125905696/plan.json new file mode 100644 index 000000000000..945f152320ea --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_ASCII_encoded_string/7.1.0_1633125905696/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (S STRING, B BYTES) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='DELIMITED');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`S` STRING, `B` BYTES", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TS AS SELECT\n FROM_BYTES(TEST.B, 'ascii') ASCII,\n TO_BYTES(FROM_BYTES(TEST.B, 'ascii'), 'ascii') B1,\n FROM_BYTES(TO_BYTES(TEST.S, 'ascii'), 'ascii') S1\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TS", + "schema" : "`ASCII` STRING, `B1` BYTES, `S1` STRING", + "topicName" : "TS", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "TS", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "TS" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "sourceSchema" : "`S` STRING, `B` BYTES", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FROM_BYTES(B, 'ascii') AS ASCII", "TO_BYTES(FROM_BYTES(B, 'ascii'), 'ascii') AS B1", "FROM_BYTES(TO_BYTES(S, 'ascii'), 'ascii') AS S1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "topicName" : "TS" + }, + "queryId" : "CSAS_TS_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_ASCII_encoded_string/7.1.0_1633125905696/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_ASCII_encoded_string/7.1.0_1633125905696/spec.json new file mode 100644 index 000000000000..215d59a260ff --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_ASCII_encoded_string/7.1.0_1633125905696/spec.json @@ -0,0 +1,102 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905696, + "path" : "query-validation-tests/bytes-and-strings.json", + "schemas" : { + "CSAS_TS_0.TS" : { + "schema" : "`ASCII` STRING, `B1` BYTES, `S1` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "CSAS_TS_0.KsqlTopic.Source" : { + "schema" : "`S` STRING, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + } + }, + "testCase" : { + "name" : "convert bytes to ASCII encoded string", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : "!,IQ==" + }, { + "topic" : "test_topic", + "key" : null, + "value" : "#,Iw==" + } ], + "outputs" : [ { + "topic" : "TS", + "key" : null, + "value" : "\"!\",IQ==,\"!\"" + }, { + "topic" : "TS", + "key" : null, + "value" : "\"#\",Iw==,\"#\"" + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "TS", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (s STRING, b BYTES) WITH (kafka_topic='test_topic', value_format='DELIMITED');", "CREATE STREAM TS AS select FROM_BYTES(b, 'ascii') AS ascii, TO_BYTES(FROM_BYTES(b, 'ascii'), 'ascii') AS b1, FROM_BYTES(TO_BYTES(s, 'ascii'), 'ascii') AS s1 from test;" ], + "post" : { + "sources" : [ { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`S` STRING, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TS", + "type" : "STREAM", + "schema" : "`ASCII` STRING, `B1` BYTES, `S1` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + }, { + "name" : "TS", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_ASCII_encoded_string/7.1.0_1633125905696/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_ASCII_encoded_string/7.1.0_1633125905696/topology new file mode 100644 index 000000000000..aabd9cade152 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_ASCII_encoded_string/7.1.0_1633125905696/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: TS) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_BASE64_encoded_string/7.1.0_1633125905747/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_BASE64_encoded_string/7.1.0_1633125905747/plan.json new file mode 100644 index 000000000000..94e37dc80e01 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_BASE64_encoded_string/7.1.0_1633125905747/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (S STRING, B BYTES) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='DELIMITED');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`S` STRING, `B` BYTES", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TS AS SELECT\n FROM_BYTES(TEST.B, 'base64') BASE64,\n TO_BYTES(FROM_BYTES(TEST.B, 'base64'), 'base64') B1,\n FROM_BYTES(TO_BYTES(TEST.S, 'base64'), 'base64') S1\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TS", + "schema" : "`BASE64` STRING, `B1` BYTES, `S1` STRING", + "topicName" : "TS", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "TS", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "TS" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "sourceSchema" : "`S` STRING, `B` BYTES", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FROM_BYTES(B, 'base64') AS BASE64", "TO_BYTES(FROM_BYTES(B, 'base64'), 'base64') AS B1", "FROM_BYTES(TO_BYTES(S, 'base64'), 'base64') AS S1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "topicName" : "TS" + }, + "queryId" : "CSAS_TS_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_BASE64_encoded_string/7.1.0_1633125905747/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_BASE64_encoded_string/7.1.0_1633125905747/spec.json new file mode 100644 index 000000000000..b1aa34999523 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_BASE64_encoded_string/7.1.0_1633125905747/spec.json @@ -0,0 +1,102 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905747, + "path" : "query-validation-tests/bytes-and-strings.json", + "schemas" : { + "CSAS_TS_0.TS" : { + "schema" : "`BASE64` STRING, `B1` BYTES, `S1` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "CSAS_TS_0.KsqlTopic.Source" : { + "schema" : "`S` STRING, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + } + }, + "testCase" : { + "name" : "convert bytes to BASE64 encoded string", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : "IQ==,IQ==" + }, { + "topic" : "test_topic", + "key" : null, + "value" : "Iw==,Iw==" + } ], + "outputs" : [ { + "topic" : "TS", + "key" : null, + "value" : "IQ==,IQ==,IQ==" + }, { + "topic" : "TS", + "key" : null, + "value" : "Iw==,Iw==,Iw==" + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "TS", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (s STRING, b BYTES) WITH (kafka_topic='test_topic', value_format='DELIMITED');", "CREATE STREAM TS AS select FROM_BYTES(b, 'base64') AS base64, TO_BYTES(FROM_BYTES(b, 'base64'), 'base64') AS b1, FROM_BYTES(TO_BYTES(s, 'base64'), 'base64') AS s1 from test;" ], + "post" : { + "sources" : [ { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`S` STRING, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TS", + "type" : "STREAM", + "schema" : "`BASE64` STRING, `B1` BYTES, `S1` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + }, { + "name" : "TS", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_BASE64_encoded_string/7.1.0_1633125905747/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_BASE64_encoded_string/7.1.0_1633125905747/topology new file mode 100644 index 000000000000..aabd9cade152 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_BASE64_encoded_string/7.1.0_1633125905747/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: TS) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_HEX_encoded_string/7.1.0_1633125905666/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_HEX_encoded_string/7.1.0_1633125905666/plan.json new file mode 100644 index 000000000000..91fd9adf480e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_HEX_encoded_string/7.1.0_1633125905666/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (S STRING, B BYTES) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='DELIMITED');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`S` STRING, `B` BYTES", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TS AS SELECT\n FROM_BYTES(TEST.B, 'hex') HEX,\n TO_BYTES(FROM_BYTES(TEST.B, 'hex'), 'hex') B1,\n FROM_BYTES(TO_BYTES(TEST.S, 'hex'), 'hex') S1\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TS", + "schema" : "`HEX` STRING, `B1` BYTES, `S1` STRING", + "topicName" : "TS", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "TS", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "TS" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "sourceSchema" : "`S` STRING, `B` BYTES", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FROM_BYTES(B, 'hex') AS HEX", "TO_BYTES(FROM_BYTES(B, 'hex'), 'hex') AS B1", "FROM_BYTES(TO_BYTES(S, 'hex'), 'hex') AS S1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "topicName" : "TS" + }, + "queryId" : "CSAS_TS_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_HEX_encoded_string/7.1.0_1633125905666/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_HEX_encoded_string/7.1.0_1633125905666/spec.json new file mode 100644 index 000000000000..d6848d4615b3 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_HEX_encoded_string/7.1.0_1633125905666/spec.json @@ -0,0 +1,102 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905666, + "path" : "query-validation-tests/bytes-and-strings.json", + "schemas" : { + "CSAS_TS_0.TS" : { + "schema" : "`HEX` STRING, `B1` BYTES, `S1` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "CSAS_TS_0.KsqlTopic.Source" : { + "schema" : "`S` STRING, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + } + }, + "testCase" : { + "name" : "convert bytes to HEX encoded string", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : "21,IQ==" + }, { + "topic" : "test_topic", + "key" : null, + "value" : "23,Iw==" + } ], + "outputs" : [ { + "topic" : "TS", + "key" : null, + "value" : "21,IQ==,21" + }, { + "topic" : "TS", + "key" : null, + "value" : "23,Iw==,23" + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "TS", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (s STRING, b BYTES) WITH (kafka_topic='test_topic', value_format='DELIMITED');", "CREATE STREAM TS AS select FROM_BYTES(b, 'hex') AS hex, TO_BYTES(FROM_BYTES(b, 'hex'), 'hex') AS b1, FROM_BYTES(TO_BYTES(s, 'hex'), 'hex') AS s1 from test;" ], + "post" : { + "sources" : [ { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`S` STRING, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TS", + "type" : "STREAM", + "schema" : "`HEX` STRING, `B1` BYTES, `S1` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + }, { + "name" : "TS", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_HEX_encoded_string/7.1.0_1633125905666/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_HEX_encoded_string/7.1.0_1633125905666/topology new file mode 100644 index 000000000000..aabd9cade152 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_HEX_encoded_string/7.1.0_1633125905666/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: TS) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_UTF8_encoded_string/7.1.0_1633125905723/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_UTF8_encoded_string/7.1.0_1633125905723/plan.json new file mode 100644 index 000000000000..f46c70c9dde1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_UTF8_encoded_string/7.1.0_1633125905723/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (S STRING, B BYTES) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='DELIMITED');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`S` STRING, `B` BYTES", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TS AS SELECT\n FROM_BYTES(TEST.B, 'utf8') UTF8,\n TO_BYTES(FROM_BYTES(TEST.B, 'utf8'), 'utf8') B1,\n FROM_BYTES(TO_BYTES(TEST.S, 'utf8'), 'utf8') S1\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TS", + "schema" : "`UTF8` STRING, `B1` BYTES, `S1` STRING", + "topicName" : "TS", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "TS", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "TS" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "sourceSchema" : "`S` STRING, `B` BYTES", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "FROM_BYTES(B, 'utf8') AS UTF8", "TO_BYTES(FROM_BYTES(B, 'utf8'), 'utf8') AS B1", "FROM_BYTES(TO_BYTES(S, 'utf8'), 'utf8') AS S1" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "topicName" : "TS" + }, + "queryId" : "CSAS_TS_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_UTF8_encoded_string/7.1.0_1633125905723/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_UTF8_encoded_string/7.1.0_1633125905723/spec.json new file mode 100644 index 000000000000..3296e52c036f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_UTF8_encoded_string/7.1.0_1633125905723/spec.json @@ -0,0 +1,102 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905723, + "path" : "query-validation-tests/bytes-and-strings.json", + "schemas" : { + "CSAS_TS_0.TS" : { + "schema" : "`UTF8` STRING, `B1` BYTES, `S1` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "CSAS_TS_0.KsqlTopic.Source" : { + "schema" : "`S` STRING, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + } + }, + "testCase" : { + "name" : "convert bytes to UTF8 encoded string", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : "!,IQ==" + }, { + "topic" : "test_topic", + "key" : null, + "value" : "#,Iw==" + } ], + "outputs" : [ { + "topic" : "TS", + "key" : null, + "value" : "\"!\",IQ==,\"!\"" + }, { + "topic" : "TS", + "key" : null, + "value" : "\"#\",Iw==,\"#\"" + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "TS", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (s STRING, b BYTES) WITH (kafka_topic='test_topic', value_format='DELIMITED');", "CREATE STREAM TS AS select FROM_BYTES(b, 'utf8') AS utf8, TO_BYTES(FROM_BYTES(b, 'utf8'), 'utf8') AS b1, FROM_BYTES(TO_BYTES(s, 'utf8'), 'utf8') AS s1 from test;" ], + "post" : { + "sources" : [ { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`S` STRING, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TS", + "type" : "STREAM", + "schema" : "`UTF8` STRING, `B1` BYTES, `S1` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + }, { + "name" : "TS", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_UTF8_encoded_string/7.1.0_1633125905723/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_UTF8_encoded_string/7.1.0_1633125905723/topology new file mode 100644 index 000000000000..aabd9cade152 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-and-strings_-_convert_bytes_to_UTF8_encoded_string/7.1.0_1633125905723/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: TS) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_LPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905772/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_LPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905772/plan.json new file mode 100644 index 000000000000..8916bda00f39 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_LPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905772/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, SUBJECT BYTES, LEN INTEGER, PADDING BYTES) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `SUBJECT` BYTES, `LEN` INTEGER, `PADDING` BYTES", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n LPAD(INPUT.SUBJECT, INPUT.LEN, INPUT.PADDING) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` BYTES", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `SUBJECT` BYTES, `LEN` INTEGER, `PADDING` BYTES", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "LPAD(SUBJECT, LEN, PADDING) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_LPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905772/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_LPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905772/spec.json new file mode 100644 index 000000000000..27930ab82b8c --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_LPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905772/spec.json @@ -0,0 +1,226 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905772, + "path" : "query-validation-tests/bytes-lpad-rpad.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `SUBJECT` BYTES, `LEN` INTEGER, `PADDING` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "LPAD with all args from record - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "subject" : "eWVz", + "len" : 8, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "subject" : "eWVz", + "len" : 5, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "subject" : "eWVz", + "len" : 3, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "subject" : "eWVz", + "len" : 2, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "subject" : "eWVz", + "len" : 0, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r6", + "value" : { + "subject" : "eWVz", + "len" : -1, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r7", + "value" : { + "subject" : "eWVz", + "len" : 3, + "padding" : "" + } + }, { + "topic" : "test_topic", + "key" : "r8", + "value" : { + "subject" : null, + "len" : 8, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r9", + "value" : { + "subject" : "eWVz", + "len" : null, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r10", + "value" : { + "subject" : "eWVz", + "len" : 8, + "padding" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : "bm9ub255ZXM=" + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "RESULT" : "bm95ZXM=" + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "RESULT" : "eWVz" + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "RESULT" : "eWU=" + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "RESULT" : "" + } + }, { + "topic" : "OUTPUT", + "key" : "r6", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r7", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r8", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r9", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r10", + "value" : { + "RESULT" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, subject BYTES, len INT, padding BYTES) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, lpad(subject, len, padding) AS result FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `SUBJECT` BYTES, `LEN` INTEGER, `PADDING` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_LPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905772/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_LPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905772/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_LPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905772/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_RPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905790/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_RPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905790/plan.json new file mode 100644 index 000000000000..0df333b2db5d --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_RPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905790/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, SUBJECT BYTES, LEN INTEGER, PADDING BYTES) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `SUBJECT` BYTES, `LEN` INTEGER, `PADDING` BYTES", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n RPAD(INPUT.SUBJECT, INPUT.LEN, INPUT.PADDING) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` BYTES", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `SUBJECT` BYTES, `LEN` INTEGER, `PADDING` BYTES", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "RPAD(SUBJECT, LEN, PADDING) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_RPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905790/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_RPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905790/spec.json new file mode 100644 index 000000000000..483d335a3000 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_RPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905790/spec.json @@ -0,0 +1,226 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905790, + "path" : "query-validation-tests/bytes-lpad-rpad.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `SUBJECT` BYTES, `LEN` INTEGER, `PADDING` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "RPAD with all args from record - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "subject" : "eWVz", + "len" : 8, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "subject" : "eWVz", + "len" : 5, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "subject" : "eWVz", + "len" : 3, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "subject" : "eWVz", + "len" : 2, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "subject" : "eWVz", + "len" : 0, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r6", + "value" : { + "subject" : "eWVz", + "len" : -1, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r7", + "value" : { + "subject" : "eWVz", + "len" : 3, + "padding" : "" + } + }, { + "topic" : "test_topic", + "key" : "r8", + "value" : { + "subject" : null, + "len" : 3, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r9", + "value" : { + "subject" : "eWVz", + "len" : null, + "padding" : "bm8=" + } + }, { + "topic" : "test_topic", + "key" : "r10", + "value" : { + "subject" : "eWVz", + "len" : -1, + "padding" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : "eWVzbm9ub24=" + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "RESULT" : "eWVzbm8=" + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "RESULT" : "eWVz" + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "RESULT" : "eWU=" + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "RESULT" : "" + } + }, { + "topic" : "OUTPUT", + "key" : "r6", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r7", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r8", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r9", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r10", + "value" : { + "RESULT" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, subject BYTES, len INT, padding BYTES) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, rpad(subject, len, padding) AS RESULT FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `SUBJECT` BYTES, `LEN` INTEGER, `PADDING` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_RPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905790/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_RPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905790/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes-lpad-rpad_-_RPAD_with_all_args_from_record_-_JSON/7.1.0_1633125905790/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_AVRO_in_out/7.1.0_1633125905592/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_AVRO_in_out/7.1.0_1633125905592/plan.json new file mode 100644 index 000000000000..1e36470e5d79 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_AVRO_in_out/7.1.0_1633125905592/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, B BYTES) WITH (KAFKA_TOPIC='test', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `B` BYTES", + "topicName" : "test", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST2 AS SELECT *\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST2", + "schema" : "`ID` STRING KEY, `B` BYTES", + "topicName" : "TEST2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "TEST2", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "TEST2" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` STRING KEY, `B` BYTES", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "B AS B" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "TEST2" + }, + "queryId" : "CSAS_TEST2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_AVRO_in_out/7.1.0_1633125905592/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_AVRO_in_out/7.1.0_1633125905592/spec.json new file mode 100644 index 000000000000..cc1af64c0b7f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_AVRO_in_out/7.1.0_1633125905592/spec.json @@ -0,0 +1,139 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905592, + "path" : "query-validation-tests/bytes.json", + "schemas" : { + "CSAS_TEST2_0.TEST2" : { + "schema" : "`ID` STRING KEY, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_TEST2_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "AVRO in/out", + "inputs" : [ { + "topic" : "test", + "key" : null, + "value" : { + "B" : "dmFyaWF0aW9ucw==" + } + } ], + "outputs" : [ { + "topic" : "TEST2", + "key" : null, + "value" : { + "B" : "dmFyaWF0aW9ucw==" + } + } ], + "topics" : [ { + "name" : "TEST2", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ID", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "B", + "type" : [ "null", "bytes" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, b BYTES) WITH (kafka_topic='test', value_format='AVRO');", "CREATE STREAM TEST2 AS SELECT * FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST2", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 1, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ID", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "B", + "type" : [ "null", "bytes" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "TEST2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "B", + "type" : [ "null", "bytes" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_AVRO_in_out/7.1.0_1633125905592/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_AVRO_in_out/7.1.0_1633125905592/topology new file mode 100644 index 000000000000..e080cd675668 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_AVRO_in_out/7.1.0_1633125905592/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: TEST2) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_DELIMITED_in_out/7.1.0_1633125905531/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_DELIMITED_in_out/7.1.0_1633125905531/plan.json new file mode 100644 index 000000000000..a9233c8e9d73 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_DELIMITED_in_out/7.1.0_1633125905531/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, B BYTES) WITH (KAFKA_TOPIC='test', KEY_FORMAT='KAFKA', VALUE_FORMAT='DELIMITED');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `B` BYTES", + "topicName" : "test", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST2 AS SELECT *\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST2", + "schema" : "`ID` STRING KEY, `B` BYTES", + "topicName" : "TEST2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "TEST2", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "TEST2" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "sourceSchema" : "`ID` STRING KEY, `B` BYTES", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "B AS B" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "topicName" : "TEST2" + }, + "queryId" : "CSAS_TEST2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_DELIMITED_in_out/7.1.0_1633125905531/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_DELIMITED_in_out/7.1.0_1633125905531/spec.json new file mode 100644 index 000000000000..1bf00521a6a7 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_DELIMITED_in_out/7.1.0_1633125905531/spec.json @@ -0,0 +1,94 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905531, + "path" : "query-validation-tests/bytes.json", + "schemas" : { + "CSAS_TEST2_0.TEST2" : { + "schema" : "`ID` STRING KEY, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "CSAS_TEST2_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + } + }, + "testCase" : { + "name" : "DELIMITED in/out", + "inputs" : [ { + "topic" : "test", + "key" : null, + "value" : "dmFyaWF0aW9ucw==" + } ], + "outputs" : [ { + "topic" : "TEST2", + "key" : null, + "value" : "dmFyaWF0aW9ucw==" + } ], + "topics" : [ { + "name" : "TEST2", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, b BYTES) WITH (kafka_topic='test', value_format='DELIMITED');", "CREATE STREAM TEST2 AS SELECT * FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST2", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + }, { + "name" : "TEST2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_DELIMITED_in_out/7.1.0_1633125905531/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_DELIMITED_in_out/7.1.0_1633125905531/topology new file mode 100644 index 000000000000..e080cd675668 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_DELIMITED_in_out/7.1.0_1633125905531/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: TEST2) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_JSON_in_out/7.1.0_1633125905544/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_JSON_in_out/7.1.0_1633125905544/plan.json new file mode 100644 index 000000000000..e375b93e45ad --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_JSON_in_out/7.1.0_1633125905544/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, B BYTES) WITH (KAFKA_TOPIC='test', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `B` BYTES", + "topicName" : "test", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST2 AS SELECT *\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST2", + "schema" : "`ID` STRING KEY, `B` BYTES", + "topicName" : "TEST2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "TEST2", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "TEST2" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `B` BYTES", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "B AS B" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "TEST2" + }, + "queryId" : "CSAS_TEST2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_JSON_in_out/7.1.0_1633125905544/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_JSON_in_out/7.1.0_1633125905544/spec.json new file mode 100644 index 000000000000..cc990d650087 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_JSON_in_out/7.1.0_1633125905544/spec.json @@ -0,0 +1,98 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905544, + "path" : "query-validation-tests/bytes.json", + "schemas" : { + "CSAS_TEST2_0.TEST2" : { + "schema" : "`ID` STRING KEY, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_TEST2_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "JSON in/out", + "inputs" : [ { + "topic" : "test", + "key" : null, + "value" : { + "B" : "dmFyaWF0aW9ucw==" + } + } ], + "outputs" : [ { + "topic" : "TEST2", + "key" : null, + "value" : { + "B" : "dmFyaWF0aW9ucw==" + } + } ], + "topics" : [ { + "name" : "TEST2", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, b BYTES) WITH (kafka_topic='test', value_format='JSON');", "CREATE STREAM TEST2 AS SELECT * FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST2", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "TEST2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_JSON_in_out/7.1.0_1633125905544/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_JSON_in_out/7.1.0_1633125905544/topology new file mode 100644 index 000000000000..e080cd675668 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_JSON_in_out/7.1.0_1633125905544/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: TEST2) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_PROTOBUF_in_out/7.1.0_1633125905558/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_PROTOBUF_in_out/7.1.0_1633125905558/plan.json new file mode 100644 index 000000000000..bb602d08dd67 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_PROTOBUF_in_out/7.1.0_1633125905558/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (B BYTES) WITH (KAFKA_TOPIC='test', KEY_FORMAT='KAFKA', VALUE_FORMAT='PROTOBUF', VALUE_SCHEMA_ID=1);", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`B` BYTES", + "topicName" : "test", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST2 AS SELECT *\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST2", + "schema" : "`B` BYTES", + "topicName" : "TEST2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "TEST2", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "TEST2" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "sourceSchema" : "`B` BYTES", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "B AS B" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "topicName" : "TEST2" + }, + "queryId" : "CSAS_TEST2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_PROTOBUF_in_out/7.1.0_1633125905558/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_PROTOBUF_in_out/7.1.0_1633125905558/spec.json new file mode 100644 index 000000000000..20717d5cd918 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_PROTOBUF_in_out/7.1.0_1633125905558/spec.json @@ -0,0 +1,102 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905558, + "path" : "query-validation-tests/bytes.json", + "schemas" : { + "CSAS_TEST2_0.TEST2" : { + "schema" : "`B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CSAS_TEST2_0.KsqlTopic.Source" : { + "schema" : "`B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "testCase" : { + "name" : "PROTOBUF in/out", + "inputs" : [ { + "topic" : "test", + "key" : null, + "value" : { + "b" : "dmFyaWF0aW9ucw==" + } + } ], + "outputs" : [ { + "topic" : "TEST2", + "key" : null, + "value" : { + "B" : "dmFyaWF0aW9ucw==" + } + } ], + "topics" : [ { + "name" : "TEST2", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test", + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConfluentDefault1 {\n bytes b = 1;\n}\n", + "valueFormat" : "PROTOBUF", + "replicas" : 1, + "numPartitions" : 1 + } ], + "statements" : [ "CREATE STREAM TEST WITH (kafka_topic='test', value_format='PROTOBUF');", "CREATE STREAM TEST2 AS SELECT * FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST2", + "type" : "STREAM", + "schema" : "`B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 1, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConfluentDefault1 {\n bytes b = 1;\n}\n" + }, { + "name" : "TEST2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n bytes B = 1;\n}\n" + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_PROTOBUF_in_out/7.1.0_1633125905558/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_PROTOBUF_in_out/7.1.0_1633125905558/topology new file mode 100644 index 000000000000..e080cd675668 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_PROTOBUF_in_out/7.1.0_1633125905558/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: TEST2) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_bytes_in_complex_types/7.1.0_1633125905609/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_bytes_in_complex_types/7.1.0_1633125905609/plan.json new file mode 100644 index 000000000000..2e1803935428 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_bytes_in_complex_types/7.1.0_1633125905609/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, S STRUCT, A ARRAY, M MAP) WITH (KAFKA_TOPIC='test', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `S` STRUCT<`B` BYTES>, `A` ARRAY, `M` MAP", + "topicName" : "test", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST2 AS SELECT\n TEST.ID ID,\n TEST.S->B S,\n TEST.A[1] A,\n TEST.M['B'] M\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST2", + "schema" : "`ID` STRING KEY, `S` BYTES, `A` BYTES, `M` BYTES", + "topicName" : "TEST2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "TEST2", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "TEST2" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `S` STRUCT<`B` BYTES>, `A` ARRAY, `M` MAP", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "S->B AS S", "A[1] AS A", "M['B'] AS M" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "TEST2" + }, + "queryId" : "CSAS_TEST2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_bytes_in_complex_types/7.1.0_1633125905609/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_bytes_in_complex_types/7.1.0_1633125905609/spec.json new file mode 100644 index 000000000000..9e0bde417186 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_bytes_in_complex_types/7.1.0_1633125905609/spec.json @@ -0,0 +1,106 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905609, + "path" : "query-validation-tests/bytes.json", + "schemas" : { + "CSAS_TEST2_0.TEST2" : { + "schema" : "`ID` STRING KEY, `S` BYTES, `A` BYTES, `M` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_TEST2_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `S` STRUCT<`B` BYTES>, `A` ARRAY, `M` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "bytes in complex types", + "inputs" : [ { + "topic" : "test", + "key" : null, + "value" : { + "S" : { + "B" : "ew==" + }, + "A" : [ "ew==", "ew==" ], + "M" : { + "B" : "ew==" + } + } + } ], + "outputs" : [ { + "topic" : "TEST2", + "key" : null, + "value" : { + "S" : "ew==", + "A" : "ew==", + "M" : "ew==" + } + } ], + "topics" : [ { + "name" : "TEST2", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, S STRUCT, A ARRAY, M MAP) WITH (kafka_topic='test', value_format='JSON');", "CREATE STREAM TEST2 AS SELECT ID, S -> B AS S, A[1] AS A, M['B'] AS M FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `S` STRUCT<`B` BYTES>, `A` ARRAY, `M` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST2", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `S` BYTES, `A` BYTES, `M` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "TEST2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_bytes_in_complex_types/7.1.0_1633125905609/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_bytes_in_complex_types/7.1.0_1633125905609/topology new file mode 100644 index 000000000000..e080cd675668 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_bytes_in_complex_types/7.1.0_1633125905609/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: TEST2) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_filter/7.1.0_1633125905649/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_filter/7.1.0_1633125905649/plan.json new file mode 100644 index 000000000000..090d99b35062 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_filter/7.1.0_1633125905649/plan.json @@ -0,0 +1,173 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, A BYTES, B BYTES, C BYTES) WITH (KAFKA_TOPIC='test', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `A` BYTES, `B` BYTES, `C` BYTES", + "topicName" : "test", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST2 AS SELECT\n TEST.ID ID,\n TEST.C RESULT\nFROM TEST TEST\nWHERE (TEST.B BETWEEN TEST.A AND TEST.C)\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST2", + "schema" : "`ID` STRING KEY, `RESULT` BYTES", + "topicName" : "TEST2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "TEST2", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "TEST2" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamFilterV1", + "properties" : { + "queryContext" : "WhereFilter" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `A` BYTES, `B` BYTES, `C` BYTES", + "pseudoColumnVersion" : 1 + }, + "filterExpression" : "(B BETWEEN A AND C)" + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "C AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "TEST2" + }, + "queryId" : "CSAS_TEST2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_filter/7.1.0_1633125905649/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_filter/7.1.0_1633125905649/spec.json new file mode 100644 index 000000000000..078c4b42a046 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_filter/7.1.0_1633125905649/spec.json @@ -0,0 +1,132 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905649, + "path" : "query-validation-tests/bytes.json", + "schemas" : { + "CSAS_TEST2_0.TEST2" : { + "schema" : "`ID` STRING KEY, `RESULT` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_TEST2_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `A` BYTES, `B` BYTES, `C` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "filter", + "inputs" : [ { + "topic" : "test", + "key" : null, + "value" : { + "A" : "Yg==", + "B" : "YQ==", + "C" : "Yg==" + } + }, { + "topic" : "test", + "key" : null, + "value" : { + "A" : null, + "B" : "YQ==", + "C" : "YQ==" + } + }, { + "topic" : "test", + "key" : null, + "value" : { + "A" : "YQ==", + "B" : null, + "C" : "YQ==" + } + }, { + "topic" : "test", + "key" : null, + "value" : { + "A" : "YQ==", + "B" : "YQ==", + "C" : null + } + }, { + "topic" : "test", + "key" : null, + "value" : { + "A" : "YQ==", + "B" : "Yg==", + "C" : "Yw==" + } + } ], + "outputs" : [ { + "topic" : "TEST2", + "key" : null, + "value" : { + "RESULT" : "Yw==" + } + } ], + "topics" : [ { + "name" : "TEST2", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, a BYTES, b BYTES, c BYTES) WITH (kafka_topic='test', value_format='JSON');", "CREATE STREAM TEST2 AS SELECT ID, C AS RESULT FROM TEST WHERE b BETWEEN a AND c;" ], + "post" : { + "sources" : [ { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `A` BYTES, `B` BYTES, `C` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST2", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "TEST2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_filter/7.1.0_1633125905649/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_filter/7.1.0_1633125905649/topology new file mode 100644 index 000000000000..242260cdf0a5 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_filter/7.1.0_1633125905649/topology @@ -0,0 +1,16 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> WhereFilter + <-- KSTREAM-SOURCE-0000000000 + Processor: WhereFilter (stores: []) + --> Project + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000004 + <-- WhereFilter + Sink: KSTREAM-SINK-0000000004 (topic: TEST2) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_greater_than/7.1.0_1633125905632/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_greater_than/7.1.0_1633125905632/plan.json new file mode 100644 index 000000000000..81d903d1aeb9 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_greater_than/7.1.0_1633125905632/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, A BYTES, B BYTES) WITH (KAFKA_TOPIC='test', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `A` BYTES, `B` BYTES", + "topicName" : "test", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST2 AS SELECT\n TEST.ID ID,\n (TEST.A > TEST.B) RESULT\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST2", + "schema" : "`ID` STRING KEY, `RESULT` BOOLEAN", + "topicName" : "TEST2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "TEST2", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "TEST2" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `A` BYTES, `B` BYTES", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "(A > B) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "TEST2" + }, + "queryId" : "CSAS_TEST2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_greater_than/7.1.0_1633125905632/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_greater_than/7.1.0_1633125905632/spec.json new file mode 100644 index 000000000000..45a7406cf10c --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_greater_than/7.1.0_1633125905632/spec.json @@ -0,0 +1,151 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905632, + "path" : "query-validation-tests/bytes.json", + "schemas" : { + "CSAS_TEST2_0.TEST2" : { + "schema" : "`ID` STRING KEY, `RESULT` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_TEST2_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `A` BYTES, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "greater than", + "inputs" : [ { + "topic" : "test", + "key" : null, + "value" : { + "A" : "YQ==", + "B" : "YQ==" + } + }, { + "topic" : "test", + "key" : null, + "value" : { + "A" : null, + "B" : null + } + }, { + "topic" : "test", + "key" : null, + "value" : { + "A" : "YQ==", + "B" : null + } + }, { + "topic" : "test", + "key" : null, + "value" : { + "A" : null, + "B" : "YQ==" + } + }, { + "topic" : "test", + "key" : null, + "value" : { + "A" : "Yg==", + "B" : "YQ==" + } + } ], + "outputs" : [ { + "topic" : "TEST2", + "key" : null, + "value" : { + "RESULT" : false + } + }, { + "topic" : "TEST2", + "key" : null, + "value" : { + "RESULT" : false + } + }, { + "topic" : "TEST2", + "key" : null, + "value" : { + "RESULT" : false + } + }, { + "topic" : "TEST2", + "key" : null, + "value" : { + "RESULT" : false + } + }, { + "topic" : "TEST2", + "key" : null, + "value" : { + "RESULT" : true + } + } ], + "topics" : [ { + "name" : "TEST2", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, a BYTES, b BYTES) WITH (kafka_topic='test', value_format='JSON');", "CREATE STREAM TEST2 AS SELECT ID, (a > b) AS RESULT FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `A` BYTES, `B` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST2", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "TEST2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_greater_than/7.1.0_1633125905632/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_greater_than/7.1.0_1633125905632/topology new file mode 100644 index 000000000000..e080cd675668 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/bytes_-_greater_than/7.1.0_1633125905632/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: TEST2) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_as_param_to_UDAF/7.1.0_1633125906039/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_as_param_to_UDAF/7.1.0_1633125906039/plan.json new file mode 100644 index 000000000000..2469d57933d9 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_as_param_to_UDAF/7.1.0_1633125906039/plan.json @@ -0,0 +1,217 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM RUSSELL_3K_TRADES (TICKERID STRING KEY, QUANTITY INTEGER, PRICE INTEGER, BUY BOOLEAN) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "RUSSELL_3K_TRADES", + "schema" : "`TICKERID` STRING KEY, `QUANTITY` INTEGER, `PRICE` INTEGER, `BUY` BOOLEAN", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE RUSSELL_3K_HOURLY AS SELECT\n RUSSELL_3K_TRADES.TICKERID TICKERID,\n COUNT(*) TRADECOUNT,\n SUM(RUSSELL_3K_TRADES.QUANTITY) TRADEVOLUMN,\n MIN((CASE WHEN RUSSELL_3K_TRADES.BUY THEN RUSSELL_3K_TRADES.PRICE ELSE null END)) MINBUYPRICE,\n MAX((CASE WHEN RUSSELL_3K_TRADES.BUY THEN RUSSELL_3K_TRADES.PRICE ELSE null END)) MAXBUYPRICE,\n MIN((CASE WHEN RUSSELL_3K_TRADES.BUY THEN null ELSE RUSSELL_3K_TRADES.PRICE END)) MINSELLPRICE,\n MAX((CASE WHEN RUSSELL_3K_TRADES.BUY THEN null ELSE RUSSELL_3K_TRADES.PRICE END)) MAXSELLPRICE\nFROM RUSSELL_3K_TRADES RUSSELL_3K_TRADES\nWINDOW TUMBLING ( SIZE 1 HOURS ) \nGROUP BY RUSSELL_3K_TRADES.TICKERID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "RUSSELL_3K_HOURLY", + "schema" : "`TICKERID` STRING KEY, `TRADECOUNT` BIGINT, `TRADEVOLUMN` INTEGER, `MINBUYPRICE` INTEGER, `MAXBUYPRICE` INTEGER, `MINSELLPRICE` INTEGER, `MAXSELLPRICE` INTEGER", + "topicName" : "RUSSELL_3K_HOURLY", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "windowInfo" : { + "type" : "TUMBLING", + "size" : 3600.000000000 + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "RUSSELL_3K_TRADES" ], + "sink" : "RUSSELL_3K_HOURLY", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "RUSSELL_3K_HOURLY" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamWindowedAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`TICKERID` STRING KEY, `QUANTITY` INTEGER, `PRICE` INTEGER, `BUY` BOOLEAN", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "TICKERID" ], + "selectExpressions" : [ "TICKERID AS TICKERID", "ROWTIME AS ROWTIME", "QUANTITY AS QUANTITY", "BUY AS BUY", "PRICE AS PRICE", "(CASE WHEN BUY THEN PRICE ELSE null END) AS KSQL_INTERNAL_COL_5", "(CASE WHEN BUY THEN null ELSE PRICE END) AS KSQL_INTERNAL_COL_6" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "TICKERID", "ROWTIME", "QUANTITY", "BUY", "PRICE" ], + "aggregationFunctions" : [ "COUNT(ROWTIME)", "SUM(QUANTITY)", "MIN(KSQL_INTERNAL_COL_5)", "MAX(KSQL_INTERNAL_COL_5)", "MIN(KSQL_INTERNAL_COL_6)", "MAX(KSQL_INTERNAL_COL_6)" ], + "windowExpression" : " TUMBLING ( SIZE 1 HOURS ) " + }, + "keyColumnNames" : [ "TICKERID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS TRADECOUNT", "KSQL_AGG_VARIABLE_1 AS TRADEVOLUMN", "KSQL_AGG_VARIABLE_2 AS MINBUYPRICE", "KSQL_AGG_VARIABLE_3 AS MAXBUYPRICE", "KSQL_AGG_VARIABLE_4 AS MINSELLPRICE", "KSQL_AGG_VARIABLE_5 AS MAXSELLPRICE" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "RUSSELL_3K_HOURLY" + }, + "queryId" : "CTAS_RUSSELL_3K_HOURLY_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_as_param_to_UDAF/7.1.0_1633125906039/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_as_param_to_UDAF/7.1.0_1633125906039/spec.json new file mode 100644 index 000000000000..9059719e66d4 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_as_param_to_UDAF/7.1.0_1633125906039/spec.json @@ -0,0 +1,185 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906039, + "path" : "query-validation-tests/case-expression.json", + "schemas" : { + "CTAS_RUSSELL_3K_HOURLY_0.RUSSELL_3K_HOURLY" : { + "schema" : "`TICKERID` STRING KEY, `TRADECOUNT` BIGINT, `TRADEVOLUMN` INTEGER, `MINBUYPRICE` INTEGER, `MAXBUYPRICE` INTEGER, `MINSELLPRICE` INTEGER, `MAXSELLPRICE` INTEGER", + "keyFormat" : { + "format" : "KAFKA", + "windowInfo" : { + "type" : "TUMBLING", + "size" : 3600.000000000 + } + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_RUSSELL_3K_HOURLY_0.Aggregate.GroupBy" : { + "schema" : "`TICKERID` STRING KEY, `TICKERID` STRING, `ROWTIME` BIGINT, `QUANTITY` INTEGER, `BUY` BOOLEAN, `PRICE` INTEGER, `KSQL_INTERNAL_COL_5` INTEGER, `KSQL_INTERNAL_COL_6` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_RUSSELL_3K_HOURLY_0.KsqlTopic.Source" : { + "schema" : "`TICKERID` STRING KEY, `QUANTITY` INTEGER, `PRICE` INTEGER, `BUY` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_RUSSELL_3K_HOURLY_0.Aggregate.Project" : { + "schema" : "`TICKERID` STRING KEY, `TRADECOUNT` BIGINT, `TRADEVOLUMN` INTEGER, `MINBUYPRICE` INTEGER, `MAXBUYPRICE` INTEGER, `MINSELLPRICE` INTEGER, `MAXSELLPRICE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_RUSSELL_3K_HOURLY_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`TICKERID` STRING KEY, `TICKERID` STRING, `ROWTIME` BIGINT, `QUANTITY` INTEGER, `BUY` BOOLEAN, `PRICE` INTEGER, `KSQL_AGG_VARIABLE_0` BIGINT, `KSQL_AGG_VARIABLE_1` INTEGER, `KSQL_AGG_VARIABLE_2` INTEGER, `KSQL_AGG_VARIABLE_3` INTEGER, `KSQL_AGG_VARIABLE_4` INTEGER, `KSQL_AGG_VARIABLE_5` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "as param to UDAF", + "inputs" : [ { + "topic" : "test_topic", + "key" : "AEIS", + "value" : { + "userId" : "bob67", + "quantity" : 76, + "price" : 120125102, + "buy" : true + } + }, { + "topic" : "test_topic", + "key" : "AEIS", + "value" : { + "userId" : "bob67", + "quantity" : 10, + "price" : 100125102, + "buy" : false + } + } ], + "outputs" : [ { + "topic" : "RUSSELL_3K_HOURLY", + "key" : "AEIS", + "value" : { + "TRADECOUNT" : 1, + "TRADEVOLUMN" : 76, + "MINBUYPRICE" : 120125102, + "MAXBUYPRICE" : 120125102, + "MINSELLPRICE" : null, + "MAXSELLPRICE" : null + }, + "window" : { + "start" : 0, + "end" : 3600000, + "type" : "TIME" + } + }, { + "topic" : "RUSSELL_3K_HOURLY", + "key" : "AEIS", + "value" : { + "TRADECOUNT" : 2, + "TRADEVOLUMN" : 86, + "MINBUYPRICE" : 120125102, + "MAXBUYPRICE" : 120125102, + "MINSELLPRICE" : 100125102, + "MAXSELLPRICE" : 100125102 + }, + "window" : { + "start" : 0, + "end" : 3600000, + "type" : "TIME" + } + } ], + "topics" : [ { + "name" : "RUSSELL_3K_HOURLY", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM russell_3k_trades (tickerId VARCHAR KEY, quantity INT, price INT, buy BOOLEAN) WITH (kafka_topic='test_topic',value_format='json');", "CREATE TABLE russell_3k_hourly AS SELECT tickerId, count(*) as tradeCount, sum(quantity) as tradeVolumn, min(CASE WHEN buy THEN price ELSE null END) as minBuyPrice, max(CASE WHEN buy THEN price ELSE null END) as maxBuyPrice, min(CASE WHEN buy THEN null ELSE price END) as minSellPrice, max(CASE WHEN buy THEN null ELSE price END) as maxSellPrice FROM russell_3k_trades WINDOW TUMBLING (SIZE 1 HOUR) GROUP BY tickerId;" ], + "post" : { + "sources" : [ { + "name" : "RUSSELL_3K_HOURLY", + "type" : "TABLE", + "schema" : "`TICKERID` STRING KEY, `TRADECOUNT` BIGINT, `TRADEVOLUMN` INTEGER, `MINBUYPRICE` INTEGER, `MAXBUYPRICE` INTEGER, `MINSELLPRICE` INTEGER, `MAXSELLPRICE` INTEGER", + "keyFormat" : { + "format" : "KAFKA", + "windowType" : "TUMBLING", + "windowSize" : 3600000 + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "RUSSELL_3K_TRADES", + "type" : "STREAM", + "schema" : "`TICKERID` STRING KEY, `QUANTITY` INTEGER, `PRICE` INTEGER, `BUY` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_RUSSELL_3K_HOURLY_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA", + "windowInfo" : { + "type" : "TUMBLING", + "size" : 3600.000000000 + } + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "RUSSELL_3K_HOURLY", + "keyFormat" : { + "format" : "KAFKA", + "windowInfo" : { + "type" : "TUMBLING", + "size" : 3600.000000000 + } + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_as_param_to_UDAF/7.1.0_1633125906039/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_as_param_to_UDAF/7.1.0_1633125906039/topology new file mode 100644 index 000000000000..fe1333179d3b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_as_param_to_UDAF/7.1.0_1633125906039/topology @@ -0,0 +1,28 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Aggregate-WindowSelect + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Aggregate-WindowSelect (stores: []) + --> Aggregate-Project + <-- Aggregate-Aggregate-ToOutputSchema + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000007 + <-- Aggregate-Aggregate-WindowSelect + Processor: KTABLE-TOSTREAM-0000000007 (stores: []) + --> KSTREAM-SINK-0000000008 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000008 (topic: RUSSELL_3K_HOURLY) + <-- KTABLE-TOSTREAM-0000000007 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression/7.1.0_1633125905808/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression/7.1.0_1633125905808/plan.json new file mode 100644 index 000000000000..8757f1521323 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression/7.1.0_1633125905808/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM ORDERS (ID STRING KEY, ORDERUNITS DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "ORDERS", + "schema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM S1 AS SELECT\n ORDERS.ID ID,\n (CASE WHEN (ORDERS.ORDERUNITS < 2.0) THEN 'small' WHEN (ORDERS.ORDERUNITS < 4.0) THEN 'medium' ELSE 'large' END) CASE_RESAULT\nFROM ORDERS ORDERS\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "S1", + "schema" : "`ID` STRING KEY, `CASE_RESAULT` STRING", + "topicName" : "S1", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "ORDERS" ], + "sink" : "S1", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "S1" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "(CASE WHEN (ORDERUNITS < 2.0) THEN 'small' WHEN (ORDERUNITS < 4.0) THEN 'medium' ELSE 'large' END) AS CASE_RESAULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S1" + }, + "queryId" : "CSAS_S1_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression/7.1.0_1633125905808/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression/7.1.0_1633125905808/spec.json new file mode 100644 index 000000000000..39e9e8cfcb8f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression/7.1.0_1633125905808/spec.json @@ -0,0 +1,122 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905808, + "path" : "query-validation-tests/case-expression.json", + "schemas" : { + "CSAS_S1_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_S1_0.S1" : { + "schema" : "`ID` STRING KEY, `CASE_RESAULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "searched case expression", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERUNITS" : 6.0 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERUNITS" : 3.0 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERUNITS" : 1.0 + } + } ], + "outputs" : [ { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESAULT" : "large" + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESAULT" : "medium" + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESAULT" : "small" + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S1", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM orders (ID STRING KEY, ORDERUNITS double) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM S1 AS SELECT ID, CASE WHEN orderunits < 2.0 THEN 'small' WHEN orderunits < 4.0 THEN 'medium' ELSE 'large' END AS case_resault FROM orders;" ], + "post" : { + "sources" : [ { + "name" : "ORDERS", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "S1", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `CASE_RESAULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "S1", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression/7.1.0_1633125905808/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression/7.1.0_1633125905808/topology new file mode 100644 index 000000000000..08dc66d3de05 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression/7.1.0_1633125905808/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: S1) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression_with_structs,_multiple_expression_and_the_same_type/7.1.0_1633125905961/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression_with_structs,_multiple_expression_and_the_same_type/7.1.0_1633125905961/plan.json new file mode 100644 index 000000000000..3bc77e89b0f8 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression_with_structs,_multiple_expression_and_the_same_type/7.1.0_1633125905961/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM ORDERS (ID STRING KEY, ADDRESS STRUCT, ITEMID STRUCT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "ORDERS", + "schema" : "`ID` STRING KEY, `ADDRESS` STRUCT<`CITY` STRING, `STATE` STRING>, `ITEMID` STRUCT<`NAME` STRING>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM S1 AS SELECT\n ORDERS.ID ID,\n (CASE WHEN (ORDERS.ADDRESS->STATE = 'STATE_1') THEN ORDERS.ITEMID->NAME WHEN (ORDERS.ADDRESS->STATE = 'STATE_3') THEN ORDERS.ADDRESS->CITY ELSE 'default' END) CASE_RESAULT\nFROM ORDERS ORDERS\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "S1", + "schema" : "`ID` STRING KEY, `CASE_RESAULT` STRING", + "topicName" : "S1", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "ORDERS" ], + "sink" : "S1", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "S1" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `ADDRESS` STRUCT<`CITY` STRING, `STATE` STRING>, `ITEMID` STRUCT<`NAME` STRING>", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "(CASE WHEN (ADDRESS->STATE = 'STATE_1') THEN ITEMID->NAME WHEN (ADDRESS->STATE = 'STATE_3') THEN ADDRESS->CITY ELSE 'default' END) AS CASE_RESAULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S1" + }, + "queryId" : "CSAS_S1_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression_with_structs,_multiple_expression_and_the_same_type/7.1.0_1633125905961/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression_with_structs,_multiple_expression_and_the_same_type/7.1.0_1633125905961/spec.json new file mode 100644 index 000000000000..ca32d6b5186e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression_with_structs,_multiple_expression_and_the_same_type/7.1.0_1633125905961/spec.json @@ -0,0 +1,176 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905961, + "path" : "query-validation-tests/case-expression.json", + "schemas" : { + "CSAS_S1_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `ADDRESS` STRUCT<`CITY` STRING, `STATE` STRING>, `ITEMID` STRUCT<`NAME` STRING>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_S1_0.S1" : { + "schema" : "`ID` STRING KEY, `CASE_RESAULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "searched case expression with structs, multiple expression and the same type", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "ITEMID" : { + "NAME" : "Food" + }, + "ADDRESS" : { + "CITY" : "CITY_0", + "STATE" : "STATE_1" + } + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ITEMID" : { + "NAME" : "Produce" + }, + "ADDRESS" : { + "CITY" : "CITY_3", + "STATE" : "STATE_6" + } + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ITEMID" : { + "NAME" : "Produce" + }, + "ADDRESS" : { + "CITY" : "CITY_9", + "STATE" : "STATE_9" + } + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ITEMID" : { + "NAME" : "Food" + }, + "ADDRESS" : { + "CITY" : "CITY_3", + "STATE" : "STATE_5" + } + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ITEMID" : { + "NAME" : "Produce" + }, + "ADDRESS" : { + "CITY" : "CITY_6", + "STATE" : "STATE_3" + } + } + } ], + "outputs" : [ { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESAULT" : "Food" + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESAULT" : "default" + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESAULT" : "default" + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESAULT" : "default" + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESAULT" : "CITY_6" + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S1", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM orders (ID STRING KEY, address STRUCT , itemid STRUCT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM S1 AS SELECT ID, CASE WHEN ADDRESS->STATE = 'STATE_1' THEN ITEMID->NAME WHEN ADDRESS->STATE = 'STATE_3' THEN ADDRESS->CITY ELSE 'default' END AS case_resault FROM orders;" ], + "post" : { + "sources" : [ { + "name" : "ORDERS", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ADDRESS` STRUCT<`CITY` STRING, `STATE` STRING>, `ITEMID` STRUCT<`NAME` STRING>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "S1", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `CASE_RESAULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "S1", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression_with_structs,_multiple_expression_and_the_same_type/7.1.0_1633125905961/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression_with_structs,_multiple_expression_and_the_same_type/7.1.0_1633125905961/topology new file mode 100644 index 000000000000..08dc66d3de05 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_expression_with_structs,_multiple_expression_and_the_same_type/7.1.0_1633125905961/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: S1) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_default_branch/7.1.0_1633125905938/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_default_branch/7.1.0_1633125905938/plan.json new file mode 100644 index 000000000000..a4fbcd6fd04a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_default_branch/7.1.0_1633125905938/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM ORDERS (ID STRING KEY, ORDERUNITS DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "ORDERS", + "schema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM S1 AS SELECT\n ORDERS.ID ID,\n (CASE WHEN (ORDERS.ORDERUNITS < 2.0) THEN 'small' ELSE null END) CASE_RESULT\nFROM ORDERS ORDERS\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "S1", + "schema" : "`ID` STRING KEY, `CASE_RESULT` STRING", + "topicName" : "S1", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "ORDERS" ], + "sink" : "S1", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "S1" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "(CASE WHEN (ORDERUNITS < 2.0) THEN 'small' ELSE null END) AS CASE_RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S1" + }, + "queryId" : "CSAS_S1_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_default_branch/7.1.0_1633125905938/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_default_branch/7.1.0_1633125905938/spec.json new file mode 100644 index 000000000000..f49e90f30377 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_default_branch/7.1.0_1633125905938/spec.json @@ -0,0 +1,110 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905938, + "path" : "query-validation-tests/case-expression.json", + "schemas" : { + "CSAS_S1_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_S1_0.S1" : { + "schema" : "`ID` STRING KEY, `CASE_RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "searched case returning null in default branch", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERUNITS" : 4.2 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERUNITS" : 1.1 + } + } ], + "outputs" : [ { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESULT" : null + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESULT" : "small" + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S1", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM orders (ID STRING KEY, ORDERUNITS double) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM S1 AS SELECT ID, CASE WHEN orderunits < 2.0 THEN 'small' ELSE null END AS case_result FROM orders;" ], + "post" : { + "sources" : [ { + "name" : "ORDERS", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "S1", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `CASE_RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "S1", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_default_branch/7.1.0_1633125905938/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_default_branch/7.1.0_1633125905938/topology new file mode 100644 index 000000000000..08dc66d3de05 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_default_branch/7.1.0_1633125905938/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: S1) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_first_branch/7.1.0_1633125905889/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_first_branch/7.1.0_1633125905889/plan.json new file mode 100644 index 000000000000..85a64822c2c8 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_first_branch/7.1.0_1633125905889/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM ORDERS (ID STRING KEY, ORDERUNITS DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "ORDERS", + "schema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM S1 AS SELECT\n ORDERS.ID ID,\n (CASE WHEN (ORDERS.ORDERUNITS < 2.0) THEN null WHEN (ORDERS.ORDERUNITS < 4.0) THEN 'medium' ELSE 'large' END) CASE_RESULT\nFROM ORDERS ORDERS\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "S1", + "schema" : "`ID` STRING KEY, `CASE_RESULT` STRING", + "topicName" : "S1", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "ORDERS" ], + "sink" : "S1", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "S1" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "(CASE WHEN (ORDERUNITS < 2.0) THEN null WHEN (ORDERUNITS < 4.0) THEN 'medium' ELSE 'large' END) AS CASE_RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S1" + }, + "queryId" : "CSAS_S1_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_first_branch/7.1.0_1633125905889/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_first_branch/7.1.0_1633125905889/spec.json new file mode 100644 index 000000000000..dcdd1fba25e5 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_first_branch/7.1.0_1633125905889/spec.json @@ -0,0 +1,122 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905889, + "path" : "query-validation-tests/case-expression.json", + "schemas" : { + "CSAS_S1_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_S1_0.S1" : { + "schema" : "`ID` STRING KEY, `CASE_RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "searched case returning null in first branch", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERUNITS" : 4.2 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERUNITS" : 3.99 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERUNITS" : 1.1 + } + } ], + "outputs" : [ { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESULT" : "large" + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESULT" : "medium" + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESULT" : null + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S1", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM orders (ID STRING KEY, ORDERUNITS double) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM S1 AS SELECT ID, CASE WHEN orderunits < 2.0 THEN null WHEN orderunits < 4.0 THEN 'medium' ELSE 'large' END AS case_result FROM orders;" ], + "post" : { + "sources" : [ { + "name" : "ORDERS", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "S1", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `CASE_RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "S1", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_first_branch/7.1.0_1633125905889/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_first_branch/7.1.0_1633125905889/topology new file mode 100644 index 000000000000..08dc66d3de05 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_first_branch/7.1.0_1633125905889/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: S1) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_later_branch/7.1.0_1633125905913/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_later_branch/7.1.0_1633125905913/plan.json new file mode 100644 index 000000000000..5756b13b53f3 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_later_branch/7.1.0_1633125905913/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM ORDERS (ID STRING KEY, ORDERUNITS DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "ORDERS", + "schema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM S1 AS SELECT\n ORDERS.ID ID,\n (CASE WHEN (ORDERS.ORDERUNITS < 2.0) THEN 'small' WHEN (ORDERS.ORDERUNITS < 4.0) THEN null ELSE 'large' END) CASE_RESULT\nFROM ORDERS ORDERS\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "S1", + "schema" : "`ID` STRING KEY, `CASE_RESULT` STRING", + "topicName" : "S1", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "ORDERS" ], + "sink" : "S1", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "S1" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "(CASE WHEN (ORDERUNITS < 2.0) THEN 'small' WHEN (ORDERUNITS < 4.0) THEN null ELSE 'large' END) AS CASE_RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S1" + }, + "queryId" : "CSAS_S1_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_later_branch/7.1.0_1633125905913/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_later_branch/7.1.0_1633125905913/spec.json new file mode 100644 index 000000000000..d6a0ea38d00b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_later_branch/7.1.0_1633125905913/spec.json @@ -0,0 +1,122 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905913, + "path" : "query-validation-tests/case-expression.json", + "schemas" : { + "CSAS_S1_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_S1_0.S1" : { + "schema" : "`ID` STRING KEY, `CASE_RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "searched case returning null in later branch", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERUNITS" : 4.2 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERUNITS" : 3.99 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERUNITS" : 1.1 + } + } ], + "outputs" : [ { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESULT" : "large" + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESULT" : null + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESULT" : "small" + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S1", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM orders (ID STRING KEY, ORDERUNITS double) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM S1 AS SELECT ID, CASE WHEN orderunits < 2.0 THEN 'small' WHEN orderunits < 4.0 THEN null ELSE 'large' END AS case_result FROM orders;" ], + "post" : { + "sources" : [ { + "name" : "ORDERS", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ORDERUNITS` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "S1", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `CASE_RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "S1", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_later_branch/7.1.0_1633125905913/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_later_branch/7.1.0_1633125905913/topology new file mode 100644 index 000000000000..08dc66d3de05 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_returning_null_in_later_branch/7.1.0_1633125905913/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: S1) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_arithmetic_expression_in_result/7.1.0_1633125905838/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_arithmetic_expression_in_result/7.1.0_1633125905838/plan.json new file mode 100644 index 000000000000..230d30be81ac --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_arithmetic_expression_in_result/7.1.0_1633125905838/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM ORDERS (ID STRING KEY, ORDERID BIGINT, ORDERUNITS DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "ORDERS", + "schema" : "`ID` STRING KEY, `ORDERID` BIGINT, `ORDERUNITS` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM S1 AS SELECT\n ORDERS.ID ID,\n (CASE WHEN (ORDERS.ORDERUNITS < 2.0) THEN (ORDERS.ORDERID + 2) END) CASE_RESAULT\nFROM ORDERS ORDERS\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "S1", + "schema" : "`ID` STRING KEY, `CASE_RESAULT` BIGINT", + "topicName" : "S1", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "ORDERS" ], + "sink" : "S1", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "S1" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `ORDERID` BIGINT, `ORDERUNITS` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "(CASE WHEN (ORDERUNITS < 2.0) THEN (ORDERID + 2) END) AS CASE_RESAULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S1" + }, + "queryId" : "CSAS_S1_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_arithmetic_expression_in_result/7.1.0_1633125905838/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_arithmetic_expression_in_result/7.1.0_1633125905838/spec.json new file mode 100644 index 000000000000..ea9d1cd72ec9 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_arithmetic_expression_in_result/7.1.0_1633125905838/spec.json @@ -0,0 +1,125 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905838, + "path" : "query-validation-tests/case-expression.json", + "schemas" : { + "CSAS_S1_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `ORDERID` BIGINT, `ORDERUNITS` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_S1_0.S1" : { + "schema" : "`ID` STRING KEY, `CASE_RESAULT` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "searched case with arithmetic expression in result", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERID" : 4, + "ORDERUNITS" : 1.9 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERID" : 5, + "ORDERUNITS" : 1.0 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERID" : 5, + "ORDERUNITS" : 2.0 + } + } ], + "outputs" : [ { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESAULT" : 6 + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESAULT" : 7 + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESAULT" : null + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S1", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM orders (ID STRING KEY, orderid bigint, ORDERUNITS double) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM S1 AS SELECT ID, CASE WHEN orderunits < 2.0 THEN orderid + 2 END AS case_resault FROM orders;" ], + "post" : { + "sources" : [ { + "name" : "ORDERS", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ORDERID` BIGINT, `ORDERUNITS` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "S1", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `CASE_RESAULT` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "S1", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_arithmetic_expression_in_result/7.1.0_1633125905838/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_arithmetic_expression_in_result/7.1.0_1633125905838/topology new file mode 100644 index 000000000000..08dc66d3de05 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_arithmetic_expression_in_result/7.1.0_1633125905838/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: S1) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_null_in_when/7.1.0_1633125905864/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_null_in_when/7.1.0_1633125905864/plan.json new file mode 100644 index 000000000000..3a1f277c365b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_null_in_when/7.1.0_1633125905864/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM ORDERS (ID STRING KEY, ORDERID BIGINT, ORDERUNITS DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "ORDERS", + "schema" : "`ID` STRING KEY, `ORDERID` BIGINT, `ORDERUNITS` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM S1 AS SELECT\n ORDERS.ID ID,\n (CASE WHEN (ORDERS.ORDERUNITS > 2.0) THEN 'foo' ELSE 'default' END) CASE_RESAULT\nFROM ORDERS ORDERS\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "S1", + "schema" : "`ID` STRING KEY, `CASE_RESAULT` STRING", + "topicName" : "S1", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "ORDERS" ], + "sink" : "S1", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "S1" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `ORDERID` BIGINT, `ORDERUNITS` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "(CASE WHEN (ORDERUNITS > 2.0) THEN 'foo' ELSE 'default' END) AS CASE_RESAULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S1" + }, + "queryId" : "CSAS_S1_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_null_in_when/7.1.0_1633125905864/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_null_in_when/7.1.0_1633125905864/spec.json new file mode 100644 index 000000000000..15d0dd3f14d3 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_null_in_when/7.1.0_1633125905864/spec.json @@ -0,0 +1,124 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905864, + "path" : "query-validation-tests/case-expression.json", + "schemas" : { + "CSAS_S1_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `ORDERID` BIGINT, `ORDERUNITS` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_S1_0.S1" : { + "schema" : "`ID` STRING KEY, `CASE_RESAULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "searched case with null in when", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERID" : 1 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERID" : null, + "ORDERUNITS" : null + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "ORDERID" : 2, + "ORDERUNITS" : 4.0 + } + } ], + "outputs" : [ { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESAULT" : "default" + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESAULT" : "default" + } + }, { + "topic" : "S1", + "key" : null, + "value" : { + "CASE_RESAULT" : "foo" + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S1", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM orders (ID STRING KEY, orderid bigint, ORDERUNITS double) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM S1 AS SELECT ID, CASE WHEN orderunits > 2.0 THEN 'foo' ELSE 'default' END AS case_resault FROM orders;" ], + "post" : { + "sources" : [ { + "name" : "ORDERS", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `ORDERID` BIGINT, `ORDERUNITS` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "S1", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `CASE_RESAULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "S1", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_null_in_when/7.1.0_1633125905864/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_null_in_when/7.1.0_1633125905864/topology new file mode 100644 index 000000000000..08dc66d3de05 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_searched_case_with_null_in_when/7.1.0_1633125905864/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: S1) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_execute_branches_lazily/7.1.0_1633125905987/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_execute_branches_lazily/7.1.0_1633125905987/plan.json new file mode 100644 index 000000000000..f77e06467cf3 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_execute_branches_lazily/7.1.0_1633125905987/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, IGNORED INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `IGNORED` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n (CASE WHEN WHENCONDITION(true, true) THEN WHENRESULT(100, true) WHEN WHENCONDITION(true, false) THEN WHENRESULT(200, false) ELSE WHENRESULT(300, false) END) KSQL_COL_0\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `IGNORED` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "(CASE WHEN WHENCONDITION(true, true) THEN WHENRESULT(100, true) WHEN WHENCONDITION(true, false) THEN WHENRESULT(200, false) ELSE WHENRESULT(300, false) END) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_execute_branches_lazily/7.1.0_1633125905987/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_execute_branches_lazily/7.1.0_1633125905987/spec.json new file mode 100644 index 000000000000..8d8aadb21e1e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_execute_branches_lazily/7.1.0_1633125905987/spec.json @@ -0,0 +1,96 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125905987, + "path" : "query-validation-tests/case-expression.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `IGNORED` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "should execute branches lazily", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : 100 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, IGNORED INT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, CASE WHEN WHENCONDITION(true, true) THEN WHENRESULT(100, true) WHEN WHENCONDITION(true, false) THEN WHENRESULT(200, false) ELSE WHENRESULT(300, false)END FROM input;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `IGNORED` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_execute_branches_lazily/7.1.0_1633125905987/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_execute_branches_lazily/7.1.0_1633125905987/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_execute_branches_lazily/7.1.0_1633125905987/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_only_execute_ELSE_if_not_matching_WHENs/7.1.0_1633125906011/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_only_execute_ELSE_if_not_matching_WHENs/7.1.0_1633125906011/plan.json new file mode 100644 index 000000000000..002e80b71faf --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_only_execute_ELSE_if_not_matching_WHENs/7.1.0_1633125906011/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, IGNORED INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `IGNORED` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n (CASE WHEN WHENCONDITION(false, true) THEN WHENRESULT(100, false) WHEN WHENCONDITION(false, true) THEN WHENRESULT(200, false) ELSE WHENRESULT(300, true) END) KSQL_COL_0\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` INTEGER", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `IGNORED` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "(CASE WHEN WHENCONDITION(false, true) THEN WHENRESULT(100, false) WHEN WHENCONDITION(false, true) THEN WHENRESULT(200, false) ELSE WHENRESULT(300, true) END) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_only_execute_ELSE_if_not_matching_WHENs/7.1.0_1633125906011/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_only_execute_ELSE_if_not_matching_WHENs/7.1.0_1633125906011/spec.json new file mode 100644 index 000000000000..88d3ef3658b8 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_only_execute_ELSE_if_not_matching_WHENs/7.1.0_1633125906011/spec.json @@ -0,0 +1,96 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906011, + "path" : "query-validation-tests/case-expression.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `IGNORED` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "should only execute ELSE if not matching WHENs", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : 300 + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, IGNORED INT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, CASE WHEN WHENCONDITION(false, true) THEN WHENRESULT(100, false) WHEN WHENCONDITION(false, true) THEN WHENRESULT(200, false) ELSE WHENRESULT(300, true) END FROM input;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `IGNORED` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_only_execute_ELSE_if_not_matching_WHENs/7.1.0_1633125906011/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_only_execute_ELSE_if_not_matching_WHENs/7.1.0_1633125906011/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/case-expression_-_should_only_execute_ELSE_if_not_matching_WHENs/7.1.0_1633125906011/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_array_bigint___to_array_array_string__/7.1.0_1633125906251/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_array_bigint___to_array_array_string__/7.1.0_1633125906251/plan.json new file mode 100644 index 000000000000..b04d94c97e75 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_array_bigint___to_array_array_string__/7.1.0_1633125906251/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, F0 ARRAY>) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `F0` ARRAY>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n CAST(TEST.F0 AS ARRAY>) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY>", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `F0` ARRAY>", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(F0 AS ARRAY>) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_array_bigint___to_array_array_string__/7.1.0_1633125906251/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_array_bigint___to_array_array_string__/7.1.0_1633125906251/spec.json new file mode 100644 index 000000000000..7dcbd7e660db --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_array_bigint___to_array_array_string__/7.1.0_1633125906251/spec.json @@ -0,0 +1,98 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906251, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `F0` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array> to array>", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "f0" : [ [ 1, 3, 2147483648 ], [ -1, -3, -2147483648 ] ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : [ [ "1", "3", "2147483648" ], [ "-1", "-3", "-2147483648" ] ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, f0 ARRAY>) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, cast(f0 as ARRAY>) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `F0` ARRAY>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_array_bigint___to_array_array_string__/7.1.0_1633125906251/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_array_bigint___to_array_array_string__/7.1.0_1633125906251/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_array_bigint___to_array_array_string__/7.1.0_1633125906251/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_int_/7.1.0_1633125906209/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_int_/7.1.0_1633125906209/plan.json new file mode 100644 index 000000000000..cbe75c0c68f5 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_int_/7.1.0_1633125906209/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, F0 ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `F0` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n CAST(TEST.F0 AS ARRAY) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `F0` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(F0 AS ARRAY) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_int_/7.1.0_1633125906209/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_int_/7.1.0_1633125906209/spec.json new file mode 100644 index 000000000000..85b01005ed77 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_int_/7.1.0_1633125906209/spec.json @@ -0,0 +1,98 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906209, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `F0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array to array", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "f0" : [ 1, 3, 2147483648 ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : [ 1, 3, -2147483648 ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, f0 ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, cast(f0 as ARRAY) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `F0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_int_/7.1.0_1633125906209/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_int_/7.1.0_1633125906209/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_int_/7.1.0_1633125906209/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_string_/7.1.0_1633125906232/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_string_/7.1.0_1633125906232/plan.json new file mode 100644 index 000000000000..10f9344c3886 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_string_/7.1.0_1633125906232/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, F0 ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `F0` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n CAST(TEST.F0 AS ARRAY) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `F0` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(F0 AS ARRAY) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_string_/7.1.0_1633125906232/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_string_/7.1.0_1633125906232/spec.json new file mode 100644 index 000000000000..8b2e9430238b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_string_/7.1.0_1633125906232/spec.json @@ -0,0 +1,98 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906232, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `F0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array to array", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "f0" : [ 1, 3, 2147483648 ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : [ "1", "3", "2147483648" ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, f0 ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, cast(f0 as ARRAY) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `F0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_string_/7.1.0_1633125906232/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_string_/7.1.0_1633125906232/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_bigint__to_array_string_/7.1.0_1633125906232/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_array_with_same_schema/7.1.0_1633125906195/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_array_with_same_schema/7.1.0_1633125906195/plan.json new file mode 100644 index 000000000000..5f227805172c --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_array_with_same_schema/7.1.0_1633125906195/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, F0 ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `F0` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n CAST(TEST.F0 AS ARRAY) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `F0` ARRAY", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(F0 AS ARRAY) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_array_with_same_schema/7.1.0_1633125906195/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_array_with_same_schema/7.1.0_1633125906195/spec.json new file mode 100644 index 000000000000..b82e01d73923 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_array_with_same_schema/7.1.0_1633125906195/spec.json @@ -0,0 +1,98 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906195, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `F0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array to array with same schema", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "f0" : [ 1, 3 ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : [ 1, 3 ] + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, f0 ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, cast(f0 as ARRAY) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `F0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_array_with_same_schema/7.1.0_1633125906195/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_array_with_same_schema/7.1.0_1633125906195/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_array_with_same_schema/7.1.0_1633125906195/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_string/7.1.0_1633125906178/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_string/7.1.0_1633125906178/plan.json new file mode 100644 index 000000000000..926abd5b2d8f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_string/7.1.0_1633125906178/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (F0 ARRAY) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`F0` ARRAY", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT CAST(TEST.F0 AS STRING) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`KSQL_COL_0` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`F0` ARRAY", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "CAST(F0 AS STRING) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_string/7.1.0_1633125906178/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_string/7.1.0_1633125906178/spec.json new file mode 100644 index 000000000000..aa232dcd1990 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_string/7.1.0_1633125906178/spec.json @@ -0,0 +1,98 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906178, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`F0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`KSQL_COL_0` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "array to string", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "f0" : [ 1, 3 ] + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : "[1, 3]" + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (f0 ARRAY) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT cast(f0 as STRING) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`KSQL_COL_0` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`F0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_string/7.1.0_1633125906178/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_string/7.1.0_1633125906178/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_array_to_string/7.1.0_1633125906178/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_cast_to_null/7.1.0_1633125906460/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_cast_to_null/7.1.0_1633125906460/plan.json new file mode 100644 index 000000000000..ae833b0e9b21 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_cast_to_null/7.1.0_1633125906460/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, F0 DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `F0` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n CAST(TEST.F0 AS STRING) VAL\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `VAL` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `F0` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(F0 AS STRING) AS VAL" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_cast_to_null/7.1.0_1633125906460/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_cast_to_null/7.1.0_1633125906460/spec.json new file mode 100644 index 000000000000..62bb95bed7d9 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_cast_to_null/7.1.0_1633125906460/spec.json @@ -0,0 +1,98 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906460, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `F0` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `VAL` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "cast to null", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "f0" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "VAL" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, f0 DOUBLE) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, cast(f0 as STRING) as VAL FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `VAL` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `F0` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_cast_to_null/7.1.0_1633125906460/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_cast_to_null/7.1.0_1633125906460/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_cast_to_null/7.1.0_1633125906460/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_decimal/7.1.0_1633125906476/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_decimal/7.1.0_1633125906476/plan.json new file mode 100644 index 000000000000..11591115dc2d --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_decimal/7.1.0_1633125906476/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, FOO DECIMAL(4, 2)) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='DELIMITED');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `FOO` DECIMAL(4, 2)", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUT AS SELECT\n TEST.ID ID,\n CAST(TEST.FOO AS DECIMAL(5, 3)) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` DECIMAL(5, 3)", + "topicName" : "OUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "sourceSchema" : "`ID` STRING KEY, `FOO` DECIMAL(4, 2)", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(FOO AS DECIMAL(5, 3)) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "topicName" : "OUT" + }, + "queryId" : "CSAS_OUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_decimal/7.1.0_1633125906476/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_decimal/7.1.0_1633125906476/spec.json new file mode 100644 index 000000000000..1cf2314c833d --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_decimal/7.1.0_1633125906476/spec.json @@ -0,0 +1,110 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906476, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `FOO` DECIMAL(4, 2)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "CSAS_OUT_0.OUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` DECIMAL(5, 3)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + } + }, + "testCase" : { + "name" : "decimal to decimal", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : "10.12" + }, { + "topic" : "test_topic", + "key" : null, + "value" : "01.00" + }, { + "topic" : "test_topic", + "key" : null, + "value" : "00.00" + } ], + "outputs" : [ { + "topic" : "OUT", + "key" : null, + "value" : "10.120" + }, { + "topic" : "OUT", + "key" : null, + "value" : "1.000" + }, { + "topic" : "OUT", + "key" : null, + "value" : "0.000" + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "OUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, foo DECIMAL(4,2)) WITH (kafka_topic='test_topic', value_format='DELIMITED');", "CREATE STREAM OUT AS SELECT ID, cast(foo AS DECIMAL(5,3)) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` DECIMAL(5, 3)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `FOO` DECIMAL(4, 2)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + }, { + "name" : "OUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_decimal/7.1.0_1633125906476/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_decimal/7.1.0_1633125906476/topology new file mode 100644 index 000000000000..ba63d98597c1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_decimal/7.1.0_1633125906476/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_other/7.1.0_1633125906557/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_other/7.1.0_1633125906557/plan.json new file mode 100644 index 000000000000..a52e926299b9 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_other/7.1.0_1633125906557/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, VAL DECIMAL(4, 2)) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `VAL` DECIMAL(4, 2)", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUT AS SELECT\n TEST.ID ID,\n CAST(TEST.VAL AS INTEGER) I,\n CAST(TEST.VAL AS BIGINT) L,\n CAST(TEST.VAL AS DOUBLE) D,\n CAST(TEST.VAL AS STRING) S\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUT", + "schema" : "`ID` STRING KEY, `I` INTEGER, `L` BIGINT, `D` DOUBLE, `S` STRING", + "topicName" : "OUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` STRING KEY, `VAL` DECIMAL(4, 2)", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(VAL AS INTEGER) AS I", "CAST(VAL AS BIGINT) AS L", "CAST(VAL AS DOUBLE) AS D", "CAST(VAL AS STRING) AS S" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUT" + }, + "queryId" : "CSAS_OUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_other/7.1.0_1633125906557/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_other/7.1.0_1633125906557/spec.json new file mode 100644 index 000000000000..5208f24f0ceb --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_other/7.1.0_1633125906557/spec.json @@ -0,0 +1,213 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906557, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `VAL` DECIMAL(4, 2)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUT_0.OUT" : { + "schema" : "`ID` STRING KEY, `I` INTEGER, `L` BIGINT, `D` DOUBLE, `S` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "decimal to other", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "val" : "00.00" + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "val" : "00.01" + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "val" : "10.00" + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "val" : "10.01" + } + } ], + "outputs" : [ { + "topic" : "OUT", + "key" : null, + "value" : { + "I" : 0, + "L" : 0, + "D" : 0.00, + "S" : "0.00" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "I" : 0, + "L" : 0, + "D" : 0.01, + "S" : "0.01" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "I" : 10, + "L" : 10, + "D" : 10.00, + "S" : "10.00" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "I" : 10, + "L" : 10, + "D" : 10.01, + "S" : "10.01" + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VAL", + "type" : [ "null", { + "type" : "bytes", + "scale" : 2, + "precision" : 4, + "connect.version" : 1, + "connect.parameters" : { + "scale" : "2", + "connect.decimal.precision" : "4" + }, + "connect.name" : "org.apache.kafka.connect.data.Decimal", + "logicalType" : "decimal" + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "OUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, val DECIMAL(4,2)) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE STREAM OUT AS SELECT ID, cast(val AS INT) as i, cast(val AS BIGINT) as l, cast(val as DOUBLE) as d, cast(val AS STRING) as s FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `I` INTEGER, `L` BIGINT, `D` DOUBLE, `S` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `VAL` DECIMAL(4, 2)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VAL", + "type" : [ "null", { + "type" : "bytes", + "scale" : 2, + "precision" : 4, + "connect.version" : 1, + "connect.parameters" : { + "scale" : "2", + "connect.decimal.precision" : "4" + }, + "connect.name" : "org.apache.kafka.connect.data.Decimal", + "logicalType" : "decimal" + } ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "I", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "L", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "D", + "type" : [ "null", "double" ], + "default" : null + }, { + "name" : "S", + "type" : [ "null", "string" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_other/7.1.0_1633125906557/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_other/7.1.0_1633125906557/topology new file mode 100644 index 000000000000..ba63d98597c1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_decimal_to_other/7.1.0_1633125906557/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_decimal/7.1.0_1633125906515/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_decimal/7.1.0_1633125906515/plan.json new file mode 100644 index 000000000000..7f8b6ed7b92b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_decimal/7.1.0_1633125906515/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, FOO DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `FOO` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUT AS SELECT\n TEST.ID ID,\n CAST(TEST.FOO AS DECIMAL(2, 1)) VAL\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUT", + "schema" : "`ID` STRING KEY, `VAL` DECIMAL(2, 1)", + "topicName" : "OUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` STRING KEY, `FOO` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(FOO AS DECIMAL(2, 1)) AS VAL" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUT" + }, + "queryId" : "CSAS_OUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_decimal/7.1.0_1633125906515/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_decimal/7.1.0_1633125906515/spec.json new file mode 100644 index 000000000000..8aca9c9921bb --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_decimal/7.1.0_1633125906515/spec.json @@ -0,0 +1,196 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906515, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `FOO` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUT_0.OUT" : { + "schema" : "`ID` STRING KEY, `VAL` DECIMAL(2, 1)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "double to decimal", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : 0.1 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : 1.1 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : 0.0 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : 0.99 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : 0.10 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : 0.01 + } + } ], + "outputs" : [ { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "0.1" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "1.1" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "0.0" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "1.0" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "0.1" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "0.0" + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "double" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "OUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, foo DOUBLE) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE STREAM OUT AS SELECT ID, cast(foo AS DECIMAL(2,1)) as VAL FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `VAL` DECIMAL(2, 1)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `FOO` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "double" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VAL", + "type" : [ "null", { + "type" : "bytes", + "scale" : 1, + "precision" : 2, + "logicalType" : "decimal" + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_decimal/7.1.0_1633125906515/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_decimal/7.1.0_1633125906515/topology new file mode 100644 index 000000000000..ba63d98597c1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_decimal/7.1.0_1633125906515/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_int/7.1.0_1633125906653/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_int/7.1.0_1633125906653/plan.json new file mode 100644 index 000000000000..8a4b08f64194 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_int/7.1.0_1633125906653/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, COL0 DOUBLE, COL1 DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `COL0` DOUBLE, `COL1` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUT AS SELECT\n INPUT.ID ID,\n CAST((INPUT.COL0 - INPUT.COL1) AS INTEGER) VAL\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUT", + "schema" : "`ID` STRING KEY, `VAL` INTEGER", + "topicName" : "OUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` STRING KEY, `COL0` DOUBLE, `COL1` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST((COL0 - COL1) AS INTEGER) AS VAL" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUT" + }, + "queryId" : "CSAS_OUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_int/7.1.0_1633125906653/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_int/7.1.0_1633125906653/spec.json new file mode 100644 index 000000000000..fe42c3efeb5e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_int/7.1.0_1633125906653/spec.json @@ -0,0 +1,140 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906653, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `COL0` DOUBLE, `COL1` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUT_0.OUT" : { + "schema" : "`ID` STRING KEY, `VAL` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "double to int", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "col0" : 3.3, + "col1" : 2.1 + } + } ], + "outputs" : [ { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : 1 + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "COL0", + "type" : [ "null", "double" ], + "default" : null + }, { + "name" : "COL1", + "type" : [ "null", "double" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "OUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, col0 DOUBLE, col1 DOUBLE) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE STREAM OUT AS SELECT ID, cast((col0 - col1) AS INT) as VAL FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `COL0` DOUBLE, `COL1` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `VAL` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "COL0", + "type" : [ "null", "double" ], + "default" : null + }, { + "name" : "COL1", + "type" : [ "null", "double" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VAL", + "type" : [ "null", "int" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_int/7.1.0_1633125906653/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_int/7.1.0_1633125906653/topology new file mode 100644 index 000000000000..ba63d98597c1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_double_to_int/7.1.0_1633125906653/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_bigint/7.1.0_1633125906616/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_bigint/7.1.0_1633125906616/plan.json new file mode 100644 index 000000000000..0aec05e2041d --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_bigint/7.1.0_1633125906616/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, COL0 INTEGER, COL1 INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `COL0` INTEGER, `COL1` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUT AS SELECT\n INPUT.ID ID,\n CAST((INPUT.COL0 - INPUT.COL1) AS BIGINT) VAL\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUT", + "schema" : "`ID` STRING KEY, `VAL` BIGINT", + "topicName" : "OUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` STRING KEY, `COL0` INTEGER, `COL1` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST((COL0 - COL1) AS BIGINT) AS VAL" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUT" + }, + "queryId" : "CSAS_OUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_bigint/7.1.0_1633125906616/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_bigint/7.1.0_1633125906616/spec.json new file mode 100644 index 000000000000..da5e842d8a87 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_bigint/7.1.0_1633125906616/spec.json @@ -0,0 +1,140 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906616, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `COL0` INTEGER, `COL1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUT_0.OUT" : { + "schema" : "`ID` STRING KEY, `VAL` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "integer to bigint", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "col0" : 1, + "col1" : 2 + } + } ], + "outputs" : [ { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : -1 + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "COL0", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "COL1", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "OUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, col0 INT, col1 INT) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE STREAM OUT AS SELECT ID, cast((col0 - col1) AS BIGINT) as VAL FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `COL0` INTEGER, `COL1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `VAL` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "COL0", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "COL1", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VAL", + "type" : [ "null", "long" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_bigint/7.1.0_1633125906616/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_bigint/7.1.0_1633125906616/topology new file mode 100644 index 000000000000..ba63d98597c1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_bigint/7.1.0_1633125906616/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_decimal/7.1.0_1633125906494/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_decimal/7.1.0_1633125906494/plan.json new file mode 100644 index 000000000000..a7f1941ae3e9 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_decimal/7.1.0_1633125906494/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, FOO INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `FOO` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUT AS SELECT\n TEST.ID ID,\n CAST(TEST.FOO AS DECIMAL(2, 1)) VAL\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUT", + "schema" : "`ID` STRING KEY, `VAL` DECIMAL(2, 1)", + "topicName" : "OUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` STRING KEY, `FOO` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(FOO AS DECIMAL(2, 1)) AS VAL" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUT" + }, + "queryId" : "CSAS_OUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_decimal/7.1.0_1633125906494/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_decimal/7.1.0_1633125906494/spec.json new file mode 100644 index 000000000000..69eec64978a1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_decimal/7.1.0_1633125906494/spec.json @@ -0,0 +1,172 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906494, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUT_0.OUT" : { + "schema" : "`ID` STRING KEY, `VAL` DECIMAL(2, 1)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "integer to decimal", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : 1 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : 0 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : -1 + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : 10 + } + } ], + "outputs" : [ { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "1.0" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "0.0" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "-1.0" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : null + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "OUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, foo INTEGER) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE STREAM OUT AS SELECT ID, cast(foo AS DECIMAL(2,1)) as VAL FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `VAL` DECIMAL(2, 1)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `FOO` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VAL", + "type" : [ "null", { + "type" : "bytes", + "scale" : 1, + "precision" : 2, + "logicalType" : "decimal" + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_decimal/7.1.0_1633125906494/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_decimal/7.1.0_1633125906494/topology new file mode 100644 index 000000000000..ba63d98597c1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_decimal/7.1.0_1633125906494/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_string/7.1.0_1633125906636/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_string/7.1.0_1633125906636/plan.json new file mode 100644 index 000000000000..7d253b85be27 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_string/7.1.0_1633125906636/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, COL0 INTEGER, COL1 INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `COL0` INTEGER, `COL1` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUT AS SELECT\n INPUT.ID ID,\n CAST((INPUT.COL0 - INPUT.COL1) AS STRING) VAL\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUT", + "schema" : "`ID` STRING KEY, `VAL` STRING", + "topicName" : "OUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` STRING KEY, `COL0` INTEGER, `COL1` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST((COL0 - COL1) AS STRING) AS VAL" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUT" + }, + "queryId" : "CSAS_OUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_string/7.1.0_1633125906636/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_string/7.1.0_1633125906636/spec.json new file mode 100644 index 000000000000..4c4de54a93e1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_string/7.1.0_1633125906636/spec.json @@ -0,0 +1,140 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906636, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `COL0` INTEGER, `COL1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUT_0.OUT" : { + "schema" : "`ID` STRING KEY, `VAL` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "integer to string", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "col0" : 1, + "col1" : 2 + } + } ], + "outputs" : [ { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "-1" + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "COL0", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "COL1", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "OUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (ID STRING KEY, col0 INT, col1 INT) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE STREAM OUT AS SELECT ID, cast((col0 - col1) AS STRING) as VAL FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `COL0` INTEGER, `COL1` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `VAL` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "COL0", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "COL1", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VAL", + "type" : [ "null", "string" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_string/7.1.0_1633125906636/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_string/7.1.0_1633125906636/topology new file mode 100644 index 000000000000..ba63d98597c1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_integer_to_string/7.1.0_1633125906636/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_string,_map_string,_string___-__map_string,_map_string,_int__/7.1.0_1633125906322/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_string,_map_string,_string___-__map_string,_map_string,_int__/7.1.0_1633125906322/plan.json new file mode 100644 index 000000000000..4f89d6e60030 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_string,_map_string,_string___-__map_string,_map_string,_int__/7.1.0_1633125906322/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, F0 MAP>) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `F0` MAP>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n CAST(TEST.F0 AS MAP>) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` MAP>", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `F0` MAP>", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(F0 AS MAP>) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_string,_map_string,_string___-__map_string,_map_string,_int__/7.1.0_1633125906322/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_string,_map_string,_string___-__map_string,_map_string,_int__/7.1.0_1633125906322/spec.json new file mode 100644 index 000000000000..e8e391c01941 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_string,_map_string,_string___-__map_string,_map_string,_int__/7.1.0_1633125906322/spec.json @@ -0,0 +1,106 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906322, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `F0` MAP>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` MAP>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "map> -> map>", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "f0" : { + "k1" : { + "k2" : "10" + } + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : { + "k1" : { + "k2" : 10 + } + } + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, f0 MAP>) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, cast(f0 as MAP>) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` MAP>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `F0` MAP>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_string,_map_string,_string___-__map_string,_map_string,_int__/7.1.0_1633125906322/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_string,_map_string,_string___-__map_string,_map_string,_int__/7.1.0_1633125906322/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_string,_map_string,_string___-__map_string,_map_string,_int__/7.1.0_1633125906322/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_different_value_type/7.1.0_1633125906300/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_different_value_type/7.1.0_1633125906300/plan.json new file mode 100644 index 000000000000..fcc689c39b86 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_different_value_type/7.1.0_1633125906300/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, F0 MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `F0` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n CAST(TEST.F0 AS MAP) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` MAP", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `F0` MAP", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(F0 AS MAP) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_different_value_type/7.1.0_1633125906300/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_different_value_type/7.1.0_1633125906300/spec.json new file mode 100644 index 000000000000..aeff643f73f5 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_different_value_type/7.1.0_1633125906300/spec.json @@ -0,0 +1,102 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906300, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `F0` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "map to map with different value type", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "f0" : { + "this" : 2147483648 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : { + "this" : -2147483648 + } + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, f0 MAP) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, cast(f0 as MAP) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `F0` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_different_value_type/7.1.0_1633125906300/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_different_value_type/7.1.0_1633125906300/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_different_value_type/7.1.0_1633125906300/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_same_schema/7.1.0_1633125906286/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_same_schema/7.1.0_1633125906286/plan.json new file mode 100644 index 000000000000..fcfa51aa017a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_same_schema/7.1.0_1633125906286/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, F0 MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `F0` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n CAST(TEST.F0 AS MAP) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` MAP", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `F0` MAP", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(F0 AS MAP) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_same_schema/7.1.0_1633125906286/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_same_schema/7.1.0_1633125906286/spec.json new file mode 100644 index 000000000000..42a3d35c7f0a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_same_schema/7.1.0_1633125906286/spec.json @@ -0,0 +1,102 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906286, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `F0` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "map to map with same schema", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "f0" : { + "this" : 1 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : { + "this" : 1 + } + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, f0 MAP) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, cast(f0 as MAP) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `F0` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_same_schema/7.1.0_1633125906286/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_same_schema/7.1.0_1633125906286/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_map_with_same_schema/7.1.0_1633125906286/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_string/7.1.0_1633125906270/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_string/7.1.0_1633125906270/plan.json new file mode 100644 index 000000000000..e4f181405d52 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_string/7.1.0_1633125906270/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (F0 MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`F0` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT CAST(TEST.F0 AS STRING) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`KSQL_COL_0` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`F0` MAP", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "CAST(F0 AS STRING) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_string/7.1.0_1633125906270/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_string/7.1.0_1633125906270/spec.json new file mode 100644 index 000000000000..dde49797b35b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_string/7.1.0_1633125906270/spec.json @@ -0,0 +1,100 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906270, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`F0` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`KSQL_COL_0` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "map to string", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "f0" : { + "this" : 1 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : "{this=1}" + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (f0 MAP) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT cast(f0 as STRING) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`KSQL_COL_0` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`F0` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_string/7.1.0_1633125906270/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_string/7.1.0_1633125906270/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_map_to_string/7.1.0_1633125906270/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_no_op/7.1.0_1633125906397/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_no_op/7.1.0_1633125906397/plan.json new file mode 100644 index 000000000000..b7ced502a47d --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_no_op/7.1.0_1633125906397/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, B BOOLEAN, I INTEGER, BI BIGINT, D DOUBLE, S STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='DELIMITED');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `B` BOOLEAN, `I` INTEGER, `BI` BIGINT, `D` DOUBLE, `S` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n CAST(TEST.B AS BOOLEAN) KSQL_COL_0,\n CAST(TEST.I AS INTEGER) KSQL_COL_1,\n CAST(TEST.BI AS BIGINT) KSQL_COL_2,\n CAST(TEST.D AS DOUBLE) KSQL_COL_3,\n CAST(TEST.S AS STRING) KSQL_COL_4\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` INTEGER, `KSQL_COL_2` BIGINT, `KSQL_COL_3` DOUBLE, `KSQL_COL_4` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "sourceSchema" : "`ID` STRING KEY, `B` BOOLEAN, `I` INTEGER, `BI` BIGINT, `D` DOUBLE, `S` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(B AS BOOLEAN) AS KSQL_COL_0", "CAST(I AS INTEGER) AS KSQL_COL_1", "CAST(BI AS BIGINT) AS KSQL_COL_2", "CAST(D AS DOUBLE) AS KSQL_COL_3", "CAST(S AS STRING) AS KSQL_COL_4" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_no_op/7.1.0_1633125906397/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_no_op/7.1.0_1633125906397/spec.json new file mode 100644 index 000000000000..8f36b212af8f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_no_op/7.1.0_1633125906397/spec.json @@ -0,0 +1,94 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906397, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `B` BOOLEAN, `I` INTEGER, `BI` BIGINT, `D` DOUBLE, `S` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` INTEGER, `KSQL_COL_2` BIGINT, `KSQL_COL_3` DOUBLE, `KSQL_COL_4` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + } + } + }, + "testCase" : { + "name" : "no op", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : "true,10,101,10.3,bob" + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : "true,10,101,10.3,bob" + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, b BOOLEAN, i INT, bi BIGINT, d DOUBLE, s VARCHAR) WITH (kafka_topic='test_topic', value_format='DELIMITED');", "CREATE STREAM OUTPUT AS SELECT ID, cast(b as BOOLEAN), cast(i as INT), cast(bi as BIGINT), cast(d as DOUBLE), cast(s as STRING) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` INTEGER, `KSQL_COL_2` BIGINT, `KSQL_COL_3` DOUBLE, `KSQL_COL_4` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `B` BOOLEAN, `I` INTEGER, `BI` BIGINT, `D` DOUBLE, `S` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "DELIMITED", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "DELIMITED" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_no_op/7.1.0_1633125906397/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_no_op/7.1.0_1633125906397/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_no_op/7.1.0_1633125906397/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_of_nulls/7.1.0_1633125906424/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_of_nulls/7.1.0_1633125906424/plan.json new file mode 100644 index 000000000000..5cc4b7d4cc29 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_of_nulls/7.1.0_1633125906424/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, IGNORED STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `IGNORED` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n CAST(null AS BOOLEAN) KSQL_COL_0,\n CAST(null AS INTEGER) KSQL_COL_1,\n CAST(null AS BIGINT) KSQL_COL_2,\n CAST(null AS DOUBLE) KSQL_COL_3,\n CAST(null AS STRING) KSQL_COL_4,\n CAST(null AS ARRAY) KSQL_COL_5,\n CAST(null AS MAP) KSQL_COL_6,\n CAST(null AS STRUCT) KSQL_COL_7\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` INTEGER, `KSQL_COL_2` BIGINT, `KSQL_COL_3` DOUBLE, `KSQL_COL_4` STRING, `KSQL_COL_5` ARRAY, `KSQL_COL_6` MAP, `KSQL_COL_7` STRUCT<`F0` INTEGER>", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `IGNORED` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(null AS BOOLEAN) AS KSQL_COL_0", "CAST(null AS INTEGER) AS KSQL_COL_1", "CAST(null AS BIGINT) AS KSQL_COL_2", "CAST(null AS DOUBLE) AS KSQL_COL_3", "CAST(null AS STRING) AS KSQL_COL_4", "CAST(null AS ARRAY) AS KSQL_COL_5", "CAST(null AS MAP) AS KSQL_COL_6", "CAST(null AS STRUCT) AS KSQL_COL_7" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_of_nulls/7.1.0_1633125906424/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_of_nulls/7.1.0_1633125906424/spec.json new file mode 100644 index 000000000000..5d72da7d1e4a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_of_nulls/7.1.0_1633125906424/spec.json @@ -0,0 +1,103 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906424, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `IGNORED` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` INTEGER, `KSQL_COL_2` BIGINT, `KSQL_COL_3` DOUBLE, `KSQL_COL_4` STRING, `KSQL_COL_5` ARRAY, `KSQL_COL_6` MAP, `KSQL_COL_7` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "of nulls", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KQL_COL_0" : null, + "KQL_COL_1" : null, + "KQL_COL_2" : null, + "KQL_COL_3" : null, + "KQL_COL_4" : null, + "KQL_COL_5" : null, + "KQL_COL_6" : null, + "KQL_COL_7" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, ignored VARCHAR) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, cast(null as BOOLEAN), cast(null as INT), cast(null as BIGINT), cast(null as DOUBLE), cast(null as STRING), cast(null AS ARRAY), cast(null AS MAP), cast(null AS STRUCT) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` BOOLEAN, `KSQL_COL_1` INTEGER, `KSQL_COL_2` BIGINT, `KSQL_COL_3` DOUBLE, `KSQL_COL_4` STRING, `KSQL_COL_5` ARRAY, `KSQL_COL_6` MAP, `KSQL_COL_7` STRUCT<`F0` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `IGNORED` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_of_nulls/7.1.0_1633125906424/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_of_nulls/7.1.0_1633125906424/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_of_nulls/7.1.0_1633125906424/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_string_to_decimal/7.1.0_1633125906537/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_string_to_decimal/7.1.0_1633125906537/plan.json new file mode 100644 index 000000000000..1479d12d8c9a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_string_to_decimal/7.1.0_1633125906537/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, FOO STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `FOO` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUT AS SELECT\n TEST.ID ID,\n CAST(TEST.FOO AS DECIMAL(2, 1)) VAL\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUT", + "schema" : "`ID` STRING KEY, `VAL` DECIMAL(2, 1)", + "topicName" : "OUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` STRING KEY, `FOO` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(FOO AS DECIMAL(2, 1)) AS VAL" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUT" + }, + "queryId" : "CSAS_OUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_string_to_decimal/7.1.0_1633125906537/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_string_to_decimal/7.1.0_1633125906537/spec.json new file mode 100644 index 000000000000..8300b2168bec --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_string_to_decimal/7.1.0_1633125906537/spec.json @@ -0,0 +1,196 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906537, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `FOO` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUT_0.OUT" : { + "schema" : "`ID` STRING KEY, `VAL` DECIMAL(2, 1)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "string to decimal", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : "0.1" + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : "1.1" + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : "0.0" + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : "0.99" + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : "0.10" + } + }, { + "topic" : "test_topic", + "key" : null, + "value" : { + "foo" : "0.01" + } + } ], + "outputs" : [ { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "0.1" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "1.1" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "0.0" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "1.0" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "0.1" + } + }, { + "topic" : "OUT", + "key" : null, + "value" : { + "VAL" : "0.0" + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "string" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "OUT", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, foo VARCHAR) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE STREAM OUT AS SELECT ID, cast(foo AS DECIMAL(2,1)) as VAL FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `VAL` DECIMAL(2, 1)", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `FOO` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "FOO", + "type" : [ "null", "string" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VAL", + "type" : [ "null", { + "type" : "bytes", + "scale" : 1, + "precision" : 2, + "logicalType" : "decimal" + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_string_to_decimal/7.1.0_1633125906537/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_string_to_decimal/7.1.0_1633125906537/topology new file mode 100644 index 000000000000..ba63d98597c1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_string_to_decimal/7.1.0_1633125906537/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_string/7.1.0_1633125906343/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_string/7.1.0_1633125906343/plan.json new file mode 100644 index 000000000000..19bc6fee79ba --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_string/7.1.0_1633125906343/plan.json @@ -0,0 +1,165 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (F0 STRUCT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`F0` STRUCT<`F0` INTEGER, `f1` INTEGER>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT CAST(TEST.F0 AS STRING) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`KSQL_COL_0` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`F0` STRUCT<`F0` INTEGER, `f1` INTEGER>", + "pseudoColumnVersion" : 1 + }, + "selectExpressions" : [ "CAST(F0 AS STRING) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_string/7.1.0_1633125906343/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_string/7.1.0_1633125906343/spec.json new file mode 100644 index 000000000000..5593b45fc746 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_string/7.1.0_1633125906343/spec.json @@ -0,0 +1,101 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906343, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`F0` STRUCT<`F0` INTEGER, `f1` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`KSQL_COL_0` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "struct to string", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "f0" : { + "f0" : 1, + "f1" : 3 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : "Struct{F0=1,f1=3}" + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (f0 STRUCT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT cast(f0 as STRING) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`KSQL_COL_0` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`F0` STRUCT<`F0` INTEGER, `f1` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_string/7.1.0_1633125906343/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_string/7.1.0_1633125906343/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_string/7.1.0_1633125906343/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_different_schema/7.1.0_1633125906372/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_different_schema/7.1.0_1633125906372/plan.json new file mode 100644 index 000000000000..fd1ae2d7d327 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_different_schema/7.1.0_1633125906372/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, F0 STRUCT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `F0` STRUCT<`F0` BIGINT, `F1` STRING>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n CAST(TEST.F0 AS STRUCT) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRUCT<`F0` STRING, `F3` STRING>", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `F0` STRUCT<`F0` BIGINT, `F1` STRING>", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(F0 AS STRUCT) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_different_schema/7.1.0_1633125906372/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_different_schema/7.1.0_1633125906372/spec.json new file mode 100644 index 000000000000..4d1a4d9ff914 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_different_schema/7.1.0_1633125906372/spec.json @@ -0,0 +1,104 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906372, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `F0` STRUCT<`F0` BIGINT, `F1` STRING>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRUCT<`F0` STRING, `F3` STRING>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "struct to struct with different schema", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "f0" : { + "f0" : 1, + "f1" : 3 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : { + "F0" : "1", + "F3" : null + } + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, f0 STRUCT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, cast(f0 as STRUCT) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRUCT<`F0` STRING, `F3` STRING>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `F0` STRUCT<`F0` BIGINT, `F1` STRING>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_different_schema/7.1.0_1633125906372/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_different_schema/7.1.0_1633125906372/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_different_schema/7.1.0_1633125906372/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_same_schema/7.1.0_1633125906358/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_same_schema/7.1.0_1633125906358/plan.json new file mode 100644 index 000000000000..a190d2f410a5 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_same_schema/7.1.0_1633125906358/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID STRING KEY, F0 STRUCT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` STRING KEY, `F0` STRUCT<`F0` INTEGER, `f1` INTEGER>", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n TEST.ID ID,\n CAST(TEST.F0 AS STRUCT) KSQL_COL_0\nFROM TEST TEST\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRUCT<`F0` INTEGER, `f1` INTEGER>", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `F0` STRUCT<`F0` INTEGER, `f1` INTEGER>", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CAST(F0 AS STRUCT) AS KSQL_COL_0" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_same_schema/7.1.0_1633125906358/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_same_schema/7.1.0_1633125906358/spec.json new file mode 100644 index 000000000000..eca5bc033e0a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_same_schema/7.1.0_1633125906358/spec.json @@ -0,0 +1,104 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906358, + "path" : "query-validation-tests/cast.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `F0` STRUCT<`F0` INTEGER, `f1` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRUCT<`F0` INTEGER, `f1` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "struct to struct with same schema", + "inputs" : [ { + "topic" : "test_topic", + "key" : null, + "value" : { + "f0" : { + "f0" : 1, + "f1" : 3 + } + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : null, + "value" : { + "KSQL_COL_0" : { + "F0" : 1, + "f1" : 3 + } + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID STRING KEY, f0 STRUCT) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT ID, cast(f0 as STRUCT) FROM TEST;" ], + "post" : { + "sources" : [ { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `KSQL_COL_0` STRUCT<`F0` INTEGER, `f1` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `F0` STRUCT<`F0` INTEGER, `f1` INTEGER>", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_same_schema/7.1.0_1633125906358/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_same_schema/7.1.0_1633125906358/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/cast_-_struct_to_struct_with_same_schema/7.1.0_1633125906358/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_AVRO/7.1.0_1633125906672/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_AVRO/7.1.0_1633125906672/plan.json new file mode 100644 index 000000000000..ad23f1b1a15d --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_AVRO/7.1.0_1633125906672/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, UTFCODE INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `UTFCODE` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n CHR(INPUT.UTFCODE) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` STRING KEY, `UTFCODE` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CHR(UTFCODE) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_AVRO/7.1.0_1633125906672/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_AVRO/7.1.0_1633125906672/spec.json new file mode 100644 index 000000000000..f30e85179493 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_AVRO/7.1.0_1633125906672/spec.json @@ -0,0 +1,179 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906672, + "path" : "query-validation-tests/chr.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `UTFCODE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "codepoint from decimal code - AVRO", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "utfcode" : 75 + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "utfcode" : 22909 + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "utfcode" : 99000 + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "utfcode" : -1 + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "utfcode" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : "K" + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "RESULT" : "好" + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "RESULT" : "𘊸" + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "RESULT" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "UTFCODE", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, utfcode INTEGER) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE STREAM OUTPUT AS SELECT id, chr(utfcode) AS result FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `UTFCODE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "UTFCODE", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "RESULT", + "type" : [ "null", "string" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_AVRO/7.1.0_1633125906672/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_AVRO/7.1.0_1633125906672/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_AVRO/7.1.0_1633125906672/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_JSON/7.1.0_1633125906691/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_JSON/7.1.0_1633125906691/plan.json new file mode 100644 index 000000000000..d7b230859713 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_JSON/7.1.0_1633125906691/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, UTFCODE INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `UTFCODE` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n CHR(INPUT.UTFCODE) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `UTFCODE` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CHR(UTFCODE) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_JSON/7.1.0_1633125906691/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_JSON/7.1.0_1633125906691/spec.json new file mode 100644 index 000000000000..ac3231f8680b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_JSON/7.1.0_1633125906691/spec.json @@ -0,0 +1,146 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906691, + "path" : "query-validation-tests/chr.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `UTFCODE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "codepoint from decimal code - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "utfcode" : 75 + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "utfcode" : 22909 + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "utfcode" : 99000 + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "utfcode" : -1 + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "utfcode" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : "K" + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "RESULT" : "好" + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "RESULT" : "𘊸" + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "RESULT" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, utfcode INTEGER) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, chr(utfcode) AS result FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `UTFCODE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_JSON/7.1.0_1633125906691/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_JSON/7.1.0_1633125906691/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_decimal_code_-_JSON/7.1.0_1633125906691/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_AVRO/7.1.0_1633125906707/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_AVRO/7.1.0_1633125906707/plan.json new file mode 100644 index 000000000000..725c98914741 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_AVRO/7.1.0_1633125906707/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, UTFCODE STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `UTFCODE` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n CHR(INPUT.UTFCODE) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` STRING KEY, `UTFCODE` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CHR(UTFCODE) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_AVRO/7.1.0_1633125906707/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_AVRO/7.1.0_1633125906707/spec.json new file mode 100644 index 000000000000..9741c63678de --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_AVRO/7.1.0_1633125906707/spec.json @@ -0,0 +1,215 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906707, + "path" : "query-validation-tests/chr.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `UTFCODE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "codepoint from text code - AVRO", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "utfcode" : "\\u004b" + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "utfcode" : "\\u597d" + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "utfcode" : "\\ud820\\udeb8" + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "utfcode" : "75" + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "utfcode" : "004b" + } + }, { + "topic" : "test_topic", + "key" : "r6", + "value" : { + "utfcode" : "bogus" + } + }, { + "topic" : "test_topic", + "key" : "r7", + "value" : { + "utfcode" : "" + } + }, { + "topic" : "test_topic", + "key" : "r8", + "value" : { + "utfcode" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : "K" + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "RESULT" : "好" + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "RESULT" : "𘊸" + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r6", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r7", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r8", + "value" : { + "RESULT" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "UTFCODE", + "type" : [ "null", "string" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, utfcode STRING) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE STREAM OUTPUT AS SELECT id, chr(utfcode) AS result FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `UTFCODE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "UTFCODE", + "type" : [ "null", "string" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "RESULT", + "type" : [ "null", "string" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_AVRO/7.1.0_1633125906707/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_AVRO/7.1.0_1633125906707/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_AVRO/7.1.0_1633125906707/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_JSON/7.1.0_1633125906727/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_JSON/7.1.0_1633125906727/plan.json new file mode 100644 index 000000000000..ee332aee8b0a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_JSON/7.1.0_1633125906727/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, UTFCODE STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `UTFCODE` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n CHR(INPUT.UTFCODE) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `UTFCODE` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CHR(UTFCODE) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_JSON/7.1.0_1633125906727/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_JSON/7.1.0_1633125906727/spec.json new file mode 100644 index 000000000000..85f6b4f3fb27 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_JSON/7.1.0_1633125906727/spec.json @@ -0,0 +1,182 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906727, + "path" : "query-validation-tests/chr.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `UTFCODE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "codepoint from text code - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "utfcode" : "\\u004b" + } + }, { + "topic" : "test_topic", + "key" : "r2", + "value" : { + "utfcode" : "\\u597d" + } + }, { + "topic" : "test_topic", + "key" : "r3", + "value" : { + "utfcode" : "\\ud820\\udeb8" + } + }, { + "topic" : "test_topic", + "key" : "r4", + "value" : { + "utfcode" : "75" + } + }, { + "topic" : "test_topic", + "key" : "r5", + "value" : { + "utfcode" : "004b" + } + }, { + "topic" : "test_topic", + "key" : "r6", + "value" : { + "utfcode" : "bogus" + } + }, { + "topic" : "test_topic", + "key" : "r7", + "value" : { + "utfcode" : "" + } + }, { + "topic" : "test_topic", + "key" : "r8", + "value" : { + "utfcode" : null + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : "K" + } + }, { + "topic" : "OUTPUT", + "key" : "r2", + "value" : { + "RESULT" : "好" + } + }, { + "topic" : "OUTPUT", + "key" : "r3", + "value" : { + "RESULT" : "𘊸" + } + }, { + "topic" : "OUTPUT", + "key" : "r4", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r5", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r6", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r7", + "value" : { + "RESULT" : null + } + }, { + "topic" : "OUTPUT", + "key" : "r8", + "value" : { + "RESULT" : null + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, utfcode STRING) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, chr(utfcode) AS result FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `UTFCODE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_JSON/7.1.0_1633125906727/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_JSON/7.1.0_1633125906727/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_codepoint_from_text_code_-_JSON/7.1.0_1633125906727/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_AVRO/7.1.0_1633125906743/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_AVRO/7.1.0_1633125906743/plan.json new file mode 100644 index 000000000000..7b3f547ba169 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_AVRO/7.1.0_1633125906743/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, UTFCODE1 STRING, UTFCODE2 STRING, UTFCODE3 INTEGER, UTFCODE4 INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `UTFCODE1` STRING, `UTFCODE2` STRING, `UTFCODE3` INTEGER, `UTFCODE4` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n CONCAT(CHR(INPUT.UTFCODE1), CHR(INPUT.UTFCODE2), CHR(INPUT.UTFCODE3), CHR(INPUT.UTFCODE4)) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` STRING KEY, `UTFCODE1` STRING, `UTFCODE2` STRING, `UTFCODE3` INTEGER, `UTFCODE4` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CONCAT(CHR(UTFCODE1), CHR(UTFCODE2), CHR(UTFCODE3), CHR(UTFCODE4)) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_AVRO/7.1.0_1633125906743/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_AVRO/7.1.0_1633125906743/spec.json new file mode 100644 index 000000000000..f69238c3a1cb --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_AVRO/7.1.0_1633125906743/spec.json @@ -0,0 +1,158 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906743, + "path" : "query-validation-tests/chr.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `UTFCODE1` STRING, `UTFCODE2` STRING, `UTFCODE3` INTEGER, `UTFCODE4` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "multiple invocations - AVRO", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "utfcode1" : "\\u004b", + "utfcode2" : "\\u0053", + "utfcode3" : 81, + "utfcode4" : 76 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : "KSQL" + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "UTFCODE1", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "UTFCODE2", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "UTFCODE3", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "UTFCODE4", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, utfcode1 STRING, utfcode2 STRING, utfcode3 INTEGER, utfcode4 INTEGER) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE STREAM OUTPUT AS SELECT id, concat(chr(utfcode1), chr(utfcode2), chr(utfcode3), chr(utfcode4)) AS result FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `UTFCODE1` STRING, `UTFCODE2` STRING, `UTFCODE3` INTEGER, `UTFCODE4` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "UTFCODE1", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "UTFCODE2", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "UTFCODE3", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "UTFCODE4", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "RESULT", + "type" : [ "null", "string" ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_AVRO/7.1.0_1633125906743/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_AVRO/7.1.0_1633125906743/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_AVRO/7.1.0_1633125906743/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_JSON/7.1.0_1633125906760/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_JSON/7.1.0_1633125906760/plan.json new file mode 100644 index 000000000000..3985b86aaea2 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_JSON/7.1.0_1633125906760/plan.json @@ -0,0 +1,166 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM INPUT (ID STRING KEY, UTFCODE1 STRING, UTFCODE2 STRING, UTFCODE3 INTEGER, UTFCODE4 INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "INPUT", + "schema" : "`ID` STRING KEY, `UTFCODE1` STRING, `UTFCODE2` STRING, `UTFCODE3` INTEGER, `UTFCODE4` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM OUTPUT AS SELECT\n INPUT.ID ID,\n CONCAT(CHR(INPUT.UTFCODE1), CHR(INPUT.UTFCODE2), CHR(INPUT.UTFCODE3), CHR(INPUT.UTFCODE4)) RESULT\nFROM INPUT INPUT\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "OUTPUT", + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "topicName" : "OUTPUT", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "INPUT" ], + "sink" : "OUTPUT", + "physicalPlan" : { + "@type" : "streamSinkV1", + "properties" : { + "queryContext" : "OUTPUT" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Project" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` STRING KEY, `UTFCODE1` STRING, `UTFCODE2` STRING, `UTFCODE3` INTEGER, `UTFCODE4` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "CONCAT(CHR(UTFCODE1), CHR(UTFCODE2), CHR(UTFCODE3), CHR(UTFCODE4)) AS RESULT" ] + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "OUTPUT" + }, + "queryId" : "CSAS_OUTPUT_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_JSON/7.1.0_1633125906760/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_JSON/7.1.0_1633125906760/spec.json new file mode 100644 index 000000000000..bac31e8e17b5 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_JSON/7.1.0_1633125906760/spec.json @@ -0,0 +1,101 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906760, + "path" : "query-validation-tests/chr.json", + "schemas" : { + "CSAS_OUTPUT_0.KsqlTopic.Source" : { + "schema" : "`ID` STRING KEY, `UTFCODE1` STRING, `UTFCODE2` STRING, `UTFCODE3` INTEGER, `UTFCODE4` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CSAS_OUTPUT_0.OUTPUT" : { + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "multiple invocations - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : "r1", + "value" : { + "utfcode1" : "\\u004b", + "utfcode2" : "\\u0053", + "utfcode3" : 81, + "utfcode4" : 76 + } + } ], + "outputs" : [ { + "topic" : "OUTPUT", + "key" : "r1", + "value" : { + "RESULT" : "KSQL" + } + } ], + "topics" : [ { + "name" : "OUTPUT", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM INPUT (id STRING KEY, utfcode1 STRING, utfcode2 STRING, utfcode3 INTEGER, utfcode4 INTEGER) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE STREAM OUTPUT AS SELECT id, concat(chr(utfcode1), chr(utfcode2), chr(utfcode3), chr(utfcode4)) AS result FROM INPUT;" ], + "post" : { + "sources" : [ { + "name" : "INPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `UTFCODE1` STRING, `UTFCODE2` STRING, `UTFCODE3` INTEGER, `UTFCODE4` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "OUTPUT", + "type" : "STREAM", + "schema" : "`ID` STRING KEY, `RESULT` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "OUTPUT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_JSON/7.1.0_1633125906760/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_JSON/7.1.0_1633125906760/topology new file mode 100644 index 000000000000..441a8f282644 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/chr_-_multiple_invocations_-_JSON/7.1.0_1633125906760/topology @@ -0,0 +1,13 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Project + <-- KSTREAM-SOURCE-0000000000 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Sink: KSTREAM-SINK-0000000003 (topic: OUTPUT) + <-- Project + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_JSON/7.1.0_1633125908614/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_JSON/7.1.0_1633125908614/plan.json new file mode 100644 index 000000000000..30d8e622c345 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_JSON/7.1.0_1633125908614/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, NAME STRING, VALUE MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE['key1']) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE", "VALUE['key1'] AS KSQL_INTERNAL_COL_2" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(KSQL_INTERNAL_COL_2)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_JSON/7.1.0_1633125908614/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_JSON/7.1.0_1633125908614/spec.json new file mode 100644 index 000000000000..fc2c3c30c50c --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_JSON/7.1.0_1633125908614/spec.json @@ -0,0 +1,169 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125908614, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "collect_list bool map - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : true, + "key2" : false + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : false, + "key2" : true + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : true, + "key2" : true + } + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ true ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ true, false ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ true, false, true ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, NAME varchar, VALUE map) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE S2 as SELECT ID, collect_list(value['key1']) AS collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_JSON/7.1.0_1633125908614/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_JSON/7.1.0_1633125908614/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_JSON/7.1.0_1633125908614/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_PROTOBUF/7.1.0_1633125908719/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_PROTOBUF/7.1.0_1633125908719/plan.json new file mode 100644 index 000000000000..c41afdb72245 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_PROTOBUF/7.1.0_1633125908719/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, NAME STRING, VALUE MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='PROTOBUF');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE['key1']) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE", "VALUE['key1'] AS KSQL_INTERNAL_COL_2" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(KSQL_INTERNAL_COL_2)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_PROTOBUF/7.1.0_1633125908719/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_PROTOBUF/7.1.0_1633125908719/spec.json new file mode 100644 index 000000000000..c33d7289d56a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_PROTOBUF/7.1.0_1633125908719/spec.json @@ -0,0 +1,174 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125908719, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "testCase" : { + "name" : "collect_list bool map - PROTOBUF", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : true, + "key2" : false + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : false, + "key2" : true + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : true, + "key2" : true + } + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ true ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ true, false ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ true, false, true ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n string NAME = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n\n message ConnectDefault2Entry {\n string key = 1;\n bool value = 2;\n }\n}\n", + "valueFormat" : "PROTOBUF", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, NAME varchar, VALUE map) WITH (kafka_topic='test_topic', value_format='PROTOBUF');", "CREATE TABLE S2 as SELECT ID, collect_list(value['key1']) AS collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n repeated bool KSQL_AGG_VARIABLE_0 = 3;\n\n message ConnectDefault2Entry {\n string key = 1;\n bool value = 2;\n }\n}\n" + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n string NAME = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n\n message ConnectDefault2Entry {\n string key = 1;\n bool value = 2;\n }\n}\n" + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n repeated bool COLLECTED = 1;\n}\n" + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_PROTOBUF/7.1.0_1633125908719/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_PROTOBUF/7.1.0_1633125908719/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_-_PROTOBUF/7.1.0_1633125908719/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_JSON/7.1.0_1633125913394/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_JSON/7.1.0_1633125913394/plan.json new file mode 100644 index 000000000000..cad2fcd043f3 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_JSON/7.1.0_1633125913394/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, NAME STRING, VALUE MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE['key1']) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE", "VALUE['key1'] AS KSQL_INTERNAL_COL_2" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(KSQL_INTERNAL_COL_2)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_JSON/7.1.0_1633125913394/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_JSON/7.1.0_1633125913394/spec.json new file mode 100644 index 000000000000..8b589412c1c4 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_JSON/7.1.0_1633125913394/spec.json @@ -0,0 +1,215 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125913394, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "collect_list bool map table - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : true, + "key2" : false + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : false, + "key2" : true + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : true, + "key2" : true + } + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ true ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ false ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ true ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, NAME varchar, VALUE map) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE S2 as SELECT ID, collect_list(value['key1']) AS collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_JSON/7.1.0_1633125913394/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_JSON/7.1.0_1633125913394/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_JSON/7.1.0_1633125913394/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_PROTOBUF/7.1.0_1633125913641/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_PROTOBUF/7.1.0_1633125913641/plan.json new file mode 100644 index 000000000000..51d00114d362 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_PROTOBUF/7.1.0_1633125913641/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, NAME STRING, VALUE MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='PROTOBUF');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE['key1']) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE", "VALUE['key1'] AS KSQL_INTERNAL_COL_2" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(KSQL_INTERNAL_COL_2)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_PROTOBUF/7.1.0_1633125913641/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_PROTOBUF/7.1.0_1633125913641/spec.json new file mode 100644 index 000000000000..35f68bb1dc6a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_PROTOBUF/7.1.0_1633125913641/spec.json @@ -0,0 +1,222 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125913641, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` BOOLEAN", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "testCase" : { + "name" : "collect_list bool map table - PROTOBUF", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : true, + "key2" : false + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : false, + "key2" : true + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : true, + "key2" : true + } + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ true ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ false ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ true ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n string NAME = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n\n message ConnectDefault2Entry {\n string key = 1;\n bool value = 2;\n }\n}\n", + "valueFormat" : "PROTOBUF", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, NAME varchar, VALUE map) WITH (kafka_topic='test_topic', value_format='PROTOBUF');", "CREATE TABLE S2 as SELECT ID, collect_list(value['key1']) AS collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n repeated bool KSQL_AGG_VARIABLE_0 = 3;\n\n message ConnectDefault2Entry {\n string key = 1;\n bool value = 2;\n }\n}\n" + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n string NAME = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n int32 ROWPARTITION = 3;\n int64 ROWOFFSET = 4;\n\n message ConnectDefault2Entry {\n string key = 1;\n bool value = 2;\n }\n}\n" + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n string NAME = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n\n message ConnectDefault2Entry {\n string key = 1;\n bool value = 2;\n }\n}\n" + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n bool KSQL_INTERNAL_COL_2 = 3;\n\n message ConnectDefault2Entry {\n string key = 1;\n bool value = 2;\n }\n}\n" + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n repeated bool COLLECTED = 1;\n}\n" + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_PROTOBUF/7.1.0_1633125913641/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_PROTOBUF/7.1.0_1633125913641/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bool_map_table_-_PROTOBUF/7.1.0_1633125913641/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_-_JSON/7.1.0_1633125909721/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_-_JSON/7.1.0_1633125909721/plan.json new file mode 100644 index 000000000000..91b6ce2ce064 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_-_JSON/7.1.0_1633125909721/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, NAME STRING, VALUE MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE['key1']) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE", "VALUE['key1'] AS KSQL_INTERNAL_COL_2" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(KSQL_INTERNAL_COL_2)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_-_JSON/7.1.0_1633125909721/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_-_JSON/7.1.0_1633125909721/spec.json new file mode 100644 index 000000000000..9873e0b7817b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_-_JSON/7.1.0_1633125909721/spec.json @@ -0,0 +1,151 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125909721, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "collect_list bytes map - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : "YQ==" + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : "Yg==" + } + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "YQ==" ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "YQ==", "Yg==" ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, NAME varchar, VALUE map) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE S2 as SELECT ID, collect_list(value['key1']) AS collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_-_JSON/7.1.0_1633125909721/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_-_JSON/7.1.0_1633125909721/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_-_JSON/7.1.0_1633125909721/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_table_-_JSON/7.1.0_1633125915420/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_table_-_JSON/7.1.0_1633125915420/plan.json new file mode 100644 index 000000000000..3cc2d7072ebf --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_table_-_JSON/7.1.0_1633125915420/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, NAME STRING, VALUE MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE['key1']) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE", "VALUE['key1'] AS KSQL_INTERNAL_COL_2" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(KSQL_INTERNAL_COL_2)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_table_-_JSON/7.1.0_1633125915420/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_table_-_JSON/7.1.0_1633125915420/spec.json new file mode 100644 index 000000000000..257a3acdbb3e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_table_-_JSON/7.1.0_1633125915420/spec.json @@ -0,0 +1,191 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125915420, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` BYTES", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "collect_list bytes map table - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : "YQ==" + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : "Yg==" + } + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "YQ==" ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "Yg==" ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, NAME varchar, VALUE map) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE S2 as SELECT ID, collect_list(value['key1']) AS collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_table_-_JSON/7.1.0_1633125915420/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_table_-_JSON/7.1.0_1633125915420/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_bytes_map_table_-_JSON/7.1.0_1633125915420/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_JSON/7.1.0_1633125909450/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_JSON/7.1.0_1633125909450/plan.json new file mode 100644 index 000000000000..a03f70bea956 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_JSON/7.1.0_1633125909450/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, NAME STRING, VALUE MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE['key1']) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE", "VALUE['key1'] AS KSQL_INTERNAL_COL_2" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(KSQL_INTERNAL_COL_2)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_JSON/7.1.0_1633125909450/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_JSON/7.1.0_1633125909450/spec.json new file mode 100644 index 000000000000..77bd7b13e771 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_JSON/7.1.0_1633125909450/spec.json @@ -0,0 +1,169 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125909450, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` DATE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "collect_list date map - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : 10, + "key2" : 15 + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : 20, + "key2" : 25 + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : 30, + "key2" : 35 + } + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 10 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 10, 20 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 10, 20, 30 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, NAME varchar, VALUE map) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE S2 as SELECT ID, collect_list(value['key1']) AS collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_JSON/7.1.0_1633125909450/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_JSON/7.1.0_1633125909450/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_JSON/7.1.0_1633125909450/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125909571/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125909571/plan.json new file mode 100644 index 000000000000..fd9252453dfa --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125909571/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, NAME STRING, VALUE MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='PROTOBUF');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE['key1']) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE", "VALUE['key1'] AS KSQL_INTERNAL_COL_2" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(KSQL_INTERNAL_COL_2)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125909571/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125909571/spec.json new file mode 100644 index 000000000000..9fc560e6a9a0 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125909571/spec.json @@ -0,0 +1,174 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125909571, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` DATE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "testCase" : { + "name" : "collect_list date map - PROTOBUF", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : 10, + "key2" : 15 + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : 20, + "key2" : 25 + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : 30, + "key2" : 35 + } + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 10 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 10, 20 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 10, 20, 30 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : "syntax = \"proto3\";\n\nimport \"google/type/date.proto\";\n\nmessage ConnectDefault1 {\n string NAME = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n\n message ConnectDefault2Entry {\n string key = 1;\n google.type.Date value = 2;\n }\n}\n", + "valueFormat" : "PROTOBUF", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, NAME varchar, VALUE map) WITH (kafka_topic='test_topic', value_format='PROTOBUF');", "CREATE TABLE S2 as SELECT ID, collect_list(value['key1']) AS collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nimport \"google/type/date.proto\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n repeated google.type.Date KSQL_AGG_VARIABLE_0 = 3;\n\n message ConnectDefault2Entry {\n string key = 1;\n google.type.Date value = 2;\n }\n}\n" + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nimport \"google/type/date.proto\";\n\nmessage ConnectDefault1 {\n string NAME = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n\n message ConnectDefault2Entry {\n string key = 1;\n google.type.Date value = 2;\n }\n}\n" + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nimport \"google/type/date.proto\";\n\nmessage ConnectDefault1 {\n repeated google.type.Date COLLECTED = 1;\n}\n" + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125909571/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125909571/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_-_PROTOBUF/7.1.0_1633125909571/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_JSON/7.1.0_1633125914939/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_JSON/7.1.0_1633125914939/plan.json new file mode 100644 index 000000000000..952afd4803bf --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_JSON/7.1.0_1633125914939/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, NAME STRING, VALUE MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE['key1']) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE", "VALUE['key1'] AS KSQL_INTERNAL_COL_2" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(KSQL_INTERNAL_COL_2)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_JSON/7.1.0_1633125914939/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_JSON/7.1.0_1633125914939/spec.json new file mode 100644 index 000000000000..31297f4f3238 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_JSON/7.1.0_1633125914939/spec.json @@ -0,0 +1,215 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125914939, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` DATE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` DATE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "collect_list date map table - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : 10, + "key2" : 15 + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : 20, + "key2" : 25 + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : 30, + "key2" : 35 + } + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 10 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 20 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 30 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, NAME varchar, VALUE map) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE S2 as SELECT ID, collect_list(value['key1']) AS collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_JSON/7.1.0_1633125914939/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_JSON/7.1.0_1633125914939/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_JSON/7.1.0_1633125914939/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_PROTOBUF/7.1.0_1633125915204/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_PROTOBUF/7.1.0_1633125915204/plan.json new file mode 100644 index 000000000000..8ac4f26f769c --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_PROTOBUF/7.1.0_1633125915204/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, NAME STRING, VALUE MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='PROTOBUF');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE['key1']) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE", "VALUE['key1'] AS KSQL_INTERNAL_COL_2" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(KSQL_INTERNAL_COL_2)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_PROTOBUF/7.1.0_1633125915204/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_PROTOBUF/7.1.0_1633125915204/spec.json new file mode 100644 index 000000000000..fe69705a075a --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_PROTOBUF/7.1.0_1633125915204/spec.json @@ -0,0 +1,222 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125915204, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` DATE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` MAP, `KSQL_INTERNAL_COL_2` DATE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "testCase" : { + "name" : "collect_list date map table - PROTOBUF", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : 10, + "key2" : 15 + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : 20, + "key2" : 25 + } + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "name" : "zero", + "value" : { + "key1" : 30, + "key2" : 35 + } + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 10 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 20 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 30 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : "syntax = \"proto3\";\n\nimport \"google/type/date.proto\";\n\nmessage ConnectDefault1 {\n string NAME = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n\n message ConnectDefault2Entry {\n string key = 1;\n google.type.Date value = 2;\n }\n}\n", + "valueFormat" : "PROTOBUF", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, NAME varchar, VALUE map) WITH (kafka_topic='test_topic', value_format='PROTOBUF');", "CREATE TABLE S2 as SELECT ID, collect_list(value['key1']) AS collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nimport \"google/type/date.proto\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n repeated google.type.Date KSQL_AGG_VARIABLE_0 = 3;\n\n message ConnectDefault2Entry {\n string key = 1;\n google.type.Date value = 2;\n }\n}\n" + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nimport \"google/type/date.proto\";\n\nmessage ConnectDefault1 {\n string NAME = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n int32 ROWPARTITION = 3;\n int64 ROWOFFSET = 4;\n\n message ConnectDefault2Entry {\n string key = 1;\n google.type.Date value = 2;\n }\n}\n" + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nimport \"google/type/date.proto\";\n\nmessage ConnectDefault1 {\n string NAME = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n\n message ConnectDefault2Entry {\n string key = 1;\n google.type.Date value = 2;\n }\n}\n" + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nimport \"google/type/date.proto\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n repeated ConnectDefault2Entry VALUE = 2;\n google.type.Date KSQL_INTERNAL_COL_2 = 3;\n\n message ConnectDefault2Entry {\n string key = 1;\n google.type.Date value = 2;\n }\n}\n" + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nimport \"google/type/date.proto\";\n\nmessage ConnectDefault1 {\n repeated google.type.Date COLLECTED = 1;\n}\n" + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_PROTOBUF/7.1.0_1633125915204/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_PROTOBUF/7.1.0_1633125915204/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_date_map_table_-_PROTOBUF/7.1.0_1633125915204/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_AVRO/7.1.0_1633125907667/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_AVRO/7.1.0_1633125907667/plan.json new file mode 100644 index 000000000000..c74eead0cd70 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_AVRO/7.1.0_1633125907667/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, VALUE DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_AVRO/7.1.0_1633125907667/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_AVRO/7.1.0_1633125907667/spec.json new file mode 100644 index 000000000000..6f81d497fd24 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_AVRO/7.1.0_1633125907667/spec.json @@ -0,0 +1,226 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125907667, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "collect_list double - AVRO", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 5.4 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100.1 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500.9 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 300.8 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 5.4 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 5.4, 100.1 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500.9 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500.9, 300.8 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "double" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, VALUE double) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ID", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "VALUE", + "type" : [ "null", "double" ], + "default" : null + }, { + "name" : "KSQL_AGG_VARIABLE_0", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "double" ] + } ], + "default" : null + } ] + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "double" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "COLLECTED", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "double" ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_AVRO/7.1.0_1633125907667/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_AVRO/7.1.0_1633125907667/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_AVRO/7.1.0_1633125907667/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_JSON/7.1.0_1633125907820/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_JSON/7.1.0_1633125907820/plan.json new file mode 100644 index 000000000000..18e704e2ddc5 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_JSON/7.1.0_1633125907820/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, VALUE DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_JSON/7.1.0_1633125907820/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_JSON/7.1.0_1633125907820/spec.json new file mode 100644 index 000000000000..d5ac5e10df36 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_JSON/7.1.0_1633125907820/spec.json @@ -0,0 +1,169 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125907820, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "collect_list double - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 5.4 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100.1 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500.9 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 300.8 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 5.4 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 5.4, 100.1 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500.9 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500.9, 300.8 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, VALUE double) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_JSON/7.1.0_1633125907820/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_JSON/7.1.0_1633125907820/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_JSON/7.1.0_1633125907820/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_PROTOBUF/7.1.0_1633125907972/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_PROTOBUF/7.1.0_1633125907972/plan.json new file mode 100644 index 000000000000..cd191902ed17 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_PROTOBUF/7.1.0_1633125907972/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, VALUE DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='PROTOBUF');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_PROTOBUF/7.1.0_1633125907972/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_PROTOBUF/7.1.0_1633125907972/spec.json new file mode 100644 index 000000000000..a909c81b0add --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_PROTOBUF/7.1.0_1633125907972/spec.json @@ -0,0 +1,174 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125907972, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "testCase" : { + "name" : "collect_list double - PROTOBUF", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 5.4 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100.1 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500.9 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 300.8 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 5.4 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 5.4, 100.1 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500.9 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500.9, 300.8 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n double VALUE = 1;\n}\n", + "valueFormat" : "PROTOBUF", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, VALUE double) WITH (kafka_topic='test_topic', value_format='PROTOBUF');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n double VALUE = 2;\n repeated double KSQL_AGG_VARIABLE_0 = 3;\n}\n" + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n double VALUE = 1;\n}\n" + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n repeated double COLLECTED = 1;\n}\n" + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_PROTOBUF/7.1.0_1633125907972/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_PROTOBUF/7.1.0_1633125907972/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_-_PROTOBUF/7.1.0_1633125907972/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_AVRO/7.1.0_1633125911515/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_AVRO/7.1.0_1633125911515/plan.json new file mode 100644 index 000000000000..2b39ddbc1cd1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_AVRO/7.1.0_1633125911515/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_AVRO/7.1.0_1633125911515/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_AVRO/7.1.0_1633125911515/spec.json new file mode 100644 index 000000000000..b436a9e9c13b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_AVRO/7.1.0_1633125911515/spec.json @@ -0,0 +1,304 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125911515, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "collect_list double table - AVRO", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 5.4 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100.1 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500.9 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 300.8 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 5.4 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 100.1 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500.9 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 300.8 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "double" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE double) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ID", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "VALUE", + "type" : [ "null", "double" ], + "default" : null + }, { + "name" : "KSQL_AGG_VARIABLE_0", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "double" ] + } ], + "default" : null + } ] + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "double" ], + "default" : null + }, { + "name" : "ROWPARTITION", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "ROWOFFSET", + "type" : [ "null", "long" ], + "default" : null + } ] + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "double" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ID", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "VALUE", + "type" : [ "null", "double" ], + "default" : null + } ] + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "COLLECTED", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "double" ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_AVRO/7.1.0_1633125911515/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_AVRO/7.1.0_1633125911515/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_AVRO/7.1.0_1633125911515/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_JSON/7.1.0_1633125911818/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_JSON/7.1.0_1633125911818/plan.json new file mode 100644 index 000000000000..56e5809f09ee --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_JSON/7.1.0_1633125911818/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_JSON/7.1.0_1633125911818/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_JSON/7.1.0_1633125911818/spec.json new file mode 100644 index 000000000000..aef5fb4e2034 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_JSON/7.1.0_1633125911818/spec.json @@ -0,0 +1,215 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125911818, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "collect_list double table - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 5.4 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100.1 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500.9 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 300.8 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 5.4 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 100.1 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500.9 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 300.8 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE double) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_JSON/7.1.0_1633125911818/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_JSON/7.1.0_1633125911818/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_JSON/7.1.0_1633125911818/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_PROTOBUF/7.1.0_1633125912101/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_PROTOBUF/7.1.0_1633125912101/plan.json new file mode 100644 index 000000000000..f9fc32a401c1 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_PROTOBUF/7.1.0_1633125912101/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE DOUBLE) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='PROTOBUF');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_PROTOBUF/7.1.0_1633125912101/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_PROTOBUF/7.1.0_1633125912101/spec.json new file mode 100644 index 000000000000..6fc2901ba7a2 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_PROTOBUF/7.1.0_1633125912101/spec.json @@ -0,0 +1,222 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125912101, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "testCase" : { + "name" : "collect_list double table - PROTOBUF", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 5.4 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100.1 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500.9 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 300.8 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 5.4 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 100.1 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500.9 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 300.8 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n double VALUE = 1;\n}\n", + "valueFormat" : "PROTOBUF", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE double) WITH (kafka_topic='test_topic', value_format='PROTOBUF');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `VALUE` DOUBLE", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n double VALUE = 2;\n repeated double KSQL_AGG_VARIABLE_0 = 3;\n}\n" + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n double VALUE = 1;\n int32 ROWPARTITION = 2;\n int64 ROWOFFSET = 3;\n}\n" + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n double VALUE = 1;\n}\n" + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n double VALUE = 2;\n}\n" + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n repeated double COLLECTED = 1;\n}\n" + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_PROTOBUF/7.1.0_1633125912101/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_PROTOBUF/7.1.0_1633125912101/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_double_table_-_PROTOBUF/7.1.0_1633125912101/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_AVRO/7.1.0_1633125906777/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_AVRO/7.1.0_1633125906777/plan.json new file mode 100644 index 000000000000..f80e35826994 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_AVRO/7.1.0_1633125906777/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, VALUE INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_AVRO/7.1.0_1633125906777/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_AVRO/7.1.0_1633125906777/spec.json new file mode 100644 index 000000000000..83b6e46dbe95 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_AVRO/7.1.0_1633125906777/spec.json @@ -0,0 +1,226 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906777, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "collect_list int - AVRO", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 0 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 100 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 0 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 0, 100 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500, 100 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, VALUE integer) WITH (kafka_topic='test_topic',value_format='AVRO');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ID", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "VALUE", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "KSQL_AGG_VARIABLE_0", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "int" ] + } ], + "default" : null + } ] + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "COLLECTED", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "int" ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_AVRO/7.1.0_1633125906777/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_AVRO/7.1.0_1633125906777/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_AVRO/7.1.0_1633125906777/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_JSON/7.1.0_1633125906888/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_JSON/7.1.0_1633125906888/plan.json new file mode 100644 index 000000000000..2ad12801da78 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_JSON/7.1.0_1633125906888/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, VALUE INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_JSON/7.1.0_1633125906888/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_JSON/7.1.0_1633125906888/spec.json new file mode 100644 index 000000000000..bbcdb4f966dd --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_JSON/7.1.0_1633125906888/spec.json @@ -0,0 +1,169 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125906888, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "collect_list int - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 0 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 100 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 0 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 0, 100 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500, 100 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, VALUE integer) WITH (kafka_topic='test_topic',value_format='JSON');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_JSON/7.1.0_1633125906888/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_JSON/7.1.0_1633125906888/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_JSON/7.1.0_1633125906888/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_PROTOBUF/7.1.0_1633125907039/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_PROTOBUF/7.1.0_1633125907039/plan.json new file mode 100644 index 000000000000..bca89ca04223 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_PROTOBUF/7.1.0_1633125907039/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, VALUE INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='PROTOBUF');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_PROTOBUF/7.1.0_1633125907039/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_PROTOBUF/7.1.0_1633125907039/spec.json new file mode 100644 index 000000000000..aa39520f29a2 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_PROTOBUF/7.1.0_1633125907039/spec.json @@ -0,0 +1,174 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125907039, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "testCase" : { + "name" : "collect_list int - PROTOBUF", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 0 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 100 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 0 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 0, 100 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500, 100 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int32 VALUE = 1;\n}\n", + "valueFormat" : "PROTOBUF", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, VALUE integer) WITH (kafka_topic='test_topic',value_format='PROTOBUF');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n int32 VALUE = 2;\n repeated int32 KSQL_AGG_VARIABLE_0 = 3;\n}\n" + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int32 VALUE = 1;\n}\n" + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n repeated int32 COLLECTED = 1;\n}\n" + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_PROTOBUF/7.1.0_1633125907039/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_PROTOBUF/7.1.0_1633125907039/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_-_PROTOBUF/7.1.0_1633125907039/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_AVRO/7.1.0_1633125909854/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_AVRO/7.1.0_1633125909854/plan.json new file mode 100644 index 000000000000..e5f1f54a22a8 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_AVRO/7.1.0_1633125909854/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_AVRO/7.1.0_1633125909854/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_AVRO/7.1.0_1633125909854/spec.json new file mode 100644 index 000000000000..e8163ec9d095 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_AVRO/7.1.0_1633125909854/spec.json @@ -0,0 +1,304 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125909854, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "collect_list int table - AVRO", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 0 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 100 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 0 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 100 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 100 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE integer) WITH (kafka_topic='test_topic',value_format='AVRO');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ID", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "VALUE", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "KSQL_AGG_VARIABLE_0", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "int" ] + } ], + "default" : null + } ] + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "ROWPARTITION", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "ROWOFFSET", + "type" : [ "null", "long" ], + "default" : null + } ] + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "int" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ID", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "VALUE", + "type" : [ "null", "int" ], + "default" : null + } ] + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "COLLECTED", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "int" ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_AVRO/7.1.0_1633125909854/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_AVRO/7.1.0_1633125909854/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_AVRO/7.1.0_1633125909854/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_JSON/7.1.0_1633125910162/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_JSON/7.1.0_1633125910162/plan.json new file mode 100644 index 000000000000..ba41752093cd --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_JSON/7.1.0_1633125910162/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_JSON/7.1.0_1633125910162/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_JSON/7.1.0_1633125910162/spec.json new file mode 100644 index 000000000000..98c228889b26 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_JSON/7.1.0_1633125910162/spec.json @@ -0,0 +1,215 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125910162, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "collect_list int table - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 0 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 100 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 0 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 100 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 100 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE integer) WITH (kafka_topic='test_topic',value_format='JSON');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_JSON/7.1.0_1633125910162/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_JSON/7.1.0_1633125910162/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_JSON/7.1.0_1633125910162/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_PROTOBUF/7.1.0_1633125910445/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_PROTOBUF/7.1.0_1633125910445/plan.json new file mode 100644 index 000000000000..867401ed26c4 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_PROTOBUF/7.1.0_1633125910445/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE INTEGER) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='PROTOBUF');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_PROTOBUF/7.1.0_1633125910445/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_PROTOBUF/7.1.0_1633125910445/spec.json new file mode 100644 index 000000000000..c45f2dab6e0b --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_PROTOBUF/7.1.0_1633125910445/spec.json @@ -0,0 +1,222 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125910445, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "testCase" : { + "name" : "collect_list int table - PROTOBUF", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 0 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 100 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 0 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 100 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 100 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int32 VALUE = 1;\n}\n", + "valueFormat" : "PROTOBUF", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE integer) WITH (kafka_topic='test_topic',value_format='PROTOBUF');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `VALUE` INTEGER", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n int32 VALUE = 2;\n repeated int32 KSQL_AGG_VARIABLE_0 = 3;\n}\n" + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int32 VALUE = 1;\n int32 ROWPARTITION = 2;\n int64 ROWOFFSET = 3;\n}\n" + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int32 VALUE = 1;\n}\n" + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n int32 VALUE = 2;\n}\n" + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n repeated int32 COLLECTED = 1;\n}\n" + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_PROTOBUF/7.1.0_1633125910445/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_PROTOBUF/7.1.0_1633125910445/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_int_table_-_PROTOBUF/7.1.0_1633125910445/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_AVRO/7.1.0_1633125907209/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_AVRO/7.1.0_1633125907209/plan.json new file mode 100644 index 000000000000..4c5fbef88833 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_AVRO/7.1.0_1633125907209/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, VALUE BIGINT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_AVRO/7.1.0_1633125907209/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_AVRO/7.1.0_1633125907209/spec.json new file mode 100644 index 000000000000..c5e1f6d19194 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_AVRO/7.1.0_1633125907209/spec.json @@ -0,0 +1,226 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125907209, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "collect_list long - AVRO", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 2147483648 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 100 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 2147483648 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 2147483648, 100 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500, 100 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "long" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, VALUE bigint) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ID", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "VALUE", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "KSQL_AGG_VARIABLE_0", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "long" ] + } ], + "default" : null + } ] + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "long" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "COLLECTED", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "long" ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_AVRO/7.1.0_1633125907209/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_AVRO/7.1.0_1633125907209/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_AVRO/7.1.0_1633125907209/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_JSON/7.1.0_1633125907351/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_JSON/7.1.0_1633125907351/plan.json new file mode 100644 index 000000000000..08628567b87e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_JSON/7.1.0_1633125907351/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, VALUE BIGINT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_JSON/7.1.0_1633125907351/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_JSON/7.1.0_1633125907351/spec.json new file mode 100644 index 000000000000..927a69fcd296 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_JSON/7.1.0_1633125907351/spec.json @@ -0,0 +1,169 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125907351, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "collect_list long - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 2147483648 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 100 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 2147483648 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 2147483648, 100 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500, 100 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, VALUE bigint) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_JSON/7.1.0_1633125907351/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_JSON/7.1.0_1633125907351/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_JSON/7.1.0_1633125907351/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_PROTOBUF/7.1.0_1633125907506/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_PROTOBUF/7.1.0_1633125907506/plan.json new file mode 100644 index 000000000000..6cbbe9731bbe --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_PROTOBUF/7.1.0_1633125907506/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, VALUE BIGINT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='PROTOBUF');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_PROTOBUF/7.1.0_1633125907506/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_PROTOBUF/7.1.0_1633125907506/spec.json new file mode 100644 index 000000000000..5fa67b5a43cd --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_PROTOBUF/7.1.0_1633125907506/spec.json @@ -0,0 +1,174 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125907506, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "testCase" : { + "name" : "collect_list long - PROTOBUF", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 2147483648 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 100 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 2147483648 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 2147483648, 100 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500, 100 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 VALUE = 1;\n}\n", + "valueFormat" : "PROTOBUF", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, VALUE bigint) WITH (kafka_topic='test_topic', value_format='PROTOBUF');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n int64 VALUE = 2;\n repeated int64 KSQL_AGG_VARIABLE_0 = 3;\n}\n" + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 VALUE = 1;\n}\n" + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n repeated int64 COLLECTED = 1;\n}\n" + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_PROTOBUF/7.1.0_1633125907506/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_PROTOBUF/7.1.0_1633125907506/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_-_PROTOBUF/7.1.0_1633125907506/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_AVRO/7.1.0_1633125910659/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_AVRO/7.1.0_1633125910659/plan.json new file mode 100644 index 000000000000..b578af422956 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_AVRO/7.1.0_1633125910659/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE BIGINT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_AVRO/7.1.0_1633125910659/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_AVRO/7.1.0_1633125910659/spec.json new file mode 100644 index 000000000000..1c6ea6456569 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_AVRO/7.1.0_1633125910659/spec.json @@ -0,0 +1,304 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125910659, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "collect_list long table - AVRO", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 2147483648 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 100 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 2147483648 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 100 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 100 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "long" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE bigint) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ID", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "VALUE", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "KSQL_AGG_VARIABLE_0", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "long" ] + } ], + "default" : null + } ] + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "ROWPARTITION", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "ROWOFFSET", + "type" : [ "null", "long" ], + "default" : null + } ] + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "long" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ID", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "VALUE", + "type" : [ "null", "long" ], + "default" : null + } ] + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "COLLECTED", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "long" ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_AVRO/7.1.0_1633125910659/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_AVRO/7.1.0_1633125910659/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_AVRO/7.1.0_1633125910659/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_JSON/7.1.0_1633125910947/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_JSON/7.1.0_1633125910947/plan.json new file mode 100644 index 000000000000..2a1723ddcf5e --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_JSON/7.1.0_1633125910947/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE BIGINT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_JSON/7.1.0_1633125910947/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_JSON/7.1.0_1633125910947/spec.json new file mode 100644 index 000000000000..462bc30b870f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_JSON/7.1.0_1633125910947/spec.json @@ -0,0 +1,215 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125910947, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "collect_list long table - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 2147483648 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 100 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 2147483648 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 100 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 100 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE bigint) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_JSON/7.1.0_1633125910947/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_JSON/7.1.0_1633125910947/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_JSON/7.1.0_1633125910947/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_PROTOBUF/7.1.0_1633125911218/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_PROTOBUF/7.1.0_1633125911218/plan.json new file mode 100644 index 000000000000..b9e6c860b5c7 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_PROTOBUF/7.1.0_1633125911218/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE BIGINT) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='PROTOBUF');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_PROTOBUF/7.1.0_1633125911218/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_PROTOBUF/7.1.0_1633125911218/spec.json new file mode 100644 index 000000000000..f9b4cba09808 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_PROTOBUF/7.1.0_1633125911218/spec.json @@ -0,0 +1,222 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125911218, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "testCase" : { + "name" : "collect_list long table - PROTOBUF", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 2147483648 + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : 100 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 500 + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : 100 + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 2147483648 ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ 100 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 500 ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ 100 ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 VALUE = 1;\n}\n", + "valueFormat" : "PROTOBUF", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE bigint) WITH (kafka_topic='test_topic', value_format='PROTOBUF');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `VALUE` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n int64 VALUE = 2;\n repeated int64 KSQL_AGG_VARIABLE_0 = 3;\n}\n" + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 VALUE = 1;\n int32 ROWPARTITION = 2;\n int64 ROWOFFSET = 3;\n}\n" + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 VALUE = 1;\n}\n" + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n int64 VALUE = 2;\n}\n" + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n repeated int64 COLLECTED = 1;\n}\n" + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_PROTOBUF/7.1.0_1633125911218/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_PROTOBUF/7.1.0_1633125911218/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_long_table_-_PROTOBUF/7.1.0_1633125911218/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_AVRO/7.1.0_1633125908115/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_AVRO/7.1.0_1633125908115/plan.json new file mode 100644 index 000000000000..2677968c015c --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_AVRO/7.1.0_1633125908115/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, VALUE STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_AVRO/7.1.0_1633125908115/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_AVRO/7.1.0_1633125908115/spec.json new file mode 100644 index 000000000000..355dbb3c55be --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_AVRO/7.1.0_1633125908115/spec.json @@ -0,0 +1,238 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125908115, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "collect_list string - AVRO", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : "foo" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "baz" + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : "bar" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "baz" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "foo" + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "foo" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz" ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "foo", "bar" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz", "baz" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz", "baz", "foo" ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "string" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, VALUE varchar) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ID", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "VALUE", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "KSQL_AGG_VARIABLE_0", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "string" ] + } ], + "default" : null + } ] + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "string" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "COLLECTED", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "string" ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_AVRO/7.1.0_1633125908115/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_AVRO/7.1.0_1633125908115/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_AVRO/7.1.0_1633125908115/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_JSON/7.1.0_1633125908277/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_JSON/7.1.0_1633125908277/plan.json new file mode 100644 index 000000000000..41175abd68ba --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_JSON/7.1.0_1633125908277/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, VALUE STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_JSON/7.1.0_1633125908277/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_JSON/7.1.0_1633125908277/spec.json new file mode 100644 index 000000000000..9cfe35f612f9 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_JSON/7.1.0_1633125908277/spec.json @@ -0,0 +1,181 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125908277, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "collect_list string - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : "foo" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "baz" + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : "bar" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "baz" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "foo" + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "foo" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz" ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "foo", "bar" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz", "baz" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz", "baz", "foo" ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, VALUE varchar) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_JSON/7.1.0_1633125908277/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_JSON/7.1.0_1633125908277/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_JSON/7.1.0_1633125908277/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_PROTOBUF/7.1.0_1633125908444/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_PROTOBUF/7.1.0_1633125908444/plan.json new file mode 100644 index 000000000000..711db37c68e6 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_PROTOBUF/7.1.0_1633125908444/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, VALUE STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='PROTOBUF');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "streamAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "streamGroupByKeyV1", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "streamSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "streamSourceV1", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` STRING", + "pseudoColumnVersion" : 1 + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_PROTOBUF/7.1.0_1633125908444/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_PROTOBUF/7.1.0_1633125908444/spec.json new file mode 100644 index 000000000000..01e282c43aab --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_PROTOBUF/7.1.0_1633125908444/spec.json @@ -0,0 +1,186 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125908444, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "testCase" : { + "name" : "collect_list string - PROTOBUF", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : "foo" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "baz" + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : "bar" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "baz" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "foo" + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "foo" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz" ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "foo", "bar" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz", "baz" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz", "baz", "foo" ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n string VALUE = 1;\n}\n", + "valueFormat" : "PROTOBUF", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE STREAM TEST (ID BIGINT KEY, VALUE varchar) WITH (kafka_topic='test_topic', value_format='PROTOBUF');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "STREAM", + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n string VALUE = 2;\n repeated string KSQL_AGG_VARIABLE_0 = 3;\n}\n" + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n string VALUE = 1;\n}\n" + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n repeated string COLLECTED = 1;\n}\n" + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_PROTOBUF/7.1.0_1633125908444/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_PROTOBUF/7.1.0_1633125908444/topology new file mode 100644 index 000000000000..fcfc8fb28665 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_-_PROTOBUF/7.1.0_1633125908444/topology @@ -0,0 +1,25 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [test_topic]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> Aggregate-Prepare + <-- KSTREAM-SOURCE-0000000000 + Processor: Aggregate-Prepare (stores: []) + --> KSTREAM-AGGREGATE-0000000003 + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-AGGREGATE-0000000003 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- Aggregate-Prepare + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KSTREAM-AGGREGATE-0000000003 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000006 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000006 (stores: []) + --> KSTREAM-SINK-0000000007 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000007 (topic: S2) + <-- KTABLE-TOSTREAM-0000000006 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_AVRO/7.1.0_1633125912407/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_AVRO/7.1.0_1633125912407/plan.json new file mode 100644 index 000000000000..81f6a0cbb822 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_AVRO/7.1.0_1633125912407/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='AVRO');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` STRING", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_AVRO/7.1.0_1633125912407/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_AVRO/7.1.0_1633125912407/spec.json new file mode 100644 index 000000000000..1d93c0da27db --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_AVRO/7.1.0_1633125912407/spec.json @@ -0,0 +1,322 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125912407, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `VALUE` STRING, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + } + } + }, + "testCase" : { + "name" : "collect_list string table - AVRO", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : "foo" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "baz" + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : "bar" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "baz" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "foo" + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "foo" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz" ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "bar" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "foo" ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "string" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + }, + "valueFormat" : "AVRO", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE varchar) WITH (kafka_topic='test_topic', value_format='AVRO');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "AVRO", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ID", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "VALUE", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "KSQL_AGG_VARIABLE_0", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "string" ] + } ], + "default" : null + } ] + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "string" ], + "default" : null + }, { + "name" : "ROWPARTITION", + "type" : [ "null", "int" ], + "default" : null + }, { + "name" : "ROWOFFSET", + "type" : [ "null", "long" ], + "default" : null + } ] + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "VALUE", + "type" : [ "null", "string" ], + "default" : null + } ], + "connect.name" : "io.confluent.ksql.avro_schemas.KsqlDataSourceSchema" + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "ID", + "type" : [ "null", "long" ], + "default" : null + }, { + "name" : "VALUE", + "type" : [ "null", "string" ], + "default" : null + } ] + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "AVRO" + }, + "partitions" : 4, + "valueSchema" : { + "type" : "record", + "name" : "KsqlDataSourceSchema", + "namespace" : "io.confluent.ksql.avro_schemas", + "fields" : [ { + "name" : "COLLECTED", + "type" : [ "null", { + "type" : "array", + "items" : [ "null", "string" ] + } ], + "default" : null + } ] + } + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_AVRO/7.1.0_1633125912407/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_AVRO/7.1.0_1633125912407/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_AVRO/7.1.0_1633125912407/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_JSON/7.1.0_1633125912743/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_JSON/7.1.0_1633125912743/plan.json new file mode 100644 index 000000000000..07a762fc0394 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_JSON/7.1.0_1633125912743/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` STRING", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_JSON/7.1.0_1633125912743/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_JSON/7.1.0_1633125912743/spec.json new file mode 100644 index 000000000000..e57a6d9a5bfc --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_JSON/7.1.0_1633125912743/spec.json @@ -0,0 +1,233 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125912743, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `VALUE` STRING, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + } + }, + "testCase" : { + "name" : "collect_list string table - JSON", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : "foo" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "baz" + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : "bar" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "baz" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "foo" + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "foo" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz" ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "bar" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "foo" ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE varchar) WITH (kafka_topic='test_topic', value_format='JSON');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "JSON", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + }, + "partitions" : 4 + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_JSON/7.1.0_1633125912743/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_JSON/7.1.0_1633125912743/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_JSON/7.1.0_1633125912743/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_PROTOBUF/7.1.0_1633125913052/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_PROTOBUF/7.1.0_1633125913052/plan.json new file mode 100644 index 000000000000..ad6b91c8dd6f --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_PROTOBUF/7.1.0_1633125913052/plan.json @@ -0,0 +1,229 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE STRING) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='PROTOBUF');", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "topicName" : "S2", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "orReplace" : false, + "isSource" : false + }, + "queryPlan" : { + "sources" : [ "TEST" ], + "sink" : "S2", + "physicalPlan" : { + "@type" : "tableSinkV1", + "properties" : { + "queryContext" : "S2" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Project" + }, + "source" : { + "@type" : "tableAggregateV1", + "properties" : { + "queryContext" : "Aggregate/Aggregate" + }, + "source" : { + "@type" : "tableGroupByV2", + "properties" : { + "queryContext" : "Aggregate/GroupBy" + }, + "source" : { + "@type" : "tableSelectV1", + "properties" : { + "queryContext" : "Aggregate/Prepare" + }, + "source" : { + "@type" : "tableSourceV2", + "properties" : { + "queryContext" : "KsqlTopic/Source" + }, + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "sourceSchema" : "`ID` BIGINT KEY, `VALUE` STRING", + "pseudoColumnVersion" : 1, + "stateStoreFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "ID AS ID", "VALUE AS VALUE" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "groupByExpressions" : [ "ID" ] + }, + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "nonAggregateColumns" : [ "ID", "VALUE" ], + "aggregationFunctions" : [ "COLLECT_LIST(VALUE)" ] + }, + "keyColumnNames" : [ "ID" ], + "selectExpressions" : [ "KSQL_AGG_VARIABLE_0 AS COLLECTED" ], + "internalFormats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "topicName" : "S2" + }, + "queryId" : "CTAS_S2_0" + } + } ], + "configs" : { + "ksql.extension.dir" : "ext", + "ksql.streams.cache.max.bytes.buffering" : "0", + "ksql.security.extension.class" : null, + "metric.reporters" : "", + "ksql.transient.prefix" : "transient_", + "ksql.query.status.running.threshold.seconds" : "300", + "ksql.streams.default.deserialization.exception.handler" : "io.confluent.ksql.errors.LogMetricAndContinueExceptionHandler", + "ksql.output.topic.name.prefix" : "", + "ksql.query.pull.stream.enabled" : "false", + "ksql.query.pull.enable.standby.reads" : "false", + "ksql.persistence.default.format.key" : "KAFKA", + "ksql.query.push.v2.interpreter.enabled" : "true", + "ksql.query.persistent.max.bytes.buffering.total" : "-1", + "ksql.queryanonymizer.logs_enabled" : "true", + "ksql.query.error.max.queue.size" : "10", + "ksql.variable.substitution.enable" : "true", + "ksql.internal.topic.min.insync.replicas" : "1", + "ksql.streams.shutdown.timeout.ms" : "300000", + "ksql.internal.topic.replicas" : "1", + "ksql.insert.into.values.enabled" : "true", + "ksql.query.pull.max.allowed.offset.lag" : "9223372036854775807", + "ksql.query.pull.max.qps" : "2147483647", + "ksql.access.validator.enable" : "auto", + "ksql.streams.bootstrap.servers" : "localhost:0", + "ksql.queryanonymizer.cluster_namespace" : null, + "ksql.query.pull.metrics.enabled" : "true", + "ksql.create.or.replace.enabled" : "true", + "ksql.metrics.extension" : null, + "ksql.query.push.v2.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.query.pull.range.scan.enabled" : "true", + "ksql.hidden.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.cast.strings.preserve.nulls" : "true", + "ksql.authorization.cache.max.entries" : "10000", + "ksql.pull.queries.enable" : "true", + "ksql.lambdas.enabled" : "true", + "ksql.source.table.materialization.enabled" : "true", + "ksql.query.pull.max.hourly.bandwidth.megabytes" : "2147483647", + "ksql.suppress.enabled" : "false", + "ksql.sink.window.change.log.additional.retention" : "1000000", + "ksql.readonly.topics" : "_confluent.*,__confluent.*,_schemas,__consumer_offsets,__transaction_state,connect-configs,connect-offsets,connect-status,connect-statuses", + "ksql.query.persistent.active.limit" : "2147483647", + "ksql.persistence.wrap.single.values" : null, + "ksql.authorization.cache.expiry.time.secs" : "30", + "ksql.query.retry.backoff.initial.ms" : "15000", + "ksql.query.transient.max.bytes.buffering.total" : "-1", + "ksql.schema.registry.url" : "", + "ksql.properties.overrides.denylist" : "", + "ksql.query.pull.max.concurrent.requests" : "2147483647", + "ksql.streams.auto.offset.reset" : "earliest", + "ksql.connect.url" : "http://localhost:8083", + "ksql.service.id" : "some.ksql.service.id", + "ksql.query.push.v2.new.node.continuity" : "false", + "ksql.query.push.v2.enabled" : "false", + "ksql.streams.default.production.exception.handler" : "io.confluent.ksql.errors.ProductionExceptionHandlerUtil$LogAndFailProductionExceptionHandler", + "ksql.query.pull.interpreter.enabled" : "true", + "ksql.rowpartition.rowoffset.enabled" : "true", + "ksql.streams.commit.interval.ms" : "2000", + "ksql.query.pull.table.scan.enabled" : "true", + "ksql.streams.auto.commit.interval.ms" : "0", + "ksql.streams.topology.optimization" : "all", + "ksql.query.pull.router.thread.pool.size" : "50", + "ksql.query.push.v2.registry.installed" : "false", + "ksql.query.retry.backoff.max.ms" : "900000", + "ksql.streams.num.stream.threads" : "4", + "ksql.timestamp.throw.on.invalid" : "false", + "ksql.metrics.tags.custom" : "", + "ksql.persistence.default.format.value" : null, + "ksql.udfs.enabled" : "true", + "ksql.udf.enable.security.manager" : "true", + "ksql.connect.worker.config" : "", + "ksql.runtime.feature.shared.enabled" : "false", + "ksql.nested.error.set.null" : "true", + "ksql.udf.collect.metrics" : "false", + "ksql.query.pull.thread.pool.size" : "50", + "ksql.persistent.prefix" : "query_", + "ksql.metastore.backup.location" : "", + "ksql.error.classifier.regex" : "", + "ksql.suppress.buffer.size.bytes" : "-1" + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_PROTOBUF/7.1.0_1633125913052/spec.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_PROTOBUF/7.1.0_1633125913052/spec.json new file mode 100644 index 000000000000..b2d63de1e195 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_PROTOBUF/7.1.0_1633125913052/spec.json @@ -0,0 +1,240 @@ +{ + "version" : "7.1.0", + "timestamp" : 1633125913052, + "path" : "query-validation-tests/collect-list.json", + "schemas" : { + "CTAS_S2_0.Aggregate.Aggregate.Materialize" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING, `KSQL_AGG_VARIABLE_0` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source.Materialized" : { + "schema" : "`ID` BIGINT KEY, `VALUE` STRING, `ROWPARTITION` INTEGER, `ROWOFFSET` BIGINT", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Project" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.Prepare" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.KsqlTopic.Source" : { + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.S2" : { + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + }, + "CTAS_S2_0.Aggregate.GroupBy" : { + "schema" : "`ID` BIGINT KEY, `ID` BIGINT, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + } + } + }, + "testCase" : { + "name" : "collect_list string table - PROTOBUF", + "inputs" : [ { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : "foo" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "baz" + } + }, { + "topic" : "test_topic", + "key" : 0, + "value" : { + "VALUE" : "bar" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "baz" + } + }, { + "topic" : "test_topic", + "key" : 100, + "value" : { + "VALUE" : "foo" + } + } ], + "outputs" : [ { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "foo" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz" ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 0, + "value" : { + "COLLECTED" : [ "bar" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "baz" ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ ] + } + }, { + "topic" : "S2", + "key" : 100, + "value" : { + "COLLECTED" : [ "foo" ] + } + } ], + "topics" : [ { + "name" : "test_topic", + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n string VALUE = 1;\n}\n", + "valueFormat" : "PROTOBUF", + "replicas" : 1, + "numPartitions" : 4 + }, { + "name" : "S2", + "replicas" : 1, + "numPartitions" : 4 + } ], + "statements" : [ "CREATE TABLE TEST (ID BIGINT PRIMARY KEY, VALUE varchar) WITH (kafka_topic='test_topic', value_format='PROTOBUF');", "CREATE TABLE S2 as SELECT ID, collect_list(value) as collected FROM test group by id;" ], + "post" : { + "sources" : [ { + "name" : "S2", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + }, { + "name" : "TEST", + "type" : "TABLE", + "schema" : "`ID` BIGINT KEY, `VALUE` STRING", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : "PROTOBUF", + "keyFeatures" : [ ], + "valueFeatures" : [ ], + "isSource" : false + } ], + "topics" : { + "topics" : [ { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-Aggregate-Materialize-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n string VALUE = 2;\n repeated string KSQL_AGG_VARIABLE_0 = 3;\n}\n" + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-KsqlTopic-Reduce-changelog", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n string VALUE = 1;\n int32 ROWPARTITION = 2;\n int64 ROWOFFSET = 3;\n}\n" + }, { + "name" : "test_topic", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n string VALUE = 1;\n}\n" + }, { + "name" : "_confluent-ksql-some.ksql.service.idquery_CTAS_S2_0-Aggregate-GroupBy-repartition", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n int64 ID = 1;\n string VALUE = 2;\n}\n" + }, { + "name" : "S2", + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "PROTOBUF" + }, + "partitions" : 4, + "valueSchema" : "syntax = \"proto3\";\n\nmessage ConnectDefault1 {\n repeated string COLLECTED = 1;\n}\n" + } ] + } + } + } +} \ No newline at end of file diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_PROTOBUF/7.1.0_1633125913052/topology b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_PROTOBUF/7.1.0_1633125913052/topology new file mode 100644 index 000000000000..fcff87be4084 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_string_table_-_PROTOBUF/7.1.0_1633125913052/topology @@ -0,0 +1,43 @@ +Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000001 (topics: [test_topic]) + --> KTABLE-SOURCE-0000000002 + Processor: KTABLE-SOURCE-0000000002 (stores: []) + --> KTABLE-TRANSFORMVALUES-0000000003 + <-- KSTREAM-SOURCE-0000000001 + Processor: KTABLE-TRANSFORMVALUES-0000000003 (stores: [KsqlTopic-Reduce]) + --> KTABLE-TRANSFORMVALUES-0000000004 + <-- KTABLE-SOURCE-0000000002 + Processor: KTABLE-TRANSFORMVALUES-0000000004 (stores: []) + --> Aggregate-Prepare + <-- KTABLE-TRANSFORMVALUES-0000000003 + Processor: Aggregate-Prepare (stores: []) + --> KTABLE-FILTER-0000000006 + <-- KTABLE-TRANSFORMVALUES-0000000004 + Processor: KTABLE-FILTER-0000000006 (stores: []) + --> Aggregate-GroupBy + <-- Aggregate-Prepare + Processor: Aggregate-GroupBy (stores: []) + --> KSTREAM-SINK-0000000008 + <-- KTABLE-FILTER-0000000006 + Sink: KSTREAM-SINK-0000000008 (topic: Aggregate-GroupBy-repartition) + <-- Aggregate-GroupBy + + Sub-topology: 1 + Source: KSTREAM-SOURCE-0000000009 (topics: [Aggregate-GroupBy-repartition]) + --> KTABLE-AGGREGATE-0000000010 + Processor: KTABLE-AGGREGATE-0000000010 (stores: [Aggregate-Aggregate-Materialize]) + --> Aggregate-Aggregate-ToOutputSchema + <-- KSTREAM-SOURCE-0000000009 + Processor: Aggregate-Aggregate-ToOutputSchema (stores: []) + --> Aggregate-Project + <-- KTABLE-AGGREGATE-0000000010 + Processor: Aggregate-Project (stores: []) + --> KTABLE-TOSTREAM-0000000013 + <-- Aggregate-Aggregate-ToOutputSchema + Processor: KTABLE-TOSTREAM-0000000013 (stores: []) + --> KSTREAM-SINK-0000000014 + <-- Aggregate-Project + Sink: KSTREAM-SINK-0000000014 (topic: S2) + <-- KTABLE-TOSTREAM-0000000013 + diff --git a/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_-_JSON/7.1.0_1633125909154/plan.json b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_-_JSON/7.1.0_1633125909154/plan.json new file mode 100644 index 000000000000..8deaf77cb467 --- /dev/null +++ b/ksqldb-functional-tests/src/test/resources/historical_plans/collect-list_-_collect_list_time_map_-_JSON/7.1.0_1633125909154/plan.json @@ -0,0 +1,212 @@ +{ + "plan" : [ { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE STREAM TEST (ID BIGINT KEY, NAME STRING, VALUE MAP) WITH (KAFKA_TOPIC='test_topic', KEY_FORMAT='KAFKA', VALUE_FORMAT='JSON');", + "ddlCommand" : { + "@type" : "createStreamV1", + "sourceName" : "TEST", + "schema" : "`ID` BIGINT KEY, `NAME` STRING, `VALUE` MAP", + "topicName" : "test_topic", + "formats" : { + "keyFormat" : { + "format" : "KAFKA" + }, + "valueFormat" : { + "format" : "JSON" + } + }, + "orReplace" : false, + "isSource" : false + } + }, { + "@type" : "ksqlPlanV1", + "statementText" : "CREATE TABLE S2 AS SELECT\n TEST.ID ID,\n COLLECT_LIST(TEST.VALUE['key1']) COLLECTED\nFROM TEST TEST\nGROUP BY TEST.ID\nEMIT CHANGES", + "ddlCommand" : { + "@type" : "createTableV1", + "sourceName" : "S2", + "schema" : "`ID` BIGINT KEY, `COLLECTED` ARRAY