duckdb 0.8.2-dev2809.0 → 0.8.2-dev2850.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/package.json +1 -1
  2. package/src/duckdb/extension/json/include/json_deserializer.hpp +1 -1
  3. package/src/duckdb/extension/json/include/json_serializer.hpp +1 -1
  4. package/src/duckdb/extension/json/json_deserializer.cpp +16 -14
  5. package/src/duckdb/extension/json/json_scan.cpp +2 -2
  6. package/src/duckdb/extension/json/json_serializer.cpp +11 -11
  7. package/src/duckdb/extension/json/serialize_json.cpp +44 -44
  8. package/src/duckdb/extension/parquet/parquet_extension.cpp +11 -10
  9. package/src/duckdb/extension/parquet/serialize_parquet.cpp +6 -6
  10. package/src/duckdb/src/common/extra_type_info.cpp +2 -2
  11. package/src/duckdb/src/common/serializer/binary_deserializer.cpp +5 -3
  12. package/src/duckdb/src/common/serializer/binary_serializer.cpp +10 -5
  13. package/src/duckdb/src/common/types/column/column_data_collection.cpp +4 -4
  14. package/src/duckdb/src/common/types/value.cpp +33 -33
  15. package/src/duckdb/src/common/types/vector.cpp +20 -20
  16. package/src/duckdb/src/core_functions/aggregate/holistic/approximate_quantile.cpp +2 -2
  17. package/src/duckdb/src/core_functions/aggregate/holistic/quantile.cpp +6 -6
  18. package/src/duckdb/src/core_functions/aggregate/holistic/reservoir_quantile.cpp +4 -4
  19. package/src/duckdb/src/core_functions/scalar/list/list_lambdas.cpp +4 -4
  20. package/src/duckdb/src/function/table/read_csv.cpp +4 -4
  21. package/src/duckdb/src/function/table/table_scan.cpp +14 -14
  22. package/src/duckdb/src/function/table/version/pragma_version.cpp +2 -2
  23. package/src/duckdb/src/include/duckdb/common/index_vector.hpp +2 -2
  24. package/src/duckdb/src/include/duckdb/common/serializer/binary_deserializer.hpp +7 -3
  25. package/src/duckdb/src/include/duckdb/common/serializer/binary_serializer.hpp +2 -1
  26. package/src/duckdb/src/include/duckdb/common/serializer/format_deserializer.hpp +18 -17
  27. package/src/duckdb/src/include/duckdb/common/serializer/format_serializer.hpp +10 -9
  28. package/src/duckdb/src/include/duckdb/common/serializer/serialization_traits.hpp +4 -0
  29. package/src/duckdb/src/include/duckdb/function/function_serialization.hpp +10 -10
  30. package/src/duckdb/src/include/duckdb/main/relation/aggregate_relation.hpp +4 -1
  31. package/src/duckdb/src/include/duckdb/parser/group_by_node.hpp +11 -0
  32. package/src/duckdb/src/include/duckdb/parser/parser.hpp +4 -0
  33. package/src/duckdb/src/main/relation/aggregate_relation.cpp +20 -10
  34. package/src/duckdb/src/main/relation.cpp +4 -4
  35. package/src/duckdb/src/parser/parser.cpp +18 -3
  36. package/src/duckdb/src/parser/tableref/pivotref.cpp +6 -6
  37. package/src/duckdb/src/parser/transform/constraint/transform_constraint.cpp +55 -38
  38. package/src/duckdb/src/planner/expression/bound_aggregate_expression.cpp +10 -10
  39. package/src/duckdb/src/planner/expression/bound_function_expression.cpp +6 -6
  40. package/src/duckdb/src/planner/expression/bound_window_expression.cpp +24 -24
  41. package/src/duckdb/src/planner/operator/logical_extension_operator.cpp +2 -2
  42. package/src/duckdb/src/planner/operator/logical_get.cpp +22 -22
  43. package/src/duckdb/src/storage/serialization/serialize_constraint.cpp +26 -26
  44. package/src/duckdb/src/storage/serialization/serialize_create_info.cpp +66 -66
  45. package/src/duckdb/src/storage/serialization/serialize_expression.cpp +78 -78
  46. package/src/duckdb/src/storage/serialization/serialize_logical_operator.cpp +250 -250
  47. package/src/duckdb/src/storage/serialization/serialize_macro_function.cpp +10 -10
  48. package/src/duckdb/src/storage/serialization/serialize_nodes.cpp +206 -206
  49. package/src/duckdb/src/storage/serialization/serialize_parse_info.cpp +116 -116
  50. package/src/duckdb/src/storage/serialization/serialize_parsed_expression.cpp +110 -110
  51. package/src/duckdb/src/storage/serialization/serialize_query_node.cpp +48 -48
  52. package/src/duckdb/src/storage/serialization/serialize_result_modifier.cpp +16 -16
  53. package/src/duckdb/src/storage/serialization/serialize_statement.cpp +2 -2
  54. package/src/duckdb/src/storage/serialization/serialize_table_filter.cpp +10 -10
  55. package/src/duckdb/src/storage/serialization/serialize_tableref.cpp +54 -54
  56. package/src/duckdb/src/storage/serialization/serialize_types.cpp +22 -22
  57. package/src/duckdb/src/storage/table/update_segment.cpp +1 -1
@@ -13,11 +13,11 @@
13
13
  namespace duckdb {
14
14
 
15
15
  void TableFilter::FormatSerialize(FormatSerializer &serializer) const {
16
- serializer.WriteProperty("filter_type", filter_type);
16
+ serializer.WriteProperty(100, "filter_type", filter_type);
17
17
  }
18
18
 
19
19
  unique_ptr<TableFilter> TableFilter::FormatDeserialize(FormatDeserializer &deserializer) {
20
- auto filter_type = deserializer.ReadProperty<TableFilterType>("filter_type");
20
+ auto filter_type = deserializer.ReadProperty<TableFilterType>(100, "filter_type");
21
21
  unique_ptr<TableFilter> result;
22
22
  switch (filter_type) {
23
23
  case TableFilterType::CONJUNCTION_AND:
@@ -43,35 +43,35 @@ unique_ptr<TableFilter> TableFilter::FormatDeserialize(FormatDeserializer &deser
43
43
 
44
44
  void ConjunctionAndFilter::FormatSerialize(FormatSerializer &serializer) const {
45
45
  TableFilter::FormatSerialize(serializer);
46
- serializer.WriteProperty("child_filters", child_filters);
46
+ serializer.WriteProperty(200, "child_filters", child_filters);
47
47
  }
48
48
 
49
49
  unique_ptr<TableFilter> ConjunctionAndFilter::FormatDeserialize(FormatDeserializer &deserializer) {
50
50
  auto result = duckdb::unique_ptr<ConjunctionAndFilter>(new ConjunctionAndFilter());
51
- deserializer.ReadProperty("child_filters", result->child_filters);
51
+ deserializer.ReadProperty(200, "child_filters", result->child_filters);
52
52
  return std::move(result);
53
53
  }
54
54
 
55
55
  void ConjunctionOrFilter::FormatSerialize(FormatSerializer &serializer) const {
56
56
  TableFilter::FormatSerialize(serializer);
57
- serializer.WriteProperty("child_filters", child_filters);
57
+ serializer.WriteProperty(200, "child_filters", child_filters);
58
58
  }
59
59
 
60
60
  unique_ptr<TableFilter> ConjunctionOrFilter::FormatDeserialize(FormatDeserializer &deserializer) {
61
61
  auto result = duckdb::unique_ptr<ConjunctionOrFilter>(new ConjunctionOrFilter());
62
- deserializer.ReadProperty("child_filters", result->child_filters);
62
+ deserializer.ReadProperty(200, "child_filters", result->child_filters);
63
63
  return std::move(result);
64
64
  }
65
65
 
66
66
  void ConstantFilter::FormatSerialize(FormatSerializer &serializer) const {
67
67
  TableFilter::FormatSerialize(serializer);
68
- serializer.WriteProperty("comparison_type", comparison_type);
69
- serializer.WriteProperty("constant", constant);
68
+ serializer.WriteProperty(200, "comparison_type", comparison_type);
69
+ serializer.WriteProperty(201, "constant", constant);
70
70
  }
71
71
 
72
72
  unique_ptr<TableFilter> ConstantFilter::FormatDeserialize(FormatDeserializer &deserializer) {
73
- auto comparison_type = deserializer.ReadProperty<ExpressionType>("comparison_type");
74
- auto constant = deserializer.ReadProperty<Value>("constant");
73
+ auto comparison_type = deserializer.ReadProperty<ExpressionType>(200, "comparison_type");
74
+ auto constant = deserializer.ReadProperty<Value>(201, "constant");
75
75
  auto result = duckdb::unique_ptr<ConstantFilter>(new ConstantFilter(comparison_type, constant));
76
76
  return std::move(result);
77
77
  }
@@ -10,15 +10,15 @@
10
10
  namespace duckdb {
11
11
 
12
12
  void TableRef::FormatSerialize(FormatSerializer &serializer) const {
13
- serializer.WriteProperty("type", type);
14
- serializer.WriteProperty("alias", alias);
15
- serializer.WriteOptionalProperty("sample", sample);
13
+ serializer.WriteProperty(100, "type", type);
14
+ serializer.WriteProperty(101, "alias", alias);
15
+ serializer.WriteOptionalProperty(102, "sample", sample);
16
16
  }
17
17
 
18
18
  unique_ptr<TableRef> TableRef::FormatDeserialize(FormatDeserializer &deserializer) {
19
- auto type = deserializer.ReadProperty<TableReferenceType>("type");
20
- auto alias = deserializer.ReadProperty<string>("alias");
21
- auto sample = deserializer.ReadOptionalProperty<unique_ptr<SampleOptions>>("sample");
19
+ auto type = deserializer.ReadProperty<TableReferenceType>(100, "type");
20
+ auto alias = deserializer.ReadProperty<string>(101, "alias");
21
+ auto sample = deserializer.ReadOptionalProperty<unique_ptr<SampleOptions>>(102, "sample");
22
22
  unique_ptr<TableRef> result;
23
23
  switch (type) {
24
24
  case TableReferenceType::BASE_TABLE:
@@ -52,18 +52,18 @@ unique_ptr<TableRef> TableRef::FormatDeserialize(FormatDeserializer &deserialize
52
52
 
53
53
  void BaseTableRef::FormatSerialize(FormatSerializer &serializer) const {
54
54
  TableRef::FormatSerialize(serializer);
55
- serializer.WriteProperty("schema_name", schema_name);
56
- serializer.WriteProperty("table_name", table_name);
57
- serializer.WriteProperty("column_name_alias", column_name_alias);
58
- serializer.WriteProperty("catalog_name", catalog_name);
55
+ serializer.WriteProperty(200, "schema_name", schema_name);
56
+ serializer.WriteProperty(201, "table_name", table_name);
57
+ serializer.WriteProperty(202, "column_name_alias", column_name_alias);
58
+ serializer.WriteProperty(203, "catalog_name", catalog_name);
59
59
  }
60
60
 
61
61
  unique_ptr<TableRef> BaseTableRef::FormatDeserialize(FormatDeserializer &deserializer) {
62
62
  auto result = duckdb::unique_ptr<BaseTableRef>(new BaseTableRef());
63
- deserializer.ReadProperty("schema_name", result->schema_name);
64
- deserializer.ReadProperty("table_name", result->table_name);
65
- deserializer.ReadProperty("column_name_alias", result->column_name_alias);
66
- deserializer.ReadProperty("catalog_name", result->catalog_name);
63
+ deserializer.ReadProperty(200, "schema_name", result->schema_name);
64
+ deserializer.ReadProperty(201, "table_name", result->table_name);
65
+ deserializer.ReadProperty(202, "column_name_alias", result->column_name_alias);
66
+ deserializer.ReadProperty(203, "catalog_name", result->catalog_name);
67
67
  return std::move(result);
68
68
  }
69
69
 
@@ -78,86 +78,86 @@ unique_ptr<TableRef> EmptyTableRef::FormatDeserialize(FormatDeserializer &deseri
78
78
 
79
79
  void ExpressionListRef::FormatSerialize(FormatSerializer &serializer) const {
80
80
  TableRef::FormatSerialize(serializer);
81
- serializer.WriteProperty("expected_names", expected_names);
82
- serializer.WriteProperty("expected_types", expected_types);
83
- serializer.WriteProperty("values", values);
81
+ serializer.WriteProperty(200, "expected_names", expected_names);
82
+ serializer.WriteProperty(201, "expected_types", expected_types);
83
+ serializer.WriteProperty(202, "values", values);
84
84
  }
85
85
 
86
86
  unique_ptr<TableRef> ExpressionListRef::FormatDeserialize(FormatDeserializer &deserializer) {
87
87
  auto result = duckdb::unique_ptr<ExpressionListRef>(new ExpressionListRef());
88
- deserializer.ReadProperty("expected_names", result->expected_names);
89
- deserializer.ReadProperty("expected_types", result->expected_types);
90
- deserializer.ReadProperty("values", result->values);
88
+ deserializer.ReadProperty(200, "expected_names", result->expected_names);
89
+ deserializer.ReadProperty(201, "expected_types", result->expected_types);
90
+ deserializer.ReadProperty(202, "values", result->values);
91
91
  return std::move(result);
92
92
  }
93
93
 
94
94
  void JoinRef::FormatSerialize(FormatSerializer &serializer) const {
95
95
  TableRef::FormatSerialize(serializer);
96
- serializer.WriteProperty("left", *left);
97
- serializer.WriteProperty("right", *right);
98
- serializer.WriteOptionalProperty("condition", condition);
99
- serializer.WriteProperty("join_type", type);
100
- serializer.WriteProperty("ref_type", ref_type);
101
- serializer.WriteProperty("using_columns", using_columns);
96
+ serializer.WriteProperty(200, "left", *left);
97
+ serializer.WriteProperty(201, "right", *right);
98
+ serializer.WriteOptionalProperty(202, "condition", condition);
99
+ serializer.WriteProperty(203, "join_type", type);
100
+ serializer.WriteProperty(204, "ref_type", ref_type);
101
+ serializer.WriteProperty(205, "using_columns", using_columns);
102
102
  }
103
103
 
104
104
  unique_ptr<TableRef> JoinRef::FormatDeserialize(FormatDeserializer &deserializer) {
105
105
  auto result = duckdb::unique_ptr<JoinRef>(new JoinRef());
106
- deserializer.ReadProperty("left", result->left);
107
- deserializer.ReadProperty("right", result->right);
108
- deserializer.ReadOptionalProperty("condition", result->condition);
109
- deserializer.ReadProperty("join_type", result->type);
110
- deserializer.ReadProperty("ref_type", result->ref_type);
111
- deserializer.ReadProperty("using_columns", result->using_columns);
106
+ deserializer.ReadProperty(200, "left", result->left);
107
+ deserializer.ReadProperty(201, "right", result->right);
108
+ deserializer.ReadOptionalProperty(202, "condition", result->condition);
109
+ deserializer.ReadProperty(203, "join_type", result->type);
110
+ deserializer.ReadProperty(204, "ref_type", result->ref_type);
111
+ deserializer.ReadProperty(205, "using_columns", result->using_columns);
112
112
  return std::move(result);
113
113
  }
114
114
 
115
115
  void PivotRef::FormatSerialize(FormatSerializer &serializer) const {
116
116
  TableRef::FormatSerialize(serializer);
117
- serializer.WriteProperty("source", *source);
118
- serializer.WriteProperty("aggregates", aggregates);
119
- serializer.WriteProperty("unpivot_names", unpivot_names);
120
- serializer.WriteProperty("pivots", pivots);
121
- serializer.WriteProperty("groups", groups);
122
- serializer.WriteProperty("column_name_alias", column_name_alias);
123
- serializer.WriteProperty("include_nulls", include_nulls);
117
+ serializer.WriteProperty(200, "source", *source);
118
+ serializer.WriteProperty(201, "aggregates", aggregates);
119
+ serializer.WriteProperty(202, "unpivot_names", unpivot_names);
120
+ serializer.WriteProperty(203, "pivots", pivots);
121
+ serializer.WriteProperty(204, "groups", groups);
122
+ serializer.WriteProperty(205, "column_name_alias", column_name_alias);
123
+ serializer.WriteProperty(206, "include_nulls", include_nulls);
124
124
  }
125
125
 
126
126
  unique_ptr<TableRef> PivotRef::FormatDeserialize(FormatDeserializer &deserializer) {
127
127
  auto result = duckdb::unique_ptr<PivotRef>(new PivotRef());
128
- deserializer.ReadProperty("source", result->source);
129
- deserializer.ReadProperty("aggregates", result->aggregates);
130
- deserializer.ReadProperty("unpivot_names", result->unpivot_names);
131
- deserializer.ReadProperty("pivots", result->pivots);
132
- deserializer.ReadProperty("groups", result->groups);
133
- deserializer.ReadProperty("column_name_alias", result->column_name_alias);
134
- deserializer.ReadProperty("include_nulls", result->include_nulls);
128
+ deserializer.ReadProperty(200, "source", result->source);
129
+ deserializer.ReadProperty(201, "aggregates", result->aggregates);
130
+ deserializer.ReadProperty(202, "unpivot_names", result->unpivot_names);
131
+ deserializer.ReadProperty(203, "pivots", result->pivots);
132
+ deserializer.ReadProperty(204, "groups", result->groups);
133
+ deserializer.ReadProperty(205, "column_name_alias", result->column_name_alias);
134
+ deserializer.ReadProperty(206, "include_nulls", result->include_nulls);
135
135
  return std::move(result);
136
136
  }
137
137
 
138
138
  void SubqueryRef::FormatSerialize(FormatSerializer &serializer) const {
139
139
  TableRef::FormatSerialize(serializer);
140
- serializer.WriteProperty("subquery", *subquery);
141
- serializer.WriteProperty("column_name_alias", column_name_alias);
140
+ serializer.WriteProperty(200, "subquery", *subquery);
141
+ serializer.WriteProperty(201, "column_name_alias", column_name_alias);
142
142
  }
143
143
 
144
144
  unique_ptr<TableRef> SubqueryRef::FormatDeserialize(FormatDeserializer &deserializer) {
145
145
  auto result = duckdb::unique_ptr<SubqueryRef>(new SubqueryRef());
146
- deserializer.ReadProperty("subquery", result->subquery);
147
- deserializer.ReadProperty("column_name_alias", result->column_name_alias);
146
+ deserializer.ReadProperty(200, "subquery", result->subquery);
147
+ deserializer.ReadProperty(201, "column_name_alias", result->column_name_alias);
148
148
  return std::move(result);
149
149
  }
150
150
 
151
151
  void TableFunctionRef::FormatSerialize(FormatSerializer &serializer) const {
152
152
  TableRef::FormatSerialize(serializer);
153
- serializer.WriteProperty("function", *function);
154
- serializer.WriteProperty("column_name_alias", column_name_alias);
153
+ serializer.WriteProperty(200, "function", *function);
154
+ serializer.WriteProperty(201, "column_name_alias", column_name_alias);
155
155
  }
156
156
 
157
157
  unique_ptr<TableRef> TableFunctionRef::FormatDeserialize(FormatDeserializer &deserializer) {
158
158
  auto result = duckdb::unique_ptr<TableFunctionRef>(new TableFunctionRef());
159
- deserializer.ReadProperty("function", result->function);
160
- deserializer.ReadProperty("column_name_alias", result->column_name_alias);
159
+ deserializer.ReadProperty(200, "function", result->function);
160
+ deserializer.ReadProperty(201, "column_name_alias", result->column_name_alias);
161
161
  return std::move(result);
162
162
  }
163
163
 
@@ -10,13 +10,13 @@
10
10
  namespace duckdb {
11
11
 
12
12
  void ExtraTypeInfo::FormatSerialize(FormatSerializer &serializer) const {
13
- serializer.WriteProperty("type", type);
14
- serializer.WriteProperty("alias", alias);
13
+ serializer.WriteProperty(100, "type", type);
14
+ serializer.WriteProperty(101, "alias", alias);
15
15
  }
16
16
 
17
17
  shared_ptr<ExtraTypeInfo> ExtraTypeInfo::FormatDeserialize(FormatDeserializer &deserializer) {
18
- auto type = deserializer.ReadProperty<ExtraTypeInfoType>("type");
19
- auto alias = deserializer.ReadProperty<string>("alias");
18
+ auto type = deserializer.ReadProperty<ExtraTypeInfoType>(100, "type");
19
+ auto alias = deserializer.ReadProperty<string>(101, "alias");
20
20
  shared_ptr<ExtraTypeInfo> result;
21
21
  switch (type) {
22
22
  case ExtraTypeInfoType::AGGREGATE_STATE_TYPE_INFO:
@@ -54,73 +54,73 @@ shared_ptr<ExtraTypeInfo> ExtraTypeInfo::FormatDeserialize(FormatDeserializer &d
54
54
 
55
55
  void AggregateStateTypeInfo::FormatSerialize(FormatSerializer &serializer) const {
56
56
  ExtraTypeInfo::FormatSerialize(serializer);
57
- serializer.WriteProperty("function_name", state_type.function_name);
58
- serializer.WriteProperty("return_type", state_type.return_type);
59
- serializer.WriteProperty("bound_argument_types", state_type.bound_argument_types);
57
+ serializer.WriteProperty(200, "function_name", state_type.function_name);
58
+ serializer.WriteProperty(201, "return_type", state_type.return_type);
59
+ serializer.WriteProperty(202, "bound_argument_types", state_type.bound_argument_types);
60
60
  }
61
61
 
62
62
  shared_ptr<ExtraTypeInfo> AggregateStateTypeInfo::FormatDeserialize(FormatDeserializer &deserializer) {
63
63
  auto result = duckdb::shared_ptr<AggregateStateTypeInfo>(new AggregateStateTypeInfo());
64
- deserializer.ReadProperty("function_name", result->state_type.function_name);
65
- deserializer.ReadProperty("return_type", result->state_type.return_type);
66
- deserializer.ReadProperty("bound_argument_types", result->state_type.bound_argument_types);
64
+ deserializer.ReadProperty(200, "function_name", result->state_type.function_name);
65
+ deserializer.ReadProperty(201, "return_type", result->state_type.return_type);
66
+ deserializer.ReadProperty(202, "bound_argument_types", result->state_type.bound_argument_types);
67
67
  return std::move(result);
68
68
  }
69
69
 
70
70
  void DecimalTypeInfo::FormatSerialize(FormatSerializer &serializer) const {
71
71
  ExtraTypeInfo::FormatSerialize(serializer);
72
- serializer.WriteProperty("width", width);
73
- serializer.WriteProperty("scale", scale);
72
+ serializer.WriteProperty(200, "width", width);
73
+ serializer.WriteProperty(201, "scale", scale);
74
74
  }
75
75
 
76
76
  shared_ptr<ExtraTypeInfo> DecimalTypeInfo::FormatDeserialize(FormatDeserializer &deserializer) {
77
77
  auto result = duckdb::shared_ptr<DecimalTypeInfo>(new DecimalTypeInfo());
78
- deserializer.ReadProperty("width", result->width);
79
- deserializer.ReadProperty("scale", result->scale);
78
+ deserializer.ReadProperty(200, "width", result->width);
79
+ deserializer.ReadProperty(201, "scale", result->scale);
80
80
  return std::move(result);
81
81
  }
82
82
 
83
83
  void ListTypeInfo::FormatSerialize(FormatSerializer &serializer) const {
84
84
  ExtraTypeInfo::FormatSerialize(serializer);
85
- serializer.WriteProperty("child_type", child_type);
85
+ serializer.WriteProperty(200, "child_type", child_type);
86
86
  }
87
87
 
88
88
  shared_ptr<ExtraTypeInfo> ListTypeInfo::FormatDeserialize(FormatDeserializer &deserializer) {
89
89
  auto result = duckdb::shared_ptr<ListTypeInfo>(new ListTypeInfo());
90
- deserializer.ReadProperty("child_type", result->child_type);
90
+ deserializer.ReadProperty(200, "child_type", result->child_type);
91
91
  return std::move(result);
92
92
  }
93
93
 
94
94
  void StringTypeInfo::FormatSerialize(FormatSerializer &serializer) const {
95
95
  ExtraTypeInfo::FormatSerialize(serializer);
96
- serializer.WriteProperty("collation", collation);
96
+ serializer.WriteProperty(200, "collation", collation);
97
97
  }
98
98
 
99
99
  shared_ptr<ExtraTypeInfo> StringTypeInfo::FormatDeserialize(FormatDeserializer &deserializer) {
100
100
  auto result = duckdb::shared_ptr<StringTypeInfo>(new StringTypeInfo());
101
- deserializer.ReadProperty("collation", result->collation);
101
+ deserializer.ReadProperty(200, "collation", result->collation);
102
102
  return std::move(result);
103
103
  }
104
104
 
105
105
  void StructTypeInfo::FormatSerialize(FormatSerializer &serializer) const {
106
106
  ExtraTypeInfo::FormatSerialize(serializer);
107
- serializer.WriteProperty("child_types", child_types);
107
+ serializer.WriteProperty(200, "child_types", child_types);
108
108
  }
109
109
 
110
110
  shared_ptr<ExtraTypeInfo> StructTypeInfo::FormatDeserialize(FormatDeserializer &deserializer) {
111
111
  auto result = duckdb::shared_ptr<StructTypeInfo>(new StructTypeInfo());
112
- deserializer.ReadProperty("child_types", result->child_types);
112
+ deserializer.ReadProperty(200, "child_types", result->child_types);
113
113
  return std::move(result);
114
114
  }
115
115
 
116
116
  void UserTypeInfo::FormatSerialize(FormatSerializer &serializer) const {
117
117
  ExtraTypeInfo::FormatSerialize(serializer);
118
- serializer.WriteProperty("user_type_name", user_type_name);
118
+ serializer.WriteProperty(200, "user_type_name", user_type_name);
119
119
  }
120
120
 
121
121
  shared_ptr<ExtraTypeInfo> UserTypeInfo::FormatDeserialize(FormatDeserializer &deserializer) {
122
122
  auto result = duckdb::shared_ptr<UserTypeInfo>(new UserTypeInfo());
123
- deserializer.ReadProperty("user_type_name", result->user_type_name);
123
+ deserializer.ReadProperty(200, "user_type_name", result->user_type_name);
124
124
  return std::move(result);
125
125
  }
126
126
 
@@ -427,7 +427,7 @@ void UpdateSegment::FetchRow(TransactionData transaction, idx_t row_id, Vector &
427
427
  if (!root->info[vector_index]) {
428
428
  return;
429
429
  }
430
- idx_t row_in_vector = row_id - vector_index * STANDARD_VECTOR_SIZE;
430
+ idx_t row_in_vector = (row_id - column_data.start) - vector_index * STANDARD_VECTOR_SIZE;
431
431
  fetch_row_function(transaction.start_time, transaction.transaction_id, root->info[vector_index]->info.get(),
432
432
  row_in_vector, result, result_idx);
433
433
  }