duckdb 0.10.1-dev9.0 → 0.10.2-dev0.0
Sign up to get free protection for your applications and to get access to all the features.
- package/.github/workflows/NodeJS.yml +9 -16
- package/binding.gyp +4 -1
- package/package.json +1 -1
- package/src/database.cpp +1 -0
- package/src/duckdb/extension/icu/icu-strptime.cpp +46 -4
- package/src/duckdb/extension/icu/icu-table-range.cpp +5 -0
- package/src/duckdb/extension/icu/icu-timezone.cpp +28 -4
- package/src/duckdb/extension/json/buffered_json_reader.cpp +6 -5
- package/src/duckdb/extension/json/include/buffered_json_reader.hpp +3 -3
- package/src/duckdb/extension/json/include/json_transform.hpp +2 -0
- package/src/duckdb/extension/json/json_functions/json_create.cpp +6 -0
- package/src/duckdb/extension/json/json_functions/json_transform.cpp +8 -9
- package/src/duckdb/extension/json/json_functions.cpp +1 -2
- package/src/duckdb/extension/json/json_scan.cpp +1 -0
- package/src/duckdb/extension/parquet/column_reader.cpp +17 -1
- package/src/duckdb/extension/parquet/column_writer.cpp +151 -20
- package/src/duckdb/extension/parquet/include/column_writer.hpp +3 -4
- package/src/duckdb/extension/parquet/parquet_extension.cpp +14 -9
- package/src/duckdb/extension/parquet/parquet_timestamp.cpp +10 -0
- package/src/duckdb/extension/parquet/parquet_writer.cpp +4 -0
- package/src/duckdb/src/catalog/catalog.cpp +94 -10
- package/src/duckdb/src/catalog/catalog_entry/duck_table_entry.cpp +9 -5
- package/src/duckdb/src/catalog/catalog_entry/table_catalog_entry.cpp +1 -0
- package/src/duckdb/src/catalog/catalog_entry/ub_duckdb_catalog_entries.cpp +16 -0
- package/src/duckdb/src/catalog/catalog_entry/view_catalog_entry.cpp +28 -0
- package/src/duckdb/src/catalog/default/default_functions.cpp +3 -0
- package/src/duckdb/src/catalog/default/default_views.cpp +3 -3
- package/src/duckdb/src/catalog/default/ub_duckdb_catalog_default_entries.cpp +5 -0
- package/src/duckdb/src/catalog/dependency_catalog_set.cpp +1 -3
- package/src/duckdb/src/catalog/dependency_manager.cpp +2 -5
- package/src/duckdb/src/catalog/ub_duckdb_catalog.cpp +10 -0
- package/src/duckdb/src/common/adbc/adbc.cpp +1 -1
- package/src/duckdb/src/common/adbc/driver_manager.cpp +2 -1
- package/src/duckdb/src/common/adbc/nanoarrow/ub_duckdb_adbc_nanoarrow.cpp +5 -0
- package/src/duckdb/src/common/adbc/ub_duckdb_adbc.cpp +3 -0
- package/src/duckdb/src/common/allocator.cpp +34 -8
- package/src/duckdb/src/common/arrow/appender/fixed_size_list_data.cpp +39 -0
- package/src/duckdb/src/common/arrow/appender/ub_duckdb_common_arrow_appender.cpp +6 -0
- package/src/duckdb/src/common/arrow/appender/union_data.cpp +2 -1
- package/src/duckdb/src/common/arrow/arrow_appender.cpp +5 -5
- package/src/duckdb/src/common/arrow/arrow_converter.cpp +17 -0
- package/src/duckdb/src/common/arrow/ub_duckdb_common_arrow.cpp +4 -0
- package/src/duckdb/src/common/compressed_file_system.cpp +1 -0
- package/src/duckdb/src/common/crypto/ub_duckdb_common_crypto.cpp +2 -0
- package/src/duckdb/src/common/enum_util.cpp +153 -13
- package/src/duckdb/src/common/enums/logical_operator_type.cpp +0 -2
- package/src/duckdb/src/common/enums/physical_operator_type.cpp +2 -2
- package/src/duckdb/src/common/enums/ub_duckdb_common_enums.cpp +12 -0
- package/src/duckdb/src/common/exception/conversion_exception.cpp +23 -0
- package/src/duckdb/src/common/exception.cpp +7 -14
- package/src/duckdb/src/common/extra_type_info.cpp +6 -5
- package/src/duckdb/src/common/gzip_file_system.cpp +5 -4
- package/src/duckdb/src/common/local_file_system.cpp +85 -10
- package/src/duckdb/src/common/operator/cast_operators.cpp +413 -305
- package/src/duckdb/src/common/operator/ub_duckdb_common_operators.cpp +4 -0
- package/src/duckdb/src/common/progress_bar/ub_duckdb_progress_bar.cpp +3 -0
- package/src/duckdb/src/common/re2_regex.cpp +2 -1
- package/src/duckdb/src/common/row_operations/row_heap_scatter.cpp +2 -2
- package/src/duckdb/src/common/row_operations/row_matcher.cpp +1 -0
- package/src/duckdb/src/common/row_operations/row_scatter.cpp +2 -2
- package/src/duckdb/src/common/row_operations/ub_duckdb_row_operations.cpp +9 -0
- package/src/duckdb/src/common/serializer/binary_serializer.cpp +3 -3
- package/src/duckdb/src/common/serializer/ub_duckdb_common_serializer.cpp +7 -0
- package/src/duckdb/src/common/sort/partition_state.cpp +2 -3
- package/src/duckdb/src/common/sort/ub_duckdb_sort.cpp +7 -0
- package/src/duckdb/src/common/string_util.cpp +3 -3
- package/src/duckdb/src/common/types/bit.cpp +7 -6
- package/src/duckdb/src/common/types/blob.cpp +20 -9
- package/src/duckdb/src/common/types/column/column_data_allocator.cpp +8 -6
- package/src/duckdb/src/common/types/column/column_data_collection.cpp +11 -1
- package/src/duckdb/src/common/types/column/column_data_collection_segment.cpp +5 -0
- package/src/duckdb/src/common/types/column/partitioned_column_data.cpp +1 -1
- package/src/duckdb/src/common/types/column/ub_duckdb_common_types_column.cpp +6 -0
- package/src/duckdb/src/common/types/data_chunk.cpp +1 -1
- package/src/duckdb/src/common/types/date.cpp +1 -1
- package/src/duckdb/src/common/types/hugeint.cpp +3 -2
- package/src/duckdb/src/common/types/interval.cpp +1 -1
- package/src/duckdb/src/common/types/list_segment.cpp +2 -1
- package/src/duckdb/src/common/types/row/partitioned_tuple_data.cpp +3 -9
- package/src/duckdb/src/common/types/row/tuple_data_allocator.cpp +7 -7
- package/src/duckdb/src/common/types/row/tuple_data_collection.cpp +10 -27
- package/src/duckdb/src/common/types/row/tuple_data_scatter_gather.cpp +168 -88
- package/src/duckdb/src/common/types/row/ub_duckdb_common_types_row.cpp +11 -0
- package/src/duckdb/src/common/types/selection_vector.cpp +1 -1
- package/src/duckdb/src/common/types/string_heap.cpp +5 -1
- package/src/duckdb/src/common/types/string_type.cpp +18 -4
- package/src/duckdb/src/common/types/time.cpp +4 -2
- package/src/duckdb/src/common/types/timestamp.cpp +32 -6
- package/src/duckdb/src/common/types/ub_duckdb_common_types.cpp +28 -0
- package/src/duckdb/src/common/types/uhugeint.cpp +3 -2
- package/src/duckdb/src/common/types/uuid.cpp +11 -0
- package/src/duckdb/src/common/types/validity_mask.cpp +4 -3
- package/src/duckdb/src/common/types/value.cpp +17 -6
- package/src/duckdb/src/common/types/vector.cpp +243 -68
- package/src/duckdb/src/common/types.cpp +7 -5
- package/src/duckdb/src/common/ub_duckdb_common.cpp +34 -0
- package/src/duckdb/src/common/value_operations/ub_duckdb_value_operations.cpp +2 -0
- package/src/duckdb/src/common/vector_operations/generators.cpp +2 -1
- package/src/duckdb/src/common/vector_operations/vector_cast.cpp +4 -4
- package/src/duckdb/src/common/vector_operations/vector_copy.cpp +2 -2
- package/src/duckdb/src/common/vector_operations/vector_hash.cpp +17 -6
- package/src/duckdb/src/core_functions/aggregate/algebraic/ub_duckdb_aggr_algebraic.cpp +5 -0
- package/src/duckdb/src/core_functions/aggregate/distributive/arg_min_max.cpp +30 -6
- package/src/duckdb/src/core_functions/aggregate/distributive/bitagg.cpp +1 -1
- package/src/duckdb/src/core_functions/aggregate/distributive/bitstring_agg.cpp +12 -5
- package/src/duckdb/src/core_functions/aggregate/distributive/minmax.cpp +2 -2
- package/src/duckdb/src/core_functions/aggregate/distributive/string_agg.cpp +2 -1
- package/src/duckdb/src/core_functions/aggregate/distributive/ub_duckdb_aggr_distributive.cpp +13 -0
- package/src/duckdb/src/core_functions/aggregate/holistic/mode.cpp +2 -1
- package/src/duckdb/src/core_functions/aggregate/holistic/quantile.cpp +2 -9
- package/src/duckdb/src/core_functions/aggregate/holistic/ub_duckdb_aggr_holistic.cpp +5 -0
- package/src/duckdb/src/core_functions/aggregate/nested/ub_duckdb_aggr_nested.cpp +3 -0
- package/src/duckdb/src/core_functions/aggregate/regression/ub_duckdb_aggr_regr.cpp +8 -0
- package/src/duckdb/src/core_functions/function_list.cpp +1 -0
- package/src/duckdb/src/core_functions/scalar/bit/bitstring.cpp +2 -2
- package/src/duckdb/src/core_functions/scalar/bit/ub_duckdb_func_bit.cpp +2 -0
- package/src/duckdb/src/core_functions/scalar/blob/ub_duckdb_func_blob.cpp +3 -0
- package/src/duckdb/src/core_functions/scalar/date/date_diff.cpp +8 -0
- package/src/duckdb/src/core_functions/scalar/date/date_part.cpp +22 -3
- package/src/duckdb/src/core_functions/scalar/date/make_date.cpp +29 -7
- package/src/duckdb/src/core_functions/scalar/date/to_interval.cpp +3 -1
- package/src/duckdb/src/core_functions/scalar/date/ub_duckdb_func_date.cpp +12 -0
- package/src/duckdb/src/core_functions/scalar/debug/ub_duckdb_func_debug.cpp +2 -0
- package/src/duckdb/src/core_functions/scalar/enum/ub_duckdb_func_enum.cpp +2 -0
- package/src/duckdb/src/core_functions/scalar/generic/ub_duckdb_func_generic.cpp +9 -0
- package/src/duckdb/src/core_functions/scalar/list/array_slice.cpp +12 -8
- package/src/duckdb/src/core_functions/scalar/list/list_aggregates.cpp +2 -1
- package/src/duckdb/src/core_functions/scalar/list/list_reduce.cpp +6 -5
- package/src/duckdb/src/core_functions/scalar/list/list_sort.cpp +5 -3
- package/src/duckdb/src/core_functions/scalar/list/list_value.cpp +28 -12
- package/src/duckdb/src/core_functions/scalar/list/ub_duckdb_func_list.cpp +11 -0
- package/src/duckdb/src/core_functions/scalar/map/map.cpp +129 -160
- package/src/duckdb/src/core_functions/scalar/map/ub_duckdb_func_map_nested.cpp +8 -0
- package/src/duckdb/src/core_functions/scalar/math/numeric.cpp +19 -16
- package/src/duckdb/src/core_functions/scalar/math/ub_duckdb_func_math.cpp +1 -0
- package/src/duckdb/src/core_functions/scalar/operators/bitwise.cpp +4 -4
- package/src/duckdb/src/core_functions/scalar/operators/ub_duckdb_func_ops.cpp +1 -0
- package/src/duckdb/src/core_functions/scalar/random/ub_duckdb_func_random.cpp +3 -0
- package/src/duckdb/src/core_functions/scalar/string/hex.cpp +2 -1
- package/src/duckdb/src/core_functions/scalar/string/pad.cpp +2 -2
- package/src/duckdb/src/core_functions/scalar/string/repeat.cpp +1 -1
- package/src/duckdb/src/core_functions/scalar/string/replace.cpp +1 -1
- package/src/duckdb/src/core_functions/scalar/string/string_split.cpp +2 -1
- package/src/duckdb/src/core_functions/scalar/string/translate.cpp +1 -1
- package/src/duckdb/src/core_functions/scalar/string/ub_duckdb_func_string.cpp +26 -0
- package/src/duckdb/src/core_functions/scalar/struct/ub_duckdb_func_struct.cpp +3 -0
- package/src/duckdb/src/core_functions/scalar/union/ub_duckdb_func_union.cpp +4 -0
- package/src/duckdb/src/core_functions/ub_duckdb_core_functions.cpp +3 -0
- package/src/duckdb/src/execution/adaptive_filter.cpp +1 -1
- package/src/duckdb/src/execution/aggregate_hashtable.cpp +1 -1
- package/src/duckdb/src/execution/column_binding_resolver.cpp +7 -1
- package/src/duckdb/src/execution/expression_executor/execute_case.cpp +2 -2
- package/src/duckdb/src/execution/expression_executor/execute_cast.cpp +2 -0
- package/src/duckdb/src/execution/expression_executor/execute_function.cpp +2 -2
- package/src/duckdb/src/execution/expression_executor/execute_operator.cpp +1 -1
- package/src/duckdb/src/execution/expression_executor/ub_duckdb_expression_executor.cpp +11 -0
- package/src/duckdb/src/execution/expression_executor.cpp +5 -2
- package/src/duckdb/src/execution/index/art/art.cpp +12 -6
- package/src/duckdb/src/execution/index/art/art_key.cpp +3 -3
- package/src/duckdb/src/execution/index/art/leaf.cpp +2 -2
- package/src/duckdb/src/execution/index/art/node16.cpp +2 -2
- package/src/duckdb/src/execution/index/art/node256.cpp +3 -3
- package/src/duckdb/src/execution/index/art/node48.cpp +5 -5
- package/src/duckdb/src/execution/index/art/prefix.cpp +1 -1
- package/src/duckdb/src/execution/index/art/ub_duckdb_art_index_execution.cpp +12 -0
- package/src/duckdb/src/execution/index/art/ub_duckdb_execution_index_art.cpp +11 -0
- package/src/duckdb/src/execution/index/fixed_size_buffer.cpp +6 -5
- package/src/duckdb/src/execution/index/ub_duckdb_execution_index.cpp +3 -0
- package/src/duckdb/src/execution/nested_loop_join/ub_duckdb_nested_loop_join.cpp +3 -0
- package/src/duckdb/src/execution/operator/aggregate/aggregate_object.cpp +1 -1
- package/src/duckdb/src/execution/operator/aggregate/physical_hash_aggregate.cpp +3 -4
- package/src/duckdb/src/execution/operator/aggregate/physical_streaming_window.cpp +0 -1
- package/src/duckdb/src/execution/operator/aggregate/physical_ungrouped_aggregate.cpp +3 -4
- package/src/duckdb/src/execution/operator/aggregate/ub_duckdb_operator_aggregate.cpp +9 -0
- package/src/duckdb/src/execution/operator/csv_scanner/buffer_manager/csv_buffer.cpp +1 -1
- package/src/duckdb/src/execution/operator/csv_scanner/buffer_manager/csv_buffer_manager.cpp +8 -3
- package/src/duckdb/src/execution/operator/csv_scanner/buffer_manager/csv_file_handle.cpp +1 -1
- package/src/duckdb/src/execution/operator/csv_scanner/scanner/base_scanner.cpp +5 -5
- package/src/duckdb/src/execution/operator/csv_scanner/scanner/column_count_scanner.cpp +2 -3
- package/src/duckdb/src/execution/operator/csv_scanner/scanner/scanner_boundary.cpp +5 -1
- package/src/duckdb/src/execution/operator/csv_scanner/scanner/skip_scanner.cpp +2 -2
- package/src/duckdb/src/execution/operator/csv_scanner/scanner/string_value_scanner.cpp +151 -79
- package/src/duckdb/src/execution/operator/csv_scanner/sniffer/csv_sniffer.cpp +11 -6
- package/src/duckdb/src/execution/operator/csv_scanner/sniffer/dialect_detection.cpp +27 -6
- package/src/duckdb/src/execution/operator/csv_scanner/sniffer/header_detection.cpp +71 -18
- package/src/duckdb/src/execution/operator/csv_scanner/sniffer/type_detection.cpp +22 -11
- package/src/duckdb/src/execution/operator/csv_scanner/sniffer/type_refinement.cpp +6 -4
- package/src/duckdb/src/execution/operator/csv_scanner/sniffer/type_replacement.cpp +5 -3
- package/src/duckdb/src/execution/operator/csv_scanner/sniffer/ub_duckdb_operator_csv_sniffer.cpp +7 -0
- package/src/duckdb/src/execution/operator/csv_scanner/state_machine/csv_state_machine.cpp +3 -3
- package/src/duckdb/src/execution/operator/csv_scanner/state_machine/csv_state_machine_cache.cpp +30 -5
- package/src/duckdb/src/execution/operator/csv_scanner/table_function/csv_file_scanner.cpp +6 -2
- package/src/duckdb/src/execution/operator/csv_scanner/table_function/global_csv_state.cpp +47 -46
- package/src/duckdb/src/execution/operator/csv_scanner/ub_duckdb_operator_csv_scanner.cpp +10 -0
- package/src/duckdb/src/execution/operator/csv_scanner/util/csv_error.cpp +102 -54
- package/src/duckdb/src/execution/operator/csv_scanner/util/csv_reader_options.cpp +8 -1
- package/src/duckdb/src/execution/operator/filter/ub_duckdb_operator_filter.cpp +2 -0
- package/src/duckdb/src/execution/operator/helper/physical_limit.cpp +54 -36
- package/src/duckdb/src/execution/operator/helper/physical_limit_percent.cpp +56 -32
- package/src/duckdb/src/execution/operator/helper/physical_streaming_limit.cpp +9 -13
- package/src/duckdb/src/execution/operator/helper/physical_transaction.cpp +12 -0
- package/src/duckdb/src/execution/operator/helper/physical_verify_vector.cpp +221 -0
- package/src/duckdb/src/execution/operator/helper/ub_duckdb_operator_helper.cpp +18 -0
- package/src/duckdb/src/execution/operator/join/physical_asof_join.cpp +1 -0
- package/src/duckdb/src/execution/operator/join/physical_hash_join.cpp +23 -8
- package/src/duckdb/src/execution/operator/join/physical_range_join.cpp +8 -3
- package/src/duckdb/src/execution/operator/join/ub_duckdb_operator_join.cpp +16 -0
- package/src/duckdb/src/execution/operator/order/physical_order.cpp +2 -3
- package/src/duckdb/src/execution/operator/order/physical_top_n.cpp +2 -7
- package/src/duckdb/src/execution/operator/order/ub_duckdb_operator_order.cpp +3 -0
- package/src/duckdb/src/execution/operator/persistent/physical_batch_copy_to_file.cpp +451 -55
- package/src/duckdb/src/execution/operator/persistent/physical_batch_insert.cpp +312 -150
- package/src/duckdb/src/execution/operator/persistent/physical_copy_to_file.cpp +200 -75
- package/src/duckdb/src/execution/operator/persistent/physical_delete.cpp +1 -0
- package/src/duckdb/src/execution/operator/persistent/physical_insert.cpp +6 -5
- package/src/duckdb/src/execution/operator/persistent/ub_duckdb_operator_persistent.cpp +10 -0
- package/src/duckdb/src/execution/operator/projection/physical_pivot.cpp +3 -2
- package/src/duckdb/src/execution/operator/projection/ub_duckdb_operator_projection.cpp +5 -0
- package/src/duckdb/src/execution/operator/scan/ub_duckdb_operator_scan.cpp +7 -0
- package/src/duckdb/src/execution/operator/schema/ub_duckdb_operator_schema.cpp +12 -0
- package/src/duckdb/src/execution/operator/set/physical_recursive_cte.cpp +25 -0
- package/src/duckdb/src/execution/operator/set/ub_duckdb_operator_set.cpp +4 -0
- package/src/duckdb/src/execution/perfect_aggregate_hashtable.cpp +4 -4
- package/src/duckdb/src/execution/physical_plan/plan_aggregate.cpp +2 -2
- package/src/duckdb/src/execution/physical_plan/plan_comparison_join.cpp +2 -2
- package/src/duckdb/src/execution/physical_plan/plan_copy_to_file.cpp +7 -17
- package/src/duckdb/src/execution/physical_plan/plan_distinct.cpp +10 -0
- package/src/duckdb/src/execution/physical_plan/plan_insert.cpp +7 -0
- package/src/duckdb/src/execution/physical_plan/plan_limit.cpp +45 -13
- package/src/duckdb/src/execution/physical_plan/ub_duckdb_physical_plan.cpp +44 -0
- package/src/duckdb/src/execution/physical_plan_generator.cpp +5 -3
- package/src/duckdb/src/execution/radix_partitioned_hashtable.cpp +13 -12
- package/src/duckdb/src/execution/ub_duckdb_execution.cpp +15 -0
- package/src/duckdb/src/execution/window_executor.cpp +71 -61
- package/src/duckdb/src/execution/window_segment_tree.cpp +6 -6
- package/src/duckdb/src/extension_forward_decl/icu.cpp +59 -0
- package/src/duckdb/src/function/aggregate/algebraic/ub_duckdb_aggr_algebraic.cpp +5 -0
- package/src/duckdb/src/function/aggregate/distributive/first.cpp +2 -2
- package/src/duckdb/src/function/aggregate/distributive/ub_duckdb_aggr_distr.cpp +3 -0
- package/src/duckdb/src/function/aggregate/holistic/ub_duckdb_aggr_holistic.cpp +5 -0
- package/src/duckdb/src/function/aggregate/nested/ub_duckdb_aggr_nested.cpp +3 -0
- package/src/duckdb/src/function/aggregate/regression/ub_duckdb_aggr_regr.cpp +8 -0
- package/src/duckdb/src/function/aggregate/sorted_aggregate_function.cpp +3 -2
- package/src/duckdb/src/function/aggregate/ub_duckdb_func_aggr.cpp +3 -0
- package/src/duckdb/src/function/cast/array_casts.cpp +2 -4
- package/src/duckdb/src/function/cast/bit_cast.cpp +13 -13
- package/src/duckdb/src/function/cast/cast_function_set.cpp +2 -0
- package/src/duckdb/src/function/cast/decimal_cast.cpp +38 -44
- package/src/duckdb/src/function/cast/default_casts.cpp +5 -2
- package/src/duckdb/src/function/cast/enum_casts.cpp +5 -5
- package/src/duckdb/src/function/cast/list_casts.cpp +24 -14
- package/src/duckdb/src/function/cast/string_cast.cpp +48 -30
- package/src/duckdb/src/function/cast/struct_cast.cpp +2 -2
- package/src/duckdb/src/function/cast/time_casts.cpp +12 -0
- package/src/duckdb/src/function/cast/ub_duckdb_func_cast.cpp +17 -0
- package/src/duckdb/src/function/cast/union/ub_duckdb_union_cast.cpp +2 -0
- package/src/duckdb/src/function/cast/union_casts.cpp +13 -15
- package/src/duckdb/src/function/cast/vector_cast_helpers.cpp +1 -1
- package/src/duckdb/src/function/cast_rules.cpp +2 -1
- package/src/duckdb/src/function/pragma/ub_duckdb_func_pragma.cpp +3 -0
- package/src/duckdb/src/function/scalar/bit/ub_duckdb_func_bit.cpp +2 -0
- package/src/duckdb/src/function/scalar/blob/ub_duckdb_func_blob.cpp +3 -0
- package/src/duckdb/src/function/scalar/compressed_materialization/compress_integral.cpp +7 -6
- package/src/duckdb/src/function/scalar/compressed_materialization/compress_string.cpp +3 -3
- package/src/duckdb/src/function/scalar/compressed_materialization/ub_duckdb_func_compressed_materialization.cpp +3 -0
- package/src/duckdb/src/function/scalar/date/ub_duckdb_func_date.cpp +12 -0
- package/src/duckdb/src/function/scalar/enum/ub_duckdb_func_enum.cpp +2 -0
- package/src/duckdb/src/function/scalar/generic/ub_duckdb_func_generic.cpp +8 -0
- package/src/duckdb/src/function/scalar/generic/ub_duckdb_func_generic_main.cpp +2 -0
- package/src/duckdb/src/function/scalar/list/list_resize.cpp +3 -1
- package/src/duckdb/src/function/scalar/list/list_zip.cpp +3 -4
- package/src/duckdb/src/function/scalar/list/ub_duckdb_func_list.cpp +11 -0
- package/src/duckdb/src/function/scalar/list/ub_duckdb_func_list_nested.cpp +5 -0
- package/src/duckdb/src/function/scalar/map/ub_duckdb_func_map_nested.cpp +7 -0
- package/src/duckdb/src/function/scalar/math/ub_duckdb_func_math.cpp +4 -0
- package/src/duckdb/src/function/scalar/nested_functions.cpp +7 -3
- package/src/duckdb/src/function/scalar/operators/arithmetic.cpp +1 -1
- package/src/duckdb/src/function/scalar/operators/multiply.cpp +4 -2
- package/src/duckdb/src/function/scalar/operators/subtract.cpp +9 -3
- package/src/duckdb/src/function/scalar/operators/ub_duckdb_func_ops.cpp +6 -0
- package/src/duckdb/src/function/scalar/operators/ub_duckdb_func_ops_main.cpp +5 -0
- package/src/duckdb/src/function/scalar/sequence/ub_duckdb_func_seq.cpp +2 -0
- package/src/duckdb/src/function/scalar/strftime_format.cpp +21 -20
- package/src/duckdb/src/function/scalar/string/like.cpp +14 -3
- package/src/duckdb/src/function/scalar/string/regexp/regexp_extract_all.cpp +4 -2
- package/src/duckdb/src/function/scalar/string/regexp/ub_duckdb_func_string_regexp.cpp +3 -0
- package/src/duckdb/src/function/scalar/string/regexp.cpp +6 -4
- package/src/duckdb/src/function/scalar/string/suffix.cpp +1 -1
- package/src/duckdb/src/function/scalar/string/ub_duckdb_func_string.cpp +31 -0
- package/src/duckdb/src/function/scalar/string/ub_duckdb_func_string_main.cpp +12 -0
- package/src/duckdb/src/function/scalar/struct/ub_duckdb_func_struct.cpp +4 -0
- package/src/duckdb/src/function/scalar/struct/ub_duckdb_func_struct_main.cpp +2 -0
- package/src/duckdb/src/function/scalar/system/ub_duckdb_func_system.cpp +2 -0
- package/src/duckdb/src/function/scalar/ub_duckdb_func_scalar.cpp +9 -0
- package/src/duckdb/src/function/scalar/union/ub_duckdb_func_union.cpp +4 -0
- package/src/duckdb/src/function/table/arrow/arrow_array_scan_state.cpp +28 -2
- package/src/duckdb/src/function/table/arrow/ub_duckdb_arrow_conversion.cpp +2 -0
- package/src/duckdb/src/function/table/arrow.cpp +23 -6
- package/src/duckdb/src/function/table/arrow_conversion.cpp +75 -33
- package/src/duckdb/src/function/table/copy_csv.cpp +8 -3
- package/src/duckdb/src/function/table/range.cpp +5 -0
- package/src/duckdb/src/function/table/read_csv.cpp +9 -8
- package/src/duckdb/src/function/table/read_file.cpp +1 -1
- package/src/duckdb/src/function/table/sniff_csv.cpp +5 -5
- package/src/duckdb/src/function/table/system/duckdb_columns.cpp +6 -2
- package/src/duckdb/src/function/table/system/duckdb_secrets.cpp +5 -1
- package/src/duckdb/src/function/table/system/duckdb_sequences.cpp +3 -1
- package/src/duckdb/src/function/table/system/duckdb_settings.cpp +13 -1
- package/src/duckdb/src/function/table/system/test_all_types.cpp +64 -0
- package/src/duckdb/src/function/table/system/ub_duckdb_table_func_system.cpp +23 -0
- package/src/duckdb/src/function/table/ub_duckdb_func_table.cpp +16 -0
- package/src/duckdb/src/function/table/version/pragma_version.cpp +11 -2
- package/src/duckdb/src/function/table/version/ub_duckdb_func_table_version.cpp +2 -0
- package/src/duckdb/src/function/ub_duckdb_function.cpp +14 -0
- package/src/duckdb/src/include/duckdb/catalog/catalog.hpp +11 -1
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/view_catalog_entry.hpp +2 -0
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/allocator.hpp +8 -11
- package/src/duckdb/src/include/duckdb/common/arrow/appender/enum_data.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/arrow/appender/fixed_size_list_data.hpp +14 -0
- package/src/duckdb/src/include/duckdb/common/arrow/appender/list.hpp +1 -0
- package/src/duckdb/src/include/duckdb/common/arrow/appender/list_data.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/arrow/appender/varchar_data.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/bitpacking.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/bswap.hpp +6 -2
- package/src/duckdb/src/include/duckdb/common/enum_util.hpp +32 -0
- package/src/duckdb/src/include/duckdb/common/enums/catalog_lookup_behavior.hpp +21 -0
- package/src/duckdb/src/include/duckdb/common/enums/logical_operator_type.hpp +0 -1
- package/src/duckdb/src/include/duckdb/common/enums/physical_operator_type.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/enums/prepared_statement_mode.hpp +20 -0
- package/src/duckdb/src/include/duckdb/common/enums/statement_type.hpp +2 -0
- package/src/duckdb/src/include/duckdb/common/exception/conversion_exception.hpp +6 -0
- package/src/duckdb/src/include/duckdb/common/exception/parser_exception.hpp +4 -0
- package/src/duckdb/src/include/duckdb/common/exception.hpp +2 -0
- package/src/duckdb/src/include/duckdb/common/extra_type_info.hpp +3 -3
- package/src/duckdb/src/include/duckdb/common/file_opener.hpp +6 -5
- package/src/duckdb/src/include/duckdb/common/file_system.hpp +4 -2
- package/src/duckdb/src/include/duckdb/common/helper.hpp +7 -0
- package/src/duckdb/src/include/duckdb/common/limits.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/local_file_system.hpp +3 -0
- package/src/duckdb/src/include/duckdb/common/numeric_utils.hpp +64 -0
- package/src/duckdb/src/include/duckdb/common/operator/cast_operators.hpp +34 -33
- package/src/duckdb/src/include/duckdb/common/operator/decimal_cast_operators.hpp +150 -124
- package/src/duckdb/src/include/duckdb/common/operator/integer_cast_operator.hpp +5 -5
- package/src/duckdb/src/include/duckdb/common/radix.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/serializer/deserializer.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/sort/duckdb_pdqsort.hpp +4 -4
- package/src/duckdb/src/include/duckdb/common/types/bit.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/types/blob.hpp +4 -1
- package/src/duckdb/src/include/duckdb/common/types/cast_helpers.hpp +15 -13
- package/src/duckdb/src/include/duckdb/common/types/column/column_data_allocator.hpp +5 -0
- package/src/duckdb/src/include/duckdb/common/types/column/column_data_collection.hpp +2 -0
- package/src/duckdb/src/include/duckdb/common/types/column/column_data_collection_segment.hpp +3 -0
- package/src/duckdb/src/include/duckdb/common/types/column/partitioned_column_data.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/types/row/partitioned_tuple_data.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/types/row/tuple_data_states.hpp +4 -1
- package/src/duckdb/src/include/duckdb/common/types/selection_vector.hpp +2 -1
- package/src/duckdb/src/include/duckdb/common/types/string_heap.hpp +2 -0
- package/src/duckdb/src/include/duckdb/common/types/string_type.hpp +11 -4
- package/src/duckdb/src/include/duckdb/common/types/time.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/types/timestamp.hpp +7 -2
- package/src/duckdb/src/include/duckdb/common/types/uuid.hpp +3 -0
- package/src/duckdb/src/include/duckdb/common/types/value.hpp +7 -0
- package/src/duckdb/src/include/duckdb/common/types/vector.hpp +40 -7
- package/src/duckdb/src/include/duckdb/common/types/vector_buffer.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/types.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/vector_operations/general_cast.hpp +12 -4
- package/src/duckdb/src/include/duckdb/common/vector_operations/generic_executor.hpp +6 -6
- package/src/duckdb/src/include/duckdb/common/vector_operations/vector_operations.hpp +3 -2
- package/src/duckdb/src/include/duckdb/common/windows_undefs.hpp +4 -0
- package/src/duckdb/src/include/duckdb/core_functions/aggregate/regression/regr_count.hpp +1 -1
- package/src/duckdb/src/include/duckdb/core_functions/scalar/list_functions.hpp +9 -0
- package/src/duckdb/src/include/duckdb/execution/column_binding_resolver.hpp +2 -1
- package/src/duckdb/src/include/duckdb/execution/executor.hpp +10 -0
- package/src/duckdb/src/include/duckdb/execution/expression_executor_state.hpp +1 -1
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/base_scanner.hpp +262 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/column_count_scanner.hpp +70 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_buffer.hpp +103 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_buffer_manager.hpp +74 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_casting.hpp +154 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_error.hpp +130 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_file_handle.hpp +60 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_file_scanner.hpp +70 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_option.hpp +155 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_reader_options.hpp +166 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_sniffer.hpp +191 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_state.hpp +30 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_state_machine.hpp +99 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_state_machine_cache.hpp +91 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/global_csv_state.hpp +80 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/quote_rules.hpp +21 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/scanner_boundary.hpp +93 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/skip_scanner.hpp +60 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/state_machine_options.hpp +35 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/string_value_scanner.hpp +200 -0
- package/src/duckdb/src/include/duckdb/execution/operator/helper/physical_limit.hpp +13 -10
- package/src/duckdb/src/include/duckdb/execution/operator/helper/physical_limit_percent.hpp +5 -11
- package/src/duckdb/src/include/duckdb/execution/operator/helper/physical_streaming_limit.hpp +4 -6
- package/src/duckdb/src/include/duckdb/execution/operator/helper/physical_verify_vector.hpp +51 -0
- package/src/duckdb/src/include/duckdb/execution/operator/join/physical_hash_join.hpp +3 -0
- package/src/duckdb/src/include/duckdb/execution/operator/persistent/batch_memory_manager.hpp +165 -0
- package/src/duckdb/src/include/duckdb/execution/operator/persistent/batch_task_manager.hpp +48 -0
- package/src/duckdb/src/include/duckdb/execution/operator/persistent/physical_batch_copy_to_file.hpp +10 -17
- package/src/duckdb/src/include/duckdb/execution/operator/persistent/physical_batch_insert.hpp +4 -0
- package/src/duckdb/src/include/duckdb/execution/operator/persistent/physical_copy_to_file.hpp +2 -0
- package/src/duckdb/src/include/duckdb/execution/physical_operator_states.hpp +10 -6
- package/src/duckdb/src/include/duckdb/execution/physical_plan_generator.hpp +0 -2
- package/src/duckdb/src/include/duckdb/execution/window_executor.hpp +2 -1
- package/src/duckdb/src/include/duckdb/execution/window_segment_tree.hpp +1 -1
- package/src/duckdb/src/include/duckdb/function/cast/cast_function_set.hpp +1 -0
- package/src/duckdb/src/include/duckdb/function/cast/default_casts.hpp +14 -5
- package/src/duckdb/src/include/duckdb/function/cast/vector_cast_helpers.hpp +27 -43
- package/src/duckdb/src/include/duckdb/function/compression_function.hpp +4 -4
- package/src/duckdb/src/include/duckdb/function/copy_function.hpp +3 -3
- package/src/duckdb/src/include/duckdb/function/function.hpp +1 -1
- package/src/duckdb/src/include/duckdb/function/scalar/list/contains_or_position.hpp +1 -0
- package/src/duckdb/src/include/duckdb/function/scalar/nested_functions.hpp +1 -1
- package/src/duckdb/src/include/duckdb/function/scalar_function.hpp +1 -1
- package/src/duckdb/src/include/duckdb/function/table/arrow.hpp +10 -4
- package/src/duckdb/src/include/duckdb/function/table/read_csv.hpp +8 -6
- package/src/duckdb/src/include/duckdb/function/table_function.hpp +3 -3
- package/src/duckdb/src/include/duckdb/main/attached_database.hpp +3 -0
- package/src/duckdb/src/include/duckdb/main/capi/cast/from_decimal.hpp +6 -4
- package/src/duckdb/src/include/duckdb/main/capi/cast/to_decimal.hpp +17 -10
- package/src/duckdb/src/include/duckdb/main/client_config.hpp +2 -0
- package/src/duckdb/src/include/duckdb/main/client_context.hpp +17 -3
- package/src/duckdb/src/include/duckdb/main/client_context_file_opener.hpp +2 -2
- package/src/duckdb/src/include/duckdb/main/client_context_state.hpp +20 -0
- package/src/duckdb/src/include/duckdb/main/client_data.hpp +1 -1
- package/src/duckdb/src/include/duckdb/main/database.hpp +3 -2
- package/src/duckdb/src/include/duckdb/main/database_manager.hpp +2 -1
- package/src/duckdb/src/include/duckdb/main/extension/generated_extension_loader.hpp +1 -1
- package/src/duckdb/src/include/duckdb/main/extension_entries.hpp +230 -199
- package/src/duckdb/src/include/duckdb/main/extension_helper.hpp +18 -0
- package/src/duckdb/src/include/duckdb/main/relation/read_csv_relation.hpp +1 -1
- package/src/duckdb/src/include/duckdb/main/relation/table_function_relation.hpp +2 -0
- package/src/duckdb/src/include/duckdb/main/relation.hpp +1 -1
- package/src/duckdb/src/include/duckdb/main/secret/secret_manager.hpp +4 -0
- package/src/duckdb/src/include/duckdb/main/settings.hpp +54 -10
- package/src/duckdb/src/include/duckdb/optimizer/join_order/relation_manager.hpp +2 -1
- package/src/duckdb/src/include/duckdb/optimizer/rule/ordered_aggregate_optimizer.hpp +2 -0
- package/src/duckdb/src/include/duckdb/parallel/concurrentqueue.hpp +21 -5
- package/src/duckdb/src/include/duckdb/parallel/event.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parallel/executor_task.hpp +37 -0
- package/src/duckdb/src/include/duckdb/parallel/interrupt.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parallel/pipeline.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parallel/task.hpp +0 -20
- package/src/duckdb/src/include/duckdb/parallel/task_scheduler.hpp +4 -2
- package/src/duckdb/src/include/duckdb/parser/expression/window_expression.hpp +10 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/alter_info.hpp +2 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/alter_table_info.hpp +0 -24
- package/src/duckdb/src/include/duckdb/parser/parsed_data/comment_on_column_info.hpp +46 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_view_info.hpp +2 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/extra_drop_info.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/parse_info.hpp +3 -2
- package/src/duckdb/src/include/duckdb/parser/tableref/pivotref.hpp +3 -3
- package/src/duckdb/src/include/duckdb/parser/transformer.hpp +3 -3
- package/src/duckdb/src/include/duckdb/planner/binder.hpp +11 -4
- package/src/duckdb/src/include/duckdb/planner/bound_result_modifier.hpp +59 -23
- package/src/duckdb/src/include/duckdb/planner/expression.hpp +1 -0
- package/src/duckdb/src/include/duckdb/planner/expression_binder/column_alias_binder.hpp +2 -2
- package/src/duckdb/src/include/duckdb/planner/expression_iterator.hpp +11 -3
- package/src/duckdb/src/include/duckdb/planner/extension_callback.hpp +6 -0
- package/src/duckdb/src/include/duckdb/planner/operator/list.hpp +0 -1
- package/src/duckdb/src/include/duckdb/planner/operator/logical_insert.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/operator/logical_limit.hpp +5 -9
- package/src/duckdb/src/include/duckdb/planner/subquery/rewrite_correlated_expressions.hpp +0 -15
- package/src/duckdb/src/include/duckdb/storage/arena_allocator.hpp +5 -0
- package/src/duckdb/src/include/duckdb/storage/buffer/buffer_pool.hpp +40 -5
- package/src/duckdb/src/include/duckdb/storage/compression/alp/algorithm/alp.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/compression/alp/alp_analyze.hpp +5 -1
- package/src/duckdb/src/include/duckdb/storage/compression/alp/alp_compress.hpp +4 -4
- package/src/duckdb/src/include/duckdb/storage/compression/alp/alp_utils.hpp +2 -1
- package/src/duckdb/src/include/duckdb/storage/compression/alprd/algorithm/alprd.hpp +10 -8
- package/src/duckdb/src/include/duckdb/storage/compression/alprd/alprd_analyze.hpp +5 -1
- package/src/duckdb/src/include/duckdb/storage/compression/alprd/alprd_compress.hpp +3 -3
- package/src/duckdb/src/include/duckdb/storage/compression/chimp/algorithm/bit_reader.hpp +11 -10
- package/src/duckdb/src/include/duckdb/storage/compression/chimp/algorithm/bit_utils.hpp +3 -1
- package/src/duckdb/src/include/duckdb/storage/compression/chimp/algorithm/chimp128.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/compression/chimp/algorithm/leading_zero_buffer.hpp +5 -3
- package/src/duckdb/src/include/duckdb/storage/compression/chimp/chimp_scan.hpp +2 -1
- package/src/duckdb/src/include/duckdb/storage/data_pointer.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/data_table.hpp +3 -1
- package/src/duckdb/src/include/duckdb/storage/index.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/partial_block_manager.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/standard_buffer_manager.hpp +3 -0
- package/src/duckdb/src/include/duckdb/storage/storage_manager.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/table/append_state.hpp +0 -2
- package/src/duckdb/src/include/duckdb/storage/table/column_checkpoint_state.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/table/column_data.hpp +5 -3
- package/src/duckdb/src/include/duckdb/storage/table/column_segment.hpp +2 -2
- package/src/duckdb/src/include/duckdb/storage/table/row_group.hpp +5 -0
- package/src/duckdb/src/include/duckdb/storage/table/row_group_collection.hpp +9 -2
- package/src/duckdb/src/include/duckdb/storage/table/scan_state.hpp +2 -6
- package/src/duckdb/src/include/duckdb/storage/table/segment_tree.hpp +3 -3
- package/src/duckdb/src/include/duckdb/storage/temporary_file_manager.hpp +169 -0
- package/src/duckdb/src/include/duckdb/transaction/duck_transaction_manager.hpp +11 -1
- package/src/duckdb/src/include/duckdb/transaction/meta_transaction.hpp +6 -1
- package/src/duckdb/src/include/duckdb/transaction/transaction.hpp +1 -1
- package/src/duckdb/src/include/duckdb.h +119 -67
- package/src/duckdb/src/main/appender.cpp +2 -1
- package/src/duckdb/src/main/attached_database.cpp +49 -27
- package/src/duckdb/src/main/capi/appender-c.cpp +1 -1
- package/src/duckdb/src/main/capi/cast/ub_duckdb_main_capi_cast.cpp +3 -0
- package/src/duckdb/src/main/capi/cast/utils-c.cpp +1 -1
- package/src/duckdb/src/main/capi/data_chunk-c.cpp +9 -1
- package/src/duckdb/src/main/capi/datetime-c.cpp +14 -8
- package/src/duckdb/src/main/capi/duckdb_value-c.cpp +29 -2
- package/src/duckdb/src/main/capi/helper-c.cpp +2 -0
- package/src/duckdb/src/main/capi/hugeint-c.cpp +2 -1
- package/src/duckdb/src/main/capi/logical_types-c.cpp +35 -1
- package/src/duckdb/src/main/capi/result-c.cpp +9 -0
- package/src/duckdb/src/main/capi/ub_duckdb_main_capi.cpp +19 -0
- package/src/duckdb/src/main/chunk_scan_state/ub_duckdb_main_chunk_scan_state.cpp +2 -0
- package/src/duckdb/src/main/client_context.cpp +133 -33
- package/src/duckdb/src/main/client_context_file_opener.cpp +8 -7
- package/src/duckdb/src/main/config.cpp +2 -0
- package/src/duckdb/src/main/connection_manager.cpp +8 -0
- package/src/duckdb/src/main/database.cpp +13 -4
- package/src/duckdb/src/main/database_manager.cpp +10 -1
- package/src/duckdb/src/main/extension/extension_helper.cpp +8 -5
- package/src/duckdb/src/main/extension/extension_install.cpp +1 -1
- package/src/duckdb/src/main/extension/ub_duckdb_main_extension.cpp +6 -0
- package/src/duckdb/src/main/prepared_statement_data.cpp +23 -6
- package/src/duckdb/src/main/query_profiler.cpp +9 -7
- package/src/duckdb/src/main/relation/read_csv_relation.cpp +17 -12
- package/src/duckdb/src/main/relation/ub_duckdb_main_relation.cpp +26 -0
- package/src/duckdb/src/main/relation/value_relation.cpp +2 -0
- package/src/duckdb/src/main/secret/secret.cpp +1 -1
- package/src/duckdb/src/main/secret/secret_manager.cpp +41 -8
- package/src/duckdb/src/main/secret/secret_storage.cpp +8 -2
- package/src/duckdb/src/main/settings/settings.cpp +42 -2
- package/src/duckdb/src/main/settings/ub_duckdb_main_settings.cpp +2 -0
- package/src/duckdb/src/main/ub_duckdb_main.cpp +25 -0
- package/src/duckdb/src/optimizer/compressed_materialization/ub_duckdb_optimizer_compressed_materialization.cpp +4 -0
- package/src/duckdb/src/optimizer/filter_combiner.cpp +20 -14
- package/src/duckdb/src/optimizer/in_clause_rewriter.cpp +5 -1
- package/src/duckdb/src/optimizer/join_order/relation_manager.cpp +23 -11
- package/src/duckdb/src/optimizer/join_order/ub_duckdb_optimizer_join_order.cpp +12 -0
- package/src/duckdb/src/optimizer/matcher/ub_duckdb_optimizer_matcher.cpp +2 -0
- package/src/duckdb/src/optimizer/pullup/ub_duckdb_optimizer_pullup.cpp +6 -0
- package/src/duckdb/src/optimizer/pushdown/pushdown_limit.cpp +1 -1
- package/src/duckdb/src/optimizer/pushdown/ub_duckdb_optimizer_pushdown.cpp +12 -0
- package/src/duckdb/src/optimizer/remove_unused_columns.cpp +7 -6
- package/src/duckdb/src/optimizer/rule/ordered_aggregate_optimizer.cpp +8 -6
- package/src/duckdb/src/optimizer/rule/regex_optimizations.cpp +1 -1
- package/src/duckdb/src/optimizer/rule/ub_duckdb_optimizer_rules.cpp +16 -0
- package/src/duckdb/src/optimizer/statistics/expression/propagate_cast.cpp +71 -1
- package/src/duckdb/src/optimizer/statistics/expression/ub_duckdb_optimizer_statistics_expr.cpp +11 -0
- package/src/duckdb/src/optimizer/statistics/operator/propagate_join.cpp +1 -1
- package/src/duckdb/src/optimizer/statistics/operator/propagate_limit.cpp +5 -1
- package/src/duckdb/src/optimizer/statistics/operator/ub_duckdb_optimizer_statistics_op.cpp +11 -0
- package/src/duckdb/src/optimizer/topn_optimizer.cpp +12 -11
- package/src/duckdb/src/optimizer/ub_duckdb_optimizer.cpp +20 -0
- package/src/duckdb/src/parallel/executor.cpp +8 -19
- package/src/duckdb/src/parallel/executor_task.cpp +6 -2
- package/src/duckdb/src/parallel/pipeline.cpp +12 -6
- package/src/duckdb/src/parallel/pipeline_executor.cpp +1 -1
- package/src/duckdb/src/parallel/pipeline_finish_event.cpp +2 -2
- package/src/duckdb/src/parallel/pipeline_initialize_event.cpp +1 -2
- package/src/duckdb/src/parallel/task_scheduler.cpp +15 -8
- package/src/duckdb/src/parallel/ub_duckdb_parallel.cpp +15 -0
- package/src/duckdb/src/parser/constraints/ub_duckdb_constraints.cpp +5 -0
- package/src/duckdb/src/parser/expression/ub_duckdb_expression.cpp +18 -0
- package/src/duckdb/src/parser/parsed_data/alter_table_info.cpp +0 -18
- package/src/duckdb/src/parser/parsed_data/comment_on_column_info.cpp +44 -0
- package/src/duckdb/src/parser/parsed_data/create_view_info.cpp +1 -0
- package/src/duckdb/src/parser/parsed_data/extra_drop_info.cpp +2 -0
- package/src/duckdb/src/parser/parsed_data/ub_duckdb_parsed_data.cpp +24 -0
- package/src/duckdb/src/parser/parser.cpp +1 -1
- package/src/duckdb/src/parser/query_error_context.cpp +15 -1
- package/src/duckdb/src/parser/query_node/ub_duckdb_query_node.cpp +5 -0
- package/src/duckdb/src/parser/statement/export_statement.cpp +2 -1
- package/src/duckdb/src/parser/statement/relation_statement.cpp +2 -2
- package/src/duckdb/src/parser/statement/ub_duckdb_statement.cpp +25 -0
- package/src/duckdb/src/parser/tableref/pivotref.cpp +3 -3
- package/src/duckdb/src/parser/tableref/showref.cpp +2 -0
- package/src/duckdb/src/parser/tableref/ub_duckdb_parser_tableref.cpp +8 -0
- package/src/duckdb/src/parser/transform/constraint/ub_duckdb_transformer_constraint.cpp +2 -0
- package/src/duckdb/src/parser/transform/expression/transform_boolean_test.cpp +1 -1
- package/src/duckdb/src/parser/transform/expression/transform_cast.cpp +10 -2
- package/src/duckdb/src/parser/transform/expression/transform_constant.cpp +7 -7
- package/src/duckdb/src/parser/transform/expression/transform_interval.cpp +2 -1
- package/src/duckdb/src/parser/transform/expression/ub_duckdb_transformer_expression.cpp +20 -0
- package/src/duckdb/src/parser/transform/helpers/transform_typename.cpp +2 -2
- package/src/duckdb/src/parser/transform/helpers/ub_duckdb_transformer_helpers.cpp +8 -0
- package/src/duckdb/src/parser/transform/statement/transform_comment_on.cpp +3 -8
- package/src/duckdb/src/parser/transform/statement/transform_pivot_stmt.cpp +3 -1
- package/src/duckdb/src/parser/transform/statement/transform_show_select.cpp +2 -3
- package/src/duckdb/src/parser/transform/statement/ub_duckdb_transformer_statement.cpp +37 -0
- package/src/duckdb/src/parser/transform/tableref/transform_join.cpp +16 -0
- package/src/duckdb/src/parser/transform/tableref/transform_pivot.cpp +49 -32
- package/src/duckdb/src/parser/transform/tableref/ub_duckdb_transformer_tableref.cpp +8 -0
- package/src/duckdb/src/parser/ub_duckdb_parser.cpp +15 -0
- package/src/duckdb/src/planner/binder/expression/bind_lambda.cpp +11 -4
- package/src/duckdb/src/planner/binder/expression/bind_operator_expression.cpp +4 -1
- package/src/duckdb/src/planner/binder/expression/bind_star_expression.cpp +71 -5
- package/src/duckdb/src/planner/binder/expression/bind_window_expression.cpp +35 -1
- package/src/duckdb/src/planner/binder/expression/ub_duckdb_bind_expression.cpp +20 -0
- package/src/duckdb/src/planner/binder/query_node/bind_select_node.cpp +55 -51
- package/src/duckdb/src/planner/binder/query_node/plan_query_node.cpp +1 -11
- package/src/duckdb/src/planner/binder/query_node/plan_subquery.cpp +2 -2
- package/src/duckdb/src/planner/binder/query_node/ub_duckdb_bind_query_node.cpp +12 -0
- package/src/duckdb/src/planner/binder/statement/bind_create.cpp +12 -6
- package/src/duckdb/src/planner/binder/statement/bind_drop.cpp +1 -1
- package/src/duckdb/src/planner/binder/statement/bind_export.cpp +8 -2
- package/src/duckdb/src/planner/binder/statement/bind_insert.cpp +6 -3
- package/src/duckdb/src/planner/binder/statement/bind_simple.cpp +13 -2
- package/src/duckdb/src/planner/binder/statement/ub_duckdb_bind_statement.cpp +26 -0
- package/src/duckdb/src/planner/binder/tableref/bind_basetableref.cpp +15 -4
- package/src/duckdb/src/planner/binder/tableref/bind_joinref.cpp +9 -2
- package/src/duckdb/src/planner/binder/tableref/bind_pivot.cpp +93 -45
- package/src/duckdb/src/planner/binder/tableref/bind_subqueryref.cpp +6 -1
- package/src/duckdb/src/planner/binder/tableref/ub_duckdb_bind_tableref.cpp +17 -0
- package/src/duckdb/src/planner/binder.cpp +22 -23
- package/src/duckdb/src/planner/bound_result_modifier.cpp +67 -4
- package/src/duckdb/src/planner/expression/bound_cast_expression.cpp +5 -1
- package/src/duckdb/src/planner/expression/bound_window_expression.cpp +3 -0
- package/src/duckdb/src/planner/expression/ub_duckdb_planner_expression.cpp +19 -0
- package/src/duckdb/src/planner/expression_binder/column_alias_binder.cpp +14 -9
- package/src/duckdb/src/planner/expression_binder/having_binder.cpp +17 -9
- package/src/duckdb/src/planner/expression_binder/lateral_binder.cpp +61 -37
- package/src/duckdb/src/planner/expression_binder/qualify_binder.cpp +8 -4
- package/src/duckdb/src/planner/expression_binder/ub_duckdb_expression_binders.cpp +20 -0
- package/src/duckdb/src/planner/expression_binder/where_binder.cpp +3 -2
- package/src/duckdb/src/planner/expression_iterator.cpp +73 -52
- package/src/duckdb/src/planner/filter/ub_duckdb_planner_filter.cpp +4 -0
- package/src/duckdb/src/planner/logical_operator_visitor.cpp +4 -14
- package/src/duckdb/src/planner/operator/logical_limit.cpp +14 -6
- package/src/duckdb/src/planner/operator/ub_duckdb_planner_operator.cpp +43 -0
- package/src/duckdb/src/planner/parsed_data/ub_duckdb_planner_parsed_data.cpp +2 -0
- package/src/duckdb/src/planner/planner.cpp +3 -0
- package/src/duckdb/src/planner/subquery/flatten_dependent_join.cpp +46 -18
- package/src/duckdb/src/planner/subquery/rewrite_correlated_expressions.cpp +39 -33
- package/src/duckdb/src/planner/subquery/ub_duckdb_planner_subquery.cpp +4 -0
- package/src/duckdb/src/planner/ub_duckdb_planner.cpp +15 -0
- package/src/duckdb/src/storage/arena_allocator.cpp +9 -0
- package/src/duckdb/src/storage/buffer/block_handle.cpp +7 -2
- package/src/duckdb/src/storage/buffer/block_manager.cpp +7 -3
- package/src/duckdb/src/storage/buffer/buffer_pool.cpp +121 -24
- package/src/duckdb/src/storage/buffer/ub_duckdb_storage_buffer.cpp +6 -0
- package/src/duckdb/src/storage/checkpoint/ub_duckdb_storage_checkpoint.cpp +5 -0
- package/src/duckdb/src/storage/checkpoint/write_overflow_strings_to_disk.cpp +4 -4
- package/src/duckdb/src/storage/compression/chimp/ub_duckdb_storage_compression_chimp.cpp +6 -0
- package/src/duckdb/src/storage/compression/dictionary_compression.cpp +6 -5
- package/src/duckdb/src/storage/compression/fsst.cpp +3 -2
- package/src/duckdb/src/storage/compression/rle.cpp +1 -1
- package/src/duckdb/src/storage/compression/string_uncompressed.cpp +4 -4
- package/src/duckdb/src/storage/compression/ub_duckdb_storage_compression.cpp +12 -0
- package/src/duckdb/src/storage/data_table.cpp +6 -3
- package/src/duckdb/src/storage/local_storage.cpp +5 -2
- package/src/duckdb/src/storage/metadata/metadata_manager.cpp +4 -4
- package/src/duckdb/src/storage/metadata/metadata_reader.cpp +1 -1
- package/src/duckdb/src/storage/metadata/metadata_writer.cpp +1 -1
- package/src/duckdb/src/storage/metadata/ub_duckdb_storage_metadata.cpp +4 -0
- package/src/duckdb/src/storage/partial_block_manager.cpp +1 -1
- package/src/duckdb/src/storage/serialization/serialize_create_info.cpp +2 -0
- package/src/duckdb/src/storage/serialization/serialize_expression.cpp +3 -0
- package/src/duckdb/src/storage/serialization/serialize_logical_operator.cpp +5 -29
- package/src/duckdb/src/storage/serialization/serialize_nodes.cpp +22 -4
- package/src/duckdb/src/storage/serialization/serialize_parse_info.cpp +12 -32
- package/src/duckdb/src/storage/serialization/ub_duckdb_storage_serialization.cpp +16 -0
- package/src/duckdb/src/storage/standard_buffer_manager.cpp +29 -397
- package/src/duckdb/src/storage/statistics/string_stats.cpp +1 -1
- package/src/duckdb/src/storage/statistics/ub_duckdb_storage_statistics.cpp +10 -0
- package/src/duckdb/src/storage/storage_info.cpp +1 -1
- package/src/duckdb/src/storage/table/column_checkpoint_state.cpp +3 -3
- package/src/duckdb/src/storage/table/column_data.cpp +7 -16
- package/src/duckdb/src/storage/table/column_data_checkpointer.cpp +4 -1
- package/src/duckdb/src/storage/table/column_segment.cpp +68 -78
- package/src/duckdb/src/storage/table/list_column_data.cpp +1 -0
- package/src/duckdb/src/storage/table/row_group.cpp +17 -7
- package/src/duckdb/src/storage/table/row_group_collection.cpp +28 -27
- package/src/duckdb/src/storage/table/ub_duckdb_storage_table.cpp +17 -0
- package/src/duckdb/src/storage/table/update_segment.cpp +7 -7
- package/src/duckdb/src/storage/temporary_file_manager.cpp +334 -0
- package/src/duckdb/src/storage/ub_duckdb_storage.cpp +20 -0
- package/src/duckdb/src/storage/write_ahead_log.cpp +3 -2
- package/src/duckdb/src/transaction/commit_state.cpp +4 -2
- package/src/duckdb/src/transaction/duck_transaction_manager.cpp +32 -17
- package/src/duckdb/src/transaction/meta_transaction.cpp +24 -0
- package/src/duckdb/src/transaction/transaction_context.cpp +0 -9
- package/src/duckdb/src/transaction/ub_duckdb_transaction.cpp +11 -0
- package/src/duckdb/src/transaction/undo_buffer.cpp +1 -1
- package/src/duckdb/third_party/jaro_winkler/details/common.hpp +1 -1
- package/src/duckdb/third_party/libpg_query/include/nodes/parsenodes.hpp +2 -0
- package/src/duckdb/third_party/libpg_query/include/parser/gram.hpp +1032 -551
- package/src/duckdb/third_party/libpg_query/src_backend_parser_gram.cpp +24122 -24304
- package/src/duckdb/third_party/mbedtls/include/mbedtls/mbedtls_config.h +0 -3
- package/src/duckdb/third_party/mbedtls/library/entropy_poll.cpp +32 -4
- package/src/duckdb/third_party/miniz/miniz_wrapper.hpp +4 -4
- package/src/duckdb/third_party/tdigest/t_digest.hpp +3 -3
- package/src/duckdb/ub_src_common_arrow_appender.cpp +2 -0
- package/src/duckdb/ub_src_common_exception.cpp +2 -0
- package/src/duckdb/ub_src_execution_operator_helper.cpp +2 -0
- package/src/duckdb/ub_src_execution_operator_persistent.cpp +0 -2
- package/src/duckdb/ub_src_execution_physical_plan.cpp +0 -2
- package/src/duckdb/ub_src_parser_parsed_data.cpp +1 -1
- package/src/duckdb/ub_src_planner_operator.cpp +0 -2
- package/src/duckdb/ub_src_storage.cpp +2 -0
- package/test/columns.test.ts +1 -1
- package/test/test_all_types.test.ts +1 -1
@@ -162,6 +162,9 @@ static DefaultMacro internal_macros[] = {
|
|
162
162
|
// date functions
|
163
163
|
{DEFAULT_SCHEMA, "date_add", {"date", "interval", nullptr}, "date + interval"},
|
164
164
|
|
165
|
+
// regexp functions
|
166
|
+
{DEFAULT_SCHEMA, "regexp_split_to_table", {"text", "pattern", nullptr}, "unnest(string_split_regex(text, pattern))"},
|
167
|
+
|
165
168
|
// storage helper functions
|
166
169
|
{DEFAULT_SCHEMA, "get_block_size", {"db_name"}, "(SELECT block_size FROM pragma_database_size() WHERE database_name = db_name)"},
|
167
170
|
|
@@ -46,11 +46,11 @@ static DefaultView internal_views[] = {
|
|
46
46
|
{"pg_catalog", "pg_tablespace", "SELECT 0 oid, 'pg_default' spcname, 0 spcowner, NULL spcacl, NULL spcoptions"},
|
47
47
|
{"pg_catalog", "pg_type", "SELECT type_oid oid, format_pg_type(type_name) typname, schema_oid typnamespace, 0 typowner, type_size typlen, false typbyval, CASE WHEN logical_type='ENUM' THEN 'e' else 'b' end typtype, CASE WHEN type_category='NUMERIC' THEN 'N' WHEN type_category='STRING' THEN 'S' WHEN type_category='DATETIME' THEN 'D' WHEN type_category='BOOLEAN' THEN 'B' WHEN type_category='COMPOSITE' THEN 'C' WHEN type_category='USER' THEN 'U' ELSE 'X' END typcategory, false typispreferred, true typisdefined, NULL typdelim, NULL typrelid, NULL typsubscript, NULL typelem, NULL typarray, NULL typinput, NULL typoutput, NULL typreceive, NULL typsend, NULL typmodin, NULL typmodout, NULL typanalyze, 'd' typalign, 'p' typstorage, NULL typnotnull, NULL typbasetype, NULL typtypmod, NULL typndims, NULL typcollation, NULL typdefaultbin, NULL typdefault, NULL typacl FROM duckdb_types() WHERE type_size IS NOT NULL;"},
|
48
48
|
{"pg_catalog", "pg_views", "SELECT schema_name schemaname, view_name viewname, 'duckdb' viewowner, sql definition FROM duckdb_views()"},
|
49
|
-
{"information_schema", "columns", "SELECT database_name table_catalog, schema_name table_schema, table_name, column_name, column_index ordinal_position, column_default, CASE WHEN is_nullable THEN 'YES' ELSE 'NO' END is_nullable, data_type, character_maximum_length, NULL character_octet_length, numeric_precision, numeric_precision_radix, numeric_scale, NULL datetime_precision, NULL interval_type, NULL interval_precision, NULL character_set_catalog, NULL character_set_schema, NULL character_set_name, NULL collation_catalog, NULL collation_schema, NULL collation_name, NULL domain_catalog, NULL domain_schema, NULL domain_name, NULL udt_catalog, NULL udt_schema, NULL udt_name, NULL scope_catalog, NULL scope_schema, NULL scope_name, NULL maximum_cardinality, NULL dtd_identifier, NULL is_self_referencing, NULL is_identity, NULL identity_generation, NULL identity_start, NULL identity_increment, NULL identity_maximum, NULL identity_minimum, NULL identity_cycle, NULL is_generated, NULL generation_expression, NULL is_updatable FROM duckdb_columns;"},
|
49
|
+
{"information_schema", "columns", "SELECT database_name table_catalog, schema_name table_schema, table_name, column_name, column_index ordinal_position, column_default, CASE WHEN is_nullable THEN 'YES' ELSE 'NO' END is_nullable, data_type, character_maximum_length, NULL character_octet_length, numeric_precision, numeric_precision_radix, numeric_scale, NULL datetime_precision, NULL interval_type, NULL interval_precision, NULL character_set_catalog, NULL character_set_schema, NULL character_set_name, NULL collation_catalog, NULL collation_schema, NULL collation_name, NULL domain_catalog, NULL domain_schema, NULL domain_name, NULL udt_catalog, NULL udt_schema, NULL udt_name, NULL scope_catalog, NULL scope_schema, NULL scope_name, NULL maximum_cardinality, NULL dtd_identifier, NULL is_self_referencing, NULL is_identity, NULL identity_generation, NULL identity_start, NULL identity_increment, NULL identity_maximum, NULL identity_minimum, NULL identity_cycle, NULL is_generated, NULL generation_expression, NULL is_updatable, comment AS COLUMN_COMMENT FROM duckdb_columns;"},
|
50
50
|
{"information_schema", "schemata", "SELECT database_name catalog_name, schema_name, 'duckdb' schema_owner, NULL default_character_set_catalog, NULL default_character_set_schema, NULL default_character_set_name, sql sql_path FROM duckdb_schemas()"},
|
51
|
-
{"information_schema", "tables", "SELECT database_name table_catalog, schema_name table_schema, table_name, CASE WHEN temporary THEN 'LOCAL TEMPORARY' ELSE 'BASE TABLE' END table_type, NULL self_referencing_column_name, NULL reference_generation, NULL user_defined_type_catalog, NULL user_defined_type_schema, NULL user_defined_type_name, 'YES' is_insertable_into, 'NO' is_typed, CASE WHEN temporary THEN 'PRESERVE' ELSE NULL END commit_action FROM duckdb_tables() UNION ALL SELECT database_name table_catalog, schema_name table_schema, view_name table_name, 'VIEW' table_type, NULL self_referencing_column_name, NULL reference_generation, NULL user_defined_type_catalog, NULL user_defined_type_schema, NULL user_defined_type_name, 'NO' is_insertable_into, 'NO' is_typed, NULL commit_action FROM duckdb_views;"},
|
51
|
+
{"information_schema", "tables", "SELECT database_name table_catalog, schema_name table_schema, table_name, CASE WHEN temporary THEN 'LOCAL TEMPORARY' ELSE 'BASE TABLE' END table_type, NULL self_referencing_column_name, NULL reference_generation, NULL user_defined_type_catalog, NULL user_defined_type_schema, NULL user_defined_type_name, 'YES' is_insertable_into, 'NO' is_typed, CASE WHEN temporary THEN 'PRESERVE' ELSE NULL END commit_action, comment AS TABLE_COMMENT FROM duckdb_tables() UNION ALL SELECT database_name table_catalog, schema_name table_schema, view_name table_name, 'VIEW' table_type, NULL self_referencing_column_name, NULL reference_generation, NULL user_defined_type_catalog, NULL user_defined_type_schema, NULL user_defined_type_name, 'NO' is_insertable_into, 'NO' is_typed, NULL commit_action, comment AS TABLE_COMMENT FROM duckdb_views;"},
|
52
52
|
{"information_schema", "character_sets", "SELECT NULL character_set_catalog, NULL character_set_schema, 'UTF8' character_set_name, 'UCS' character_repertoire, 'UTF8' form_of_use, current_database() default_collate_catalog, 'pg_catalog' default_collate_schema, 'ucs_basic' default_collate_name;"},
|
53
|
-
{"information_schema", "referential_constraints", "SELECT f.database_name constraint_catalog, f.schema_name constraint_schema, concat(f.source, '_', f.target, '_', f.target_column, '_fkey') constraint_name, current_database() unique_constraint_catalog, c.schema_name unique_constraint_schema, concat(c.table_name, '_', f.target_column, '_', CASE WHEN c.constraint_type == 'UNIQUE' THEN 'key' ELSE 'pkey' END) unique_constraint_name, 'NONE' match_option, 'NO ACTION' update_rule, 'NO ACTION' delete_rule FROM duckdb_constraints() c JOIN (SELECT *, name_extract['source'] source, name_extract['target'] target, name_extract['target_column'] target_column FROM (SELECT *, regexp_extract(constraint_text, 'FOREIGN KEY \\(([a-zA-Z_0-9]+)\\) REFERENCES ([a-zA-Z_0-9]+)\\(([a-zA-Z_0-9]+)\\)', ['source', 'target', 'target_column']) name_extract FROM duckdb_constraints() WHERE constraint_type = 'FOREIGN KEY')) f ON name_extract['target'] = c.table_name AND (c.constraint_type = 'UNIQUE' OR c.constraint_type = 'PRIMARY KEY')"},
|
53
|
+
{"information_schema", "referential_constraints", "SELECT f.database_name constraint_catalog, f.schema_name constraint_schema, concat(f.source, '_', f.target, '_', f.target_column, '_fkey') constraint_name, current_database() unique_constraint_catalog, c.schema_name unique_constraint_schema, concat(c.table_name, '_', f.target_column, '_', CASE WHEN c.constraint_type == 'UNIQUE' THEN 'key' ELSE 'pkey' END) unique_constraint_name, 'NONE' match_option, 'NO ACTION' update_rule, 'NO ACTION' delete_rule FROM duckdb_constraints() c JOIN (SELECT *, name_extract['source'] as source, name_extract['target'] as target, name_extract['target_column'] as target_column FROM (SELECT *, regexp_extract(constraint_text, 'FOREIGN KEY \\(([a-zA-Z_0-9]+)\\) REFERENCES ([a-zA-Z_0-9]+)\\(([a-zA-Z_0-9]+)\\)', ['source', 'target', 'target_column']) name_extract FROM duckdb_constraints() WHERE constraint_type = 'FOREIGN KEY')) f ON name_extract['target'] = c.table_name AND (c.constraint_type = 'UNIQUE' OR c.constraint_type = 'PRIMARY KEY')"},
|
54
54
|
{"information_schema", "key_column_usage", "SELECT current_database() constraint_catalog, schema_name constraint_schema, concat(table_name, '_', constraint_column_names[1], CASE constraint_type WHEN 'FOREIGN KEY' THEN '_fkey' WHEN 'PRIMARY KEY' THEN '_pkey' ELSE '_key' END) constraint_name, current_database() table_catalog, schema_name table_schema, table_name, constraint_column_names[1] column_name, 1 ordinal_position, CASE constraint_type WHEN 'FOREIGN KEY' THEN 1 ELSE NULL END position_in_unique_constraint FROM duckdb_constraints() WHERE constraint_type = 'FOREIGN KEY' OR constraint_type = 'PRIMARY KEY' OR constraint_type = 'UNIQUE';"},
|
55
55
|
{"information_schema", "table_constraints", "SELECT current_database() constraint_catalog, schema_name constraint_schema, concat(table_name, '_', CASE WHEN length(constraint_column_names) > 1 THEN NULL ELSE constraint_column_names[1] || '_' END, CASE constraint_type WHEN 'FOREIGN KEY' THEN 'fkey' WHEN 'PRIMARY KEY' THEN 'pkey' WHEN 'UNIQUE' THEN 'key' WHEN 'CHECK' THEN 'check' WHEN 'NOT NULL' THEN 'not_null' END) constraint_name, current_database() table_catalog, schema_name table_schema, table_name, CASE constraint_type WHEN 'NOT NULL' THEN 'CHECK' ELSE constraint_type END constraint_type, 'NO' is_deferrable, 'NO' initially_deferred, 'YES' enforced, 'YES' nulls_distinct FROM duckdb_constraints() WHERE constraint_type = 'PRIMARY KEY' OR constraint_type = 'FOREIGN KEY' OR constraint_type = 'UNIQUE' OR constraint_type = 'CHECK' OR constraint_type = 'NOT NULL';"},
|
56
56
|
{nullptr, nullptr, nullptr}};
|
@@ -0,0 +1,5 @@
|
|
1
|
+
// Unity Build generated by CMake
|
2
|
+
#include </Users/carlo/duckdb/src/catalog/default/default_functions.cpp>
|
3
|
+
#include </Users/carlo/duckdb/src/catalog/default/default_schemas.cpp>
|
4
|
+
#include </Users/carlo/duckdb/src/catalog/default/default_types.cpp>
|
5
|
+
#include </Users/carlo/duckdb/src/catalog/default/default_views.cpp>
|
@@ -11,9 +11,7 @@ MangledDependencyName DependencyCatalogSet::ApplyPrefix(const MangledEntryName &
|
|
11
11
|
bool DependencyCatalogSet::CreateEntry(CatalogTransaction transaction, const MangledEntryName &name,
|
12
12
|
unique_ptr<CatalogEntry> value) {
|
13
13
|
auto new_name = ApplyPrefix(name);
|
14
|
-
|
15
|
-
static const DependencyList EMPTY_DEPENDENCIES;
|
16
|
-
return set.CreateEntry(transaction, new_name.name, std::move(value), EMPTY_DEPENDENCIES);
|
14
|
+
return set.CreateEntry(transaction, new_name.name, std::move(value), DependencyList());
|
17
15
|
}
|
18
16
|
|
19
17
|
CatalogSet::EntryLookup DependencyCatalogSet::GetEntryDetailed(CatalogTransaction transaction,
|
@@ -27,19 +27,16 @@ static void AssertMangledName(const string &mangled_name, idx_t expected_null_by
|
|
27
27
|
}
|
28
28
|
|
29
29
|
MangledEntryName::MangledEntryName(const CatalogEntryInfo &info) {
|
30
|
-
static const auto NULL_BYTE = string(1, '\0');
|
31
|
-
|
32
30
|
auto &type = info.type;
|
33
31
|
auto &schema = info.schema;
|
34
32
|
auto &name = info.name;
|
35
33
|
|
36
|
-
this->name = CatalogTypeToString(type) +
|
34
|
+
this->name = CatalogTypeToString(type) + '\0' + schema + '\0' + name;
|
37
35
|
AssertMangledName(this->name, 2);
|
38
36
|
}
|
39
37
|
|
40
38
|
MangledDependencyName::MangledDependencyName(const MangledEntryName &from, const MangledEntryName &to) {
|
41
|
-
|
42
|
-
this->name = from.name + NULL_BYTE + to.name;
|
39
|
+
this->name = from.name + '\0' + to.name;
|
43
40
|
AssertMangledName(this->name, 5);
|
44
41
|
}
|
45
42
|
|
@@ -0,0 +1,10 @@
|
|
1
|
+
// Unity Build generated by CMake
|
2
|
+
#include </Users/carlo/duckdb/src/catalog/catalog_entry.cpp>
|
3
|
+
#include </Users/carlo/duckdb/src/catalog/catalog.cpp>
|
4
|
+
#include </Users/carlo/duckdb/src/catalog/catalog_search_path.cpp>
|
5
|
+
#include </Users/carlo/duckdb/src/catalog/catalog_set.cpp>
|
6
|
+
#include </Users/carlo/duckdb/src/catalog/catalog_transaction.cpp>
|
7
|
+
#include </Users/carlo/duckdb/src/catalog/duck_catalog.cpp>
|
8
|
+
#include </Users/carlo/duckdb/src/catalog/dependency_list.cpp>
|
9
|
+
#include </Users/carlo/duckdb/src/catalog/dependency_manager.cpp>
|
10
|
+
#include </Users/carlo/duckdb/src/catalog/similar_catalog_entry.cpp>
|
@@ -437,7 +437,7 @@ AdbcStatusCode ConnectionGetInfo(struct AdbcConnection *connection, const uint32
|
|
437
437
|
duckdb::string results = "";
|
438
438
|
|
439
439
|
for (size_t i = 0; i < length; i++) {
|
440
|
-
|
440
|
+
auto code = duckdb::NumericCast<uint32_t>(info_codes ? info_codes[i] : i);
|
441
441
|
auto info_code = ConvertToInfoCode(code);
|
442
442
|
switch (info_code) {
|
443
443
|
case AdbcInfoCode::VENDOR_NAME: {
|
@@ -21,6 +21,7 @@
|
|
21
21
|
// specific language governing permissions and limitations
|
22
22
|
// under the License.
|
23
23
|
|
24
|
+
#include "duckdb/common/numeric_utils.hpp"
|
24
25
|
#include "duckdb/common/adbc/driver_manager.h"
|
25
26
|
#include "duckdb/common/adbc/adbc.h"
|
26
27
|
#include "duckdb/common/adbc/adbc.hpp"
|
@@ -513,7 +514,7 @@ std::string AdbcDriverManagerDefaultEntrypoint(const std::string &driver) {
|
|
513
514
|
// if pos == npos this is the entire filename
|
514
515
|
std::string token = filename.substr(prev, pos - prev);
|
515
516
|
// capitalize first letter
|
516
|
-
token[0] = std::toupper(static_cast<unsigned char>(token[0]));
|
517
|
+
token[0] = duckdb::NumericCast<char>(std::toupper(static_cast<unsigned char>(token[0])));
|
517
518
|
|
518
519
|
entrypoint += token;
|
519
520
|
|
@@ -0,0 +1,5 @@
|
|
1
|
+
// Unity Build generated by CMake
|
2
|
+
#include </Users/carlo/duckdb/src/common/adbc/nanoarrow/metadata.cpp>
|
3
|
+
#include </Users/carlo/duckdb/src/common/adbc/nanoarrow/schema.cpp>
|
4
|
+
#include </Users/carlo/duckdb/src/common/adbc/nanoarrow/allocator.cpp>
|
5
|
+
#include </Users/carlo/duckdb/src/common/adbc/nanoarrow/single_batch_array_stream.cpp>
|
@@ -3,6 +3,7 @@
|
|
3
3
|
#include "duckdb/common/assert.hpp"
|
4
4
|
#include "duckdb/common/atomic.hpp"
|
5
5
|
#include "duckdb/common/exception.hpp"
|
6
|
+
#include "duckdb/common/helper.hpp"
|
6
7
|
|
7
8
|
#include <cstdint>
|
8
9
|
|
@@ -95,15 +96,9 @@ PrivateAllocatorData::~PrivateAllocatorData() {
|
|
95
96
|
//===--------------------------------------------------------------------===//
|
96
97
|
// Allocator
|
97
98
|
//===--------------------------------------------------------------------===//
|
98
|
-
#ifdef USE_JEMALLOC
|
99
|
-
Allocator::Allocator()
|
100
|
-
: Allocator(JemallocExtension::Allocate, JemallocExtension::Free, JemallocExtension::Reallocate, nullptr) {
|
101
|
-
}
|
102
|
-
#else
|
103
99
|
Allocator::Allocator()
|
104
100
|
: Allocator(Allocator::DefaultAllocate, Allocator::DefaultFree, Allocator::DefaultReallocate, nullptr) {
|
105
101
|
}
|
106
|
-
#endif
|
107
102
|
|
108
103
|
Allocator::Allocator(allocate_function_ptr_t allocate_function_p, free_function_ptr_t free_function_p,
|
109
104
|
reallocate_function_ptr_t reallocate_function_p, unique_ptr<PrivateAllocatorData> private_data_p)
|
@@ -136,7 +131,7 @@ data_ptr_t Allocator::AllocateData(idx_t size) {
|
|
136
131
|
private_data->debug_info->AllocateData(result, size);
|
137
132
|
#endif
|
138
133
|
if (!result) {
|
139
|
-
throw OutOfMemoryException("Failed to allocate block of %llu bytes", size);
|
134
|
+
throw OutOfMemoryException("Failed to allocate block of %llu bytes (bad allocation)", size);
|
140
135
|
}
|
141
136
|
return result;
|
142
137
|
}
|
@@ -169,11 +164,36 @@ data_ptr_t Allocator::ReallocateData(data_ptr_t pointer, idx_t old_size, idx_t s
|
|
169
164
|
private_data->debug_info->ReallocateData(pointer, new_pointer, old_size, size);
|
170
165
|
#endif
|
171
166
|
if (!new_pointer) {
|
172
|
-
throw OutOfMemoryException("Failed to re-allocate block of %llu bytes", size);
|
167
|
+
throw OutOfMemoryException("Failed to re-allocate block of %llu bytes (bad allocation)", size);
|
173
168
|
}
|
174
169
|
return new_pointer;
|
175
170
|
}
|
176
171
|
|
172
|
+
data_ptr_t Allocator::DefaultAllocate(PrivateAllocatorData *private_data, idx_t size) {
|
173
|
+
#ifdef USE_JEMALLOC
|
174
|
+
return JemallocExtension::Allocate(private_data, size);
|
175
|
+
#else
|
176
|
+
return data_ptr_cast(malloc(size));
|
177
|
+
#endif
|
178
|
+
}
|
179
|
+
|
180
|
+
void Allocator::DefaultFree(PrivateAllocatorData *private_data, data_ptr_t pointer, idx_t size) {
|
181
|
+
#ifdef USE_JEMALLOC
|
182
|
+
JemallocExtension::Free(private_data, pointer, size);
|
183
|
+
#else
|
184
|
+
free(pointer);
|
185
|
+
#endif
|
186
|
+
}
|
187
|
+
|
188
|
+
data_ptr_t Allocator::DefaultReallocate(PrivateAllocatorData *private_data, data_ptr_t pointer, idx_t old_size,
|
189
|
+
idx_t size) {
|
190
|
+
#ifdef USE_JEMALLOC
|
191
|
+
return JemallocExtension::Reallocate(private_data, pointer, old_size, size);
|
192
|
+
#else
|
193
|
+
return data_ptr_cast(realloc(pointer, size));
|
194
|
+
#endif
|
195
|
+
}
|
196
|
+
|
177
197
|
shared_ptr<Allocator> &Allocator::DefaultAllocatorReference() {
|
178
198
|
static shared_ptr<Allocator> DEFAULT_ALLOCATOR = make_shared<Allocator>();
|
179
199
|
return DEFAULT_ALLOCATOR;
|
@@ -189,6 +209,12 @@ void Allocator::ThreadFlush(idx_t threshold) {
|
|
189
209
|
#endif
|
190
210
|
}
|
191
211
|
|
212
|
+
void Allocator::FlushAll() {
|
213
|
+
#ifdef USE_JEMALLOC
|
214
|
+
JemallocExtension::FlushAll();
|
215
|
+
#endif
|
216
|
+
}
|
217
|
+
|
192
218
|
//===--------------------------------------------------------------------===//
|
193
219
|
// Debug Info (extended)
|
194
220
|
//===--------------------------------------------------------------------===//
|
@@ -0,0 +1,39 @@
|
|
1
|
+
#include "duckdb/common/arrow/arrow_appender.hpp"
|
2
|
+
#include "duckdb/common/arrow/appender/fixed_size_list_data.hpp"
|
3
|
+
|
4
|
+
namespace duckdb {
|
5
|
+
|
6
|
+
//===--------------------------------------------------------------------===//
|
7
|
+
// Arrays
|
8
|
+
//===--------------------------------------------------------------------===//
|
9
|
+
void ArrowFixedSizeListData::Initialize(ArrowAppendData &result, const LogicalType &type, idx_t capacity) {
|
10
|
+
auto &child_type = ArrayType::GetChildType(type);
|
11
|
+
auto array_size = ArrayType::GetSize(type);
|
12
|
+
auto child_buffer = ArrowAppender::InitializeChild(child_type, capacity * array_size, result.options);
|
13
|
+
result.child_data.push_back(std::move(child_buffer));
|
14
|
+
}
|
15
|
+
|
16
|
+
void ArrowFixedSizeListData::Append(ArrowAppendData &append_data, Vector &input, idx_t from, idx_t to,
|
17
|
+
idx_t input_size) {
|
18
|
+
UnifiedVectorFormat format;
|
19
|
+
input.ToUnifiedFormat(input_size, format);
|
20
|
+
idx_t size = to - from;
|
21
|
+
AppendValidity(append_data, format, from, to);
|
22
|
+
|
23
|
+
auto array_size = ArrayType::GetSize(input.GetType());
|
24
|
+
auto &child_vector = ArrayVector::GetEntry(input);
|
25
|
+
auto &child_data = *append_data.child_data[0];
|
26
|
+
child_data.append_vector(child_data, child_vector, from * array_size, to * array_size, size * array_size);
|
27
|
+
append_data.row_count += size;
|
28
|
+
}
|
29
|
+
|
30
|
+
void ArrowFixedSizeListData::Finalize(ArrowAppendData &append_data, const LogicalType &type, ArrowArray *result) {
|
31
|
+
result->n_buffers = 1;
|
32
|
+
auto &child_type = ArrayType::GetChildType(type);
|
33
|
+
ArrowAppender::AddChildren(append_data, 1);
|
34
|
+
result->children = append_data.child_pointers.data();
|
35
|
+
result->n_children = 1;
|
36
|
+
append_data.child_arrays[0] = *ArrowAppender::FinalizeChild(child_type, std::move(append_data.child_data[0]));
|
37
|
+
}
|
38
|
+
|
39
|
+
} // namespace duckdb
|
@@ -0,0 +1,6 @@
|
|
1
|
+
// Unity Build generated by CMake
|
2
|
+
#include </Users/carlo/duckdb/src/common/arrow/appender/bool_data.cpp>
|
3
|
+
#include </Users/carlo/duckdb/src/common/arrow/appender/list_data.cpp>
|
4
|
+
#include </Users/carlo/duckdb/src/common/arrow/appender/map_data.cpp>
|
5
|
+
#include </Users/carlo/duckdb/src/common/arrow/appender/struct_data.cpp>
|
6
|
+
#include </Users/carlo/duckdb/src/common/arrow/appender/union_data.cpp>
|
@@ -1,3 +1,4 @@
|
|
1
|
+
#include "duckdb/common/numeric_utils.hpp"
|
1
2
|
#include "duckdb/common/arrow/arrow_appender.hpp"
|
2
3
|
#include "duckdb/common/arrow/appender/union_data.hpp"
|
3
4
|
|
@@ -42,7 +43,7 @@ void ArrowUnionData::Append(ArrowAppendData &append_data, Vector &input, idx_t f
|
|
42
43
|
child_vectors[child_idx].SetValue(input_idx, child_idx == tag ? resolved_value : Value(nullptr));
|
43
44
|
}
|
44
45
|
|
45
|
-
types_buffer.data()[input_idx] = tag;
|
46
|
+
types_buffer.data()[input_idx] = NumericCast<data_t>(tag);
|
46
47
|
}
|
47
48
|
|
48
49
|
for (idx_t child_idx = 0; child_idx < child_vectors.size(); child_idx++) {
|
@@ -227,6 +227,9 @@ static void InitializeFunctionPointers(ArrowAppendData &append_data, const Logic
|
|
227
227
|
case LogicalTypeId::STRUCT:
|
228
228
|
InitializeAppenderForType<ArrowStructData>(append_data);
|
229
229
|
break;
|
230
|
+
case LogicalTypeId::ARRAY:
|
231
|
+
InitializeAppenderForType<ArrowFixedSizeListData>(append_data);
|
232
|
+
break;
|
230
233
|
case LogicalTypeId::LIST: {
|
231
234
|
if (append_data.options.arrow_offset_size == ArrowOffsetSize::LARGE) {
|
232
235
|
InitializeAppenderForType<ArrowListData<int64_t>>(append_data);
|
@@ -236,11 +239,8 @@ static void InitializeFunctionPointers(ArrowAppendData &append_data, const Logic
|
|
236
239
|
break;
|
237
240
|
}
|
238
241
|
case LogicalTypeId::MAP:
|
239
|
-
|
240
|
-
|
241
|
-
} else {
|
242
|
-
InitializeAppenderForType<ArrowMapData<int32_t>>(append_data);
|
243
|
-
}
|
242
|
+
// Arrow MapArray only supports 32-bit offsets. There is no LargeMapArray type in Arrow.
|
243
|
+
InitializeAppenderForType<ArrowMapData<int32_t>>(append_data);
|
244
244
|
break;
|
245
245
|
default:
|
246
246
|
throw NotImplementedException("Unsupported type in DuckDB -> Arrow Conversion: %s\n", type.ToString());
|
@@ -226,6 +226,23 @@ void SetArrowFormat(DuckDBArrowSchemaHolder &root_holder, ArrowSchema &child, co
|
|
226
226
|
}
|
227
227
|
break;
|
228
228
|
}
|
229
|
+
case LogicalTypeId::ARRAY: {
|
230
|
+
auto array_size = ArrayType::GetSize(type);
|
231
|
+
auto &child_type = ArrayType::GetChildType(type);
|
232
|
+
auto format = "+w:" + to_string(array_size);
|
233
|
+
root_holder.owned_type_names.push_back(AddName(format));
|
234
|
+
child.format = root_holder.owned_type_names.back().get();
|
235
|
+
|
236
|
+
child.n_children = 1;
|
237
|
+
root_holder.nested_children.emplace_back();
|
238
|
+
root_holder.nested_children.back().resize(1);
|
239
|
+
root_holder.nested_children_ptr.emplace_back();
|
240
|
+
root_holder.nested_children_ptr.back().push_back(&root_holder.nested_children.back()[0]);
|
241
|
+
InitializeChild(root_holder.nested_children.back()[0], root_holder);
|
242
|
+
child.children = &root_holder.nested_children_ptr.back()[0];
|
243
|
+
SetArrowFormat(root_holder, **child.children, child_type, options);
|
244
|
+
break;
|
245
|
+
}
|
229
246
|
case LogicalTypeId::MAP: {
|
230
247
|
SetArrowMapFormat(root_holder, child, type, options);
|
231
248
|
break;
|
@@ -113,6 +113,7 @@ void CompressedFile::Close() {
|
|
113
113
|
stream_data.in_buff_end = nullptr;
|
114
114
|
stream_data.in_buf_size = 0;
|
115
115
|
stream_data.out_buf_size = 0;
|
116
|
+
stream_data.refresh = false;
|
116
117
|
}
|
117
118
|
|
118
119
|
int64_t CompressedFileSystem::Read(FileHandle &handle, void *buffer, int64_t nr_bytes) {
|
@@ -15,6 +15,7 @@
|
|
15
15
|
#include "duckdb/common/box_renderer.hpp"
|
16
16
|
#include "duckdb/common/enums/access_mode.hpp"
|
17
17
|
#include "duckdb/common/enums/aggregate_handling.hpp"
|
18
|
+
#include "duckdb/common/enums/catalog_lookup_behavior.hpp"
|
18
19
|
#include "duckdb/common/enums/catalog_type.hpp"
|
19
20
|
#include "duckdb/common/enums/compression_type.hpp"
|
20
21
|
#include "duckdb/common/enums/cte_materialize.hpp"
|
@@ -38,6 +39,7 @@
|
|
38
39
|
#include "duckdb/common/enums/output_type.hpp"
|
39
40
|
#include "duckdb/common/enums/pending_execution_result.hpp"
|
40
41
|
#include "duckdb/common/enums/physical_operator_type.hpp"
|
42
|
+
#include "duckdb/common/enums/prepared_statement_mode.hpp"
|
41
43
|
#include "duckdb/common/enums/profiler_format.hpp"
|
42
44
|
#include "duckdb/common/enums/relation_type.hpp"
|
43
45
|
#include "duckdb/common/enums/scan_options.hpp"
|
@@ -70,9 +72,9 @@
|
|
70
72
|
#include "duckdb/core_functions/aggregate/quantile_enum.hpp"
|
71
73
|
#include "duckdb/execution/index/art/art.hpp"
|
72
74
|
#include "duckdb/execution/index/art/node.hpp"
|
73
|
-
#include "duckdb/execution/operator/csv_scanner/
|
74
|
-
#include "duckdb/execution/operator/csv_scanner/
|
75
|
-
#include "duckdb/execution/operator/csv_scanner/
|
75
|
+
#include "duckdb/execution/operator/csv_scanner/csv_option.hpp"
|
76
|
+
#include "duckdb/execution/operator/csv_scanner/csv_state.hpp"
|
77
|
+
#include "duckdb/execution/operator/csv_scanner/quote_rules.hpp"
|
76
78
|
#include "duckdb/function/aggregate_state.hpp"
|
77
79
|
#include "duckdb/function/function.hpp"
|
78
80
|
#include "duckdb/function/macro_function.hpp"
|
@@ -86,6 +88,7 @@
|
|
86
88
|
#include "duckdb/main/extension_helper.hpp"
|
87
89
|
#include "duckdb/main/query_result.hpp"
|
88
90
|
#include "duckdb/main/secret/secret.hpp"
|
91
|
+
#include "duckdb/main/settings.hpp"
|
89
92
|
#include "duckdb/parallel/interrupt.hpp"
|
90
93
|
#include "duckdb/parallel/task.hpp"
|
91
94
|
#include "duckdb/parser/constraint.hpp"
|
@@ -408,6 +411,8 @@ const char* EnumUtil::ToChars<AlterType>(AlterType value) {
|
|
408
411
|
return "ALTER_TABLE_FUNCTION";
|
409
412
|
case AlterType::SET_COMMENT:
|
410
413
|
return "SET_COMMENT";
|
414
|
+
case AlterType::SET_COLUMN_COMMENT:
|
415
|
+
return "SET_COLUMN_COMMENT";
|
411
416
|
default:
|
412
417
|
throw NotImplementedException(StringUtil::Format("Enum value: '%d' not implemented", value));
|
413
418
|
}
|
@@ -439,6 +444,9 @@ AlterType EnumUtil::FromString<AlterType>(const char *value) {
|
|
439
444
|
if (StringUtil::Equals(value, "SET_COMMENT")) {
|
440
445
|
return AlterType::SET_COMMENT;
|
441
446
|
}
|
447
|
+
if (StringUtil::Equals(value, "SET_COLUMN_COMMENT")) {
|
448
|
+
return AlterType::SET_COLUMN_COMMENT;
|
449
|
+
}
|
442
450
|
throw NotImplementedException(StringUtil::Format("Enum value: '%s' not implemented", value));
|
443
451
|
}
|
444
452
|
|
@@ -782,6 +790,34 @@ CTEMaterialize EnumUtil::FromString<CTEMaterialize>(const char *value) {
|
|
782
790
|
throw NotImplementedException(StringUtil::Format("Enum value: '%s' not implemented", value));
|
783
791
|
}
|
784
792
|
|
793
|
+
template<>
|
794
|
+
const char* EnumUtil::ToChars<CatalogLookupBehavior>(CatalogLookupBehavior value) {
|
795
|
+
switch(value) {
|
796
|
+
case CatalogLookupBehavior::STANDARD:
|
797
|
+
return "STANDARD";
|
798
|
+
case CatalogLookupBehavior::LOWER_PRIORITY:
|
799
|
+
return "LOWER_PRIORITY";
|
800
|
+
case CatalogLookupBehavior::NEVER_LOOKUP:
|
801
|
+
return "NEVER_LOOKUP";
|
802
|
+
default:
|
803
|
+
throw NotImplementedException(StringUtil::Format("Enum value: '%d' not implemented", value));
|
804
|
+
}
|
805
|
+
}
|
806
|
+
|
807
|
+
template<>
|
808
|
+
CatalogLookupBehavior EnumUtil::FromString<CatalogLookupBehavior>(const char *value) {
|
809
|
+
if (StringUtil::Equals(value, "STANDARD")) {
|
810
|
+
return CatalogLookupBehavior::STANDARD;
|
811
|
+
}
|
812
|
+
if (StringUtil::Equals(value, "LOWER_PRIORITY")) {
|
813
|
+
return CatalogLookupBehavior::LOWER_PRIORITY;
|
814
|
+
}
|
815
|
+
if (StringUtil::Equals(value, "NEVER_LOOKUP")) {
|
816
|
+
return CatalogLookupBehavior::NEVER_LOOKUP;
|
817
|
+
}
|
818
|
+
throw NotImplementedException(StringUtil::Format("Enum value: '%s' not implemented", value));
|
819
|
+
}
|
820
|
+
|
785
821
|
template<>
|
786
822
|
const char* EnumUtil::ToChars<CatalogType>(CatalogType value) {
|
787
823
|
switch(value) {
|
@@ -2805,6 +2841,44 @@ KeywordCategory EnumUtil::FromString<KeywordCategory>(const char *value) {
|
|
2805
2841
|
throw NotImplementedException(StringUtil::Format("Enum value: '%s' not implemented", value));
|
2806
2842
|
}
|
2807
2843
|
|
2844
|
+
template<>
|
2845
|
+
const char* EnumUtil::ToChars<LimitNodeType>(LimitNodeType value) {
|
2846
|
+
switch(value) {
|
2847
|
+
case LimitNodeType::UNSET:
|
2848
|
+
return "UNSET";
|
2849
|
+
case LimitNodeType::CONSTANT_VALUE:
|
2850
|
+
return "CONSTANT_VALUE";
|
2851
|
+
case LimitNodeType::CONSTANT_PERCENTAGE:
|
2852
|
+
return "CONSTANT_PERCENTAGE";
|
2853
|
+
case LimitNodeType::EXPRESSION_VALUE:
|
2854
|
+
return "EXPRESSION_VALUE";
|
2855
|
+
case LimitNodeType::EXPRESSION_PERCENTAGE:
|
2856
|
+
return "EXPRESSION_PERCENTAGE";
|
2857
|
+
default:
|
2858
|
+
throw NotImplementedException(StringUtil::Format("Enum value: '%d' not implemented", value));
|
2859
|
+
}
|
2860
|
+
}
|
2861
|
+
|
2862
|
+
template<>
|
2863
|
+
LimitNodeType EnumUtil::FromString<LimitNodeType>(const char *value) {
|
2864
|
+
if (StringUtil::Equals(value, "UNSET")) {
|
2865
|
+
return LimitNodeType::UNSET;
|
2866
|
+
}
|
2867
|
+
if (StringUtil::Equals(value, "CONSTANT_VALUE")) {
|
2868
|
+
return LimitNodeType::CONSTANT_VALUE;
|
2869
|
+
}
|
2870
|
+
if (StringUtil::Equals(value, "CONSTANT_PERCENTAGE")) {
|
2871
|
+
return LimitNodeType::CONSTANT_PERCENTAGE;
|
2872
|
+
}
|
2873
|
+
if (StringUtil::Equals(value, "EXPRESSION_VALUE")) {
|
2874
|
+
return LimitNodeType::EXPRESSION_VALUE;
|
2875
|
+
}
|
2876
|
+
if (StringUtil::Equals(value, "EXPRESSION_PERCENTAGE")) {
|
2877
|
+
return LimitNodeType::EXPRESSION_PERCENTAGE;
|
2878
|
+
}
|
2879
|
+
throw NotImplementedException(StringUtil::Format("Enum value: '%s' not implemented", value));
|
2880
|
+
}
|
2881
|
+
|
2808
2882
|
template<>
|
2809
2883
|
const char* EnumUtil::ToChars<LoadType>(LoadType value) {
|
2810
2884
|
switch(value) {
|
@@ -2860,8 +2934,6 @@ const char* EnumUtil::ToChars<LogicalOperatorType>(LogicalOperatorType value) {
|
|
2860
2934
|
return "LOGICAL_DISTINCT";
|
2861
2935
|
case LogicalOperatorType::LOGICAL_SAMPLE:
|
2862
2936
|
return "LOGICAL_SAMPLE";
|
2863
|
-
case LogicalOperatorType::LOGICAL_LIMIT_PERCENT:
|
2864
|
-
return "LOGICAL_LIMIT_PERCENT";
|
2865
2937
|
case LogicalOperatorType::LOGICAL_PIVOT:
|
2866
2938
|
return "LOGICAL_PIVOT";
|
2867
2939
|
case LogicalOperatorType::LOGICAL_COPY_DATABASE:
|
@@ -3001,9 +3073,6 @@ LogicalOperatorType EnumUtil::FromString<LogicalOperatorType>(const char *value)
|
|
3001
3073
|
if (StringUtil::Equals(value, "LOGICAL_SAMPLE")) {
|
3002
3074
|
return LogicalOperatorType::LOGICAL_SAMPLE;
|
3003
3075
|
}
|
3004
|
-
if (StringUtil::Equals(value, "LOGICAL_LIMIT_PERCENT")) {
|
3005
|
-
return LogicalOperatorType::LOGICAL_LIMIT_PERCENT;
|
3006
|
-
}
|
3007
3076
|
if (StringUtil::Equals(value, "LOGICAL_PIVOT")) {
|
3008
3077
|
return LogicalOperatorType::LOGICAL_PIVOT;
|
3009
3078
|
}
|
@@ -3461,6 +3530,12 @@ const char* EnumUtil::ToChars<MapInvalidReason>(MapInvalidReason value) {
|
|
3461
3530
|
return "NULL_KEY";
|
3462
3531
|
case MapInvalidReason::DUPLICATE_KEY:
|
3463
3532
|
return "DUPLICATE_KEY";
|
3533
|
+
case MapInvalidReason::NULL_VALUE_LIST:
|
3534
|
+
return "NULL_VALUE_LIST";
|
3535
|
+
case MapInvalidReason::NOT_ALIGNED:
|
3536
|
+
return "NOT_ALIGNED";
|
3537
|
+
case MapInvalidReason::INVALID_PARAMS:
|
3538
|
+
return "INVALID_PARAMS";
|
3464
3539
|
default:
|
3465
3540
|
throw NotImplementedException(StringUtil::Format("Enum value: '%d' not implemented", value));
|
3466
3541
|
}
|
@@ -3480,6 +3555,15 @@ MapInvalidReason EnumUtil::FromString<MapInvalidReason>(const char *value) {
|
|
3480
3555
|
if (StringUtil::Equals(value, "DUPLICATE_KEY")) {
|
3481
3556
|
return MapInvalidReason::DUPLICATE_KEY;
|
3482
3557
|
}
|
3558
|
+
if (StringUtil::Equals(value, "NULL_VALUE_LIST")) {
|
3559
|
+
return MapInvalidReason::NULL_VALUE_LIST;
|
3560
|
+
}
|
3561
|
+
if (StringUtil::Equals(value, "NOT_ALIGNED")) {
|
3562
|
+
return MapInvalidReason::NOT_ALIGNED;
|
3563
|
+
}
|
3564
|
+
if (StringUtil::Equals(value, "INVALID_PARAMS")) {
|
3565
|
+
return MapInvalidReason::INVALID_PARAMS;
|
3566
|
+
}
|
3483
3567
|
throw NotImplementedException(StringUtil::Format("Enum value: '%s' not implemented", value));
|
3484
3568
|
}
|
3485
3569
|
|
@@ -4033,6 +4117,8 @@ const char* EnumUtil::ToChars<ParseInfoType>(ParseInfoType value) {
|
|
4033
4117
|
return "VACUUM_INFO";
|
4034
4118
|
case ParseInfoType::COMMENT_ON_INFO:
|
4035
4119
|
return "COMMENT_ON_INFO";
|
4120
|
+
case ParseInfoType::COMMENT_ON_COLUMN_INFO:
|
4121
|
+
return "COMMENT_ON_COLUMN_INFO";
|
4036
4122
|
default:
|
4037
4123
|
throw NotImplementedException(StringUtil::Format("Enum value: '%d' not implemented", value));
|
4038
4124
|
}
|
@@ -4082,6 +4168,9 @@ ParseInfoType EnumUtil::FromString<ParseInfoType>(const char *value) {
|
|
4082
4168
|
if (StringUtil::Equals(value, "COMMENT_ON_INFO")) {
|
4083
4169
|
return ParseInfoType::COMMENT_ON_INFO;
|
4084
4170
|
}
|
4171
|
+
if (StringUtil::Equals(value, "COMMENT_ON_COLUMN_INFO")) {
|
4172
|
+
return ParseInfoType::COMMENT_ON_COLUMN_INFO;
|
4173
|
+
}
|
4085
4174
|
throw NotImplementedException(StringUtil::Format("Enum value: '%s' not implemented", value));
|
4086
4175
|
}
|
4087
4176
|
|
@@ -4273,8 +4362,6 @@ const char* EnumUtil::ToChars<PhysicalOperatorType>(PhysicalOperatorType value)
|
|
4273
4362
|
return "COPY_TO_FILE";
|
4274
4363
|
case PhysicalOperatorType::BATCH_COPY_TO_FILE:
|
4275
4364
|
return "BATCH_COPY_TO_FILE";
|
4276
|
-
case PhysicalOperatorType::FIXED_BATCH_COPY_TO_FILE:
|
4277
|
-
return "FIXED_BATCH_COPY_TO_FILE";
|
4278
4365
|
case PhysicalOperatorType::RESERVOIR_SAMPLE:
|
4279
4366
|
return "RESERVOIR_SAMPLE";
|
4280
4367
|
case PhysicalOperatorType::STREAMING_SAMPLE:
|
@@ -4393,6 +4480,8 @@ const char* EnumUtil::ToChars<PhysicalOperatorType>(PhysicalOperatorType value)
|
|
4393
4480
|
return "RESET";
|
4394
4481
|
case PhysicalOperatorType::EXTENSION:
|
4395
4482
|
return "EXTENSION";
|
4483
|
+
case PhysicalOperatorType::VERIFY_VECTOR:
|
4484
|
+
return "VERIFY_VECTOR";
|
4396
4485
|
case PhysicalOperatorType::CREATE_SECRET:
|
4397
4486
|
return "CREATE_SECRET";
|
4398
4487
|
default:
|
@@ -4447,9 +4536,6 @@ PhysicalOperatorType EnumUtil::FromString<PhysicalOperatorType>(const char *valu
|
|
4447
4536
|
if (StringUtil::Equals(value, "BATCH_COPY_TO_FILE")) {
|
4448
4537
|
return PhysicalOperatorType::BATCH_COPY_TO_FILE;
|
4449
4538
|
}
|
4450
|
-
if (StringUtil::Equals(value, "FIXED_BATCH_COPY_TO_FILE")) {
|
4451
|
-
return PhysicalOperatorType::FIXED_BATCH_COPY_TO_FILE;
|
4452
|
-
}
|
4453
4539
|
if (StringUtil::Equals(value, "RESERVOIR_SAMPLE")) {
|
4454
4540
|
return PhysicalOperatorType::RESERVOIR_SAMPLE;
|
4455
4541
|
}
|
@@ -4627,6 +4713,9 @@ PhysicalOperatorType EnumUtil::FromString<PhysicalOperatorType>(const char *valu
|
|
4627
4713
|
if (StringUtil::Equals(value, "EXTENSION")) {
|
4628
4714
|
return PhysicalOperatorType::EXTENSION;
|
4629
4715
|
}
|
4716
|
+
if (StringUtil::Equals(value, "VERIFY_VECTOR")) {
|
4717
|
+
return PhysicalOperatorType::VERIFY_VECTOR;
|
4718
|
+
}
|
4630
4719
|
if (StringUtil::Equals(value, "CREATE_SECRET")) {
|
4631
4720
|
return PhysicalOperatorType::CREATE_SECRET;
|
4632
4721
|
}
|
@@ -4807,6 +4896,29 @@ PreparedParamType EnumUtil::FromString<PreparedParamType>(const char *value) {
|
|
4807
4896
|
throw NotImplementedException(StringUtil::Format("Enum value: '%s' not implemented", value));
|
4808
4897
|
}
|
4809
4898
|
|
4899
|
+
template<>
|
4900
|
+
const char* EnumUtil::ToChars<PreparedStatementMode>(PreparedStatementMode value) {
|
4901
|
+
switch(value) {
|
4902
|
+
case PreparedStatementMode::PREPARE_ONLY:
|
4903
|
+
return "PREPARE_ONLY";
|
4904
|
+
case PreparedStatementMode::PREPARE_AND_EXECUTE:
|
4905
|
+
return "PREPARE_AND_EXECUTE";
|
4906
|
+
default:
|
4907
|
+
throw NotImplementedException(StringUtil::Format("Enum value: '%d' not implemented", value));
|
4908
|
+
}
|
4909
|
+
}
|
4910
|
+
|
4911
|
+
template<>
|
4912
|
+
PreparedStatementMode EnumUtil::FromString<PreparedStatementMode>(const char *value) {
|
4913
|
+
if (StringUtil::Equals(value, "PREPARE_ONLY")) {
|
4914
|
+
return PreparedStatementMode::PREPARE_ONLY;
|
4915
|
+
}
|
4916
|
+
if (StringUtil::Equals(value, "PREPARE_AND_EXECUTE")) {
|
4917
|
+
return PreparedStatementMode::PREPARE_AND_EXECUTE;
|
4918
|
+
}
|
4919
|
+
throw NotImplementedException(StringUtil::Format("Enum value: '%s' not implemented", value));
|
4920
|
+
}
|
4921
|
+
|
4810
4922
|
template<>
|
4811
4923
|
const char* EnumUtil::ToChars<ProfilerPrintFormat>(ProfilerPrintFormat value) {
|
4812
4924
|
switch(value) {
|
@@ -5377,6 +5489,34 @@ SetType EnumUtil::FromString<SetType>(const char *value) {
|
|
5377
5489
|
throw NotImplementedException(StringUtil::Format("Enum value: '%s' not implemented", value));
|
5378
5490
|
}
|
5379
5491
|
|
5492
|
+
template<>
|
5493
|
+
const char* EnumUtil::ToChars<SettingScope>(SettingScope value) {
|
5494
|
+
switch(value) {
|
5495
|
+
case SettingScope::GLOBAL:
|
5496
|
+
return "GLOBAL";
|
5497
|
+
case SettingScope::LOCAL:
|
5498
|
+
return "LOCAL";
|
5499
|
+
case SettingScope::INVALID:
|
5500
|
+
return "INVALID";
|
5501
|
+
default:
|
5502
|
+
throw NotImplementedException(StringUtil::Format("Enum value: '%d' not implemented", value));
|
5503
|
+
}
|
5504
|
+
}
|
5505
|
+
|
5506
|
+
template<>
|
5507
|
+
SettingScope EnumUtil::FromString<SettingScope>(const char *value) {
|
5508
|
+
if (StringUtil::Equals(value, "GLOBAL")) {
|
5509
|
+
return SettingScope::GLOBAL;
|
5510
|
+
}
|
5511
|
+
if (StringUtil::Equals(value, "LOCAL")) {
|
5512
|
+
return SettingScope::LOCAL;
|
5513
|
+
}
|
5514
|
+
if (StringUtil::Equals(value, "INVALID")) {
|
5515
|
+
return SettingScope::INVALID;
|
5516
|
+
}
|
5517
|
+
throw NotImplementedException(StringUtil::Format("Enum value: '%s' not implemented", value));
|
5518
|
+
}
|
5519
|
+
|
5380
5520
|
template<>
|
5381
5521
|
const char* EnumUtil::ToChars<ShowType>(ShowType value) {
|
5382
5522
|
switch(value) {
|