duckdb 0.8.2-dev4126.0 → 0.8.2-dev4203.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 (497) hide show
  1. package/binding.gyp +0 -2
  2. package/lib/duckdb.js +3 -3
  3. package/package.json +1 -1
  4. package/src/connection.cpp +9 -8
  5. package/src/database.cpp +5 -8
  6. package/src/duckdb/extension/icu/icu-datepart.cpp +2 -2
  7. package/src/duckdb/extension/icu/icu-strptime.cpp +0 -9
  8. package/src/duckdb/extension/icu/icu_extension.cpp +3 -3
  9. package/src/duckdb/extension/icu/third_party/icu/i18n/unicode/gregocal.h +1 -1
  10. package/src/duckdb/extension/json/buffered_json_reader.cpp +3 -17
  11. package/src/duckdb/extension/json/include/buffered_json_reader.hpp +2 -5
  12. package/src/duckdb/extension/json/include/json_deserializer.hpp +2 -2
  13. package/src/duckdb/extension/json/include/json_scan.hpp +5 -12
  14. package/src/duckdb/extension/json/include/json_serializer.hpp +3 -3
  15. package/src/duckdb/extension/json/include/json_transform.hpp +2 -5
  16. package/src/duckdb/extension/json/json_functions/json_serialize_sql.cpp +1 -1
  17. package/src/duckdb/extension/json/json_functions/json_transform.cpp +2 -18
  18. package/src/duckdb/extension/json/json_scan.cpp +7 -76
  19. package/src/duckdb/extension/json/serialize_json.cpp +8 -8
  20. package/src/duckdb/extension/parquet/column_writer.cpp +46 -45
  21. package/src/duckdb/extension/parquet/include/column_writer.hpp +2 -2
  22. package/src/duckdb/extension/parquet/include/parquet_reader.hpp +2 -5
  23. package/src/duckdb/extension/parquet/include/parquet_rle_bp_encoder.hpp +4 -4
  24. package/src/duckdb/extension/parquet/parquet_extension.cpp +74 -55
  25. package/src/duckdb/extension/parquet/parquet_writer.cpp +3 -2
  26. package/src/duckdb/extension/parquet/serialize_parquet.cpp +4 -4
  27. package/src/duckdb/src/catalog/catalog.cpp +20 -0
  28. package/src/duckdb/src/catalog/catalog_entry/index_catalog_entry.cpp +0 -1
  29. package/src/duckdb/src/catalog/catalog_entry/macro_catalog_entry.cpp +0 -1
  30. package/src/duckdb/src/catalog/catalog_entry/schema_catalog_entry.cpp +0 -1
  31. package/src/duckdb/src/catalog/catalog_entry/sequence_catalog_entry.cpp +0 -1
  32. package/src/duckdb/src/catalog/catalog_entry/table_catalog_entry.cpp +0 -2
  33. package/src/duckdb/src/catalog/catalog_entry/type_catalog_entry.cpp +1 -3
  34. package/src/duckdb/src/catalog/catalog_entry/view_catalog_entry.cpp +0 -1
  35. package/src/duckdb/src/catalog/catalog_entry.cpp +2 -11
  36. package/src/duckdb/src/catalog/catalog_set.cpp +16 -14
  37. package/src/duckdb/src/catalog/default/default_functions.cpp +2 -2
  38. package/src/duckdb/src/common/arrow/arrow_converter.cpp +3 -1
  39. package/src/duckdb/src/common/constants.cpp +0 -1
  40. package/src/duckdb/src/common/enum_util.cpp +0 -10
  41. package/src/duckdb/src/common/exception.cpp +1 -1
  42. package/src/duckdb/src/common/extra_type_info.cpp +20 -192
  43. package/src/duckdb/src/common/multi_file_reader.cpp +0 -68
  44. package/src/duckdb/src/common/serializer/binary_serializer.cpp +9 -4
  45. package/src/duckdb/src/common/serializer/buffered_file_reader.cpp +3 -11
  46. package/src/duckdb/src/common/serializer/buffered_file_writer.cpp +1 -1
  47. package/src/duckdb/src/common/serializer/memory_stream.cpp +61 -0
  48. package/src/duckdb/src/common/serializer/{format_serializer.cpp → serializer.cpp} +2 -2
  49. package/src/duckdb/src/common/types/column/column_data_collection.cpp +4 -4
  50. package/src/duckdb/src/common/types/data_chunk.cpp +11 -43
  51. package/src/duckdb/src/common/types/hyperloglog.cpp +4 -23
  52. package/src/duckdb/src/common/types/interval.cpp +2 -2
  53. package/src/duckdb/src/common/types/value.cpp +10 -135
  54. package/src/duckdb/src/common/types/vector.cpp +17 -149
  55. package/src/duckdb/src/common/types.cpp +2 -20
  56. package/src/duckdb/src/core_functions/aggregate/algebraic/avg.cpp +0 -1
  57. package/src/duckdb/src/core_functions/aggregate/distributive/string_agg.cpp +6 -7
  58. package/src/duckdb/src/core_functions/aggregate/holistic/approximate_quantile.cpp +5 -28
  59. package/src/duckdb/src/core_functions/aggregate/holistic/quantile.cpp +30 -78
  60. package/src/duckdb/src/core_functions/aggregate/holistic/reservoir_quantile.cpp +5 -30
  61. package/src/duckdb/src/core_functions/scalar/date/date_part.cpp +6 -9
  62. package/src/duckdb/src/core_functions/scalar/list/list_aggregates.cpp +21 -16
  63. package/src/duckdb/src/core_functions/scalar/list/list_lambdas.cpp +15 -23
  64. package/src/duckdb/src/function/macro_function.cpp +0 -42
  65. package/src/duckdb/src/function/scalar/compressed_materialization/compress_integral.cpp +10 -8
  66. package/src/duckdb/src/function/scalar/compressed_materialization/compress_string.cpp +13 -12
  67. package/src/duckdb/src/function/scalar/operators/arithmetic.cpp +9 -11
  68. package/src/duckdb/src/function/scalar/system/aggregate_export.cpp +7 -33
  69. package/src/duckdb/src/function/scalar_function.cpp +1 -2
  70. package/src/duckdb/src/function/scalar_macro_function.cpp +0 -10
  71. package/src/duckdb/src/function/table/copy_csv.cpp +38 -38
  72. package/src/duckdb/src/function/table/read_csv.cpp +5 -174
  73. package/src/duckdb/src/function/table/table_scan.cpp +5 -42
  74. package/src/duckdb/src/function/table/version/pragma_version.cpp +2 -2
  75. package/src/duckdb/src/function/table_function.cpp +3 -4
  76. package/src/duckdb/src/function/table_macro_function.cpp +0 -10
  77. package/src/duckdb/src/include/duckdb/catalog/catalog.hpp +1 -0
  78. package/src/duckdb/src/include/duckdb/catalog/catalog_entry/schema_catalog_entry.hpp +0 -2
  79. package/src/duckdb/src/include/duckdb/catalog/catalog_entry/sequence_catalog_entry.hpp +0 -2
  80. package/src/duckdb/src/include/duckdb/catalog/catalog_entry/type_catalog_entry.hpp +0 -2
  81. package/src/duckdb/src/include/duckdb/catalog/catalog_entry.hpp +3 -8
  82. package/src/duckdb/src/include/duckdb/common/constants.hpp +4 -2
  83. package/src/duckdb/src/include/duckdb/common/extra_type_info.hpp +16 -46
  84. package/src/duckdb/src/include/duckdb/common/index_vector.hpp +4 -4
  85. package/src/duckdb/src/include/duckdb/common/multi_file_reader.hpp +2 -6
  86. package/src/duckdb/src/include/duckdb/common/multi_file_reader_options.hpp +0 -4
  87. package/src/duckdb/src/include/duckdb/common/serializer/binary_deserializer.hpp +44 -23
  88. package/src/duckdb/src/include/duckdb/common/serializer/binary_serializer.hpp +31 -23
  89. package/src/duckdb/src/include/duckdb/common/serializer/buffered_file_reader.hpp +4 -6
  90. package/src/duckdb/src/include/duckdb/common/serializer/buffered_file_writer.hpp +3 -3
  91. package/src/duckdb/src/include/duckdb/common/serializer/deserialization_data.hpp +17 -0
  92. package/src/duckdb/src/include/duckdb/common/serializer/{format_deserializer.hpp → deserializer.hpp} +13 -13
  93. package/src/duckdb/src/include/duckdb/common/serializer/memory_stream.hpp +62 -0
  94. package/src/duckdb/src/include/duckdb/common/serializer/read_stream.hpp +38 -0
  95. package/src/duckdb/src/include/duckdb/common/serializer/serialization_traits.hpp +15 -13
  96. package/src/duckdb/src/include/duckdb/common/serializer/{format_serializer.hpp → serializer.hpp} +13 -12
  97. package/src/duckdb/src/include/duckdb/common/serializer/write_stream.hpp +36 -0
  98. package/src/duckdb/src/include/duckdb/common/types/column/column_data_collection.hpp +2 -2
  99. package/src/duckdb/src/include/duckdb/common/types/data_chunk.hpp +3 -8
  100. package/src/duckdb/src/include/duckdb/common/types/hyperloglog.hpp +4 -10
  101. package/src/duckdb/src/include/duckdb/common/types/interval.hpp +4 -4
  102. package/src/duckdb/src/include/duckdb/common/types/value.hpp +1 -5
  103. package/src/duckdb/src/include/duckdb/common/types/vector.hpp +2 -7
  104. package/src/duckdb/src/include/duckdb/common/types.hpp +1 -10
  105. package/src/duckdb/src/include/duckdb/execution/operator/scan/csv/csv_reader_options.hpp +2 -11
  106. package/src/duckdb/src/include/duckdb/function/aggregate_function.hpp +4 -14
  107. package/src/duckdb/src/include/duckdb/function/copy_function.hpp +3 -3
  108. package/src/duckdb/src/include/duckdb/function/function_serialization.hpp +15 -98
  109. package/src/duckdb/src/include/duckdb/function/macro_function.hpp +1 -7
  110. package/src/duckdb/src/include/duckdb/function/scalar/nested_functions.hpp +9 -10
  111. package/src/duckdb/src/include/duckdb/function/scalar/strftime_format.hpp +2 -2
  112. package/src/duckdb/src/include/duckdb/function/scalar_function.hpp +2 -12
  113. package/src/duckdb/src/include/duckdb/function/scalar_macro_function.hpp +2 -7
  114. package/src/duckdb/src/include/duckdb/function/table/read_csv.hpp +4 -16
  115. package/src/duckdb/src/include/duckdb/function/table_function.hpp +2 -11
  116. package/src/duckdb/src/include/duckdb/function/table_macro_function.hpp +2 -7
  117. package/src/duckdb/src/include/duckdb/main/extension_entries.hpp +1 -0
  118. package/src/duckdb/src/include/duckdb/main/extension_helper.hpp +1 -0
  119. package/src/duckdb/src/include/duckdb/parser/column_definition.hpp +1 -4
  120. package/src/duckdb/src/include/duckdb/parser/column_list.hpp +2 -6
  121. package/src/duckdb/src/include/duckdb/parser/common_table_expression_info.hpp +2 -2
  122. package/src/duckdb/src/include/duckdb/parser/constraint.hpp +2 -12
  123. package/src/duckdb/src/include/duckdb/parser/constraints/check_constraint.hpp +2 -5
  124. package/src/duckdb/src/include/duckdb/parser/constraints/foreign_key_constraint.hpp +2 -7
  125. package/src/duckdb/src/include/duckdb/parser/constraints/not_null_constraint.hpp +2 -7
  126. package/src/duckdb/src/include/duckdb/parser/constraints/unique_constraint.hpp +2 -7
  127. package/src/duckdb/src/include/duckdb/parser/expression/between_expression.hpp +2 -5
  128. package/src/duckdb/src/include/duckdb/parser/expression/bound_expression.hpp +1 -4
  129. package/src/duckdb/src/include/duckdb/parser/expression/case_expression.hpp +4 -6
  130. package/src/duckdb/src/include/duckdb/parser/expression/cast_expression.hpp +2 -4
  131. package/src/duckdb/src/include/duckdb/parser/expression/collate_expression.hpp +2 -4
  132. package/src/duckdb/src/include/duckdb/parser/expression/columnref_expression.hpp +2 -4
  133. package/src/duckdb/src/include/duckdb/parser/expression/comparison_expression.hpp +2 -4
  134. package/src/duckdb/src/include/duckdb/parser/expression/conjunction_expression.hpp +2 -4
  135. package/src/duckdb/src/include/duckdb/parser/expression/constant_expression.hpp +2 -5
  136. package/src/duckdb/src/include/duckdb/parser/expression/default_expression.hpp +2 -4
  137. package/src/duckdb/src/include/duckdb/parser/expression/function_expression.hpp +2 -4
  138. package/src/duckdb/src/include/duckdb/parser/expression/lambda_expression.hpp +2 -4
  139. package/src/duckdb/src/include/duckdb/parser/expression/operator_expression.hpp +2 -4
  140. package/src/duckdb/src/include/duckdb/parser/expression/parameter_expression.hpp +2 -4
  141. package/src/duckdb/src/include/duckdb/parser/expression/positional_reference_expression.hpp +2 -4
  142. package/src/duckdb/src/include/duckdb/parser/expression/star_expression.hpp +2 -4
  143. package/src/duckdb/src/include/duckdb/parser/expression/subquery_expression.hpp +2 -4
  144. package/src/duckdb/src/include/duckdb/parser/expression/window_expression.hpp +2 -4
  145. package/src/duckdb/src/include/duckdb/parser/parsed_data/alter_info.hpp +2 -5
  146. package/src/duckdb/src/include/duckdb/parser/parsed_data/alter_scalar_function_info.hpp +0 -2
  147. package/src/duckdb/src/include/duckdb/parser/parsed_data/alter_table_function_info.hpp +0 -2
  148. package/src/duckdb/src/include/duckdb/parser/parsed_data/alter_table_info.hpp +24 -51
  149. package/src/duckdb/src/include/duckdb/parser/parsed_data/attach_info.hpp +1 -4
  150. package/src/duckdb/src/include/duckdb/parser/parsed_data/copy_info.hpp +2 -2
  151. package/src/duckdb/src/include/duckdb/parser/parsed_data/create_collation_info.hpp +0 -3
  152. package/src/duckdb/src/include/duckdb/parser/parsed_data/create_copy_function_info.hpp +0 -3
  153. package/src/duckdb/src/include/duckdb/parser/parsed_data/create_function_info.hpp +0 -5
  154. package/src/duckdb/src/include/duckdb/parser/parsed_data/create_index_info.hpp +2 -7
  155. package/src/duckdb/src/include/duckdb/parser/parsed_data/create_info.hpp +1 -13
  156. package/src/duckdb/src/include/duckdb/parser/parsed_data/create_macro_info.hpp +2 -8
  157. package/src/duckdb/src/include/duckdb/parser/parsed_data/create_schema_info.hpp +2 -12
  158. package/src/duckdb/src/include/duckdb/parser/parsed_data/create_sequence_info.hpp +2 -7
  159. package/src/duckdb/src/include/duckdb/parser/parsed_data/create_table_info.hpp +2 -7
  160. package/src/duckdb/src/include/duckdb/parser/parsed_data/create_type_info.hpp +2 -7
  161. package/src/duckdb/src/include/duckdb/parser/parsed_data/create_view_info.hpp +2 -7
  162. package/src/duckdb/src/include/duckdb/parser/parsed_data/detach_info.hpp +2 -4
  163. package/src/duckdb/src/include/duckdb/parser/parsed_data/drop_info.hpp +2 -5
  164. package/src/duckdb/src/include/duckdb/parser/parsed_data/load_info.hpp +2 -21
  165. package/src/duckdb/src/include/duckdb/parser/parsed_data/parse_info.hpp +2 -2
  166. package/src/duckdb/src/include/duckdb/parser/parsed_data/pragma_info.hpp +2 -2
  167. package/src/duckdb/src/include/duckdb/parser/parsed_data/sample_options.hpp +2 -4
  168. package/src/duckdb/src/include/duckdb/parser/parsed_data/transaction_info.hpp +1 -4
  169. package/src/duckdb/src/include/duckdb/parser/parsed_data/vacuum_info.hpp +5 -7
  170. package/src/duckdb/src/include/duckdb/parser/parsed_expression.hpp +3 -16
  171. package/src/duckdb/src/include/duckdb/parser/query_node/cte_node.hpp +2 -4
  172. package/src/duckdb/src/include/duckdb/parser/query_node/recursive_cte_node.hpp +2 -4
  173. package/src/duckdb/src/include/duckdb/parser/query_node/select_node.hpp +2 -4
  174. package/src/duckdb/src/include/duckdb/parser/query_node/set_operation_node.hpp +2 -4
  175. package/src/duckdb/src/include/duckdb/parser/query_node.hpp +7 -14
  176. package/src/duckdb/src/include/duckdb/parser/result_modifier.hpp +14 -32
  177. package/src/duckdb/src/include/duckdb/parser/statement/select_statement.hpp +4 -9
  178. package/src/duckdb/src/include/duckdb/parser/tableref/basetableref.hpp +2 -6
  179. package/src/duckdb/src/include/duckdb/parser/tableref/emptytableref.hpp +2 -6
  180. package/src/duckdb/src/include/duckdb/parser/tableref/expressionlistref.hpp +2 -6
  181. package/src/duckdb/src/include/duckdb/parser/tableref/joinref.hpp +2 -6
  182. package/src/duckdb/src/include/duckdb/parser/tableref/pivotref.hpp +6 -14
  183. package/src/duckdb/src/include/duckdb/parser/tableref/subqueryref.hpp +2 -6
  184. package/src/duckdb/src/include/duckdb/parser/tableref/table_function_ref.hpp +2 -6
  185. package/src/duckdb/src/include/duckdb/parser/tableref.hpp +2 -10
  186. package/src/duckdb/src/include/duckdb/parser/transformer.hpp +1 -0
  187. package/src/duckdb/src/include/duckdb/planner/bound_constraint.hpp +0 -1
  188. package/src/duckdb/src/include/duckdb/planner/bound_result_modifier.hpp +2 -8
  189. package/src/duckdb/src/include/duckdb/planner/column_binding.hpp +4 -4
  190. package/src/duckdb/src/include/duckdb/planner/expression/bound_aggregate_expression.hpp +2 -4
  191. package/src/duckdb/src/include/duckdb/planner/expression/bound_between_expression.hpp +2 -4
  192. package/src/duckdb/src/include/duckdb/planner/expression/bound_case_expression.hpp +3 -9
  193. package/src/duckdb/src/include/duckdb/planner/expression/bound_cast_expression.hpp +2 -5
  194. package/src/duckdb/src/include/duckdb/planner/expression/bound_columnref_expression.hpp +2 -8
  195. package/src/duckdb/src/include/duckdb/planner/expression/bound_comparison_expression.hpp +2 -4
  196. package/src/duckdb/src/include/duckdb/planner/expression/bound_conjunction_expression.hpp +2 -5
  197. package/src/duckdb/src/include/duckdb/planner/expression/bound_constant_expression.hpp +2 -5
  198. package/src/duckdb/src/include/duckdb/planner/expression/bound_default_expression.hpp +2 -5
  199. package/src/duckdb/src/include/duckdb/planner/expression/bound_function_expression.hpp +2 -5
  200. package/src/duckdb/src/include/duckdb/planner/expression/bound_lambda_expression.hpp +2 -4
  201. package/src/duckdb/src/include/duckdb/planner/expression/bound_lambdaref_expression.hpp +2 -8
  202. package/src/duckdb/src/include/duckdb/planner/expression/bound_operator_expression.hpp +2 -5
  203. package/src/duckdb/src/include/duckdb/planner/expression/bound_parameter_data.hpp +2 -19
  204. package/src/duckdb/src/include/duckdb/planner/expression/bound_parameter_expression.hpp +2 -5
  205. package/src/duckdb/src/include/duckdb/planner/expression/bound_reference_expression.hpp +2 -5
  206. package/src/duckdb/src/include/duckdb/planner/expression/bound_subquery_expression.hpp +0 -3
  207. package/src/duckdb/src/include/duckdb/planner/expression/bound_unnest_expression.hpp +2 -5
  208. package/src/duckdb/src/include/duckdb/planner/expression/bound_window_expression.hpp +2 -5
  209. package/src/duckdb/src/include/duckdb/planner/expression.hpp +2 -14
  210. package/src/duckdb/src/include/duckdb/planner/filter/conjunction_filter.hpp +4 -8
  211. package/src/duckdb/src/include/duckdb/planner/filter/constant_filter.hpp +2 -4
  212. package/src/duckdb/src/include/duckdb/planner/filter/null_filter.hpp +4 -8
  213. package/src/duckdb/src/include/duckdb/planner/joinside.hpp +1 -6
  214. package/src/duckdb/src/include/duckdb/planner/logical_operator.hpp +2 -17
  215. package/src/duckdb/src/include/duckdb/planner/operator/logical_aggregate.hpp +2 -4
  216. package/src/duckdb/src/include/duckdb/planner/operator/logical_any_join.hpp +2 -4
  217. package/src/duckdb/src/include/duckdb/planner/operator/logical_column_data_get.hpp +2 -5
  218. package/src/duckdb/src/include/duckdb/planner/operator/logical_comparison_join.hpp +2 -6
  219. package/src/duckdb/src/include/duckdb/planner/operator/logical_copy_to_file.hpp +2 -4
  220. package/src/duckdb/src/include/duckdb/planner/operator/logical_create.hpp +2 -5
  221. package/src/duckdb/src/include/duckdb/planner/operator/logical_create_index.hpp +2 -5
  222. package/src/duckdb/src/include/duckdb/planner/operator/logical_create_table.hpp +2 -5
  223. package/src/duckdb/src/include/duckdb/planner/operator/logical_cross_product.hpp +2 -5
  224. package/src/duckdb/src/include/duckdb/planner/operator/logical_cteref.hpp +2 -4
  225. package/src/duckdb/src/include/duckdb/planner/operator/logical_delete.hpp +2 -5
  226. package/src/duckdb/src/include/duckdb/planner/operator/logical_delim_get.hpp +2 -4
  227. package/src/duckdb/src/include/duckdb/planner/operator/logical_dependent_join.hpp +0 -1
  228. package/src/duckdb/src/include/duckdb/planner/operator/logical_distinct.hpp +2 -4
  229. package/src/duckdb/src/include/duckdb/planner/operator/logical_dummy_scan.hpp +2 -4
  230. package/src/duckdb/src/include/duckdb/planner/operator/logical_empty_result.hpp +2 -4
  231. package/src/duckdb/src/include/duckdb/planner/operator/logical_execute.hpp +0 -2
  232. package/src/duckdb/src/include/duckdb/planner/operator/logical_explain.hpp +2 -5
  233. package/src/duckdb/src/include/duckdb/planner/operator/logical_export.hpp +0 -3
  234. package/src/duckdb/src/include/duckdb/planner/operator/logical_expression_get.hpp +2 -4
  235. package/src/duckdb/src/include/duckdb/planner/operator/logical_extension_operator.hpp +2 -4
  236. package/src/duckdb/src/include/duckdb/planner/operator/logical_filter.hpp +2 -4
  237. package/src/duckdb/src/include/duckdb/planner/operator/logical_get.hpp +2 -4
  238. package/src/duckdb/src/include/duckdb/planner/operator/logical_insert.hpp +2 -5
  239. package/src/duckdb/src/include/duckdb/planner/operator/logical_join.hpp +0 -2
  240. package/src/duckdb/src/include/duckdb/planner/operator/logical_limit.hpp +2 -5
  241. package/src/duckdb/src/include/duckdb/planner/operator/logical_limit_percent.hpp +2 -5
  242. package/src/duckdb/src/include/duckdb/planner/operator/logical_materialized_cte.hpp +2 -4
  243. package/src/duckdb/src/include/duckdb/planner/operator/logical_order.hpp +2 -5
  244. package/src/duckdb/src/include/duckdb/planner/operator/logical_pivot.hpp +2 -4
  245. package/src/duckdb/src/include/duckdb/planner/operator/logical_positional_join.hpp +2 -5
  246. package/src/duckdb/src/include/duckdb/planner/operator/logical_pragma.hpp +0 -2
  247. package/src/duckdb/src/include/duckdb/planner/operator/logical_prepare.hpp +0 -2
  248. package/src/duckdb/src/include/duckdb/planner/operator/logical_projection.hpp +2 -4
  249. package/src/duckdb/src/include/duckdb/planner/operator/logical_recursive_cte.hpp +2 -4
  250. package/src/duckdb/src/include/duckdb/planner/operator/logical_reset.hpp +2 -5
  251. package/src/duckdb/src/include/duckdb/planner/operator/logical_sample.hpp +2 -5
  252. package/src/duckdb/src/include/duckdb/planner/operator/logical_set.hpp +2 -5
  253. package/src/duckdb/src/include/duckdb/planner/operator/logical_set_operation.hpp +2 -5
  254. package/src/duckdb/src/include/duckdb/planner/operator/logical_show.hpp +2 -5
  255. package/src/duckdb/src/include/duckdb/planner/operator/logical_simple.hpp +2 -5
  256. package/src/duckdb/src/include/duckdb/planner/operator/logical_top_n.hpp +2 -4
  257. package/src/duckdb/src/include/duckdb/planner/operator/logical_unnest.hpp +2 -4
  258. package/src/duckdb/src/include/duckdb/planner/operator/logical_update.hpp +2 -4
  259. package/src/duckdb/src/include/duckdb/planner/operator/logical_window.hpp +2 -4
  260. package/src/duckdb/src/include/duckdb/planner/operator_extension.hpp +1 -3
  261. package/src/duckdb/src/include/duckdb/planner/parsed_data/bound_create_table_info.hpp +0 -5
  262. package/src/duckdb/src/include/duckdb/planner/table_filter.hpp +3 -12
  263. package/src/duckdb/src/include/duckdb/planner/tableref/bound_pivotref.hpp +2 -2
  264. package/src/duckdb/src/include/duckdb/storage/block.hpp +7 -4
  265. package/src/duckdb/src/include/duckdb/storage/checkpoint/row_group_writer.hpp +3 -2
  266. package/src/duckdb/src/include/duckdb/storage/checkpoint/table_data_writer.hpp +6 -6
  267. package/src/duckdb/src/include/duckdb/storage/checkpoint_manager.hpp +18 -18
  268. package/src/duckdb/src/include/duckdb/storage/data_pointer.hpp +6 -0
  269. package/src/duckdb/src/include/duckdb/storage/data_table.hpp +1 -1
  270. package/src/duckdb/src/include/duckdb/storage/metadata/metadata_manager.hpp +4 -5
  271. package/src/duckdb/src/include/duckdb/storage/metadata/metadata_reader.hpp +2 -1
  272. package/src/duckdb/src/include/duckdb/storage/metadata/metadata_writer.hpp +2 -2
  273. package/src/duckdb/src/include/duckdb/storage/statistics/base_statistics.hpp +2 -11
  274. package/src/duckdb/src/include/duckdb/storage/statistics/column_statistics.hpp +3 -5
  275. package/src/duckdb/src/include/duckdb/storage/statistics/distinct_statistics.hpp +3 -11
  276. package/src/duckdb/src/include/duckdb/storage/statistics/list_stats.hpp +2 -7
  277. package/src/duckdb/src/include/duckdb/storage/statistics/node_statistics.hpp +0 -26
  278. package/src/duckdb/src/include/duckdb/storage/statistics/numeric_stats.hpp +2 -7
  279. package/src/duckdb/src/include/duckdb/storage/statistics/string_stats.hpp +2 -7
  280. package/src/duckdb/src/include/duckdb/storage/statistics/struct_stats.hpp +2 -7
  281. package/src/duckdb/src/include/duckdb/storage/storage_info.hpp +4 -6
  282. package/src/duckdb/src/include/duckdb/storage/table/chunk_info.hpp +8 -17
  283. package/src/duckdb/src/include/duckdb/storage/table/column_checkpoint_state.hpp +1 -1
  284. package/src/duckdb/src/include/duckdb/storage/table/column_data.hpp +2 -2
  285. package/src/duckdb/src/include/duckdb/storage/table/list_column_data.hpp +1 -1
  286. package/src/duckdb/src/include/duckdb/storage/table/row_group.hpp +2 -7
  287. package/src/duckdb/src/include/duckdb/storage/table/standard_column_data.hpp +2 -2
  288. package/src/duckdb/src/include/duckdb/storage/table/table_statistics.hpp +4 -7
  289. package/src/duckdb/src/include/duckdb/storage/write_ahead_log.hpp +27 -29
  290. package/src/duckdb/src/include/duckdb/verification/statement_verifier.hpp +0 -2
  291. package/src/duckdb/src/main/client_context.cpp +0 -6
  292. package/src/duckdb/src/main/client_verify.cpp +0 -2
  293. package/src/duckdb/src/main/extension/extension_helper.cpp +18 -0
  294. package/src/duckdb/src/main/extension/extension_install.cpp +5 -3
  295. package/src/duckdb/src/main/extension/extension_load.cpp +3 -3
  296. package/src/duckdb/src/parser/column_definition.cpp +0 -25
  297. package/src/duckdb/src/parser/column_list.cpp +0 -13
  298. package/src/duckdb/src/parser/constraint.cpp +0 -33
  299. package/src/duckdb/src/parser/constraints/check_constraint.cpp +0 -11
  300. package/src/duckdb/src/parser/constraints/foreign_key_constraint.cpp +0 -27
  301. package/src/duckdb/src/parser/constraints/not_null_constraint.cpp +0 -11
  302. package/src/duckdb/src/parser/constraints/unique_constraint.cpp +0 -24
  303. package/src/duckdb/src/parser/expression/between_expression.cpp +2 -16
  304. package/src/duckdb/src/parser/expression/case_expression.cpp +2 -29
  305. package/src/duckdb/src/parser/expression/cast_expression.cpp +2 -16
  306. package/src/duckdb/src/parser/expression/collate_expression.cpp +2 -14
  307. package/src/duckdb/src/parser/expression/columnref_expression.cpp +2 -13
  308. package/src/duckdb/src/parser/expression/comparison_expression.cpp +2 -14
  309. package/src/duckdb/src/parser/expression/conjunction_expression.cpp +2 -13
  310. package/src/duckdb/src/parser/expression/constant_expression.cpp +2 -12
  311. package/src/duckdb/src/parser/expression/default_expression.cpp +2 -9
  312. package/src/duckdb/src/parser/expression/function_expression.cpp +2 -32
  313. package/src/duckdb/src/parser/expression/lambda_expression.cpp +2 -14
  314. package/src/duckdb/src/parser/expression/operator_expression.cpp +2 -13
  315. package/src/duckdb/src/parser/expression/parameter_expression.cpp +2 -13
  316. package/src/duckdb/src/parser/expression/positional_reference_expression.cpp +2 -12
  317. package/src/duckdb/src/parser/expression/star_expression.cpp +2 -43
  318. package/src/duckdb/src/parser/expression/subquery_expression.cpp +2 -28
  319. package/src/duckdb/src/parser/expression/window_expression.cpp +2 -53
  320. package/src/duckdb/src/parser/parsed_data/alter_info.cpp +0 -35
  321. package/src/duckdb/src/parser/parsed_data/alter_scalar_function_info.cpp +0 -18
  322. package/src/duckdb/src/parser/parsed_data/alter_table_function_info.cpp +0 -13
  323. package/src/duckdb/src/parser/parsed_data/alter_table_info.cpp +1 -189
  324. package/src/duckdb/src/parser/parsed_data/attach_info.cpp +0 -29
  325. package/src/duckdb/src/parser/parsed_data/create_collation_info.cpp +0 -4
  326. package/src/duckdb/src/parser/parsed_data/create_copy_function_info.cpp +0 -4
  327. package/src/duckdb/src/parser/parsed_data/create_index_info.cpp +0 -48
  328. package/src/duckdb/src/parser/parsed_data/create_info.cpp +0 -47
  329. package/src/duckdb/src/parser/parsed_data/create_macro_info.cpp +1 -28
  330. package/src/duckdb/src/parser/parsed_data/create_sequence_info.cpp +0 -31
  331. package/src/duckdb/src/parser/parsed_data/create_table_info.cpp +0 -23
  332. package/src/duckdb/src/parser/parsed_data/create_type_info.cpp +0 -22
  333. package/src/duckdb/src/parser/parsed_data/create_view_info.cpp +0 -23
  334. package/src/duckdb/src/parser/parsed_data/detach_info.cpp +0 -19
  335. package/src/duckdb/src/parser/parsed_data/drop_info.cpp +0 -26
  336. package/src/duckdb/src/parser/parsed_data/sample_options.cpp +2 -25
  337. package/src/duckdb/src/parser/parsed_data/transaction_info.cpp +0 -16
  338. package/src/duckdb/src/parser/parsed_data/vacuum_info.cpp +0 -20
  339. package/src/duckdb/src/parser/parsed_expression.cpp +2 -79
  340. package/src/duckdb/src/parser/query_node/cte_node.cpp +2 -19
  341. package/src/duckdb/src/parser/query_node/recursive_cte_node.cpp +2 -21
  342. package/src/duckdb/src/parser/query_node/select_node.cpp +2 -47
  343. package/src/duckdb/src/parser/query_node/set_operation_node.cpp +2 -17
  344. package/src/duckdb/src/parser/query_node.cpp +2 -62
  345. package/src/duckdb/src/parser/result_modifier.cpp +2 -96
  346. package/src/duckdb/src/parser/statement/select_statement.cpp +2 -13
  347. package/src/duckdb/src/parser/tableref/basetableref.cpp +2 -21
  348. package/src/duckdb/src/parser/tableref/emptytableref.cpp +0 -9
  349. package/src/duckdb/src/parser/tableref/expressionlistref.cpp +2 -28
  350. package/src/duckdb/src/parser/tableref/joinref.cpp +2 -23
  351. package/src/duckdb/src/parser/tableref/pivotref.cpp +0 -61
  352. package/src/duckdb/src/parser/tableref/subqueryref.cpp +2 -15
  353. package/src/duckdb/src/parser/tableref/table_function.cpp +2 -17
  354. package/src/duckdb/src/parser/tableref.cpp +2 -52
  355. package/src/duckdb/src/planner/binder/expression/bind_subquery_expression.cpp +1 -4
  356. package/src/duckdb/src/planner/bound_result_modifier.cpp +0 -33
  357. package/src/duckdb/src/planner/expression/bound_aggregate_expression.cpp +6 -30
  358. package/src/duckdb/src/planner/expression/bound_between_expression.cpp +0 -19
  359. package/src/duckdb/src/planner/expression/bound_case_expression.cpp +0 -36
  360. package/src/duckdb/src/planner/expression/bound_cast_expression.cpp +0 -15
  361. package/src/duckdb/src/planner/expression/bound_columnref_expression.cpp +0 -20
  362. package/src/duckdb/src/planner/expression/bound_comparison_expression.cpp +0 -13
  363. package/src/duckdb/src/planner/expression/bound_conjunction_expression.cpp +0 -13
  364. package/src/duckdb/src/planner/expression/bound_constant_expression.cpp +0 -11
  365. package/src/duckdb/src/planner/expression/bound_expression.cpp +1 -5
  366. package/src/duckdb/src/planner/expression/bound_function_expression.cpp +8 -28
  367. package/src/duckdb/src/planner/expression/bound_lambda_expression.cpp +0 -4
  368. package/src/duckdb/src/planner/expression/bound_lambdaref_expression.cpp +0 -23
  369. package/src/duckdb/src/planner/expression/bound_operator_expression.cpp +0 -16
  370. package/src/duckdb/src/planner/expression/bound_parameter_expression.cpp +0 -18
  371. package/src/duckdb/src/planner/expression/bound_reference_expression.cpp +0 -16
  372. package/src/duckdb/src/planner/expression/bound_subquery_expression.cpp +0 -4
  373. package/src/duckdb/src/planner/expression/bound_unnest_expression.cpp +0 -15
  374. package/src/duckdb/src/planner/expression/bound_window_expression.cpp +7 -60
  375. package/src/duckdb/src/planner/expression.cpp +0 -74
  376. package/src/duckdb/src/planner/filter/conjunction_filter.cpp +0 -21
  377. package/src/duckdb/src/planner/filter/constant_filter.cpp +0 -12
  378. package/src/duckdb/src/planner/filter/null_filter.cpp +0 -14
  379. package/src/duckdb/src/planner/joinside.cpp +0 -24
  380. package/src/duckdb/src/planner/logical_operator.cpp +15 -215
  381. package/src/duckdb/src/planner/operator/logical_aggregate.cpp +0 -46
  382. package/src/duckdb/src/planner/operator/logical_any_join.cpp +0 -14
  383. package/src/duckdb/src/planner/operator/logical_column_data_get.cpp +0 -23
  384. package/src/duckdb/src/planner/operator/logical_comparison_join.cpp +0 -23
  385. package/src/duckdb/src/planner/operator/logical_copy_to_file.cpp +2 -56
  386. package/src/duckdb/src/planner/operator/logical_create.cpp +0 -12
  387. package/src/duckdb/src/planner/operator/logical_create_index.cpp +0 -25
  388. package/src/duckdb/src/planner/operator/logical_create_table.cpp +0 -10
  389. package/src/duckdb/src/planner/operator/logical_cross_product.cpp +0 -9
  390. package/src/duckdb/src/planner/operator/logical_cteref.cpp +0 -18
  391. package/src/duckdb/src/planner/operator/logical_delete.cpp +0 -22
  392. package/src/duckdb/src/planner/operator/logical_delim_get.cpp +0 -12
  393. package/src/duckdb/src/planner/operator/logical_dependent_join.cpp +0 -4
  394. package/src/duckdb/src/planner/operator/logical_distinct.cpp +0 -16
  395. package/src/duckdb/src/planner/operator/logical_dummy_scan.cpp +0 -10
  396. package/src/duckdb/src/planner/operator/logical_empty_result.cpp +0 -15
  397. package/src/duckdb/src/planner/operator/logical_expression_get.cpp +0 -24
  398. package/src/duckdb/src/planner/operator/logical_extension_operator.cpp +6 -19
  399. package/src/duckdb/src/planner/operator/logical_filter.cpp +0 -15
  400. package/src/duckdb/src/planner/operator/logical_get.cpp +12 -97
  401. package/src/duckdb/src/planner/operator/logical_insert.cpp +0 -77
  402. package/src/duckdb/src/planner/operator/logical_join.cpp +0 -17
  403. package/src/duckdb/src/planner/operator/logical_limit.cpp +0 -16
  404. package/src/duckdb/src/planner/operator/logical_limit_percent.cpp +0 -16
  405. package/src/duckdb/src/planner/operator/logical_materialized_cte.cpp +0 -13
  406. package/src/duckdb/src/planner/operator/logical_order.cpp +0 -15
  407. package/src/duckdb/src/planner/operator/logical_pivot.cpp +0 -20
  408. package/src/duckdb/src/planner/operator/logical_positional_join.cpp +0 -10
  409. package/src/duckdb/src/planner/operator/logical_pragma.cpp +0 -8
  410. package/src/duckdb/src/planner/operator/logical_prepare.cpp +0 -8
  411. package/src/duckdb/src/planner/operator/logical_projection.cpp +0 -12
  412. package/src/duckdb/src/planner/operator/logical_recursive_cte.cpp +0 -15
  413. package/src/duckdb/src/planner/operator/logical_reset.cpp +0 -12
  414. package/src/duckdb/src/planner/operator/logical_sample.cpp +0 -11
  415. package/src/duckdb/src/planner/operator/logical_set.cpp +0 -14
  416. package/src/duckdb/src/planner/operator/logical_set_operation.cpp +0 -13
  417. package/src/duckdb/src/planner/operator/logical_simple.cpp +0 -60
  418. package/src/duckdb/src/planner/operator/logical_top_n.cpp +0 -14
  419. package/src/duckdb/src/planner/operator/logical_unnest.cpp +0 -14
  420. package/src/duckdb/src/planner/operator/logical_update.cpp +0 -28
  421. package/src/duckdb/src/planner/operator/logical_window.cpp +0 -13
  422. package/src/duckdb/src/planner/planner.cpp +13 -22
  423. package/src/duckdb/src/planner/table_filter.cpp +0 -59
  424. package/src/duckdb/src/storage/checkpoint/row_group_writer.cpp +7 -17
  425. package/src/duckdb/src/storage/checkpoint/table_data_reader.cpp +7 -4
  426. package/src/duckdb/src/storage/checkpoint/table_data_writer.cpp +24 -22
  427. package/src/duckdb/src/storage/checkpoint_manager.cpp +203 -180
  428. package/src/duckdb/src/storage/data_table.cpp +2 -2
  429. package/src/duckdb/src/storage/metadata/metadata_manager.cpp +11 -9
  430. package/src/duckdb/src/storage/serialization/serialize_constraint.cpp +20 -20
  431. package/src/duckdb/src/storage/serialization/serialize_create_info.cpp +46 -42
  432. package/src/duckdb/src/storage/serialization/serialize_expression.cpp +63 -63
  433. package/src/duckdb/src/storage/serialization/serialize_logical_operator.cpp +167 -165
  434. package/src/duckdb/src/storage/serialization/serialize_macro_function.cpp +12 -12
  435. package/src/duckdb/src/storage/serialization/serialize_nodes.cpp +54 -54
  436. package/src/duckdb/src/storage/serialization/serialize_parse_info.cpp +88 -88
  437. package/src/duckdb/src/storage/serialization/serialize_parsed_expression.cpp +72 -72
  438. package/src/duckdb/src/storage/serialization/serialize_query_node.cpp +20 -20
  439. package/src/duckdb/src/storage/serialization/serialize_result_modifier.cpp +22 -22
  440. package/src/duckdb/src/storage/serialization/serialize_statement.cpp +4 -4
  441. package/src/duckdb/src/storage/serialization/serialize_storage.cpp +41 -6
  442. package/src/duckdb/src/storage/serialization/serialize_table_filter.cpp +24 -24
  443. package/src/duckdb/src/storage/serialization/serialize_tableref.cpp +32 -32
  444. package/src/duckdb/src/storage/serialization/serialize_types.cpp +29 -29
  445. package/src/duckdb/src/storage/single_file_block_manager.cpp +17 -22
  446. package/src/duckdb/src/storage/statistics/base_statistics.cpp +31 -85
  447. package/src/duckdb/src/storage/statistics/column_statistics.cpp +6 -19
  448. package/src/duckdb/src/storage/statistics/distinct_statistics.cpp +0 -26
  449. package/src/duckdb/src/storage/statistics/list_stats.cpp +6 -22
  450. package/src/duckdb/src/storage/statistics/numeric_stats.cpp +20 -135
  451. package/src/duckdb/src/storage/statistics/string_stats.cpp +5 -28
  452. package/src/duckdb/src/storage/statistics/struct_stats.cpp +8 -30
  453. package/src/duckdb/src/storage/storage_info.cpp +1 -1
  454. package/src/duckdb/src/storage/table/chunk_info.cpp +9 -88
  455. package/src/duckdb/src/storage/table/column_checkpoint_state.cpp +2 -2
  456. package/src/duckdb/src/storage/table/column_data.cpp +20 -25
  457. package/src/duckdb/src/storage/table/list_column_data.cpp +16 -9
  458. package/src/duckdb/src/storage/table/row_group.cpp +16 -92
  459. package/src/duckdb/src/storage/table/row_group_collection.cpp +5 -1
  460. package/src/duckdb/src/storage/table/standard_column_data.cpp +10 -7
  461. package/src/duckdb/src/storage/table/struct_column_data.cpp +17 -11
  462. package/src/duckdb/src/storage/table/table_statistics.cpp +13 -22
  463. package/src/duckdb/src/storage/wal_replay.cpp +108 -106
  464. package/src/duckdb/src/storage/write_ahead_log.cpp +135 -64
  465. package/src/duckdb/src/transaction/commit_state.cpp +22 -8
  466. package/src/duckdb/src/verification/deserialized_statement_verifier.cpp +11 -6
  467. package/src/duckdb/src/verification/statement_verifier.cpp +0 -5
  468. package/src/duckdb/third_party/parquet/parquet_types.h +1 -1
  469. package/src/duckdb/ub_src_common.cpp +0 -4
  470. package/src/duckdb/ub_src_common_serializer.cpp +2 -4
  471. package/src/duckdb/ub_src_planner.cpp +0 -2
  472. package/src/duckdb/ub_src_planner_expression.cpp +0 -2
  473. package/src/duckdb/ub_src_planner_operator.cpp +0 -8
  474. package/src/duckdb_node.cpp +6 -12
  475. package/src/duckdb_node.hpp +23 -13
  476. package/src/statement.cpp +15 -16
  477. package/test/database_fail.test.ts +20 -0
  478. package/test/worker.js +7 -0
  479. package/src/duckdb/src/common/field_writer.cpp +0 -97
  480. package/src/duckdb/src/common/serializer/buffered_deserializer.cpp +0 -27
  481. package/src/duckdb/src/common/serializer/buffered_serializer.cpp +0 -36
  482. package/src/duckdb/src/common/serializer.cpp +0 -24
  483. package/src/duckdb/src/include/duckdb/common/field_writer.hpp +0 -379
  484. package/src/duckdb/src/include/duckdb/common/serializer/buffered_deserializer.hpp +0 -41
  485. package/src/duckdb/src/include/duckdb/common/serializer/buffered_serializer.hpp +0 -50
  486. package/src/duckdb/src/include/duckdb/common/serializer.hpp +0 -151
  487. package/src/duckdb/src/include/duckdb/planner/plan_serialization.hpp +0 -44
  488. package/src/duckdb/src/include/duckdb/verification/deserialized_statement_verifier_v2.hpp +0 -32
  489. package/src/duckdb/src/planner/expression/bound_default_expression.cpp +0 -16
  490. package/src/duckdb/src/planner/operator/logical_execute.cpp +0 -12
  491. package/src/duckdb/src/planner/operator/logical_explain.cpp +0 -22
  492. package/src/duckdb/src/planner/operator/logical_export.cpp +0 -13
  493. package/src/duckdb/src/planner/operator/logical_show.cpp +0 -21
  494. package/src/duckdb/src/planner/parsed_data/bound_create_table_info.cpp +0 -22
  495. package/src/duckdb/src/planner/plan_serialization.cpp +0 -20
  496. package/src/duckdb/src/verification/deserialized_statement_verifier_v2.cpp +0 -34
  497. package/src/duckdb/ub_src_planner_parsed_data.cpp +0 -2
@@ -3,9 +3,8 @@
3
3
  #include "duckdb/core_functions/aggregate/holistic_functions.hpp"
4
4
  #include "duckdb/planner/expression.hpp"
5
5
  #include "duckdb/common/queue.hpp"
6
- #include "duckdb/common/field_writer.hpp"
7
- #include "duckdb/common/serializer/format_serializer.hpp"
8
- #include "duckdb/common/serializer/format_deserializer.hpp"
6
+ #include "duckdb/common/serializer/serializer.hpp"
7
+ #include "duckdb/common/serializer/deserializer.hpp"
9
8
 
10
9
  #include <algorithm>
11
10
  #include <stdlib.h>
@@ -70,28 +69,14 @@ struct ReservoirQuantileBindData : public FunctionData {
70
69
  return quantiles == other.quantiles && sample_size == other.sample_size;
71
70
  }
72
71
 
73
- static void Serialize(FieldWriter &writer, const FunctionData *bind_data_p, const AggregateFunction &function) {
74
- D_ASSERT(bind_data_p);
75
- auto &bind_data = bind_data_p->Cast<ReservoirQuantileBindData>();
76
- writer.WriteList<double>(bind_data.quantiles);
77
- writer.WriteField<int32_t>(bind_data.sample_size);
78
- }
79
-
80
- static unique_ptr<FunctionData> Deserialize(PlanDeserializationState &state, FieldReader &reader,
81
- AggregateFunction &bound_function) {
82
- auto quantiles = reader.ReadRequiredList<double>();
83
- auto sample_size = reader.ReadRequired<int32_t>();
84
- return make_uniq<ReservoirQuantileBindData>(std::move(quantiles), sample_size);
85
- }
86
-
87
- static void FormatSerialize(FormatSerializer &serializer, const optional_ptr<FunctionData> bind_data_p,
88
- const AggregateFunction &function) {
72
+ static void Serialize(Serializer &serializer, const optional_ptr<FunctionData> bind_data_p,
73
+ const AggregateFunction &function) {
89
74
  auto &bind_data = bind_data_p->Cast<ReservoirQuantileBindData>();
90
75
  serializer.WriteProperty(100, "quantiles", bind_data.quantiles);
91
76
  serializer.WriteProperty(101, "sample_size", bind_data.sample_size);
92
77
  }
93
78
 
94
- static unique_ptr<FunctionData> FormatDeserialize(FormatDeserializer &deserializer, AggregateFunction &function) {
79
+ static unique_ptr<FunctionData> Deserialize(Deserializer &deserializer, AggregateFunction &function) {
95
80
  auto result = make_uniq<ReservoirQuantileBindData>();
96
81
  deserializer.ReadProperty(100, "quantiles", result->quantiles);
97
82
  deserializer.ReadProperty(101, "sample_size", result->sample_size);
@@ -373,8 +358,6 @@ unique_ptr<FunctionData> BindReservoirQuantileDecimal(ClientContext &context, Ag
373
358
  function.name = "reservoir_quantile";
374
359
  function.serialize = ReservoirQuantileBindData::Serialize;
375
360
  function.deserialize = ReservoirQuantileBindData::Deserialize;
376
- function.format_serialize = ReservoirQuantileBindData::FormatSerialize;
377
- function.format_deserialize = ReservoirQuantileBindData::FormatDeserialize;
378
361
  return bind_data;
379
362
  }
380
363
 
@@ -383,8 +366,6 @@ AggregateFunction GetReservoirQuantileAggregate(PhysicalType type) {
383
366
  fun.bind = BindReservoirQuantile;
384
367
  fun.serialize = ReservoirQuantileBindData::Serialize;
385
368
  fun.deserialize = ReservoirQuantileBindData::Deserialize;
386
- fun.format_serialize = ReservoirQuantileBindData::FormatSerialize;
387
- fun.format_deserialize = ReservoirQuantileBindData::FormatDeserialize;
388
369
  // temporarily push an argument so we can bind the actual quantile
389
370
  fun.arguments.emplace_back(LogicalType::DOUBLE);
390
371
  return fun;
@@ -396,8 +377,6 @@ unique_ptr<FunctionData> BindReservoirQuantileDecimalList(ClientContext &context
396
377
  auto bind_data = BindReservoirQuantile(context, function, arguments);
397
378
  function.serialize = ReservoirQuantileBindData::Serialize;
398
379
  function.deserialize = ReservoirQuantileBindData::Deserialize;
399
- function.format_serialize = ReservoirQuantileBindData::FormatSerialize;
400
- function.format_deserialize = ReservoirQuantileBindData::FormatDeserialize;
401
380
  function.name = "reservoir_quantile";
402
381
  return bind_data;
403
382
  }
@@ -407,8 +386,6 @@ AggregateFunction GetReservoirQuantileListAggregate(const LogicalType &type) {
407
386
  fun.bind = BindReservoirQuantile;
408
387
  fun.serialize = ReservoirQuantileBindData::Serialize;
409
388
  fun.deserialize = ReservoirQuantileBindData::Deserialize;
410
- fun.format_serialize = ReservoirQuantileBindData::FormatSerialize;
411
- fun.format_deserialize = ReservoirQuantileBindData::FormatDeserialize;
412
389
  // temporarily push an argument so we can bind the actual quantile
413
390
  auto list_of_double = LogicalType::LIST(LogicalType::DOUBLE);
414
391
  fun.arguments.push_back(list_of_double);
@@ -437,8 +414,6 @@ static void GetReservoirQuantileDecimalFunction(AggregateFunctionSet &set, const
437
414
  BindReservoirQuantileDecimal);
438
415
  fun.serialize = ReservoirQuantileBindData::Serialize;
439
416
  fun.deserialize = ReservoirQuantileBindData::Deserialize;
440
- fun.format_serialize = ReservoirQuantileBindData::FormatSerialize;
441
- fun.format_deserialize = ReservoirQuantileBindData::FormatDeserialize;
442
417
  set.AddFunction(fun);
443
418
 
444
419
  fun.arguments.emplace_back(LogicalType::INTEGER);
@@ -11,8 +11,6 @@
11
11
  #include "duckdb/function/scalar/nested_functions.hpp"
12
12
  #include "duckdb/planner/expression/bound_function_expression.hpp"
13
13
 
14
- #include "duckdb/common/field_writer.hpp"
15
-
16
14
  namespace duckdb {
17
15
 
18
16
  DatePartSpecifier GetDateTypePartSpecifier(const string &specifier, LogicalType &type) {
@@ -1603,18 +1601,17 @@ struct StructDatePart {
1603
1601
  result.Verify(count);
1604
1602
  }
1605
1603
 
1606
- static void SerializeFunction(FieldWriter &writer, const FunctionData *bind_data_p,
1604
+ static void SerializeFunction(Serializer &serializer, const optional_ptr<FunctionData> bind_data_p,
1607
1605
  const ScalarFunction &function) {
1608
1606
  D_ASSERT(bind_data_p);
1609
1607
  auto &info = bind_data_p->Cast<BindData>();
1610
- writer.WriteSerializable(info.stype);
1611
- writer.WriteList<DatePartSpecifier>(info.part_codes);
1608
+ serializer.WriteProperty(100, "stype", info.stype);
1609
+ serializer.WriteProperty(101, "part_codes", info.part_codes);
1612
1610
  }
1613
1611
 
1614
- static unique_ptr<FunctionData> DeserializeFunction(PlanDeserializationState &state, FieldReader &reader,
1615
- ScalarFunction &bound_function) {
1616
- auto stype = reader.ReadRequiredSerializable<LogicalType, LogicalType>();
1617
- auto part_codes = reader.ReadRequiredList<DatePartSpecifier>();
1612
+ static unique_ptr<FunctionData> DeserializeFunction(Deserializer &deserializer, ScalarFunction &bound_function) {
1613
+ auto stype = deserializer.ReadProperty<LogicalType>(100, "stype");
1614
+ auto part_codes = deserializer.ReadProperty<vector<DatePartSpecifier>>(101, "part_codes");
1618
1615
  return make_uniq<BindData>(std::move(stype), std::move(part_codes));
1619
1616
  }
1620
1617
 
@@ -36,25 +36,30 @@ struct ListAggregatesBindData : public FunctionData {
36
36
  auto &other = other_p.Cast<ListAggregatesBindData>();
37
37
  return stype == other.stype && aggr_expr->Equals(*other.aggr_expr);
38
38
  }
39
- static void Serialize(FieldWriter &writer, const FunctionData *bind_data_p, const ScalarFunction &function) {
40
- auto bind_data = dynamic_cast<const ListAggregatesBindData *>(bind_data_p);
41
- if (!bind_data) {
42
- writer.WriteField<bool>(false);
43
- } else {
44
- writer.WriteField<bool>(true);
45
- writer.WriteSerializable(bind_data->stype);
46
- writer.WriteSerializable(*bind_data->aggr_expr);
47
- }
39
+ void Serialize(Serializer &serializer) const {
40
+ serializer.WriteProperty(1, "stype", stype);
41
+ serializer.WriteProperty(2, "aggr_expr", aggr_expr);
42
+ }
43
+ static unique_ptr<ListAggregatesBindData> Deserialize(Deserializer &deserializer) {
44
+ auto stype = deserializer.ReadProperty<LogicalType>(1, "stype");
45
+ auto aggr_expr = deserializer.ReadProperty<unique_ptr<Expression>>(2, "aggr_expr");
46
+ auto result = make_uniq<ListAggregatesBindData>(std::move(stype), std::move(aggr_expr));
47
+ return result;
48
48
  }
49
- static unique_ptr<FunctionData> Deserialize(PlanDeserializationState &state, FieldReader &reader,
50
- ScalarFunction &bound_function) {
51
- if (reader.ReadRequired<bool>()) {
52
- auto s_type = reader.ReadRequiredSerializable<LogicalType, LogicalType>();
53
- auto expr = reader.ReadRequiredSerializable<Expression>(state);
54
- return make_uniq<ListAggregatesBindData>(s_type, std::move(expr));
55
- } else {
49
+
50
+ static void Serialize(Serializer &serializer, const optional_ptr<FunctionData> bind_data_p,
51
+ const ScalarFunction &function) {
52
+ auto bind_data = dynamic_cast<const ListAggregatesBindData *>(bind_data_p.get());
53
+ serializer.WritePropertyWithDefault(100, "bind_data", bind_data, (const ListAggregatesBindData *)nullptr);
54
+ }
55
+
56
+ static unique_ptr<FunctionData> Deserialize(Deserializer &deserializer, ScalarFunction &bound_function) {
57
+ auto result = deserializer.ReadPropertyWithDefault<unique_ptr<ListAggregatesBindData>>(
58
+ 100, "bind_data", unique_ptr<ListAggregatesBindData>(nullptr));
59
+ if (!result) {
56
60
  return ListAggregatesBindFailure(bound_function);
57
61
  }
62
+ return std::move(result);
58
63
  }
59
64
  };
60
65
 
@@ -8,8 +8,8 @@
8
8
  #include "duckdb/planner/expression/bound_lambda_expression.hpp"
9
9
  #include "duckdb/planner/expression/bound_cast_expression.hpp"
10
10
  #include "duckdb/function/cast/cast_function_set.hpp"
11
- #include "duckdb/common/serializer/format_serializer.hpp"
12
- #include "duckdb/common/serializer/format_deserializer.hpp"
11
+ #include "duckdb/common/serializer/serializer.hpp"
12
+ #include "duckdb/common/serializer/deserializer.hpp"
13
13
 
14
14
  namespace duckdb {
15
15
 
@@ -23,26 +23,22 @@ struct ListLambdaBindData : public FunctionData {
23
23
  public:
24
24
  bool Equals(const FunctionData &other_p) const override;
25
25
  unique_ptr<FunctionData> Copy() const override;
26
- static void Serialize(FieldWriter &writer, const FunctionData *bind_data_p, const ScalarFunction &function) {
27
- throw NotImplementedException("FIXME: list lambda serialize");
28
- }
29
- static unique_ptr<FunctionData> Deserialize(PlanDeserializationState &state, FieldReader &reader,
30
- ScalarFunction &bound_function) {
31
- throw NotImplementedException("FIXME: list lambda deserialize");
32
- }
33
26
 
34
- static void FormatSerialize(FormatSerializer &serializer, const optional_ptr<FunctionData> bind_data_p,
35
- const ScalarFunction &function) {
36
- auto &bind_data = bind_data_p->Cast<ListLambdaBindData>();
37
- serializer.WriteProperty(100, "stype", bind_data.stype);
38
- serializer.WritePropertyWithDefault(101, "lambda_expr", bind_data.lambda_expr, unique_ptr<Expression>());
27
+ static void Serialize(Serializer &serializer, const optional_ptr<FunctionData> bind_data_p,
28
+ const ScalarFunction &function) {
29
+ // auto &bind_data = bind_data_p->Cast<ListLambdaBindData>();
30
+ // serializer.WriteProperty(100, "stype", bind_data.stype);
31
+ // serializer.WritePropertyWithDefault(101, "lambda_expr", bind_data.lambda_expr,
32
+ // unique_ptr<Expression>());
33
+ throw NotImplementedException("FIXME: list lambda serialize");
39
34
  }
40
35
 
41
- static unique_ptr<FunctionData> FormatDeserialize(FormatDeserializer &deserializer, ScalarFunction &function) {
42
- auto stype = deserializer.ReadProperty<LogicalType>(100, "stype");
43
- auto lambda_expr =
44
- deserializer.ReadPropertyWithDefault<unique_ptr<Expression>>(101, "lambda_expr", unique_ptr<Expression>());
45
- return make_uniq<ListLambdaBindData>(stype, std::move(lambda_expr));
36
+ static unique_ptr<FunctionData> Deserialize(Deserializer &deserializer, ScalarFunction &function) {
37
+ // auto stype = deserializer.ReadProperty<LogicalType>(100, "stype");
38
+ // auto lambda_expr =
39
+ // deserializer.ReadPropertyWithDefault<unique_ptr<Expression>>(101, "lambda_expr",
40
+ // unique_ptr<Expression>()); return make_uniq<ListLambdaBindData>(stype, std::move(lambda_expr));
41
+ throw NotImplementedException("FIXME: list lambda deserialize");
46
42
  }
47
43
  };
48
44
 
@@ -401,8 +397,6 @@ ScalarFunction ListTransformFun::GetFunction() {
401
397
  fun.null_handling = FunctionNullHandling::SPECIAL_HANDLING;
402
398
  fun.serialize = ListLambdaBindData::Serialize;
403
399
  fun.deserialize = ListLambdaBindData::Deserialize;
404
- fun.format_serialize = ListLambdaBindData::FormatSerialize;
405
- fun.format_deserialize = ListLambdaBindData::FormatDeserialize;
406
400
  return fun;
407
401
  }
408
402
 
@@ -412,8 +406,6 @@ ScalarFunction ListFilterFun::GetFunction() {
412
406
  fun.null_handling = FunctionNullHandling::SPECIAL_HANDLING;
413
407
  fun.serialize = ListLambdaBindData::Serialize;
414
408
  fun.deserialize = ListLambdaBindData::Deserialize;
415
- fun.format_serialize = ListLambdaBindData::FormatSerialize;
416
- fun.format_deserialize = ListLambdaBindData::FormatDeserialize;
417
409
  return fun;
418
410
  }
419
411
 
@@ -92,46 +92,4 @@ string MacroFunction::ToSQL(const string &schema, const string &name) const {
92
92
  return StringUtil::Format("CREATE MACRO %s.%s(%s) AS ", schema, name, StringUtil::Join(param_strings, ", "));
93
93
  }
94
94
 
95
- void MacroFunction::Serialize(Serializer &main_serializer) const {
96
- FieldWriter writer(main_serializer);
97
- writer.WriteField(type);
98
- writer.WriteSerializableList(parameters);
99
- writer.WriteField<uint32_t>((uint32_t)default_parameters.size());
100
- auto &serializer = writer.GetSerializer();
101
- for (auto &kv : default_parameters) {
102
- serializer.WriteString(kv.first);
103
- kv.second->Serialize(serializer);
104
- }
105
- SerializeInternal(writer);
106
- writer.Finalize();
107
- }
108
-
109
- unique_ptr<MacroFunction> MacroFunction::Deserialize(Deserializer &main_source) {
110
- FieldReader reader(main_source);
111
- auto type = reader.ReadRequired<MacroType>();
112
- auto parameters = reader.ReadRequiredSerializableList<ParsedExpression>();
113
- auto default_param_count = reader.ReadRequired<uint32_t>();
114
- unordered_map<string, unique_ptr<ParsedExpression>> default_parameters;
115
- auto &source = reader.GetSource();
116
- for (idx_t i = 0; i < default_param_count; i++) {
117
- auto name = source.Read<string>();
118
- default_parameters[name] = ParsedExpression::Deserialize(source);
119
- }
120
- unique_ptr<MacroFunction> result;
121
- switch (type) {
122
- case MacroType::SCALAR_MACRO:
123
- result = ScalarMacroFunction::Deserialize(reader);
124
- break;
125
- case MacroType::TABLE_MACRO:
126
- result = TableMacroFunction::Deserialize(reader);
127
- break;
128
- default:
129
- throw InternalException("Cannot deserialize macro type");
130
- }
131
- result->parameters = std::move(parameters);
132
- result->default_parameters = std::move(default_parameters);
133
- reader.Finalize();
134
- return result;
135
- }
136
-
137
95
  } // namespace duckdb
@@ -1,5 +1,7 @@
1
1
  #include "duckdb/function/function_set.hpp"
2
2
  #include "duckdb/function/scalar/compressed_materialization_functions.hpp"
3
+ #include "duckdb/common/serializer/serializer.hpp"
4
+ #include "duckdb/common/serializer/deserializer.hpp"
3
5
 
4
6
  namespace duckdb {
5
7
 
@@ -143,17 +145,17 @@ static scalar_function_t GetIntegralDecompressFunctionInputSwitch(const LogicalT
143
145
  }
144
146
  }
145
147
 
146
- static void CMIntegralSerialize(FieldWriter &writer, const FunctionData *bind_data_p, const ScalarFunction &function) {
147
- writer.WriteRegularSerializableList(function.arguments);
148
- writer.WriteSerializable(function.return_type);
148
+ static void CMIntegralSerialize(Serializer &serializer, const optional_ptr<FunctionData> bind_data,
149
+ const ScalarFunction &function) {
150
+ serializer.WriteProperty(100, "arguments", function.arguments);
151
+ serializer.WriteProperty(101, "return_type", function.return_type);
149
152
  }
150
153
 
151
154
  template <scalar_function_t (*GET_FUNCTION)(const LogicalType &, const LogicalType &)>
152
- unique_ptr<FunctionData> CMIntegralDeserialize(PlanDeserializationState &state, FieldReader &reader,
153
- ScalarFunction &function) {
154
- function.arguments = reader.ReadRequiredSerializableList<LogicalType, LogicalType>();
155
- function.function =
156
- GET_FUNCTION(function.arguments[0], reader.ReadRequiredSerializable<LogicalType, LogicalType>());
155
+ unique_ptr<FunctionData> CMIntegralDeserialize(Deserializer &deserializer, ScalarFunction &function) {
156
+ function.arguments = deserializer.ReadProperty<vector<LogicalType>>(100, "arguments");
157
+ auto return_type = deserializer.ReadProperty<LogicalType>(101, "return_type");
158
+ function.function = GET_FUNCTION(function.arguments[0], return_type);
157
159
  return nullptr;
158
160
  }
159
161
 
@@ -1,5 +1,7 @@
1
1
  #include "duckdb/common/bswap.hpp"
2
2
  #include "duckdb/function/scalar/compressed_materialization_functions.hpp"
3
+ #include "duckdb/common/serializer/serializer.hpp"
4
+ #include "duckdb/common/serializer/deserializer.hpp"
3
5
 
4
6
  namespace duckdb {
5
7
 
@@ -186,16 +188,16 @@ static scalar_function_t GetStringDecompressFunctionSwitch(const LogicalType &in
186
188
  }
187
189
  }
188
190
 
189
- static void CMStringCompressSerialize(FieldWriter &writer, const FunctionData *bind_data_p,
191
+ static void CMStringCompressSerialize(Serializer &serializer, const optional_ptr<FunctionData> bind_data,
190
192
  const ScalarFunction &function) {
191
- writer.WriteRegularSerializableList(function.arguments);
192
- writer.WriteSerializable(function.return_type);
193
+ serializer.WriteProperty(100, "arguments", function.arguments);
194
+ serializer.WriteProperty(101, "return_type", function.return_type);
193
195
  }
194
196
 
195
- unique_ptr<FunctionData> CMStringCompressDeserialize(PlanDeserializationState &state, FieldReader &reader,
196
- ScalarFunction &function) {
197
- function.arguments = reader.ReadRequiredSerializableList<LogicalType, LogicalType>();
198
- function.function = GetStringCompressFunctionSwitch(reader.ReadRequiredSerializable<LogicalType, LogicalType>());
197
+ unique_ptr<FunctionData> CMStringCompressDeserialize(Deserializer &deserializer, ScalarFunction &function) {
198
+ function.arguments = deserializer.ReadProperty<vector<LogicalType>>(100, "arguments");
199
+ auto return_type = deserializer.ReadProperty<LogicalType>(101, "return_type");
200
+ function.function = GetStringCompressFunctionSwitch(return_type);
199
201
  return nullptr;
200
202
  }
201
203
 
@@ -213,14 +215,13 @@ void CMStringCompressFun::RegisterFunction(BuiltinFunctions &set) {
213
215
  }
214
216
  }
215
217
 
216
- static void CMStringDecompressSerialize(FieldWriter &writer, const FunctionData *bind_data_p,
218
+ static void CMStringDecompressSerialize(Serializer &serializer, const optional_ptr<FunctionData> bind_data,
217
219
  const ScalarFunction &function) {
218
- writer.WriteRegularSerializableList(function.arguments);
220
+ serializer.WriteProperty(100, "arguments", function.arguments);
219
221
  }
220
222
 
221
- unique_ptr<FunctionData> CMStringDecompressDeserialize(PlanDeserializationState &state, FieldReader &reader,
222
- ScalarFunction &function) {
223
- function.arguments = reader.ReadRequiredSerializableList<LogicalType, LogicalType>();
223
+ unique_ptr<FunctionData> CMStringDecompressDeserialize(Deserializer &deserializer, ScalarFunction &function) {
224
+ function.arguments = deserializer.ReadProperty<vector<LogicalType>>(100, "arguments");
224
225
  function.function = GetStringDecompressFunctionSwitch(function.arguments[0]);
225
226
  return nullptr;
226
227
  }
@@ -1,4 +1,3 @@
1
- #include "duckdb/common/field_writer.hpp"
2
1
  #include "duckdb/common/operator/add.hpp"
3
2
  #include "duckdb/common/operator/multiply.hpp"
4
3
  #include "duckdb/common/operator/numeric_binary_operators.hpp"
@@ -250,23 +249,22 @@ unique_ptr<FunctionData> BindDecimalAddSubtract(ClientContext &context, ScalarFu
250
249
  return std::move(bind_data);
251
250
  }
252
251
 
253
- static void SerializeDecimalArithmetic(FieldWriter &writer, const FunctionData *bind_data_p,
252
+ static void SerializeDecimalArithmetic(Serializer &serializer, const optional_ptr<FunctionData> bind_data_p,
254
253
  const ScalarFunction &function) {
255
254
  auto &bind_data = bind_data_p->Cast<DecimalArithmeticBindData>();
256
- writer.WriteField(bind_data.check_overflow);
257
- writer.WriteSerializable(function.return_type);
258
- writer.WriteRegularSerializableList(function.arguments);
255
+ serializer.WriteProperty(100, "check_overflow", bind_data.check_overflow);
256
+ serializer.WriteProperty(101, "return_type", function.return_type);
257
+ serializer.WriteProperty(102, "arguments", function.arguments);
259
258
  }
260
259
 
261
260
  // TODO this is partially duplicated from the bind
262
261
  template <class OP, class OPOVERFLOWCHECK, bool IS_SUBTRACT = false>
263
- unique_ptr<FunctionData> DeserializeDecimalArithmetic(PlanDeserializationState &state, FieldReader &reader,
264
- ScalarFunction &bound_function) {
265
- // re-change the function pointers
266
- auto check_overflow = reader.ReadRequired<bool>();
267
- auto return_type = reader.ReadRequiredSerializable<LogicalType, LogicalType>();
268
- auto arguments = reader.template ReadRequiredSerializableList<LogicalType, LogicalType>();
262
+ unique_ptr<FunctionData> DeserializeDecimalArithmetic(Deserializer &deserializer, ScalarFunction &bound_function) {
269
263
 
264
+ // // re-change the function pointers
265
+ auto check_overflow = deserializer.ReadProperty<bool>(100, "check_overflow");
266
+ auto return_type = deserializer.ReadProperty<LogicalType>(101, "return_type");
267
+ auto arguments = deserializer.ReadProperty<vector<LogicalType>>(102, "arguments");
270
268
  if (check_overflow) {
271
269
  bound_function.function = GetScalarBinaryFunction<OPOVERFLOWCHECK>(return_type.InternalType());
272
270
  } else {
@@ -277,43 +277,23 @@ bool ExportAggregateFunctionBindData::Equals(const FunctionData &other_p) const
277
277
  return aggregate->Equals(*other.aggregate);
278
278
  }
279
279
 
280
- static void ExportStateAggregateSerialize(FieldWriter &writer, const FunctionData *bind_data_p,
280
+ static void ExportStateAggregateSerialize(Serializer &serializer, const optional_ptr<FunctionData> bind_data_p,
281
281
  const AggregateFunction &function) {
282
282
  throw NotImplementedException("FIXME: export state serialize");
283
283
  }
284
- static unique_ptr<FunctionData> ExportStateAggregateDeserialize(PlanDeserializationState &state, FieldReader &reader,
285
- AggregateFunction &bound_function) {
286
- throw NotImplementedException("FIXME: export state deserialize");
287
- }
288
284
 
289
- static void ExportStateAggregateFormatSerialize(FormatSerializer &serializer,
290
- const optional_ptr<FunctionData> bind_data_p,
291
- const AggregateFunction &function) {
292
- throw SerializationException("FIXME: export state serialize");
293
- }
294
-
295
- static unique_ptr<FunctionData> ExportStateAggregateFormatDeserialize(FormatDeserializer &deserializer,
296
- AggregateFunction &function) {
297
- throw SerializationException("FIXME: export state deserialize");
285
+ static unique_ptr<FunctionData> ExportStateAggregateDeserialize(Deserializer &deserializer,
286
+ AggregateFunction &function) {
287
+ throw NotImplementedException("FIXME: export state deserialize");
298
288
  }
299
289
 
300
- static void ExportStateScalarSerialize(FieldWriter &writer, const FunctionData *bind_data_p,
290
+ static void ExportStateScalarSerialize(Serializer &serializer, const optional_ptr<FunctionData> bind_data_p,
301
291
  const ScalarFunction &function) {
302
292
  throw NotImplementedException("FIXME: export state serialize");
303
293
  }
304
- static unique_ptr<FunctionData> ExportStateScalarDeserialize(PlanDeserializationState &state, FieldReader &reader,
305
- ScalarFunction &bound_function) {
306
- throw NotImplementedException("FIXME: export state deserialize");
307
- }
308
294
 
309
- static void ExportStateScalarFormatSerialize(FormatSerializer &serializer, const optional_ptr<FunctionData> bind_data_p,
310
- const ScalarFunction &function) {
311
- throw SerializationException("FIXME: export state serialize");
312
- }
313
-
314
- static unique_ptr<FunctionData> ExportStateScalarFormatDeserialize(FormatDeserializer &deserializer,
315
- ScalarFunction &function) {
316
- throw SerializationException("FIXME: export state deserialize");
295
+ static unique_ptr<FunctionData> ExportStateScalarDeserialize(Deserializer &deserializer, ScalarFunction &function) {
296
+ throw NotImplementedException("FIXME: export state deserialize");
317
297
  }
318
298
 
319
299
  unique_ptr<BoundAggregateExpression>
@@ -352,8 +332,6 @@ ExportAggregateFunction::Bind(unique_ptr<BoundAggregateExpression> child_aggrega
352
332
  export_function.null_handling = FunctionNullHandling::SPECIAL_HANDLING;
353
333
  export_function.serialize = ExportStateAggregateSerialize;
354
334
  export_function.deserialize = ExportStateAggregateDeserialize;
355
- export_function.format_serialize = ExportStateAggregateFormatSerialize;
356
- export_function.format_deserialize = ExportStateAggregateFormatDeserialize;
357
335
 
358
336
  return make_uniq<BoundAggregateExpression>(export_function, std::move(child_aggregate->children),
359
337
  std::move(child_aggregate->filter), std::move(export_bind_data),
@@ -366,8 +344,6 @@ ScalarFunction ExportAggregateFunction::GetFinalize() {
366
344
  result.null_handling = FunctionNullHandling::SPECIAL_HANDLING;
367
345
  result.serialize = ExportStateScalarSerialize;
368
346
  result.deserialize = ExportStateScalarDeserialize;
369
- result.format_serialize = ExportStateScalarFormatSerialize;
370
- result.format_deserialize = ExportStateScalarFormatDeserialize;
371
347
  return result;
372
348
  }
373
349
 
@@ -378,8 +354,6 @@ ScalarFunction ExportAggregateFunction::GetCombine() {
378
354
  result.null_handling = FunctionNullHandling::SPECIAL_HANDLING;
379
355
  result.serialize = ExportStateScalarSerialize;
380
356
  result.deserialize = ExportStateScalarDeserialize;
381
- result.format_serialize = ExportStateScalarFormatSerialize;
382
- result.format_deserialize = ExportStateScalarFormatDeserialize;
383
357
  return result;
384
358
  }
385
359
 
@@ -13,8 +13,7 @@ ScalarFunction::ScalarFunction(string name, vector<LogicalType> arguments, Logic
13
13
  : BaseScalarFunction(std::move(name), std::move(arguments), std::move(return_type), side_effects,
14
14
  std::move(varargs), null_handling),
15
15
  function(std::move(function)), bind(bind), init_local_state(init_local_state), dependency(dependency),
16
- statistics(statistics), serialize(nullptr), deserialize(nullptr), format_serialize(nullptr),
17
- format_deserialize(nullptr) {
16
+ statistics(statistics), serialize(nullptr), deserialize(nullptr) {
18
17
  }
19
18
 
20
19
  ScalarFunction::ScalarFunction(vector<LogicalType> arguments, LogicalType return_type, scalar_function_t function,
@@ -49,14 +49,4 @@ string ScalarMacroFunction::ToSQL(const string &schema, const string &name) cons
49
49
  return MacroFunction::ToSQL(schema, name) + StringUtil::Format("(%s);", expression_copy->ToString());
50
50
  }
51
51
 
52
- void ScalarMacroFunction::SerializeInternal(FieldWriter &writer) const {
53
- writer.WriteSerializable(*expression);
54
- }
55
-
56
- unique_ptr<MacroFunction> ScalarMacroFunction::Deserialize(FieldReader &reader) {
57
- auto result = make_uniq<ScalarMacroFunction>();
58
- result->expression = reader.ReadRequiredSerializable<ParsedExpression>();
59
- return std::move(result);
60
- }
61
-
62
52
  } // namespace duckdb