duckdb 0.10.2-dev0.0 → 0.10.2-dev3.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.
- package/binding.gyp +22 -18
- package/binding.gyp.in +3 -0
- package/package.json +1 -1
- package/src/duckdb/extension/icu/icu-timezone.cpp +3 -1
- package/src/duckdb/extension/icu/icu_extension.cpp +6 -2
- package/src/duckdb/extension/json/buffered_json_reader.cpp +10 -3
- package/src/duckdb/extension/json/include/buffered_json_reader.hpp +2 -0
- package/src/duckdb/extension/json/include/json_scan.hpp +13 -7
- package/src/duckdb/extension/json/include/json_serializer.hpp +5 -4
- package/src/duckdb/extension/json/include/json_structure.hpp +3 -3
- package/src/duckdb/extension/json/json_functions/json_serialize_plan.cpp +15 -5
- package/src/duckdb/extension/json/json_functions/json_serialize_sql.cpp +15 -6
- package/src/duckdb/extension/json/json_functions/json_structure.cpp +21 -20
- package/src/duckdb/extension/json/json_functions/read_json.cpp +37 -3
- package/src/duckdb/extension/json/json_functions.cpp +7 -2
- package/src/duckdb/extension/json/json_scan.cpp +57 -33
- package/src/duckdb/extension/parquet/column_reader.cpp +12 -3
- package/src/duckdb/extension/parquet/column_writer.cpp +44 -7
- package/src/duckdb/extension/parquet/include/parquet_writer.hpp +5 -1
- package/src/duckdb/extension/parquet/parquet_extension.cpp +30 -3
- package/src/duckdb/extension/parquet/parquet_metadata.cpp +1 -1
- package/src/duckdb/extension/parquet/parquet_writer.cpp +4 -2
- package/src/duckdb/extension/parquet/zstd_file_system.cpp +1 -1
- package/src/duckdb/src/catalog/catalog.cpp +5 -1
- package/src/duckdb/src/catalog/catalog_entry/duck_schema_entry.cpp +21 -5
- package/src/duckdb/src/catalog/catalog_entry/duck_table_entry.cpp +8 -9
- package/src/duckdb/src/catalog/catalog_entry/index_catalog_entry.cpp +3 -7
- package/src/duckdb/src/catalog/catalog_entry/sequence_catalog_entry.cpp +1 -1
- package/src/duckdb/src/catalog/catalog_entry/table_catalog_entry.cpp +6 -7
- package/src/duckdb/src/catalog/catalog_entry.cpp +8 -0
- package/src/duckdb/src/catalog/catalog_search_path.cpp +5 -0
- package/src/duckdb/src/catalog/catalog_set.cpp +2 -2
- package/src/duckdb/src/catalog/default/default_functions.cpp +6 -6
- package/src/duckdb/src/catalog/default/default_schemas.cpp +1 -1
- package/src/duckdb/src/catalog/default/default_views.cpp +7 -7
- package/src/duckdb/src/catalog/dependency_catalog_set.cpp +2 -1
- package/src/duckdb/src/catalog/dependency_list.cpp +92 -8
- package/src/duckdb/src/catalog/dependency_manager.cpp +53 -68
- package/src/duckdb/src/catalog/duck_catalog.cpp +1 -1
- package/src/duckdb/src/common/adbc/adbc.cpp +287 -45
- package/src/duckdb/src/common/arrow/appender/union_data.cpp +2 -2
- package/src/duckdb/src/common/box_renderer.cpp +12 -12
- package/src/duckdb/src/common/crypto/md5.cpp +2 -1
- package/src/duckdb/src/common/enum_util.cpp +307 -1
- package/src/duckdb/src/common/enums/expression_type.cpp +4 -0
- package/src/duckdb/src/common/enums/optimizer_type.cpp +1 -1
- package/src/duckdb/src/common/file_system.cpp +60 -13
- package/src/duckdb/src/common/filename_pattern.cpp +13 -13
- package/src/duckdb/src/common/gzip_file_system.cpp +1 -1
- package/src/duckdb/src/common/http_state.cpp +1 -1
- package/src/duckdb/src/common/local_file_system.cpp +72 -71
- package/src/duckdb/src/common/multi_file_reader.cpp +48 -28
- package/src/duckdb/src/common/row_operations/row_matcher.cpp +2 -2
- package/src/duckdb/src/common/serializer/buffered_file_reader.cpp +13 -1
- package/src/duckdb/src/common/serializer/buffered_file_writer.cpp +32 -13
- package/src/duckdb/src/common/string_util.cpp +2 -3
- package/src/duckdb/src/common/tree_renderer.cpp +32 -67
- package/src/duckdb/src/common/types/bit.cpp +6 -6
- package/src/duckdb/src/common/types/data_chunk.cpp +2 -2
- package/src/duckdb/src/common/types/hash.cpp +6 -6
- package/src/duckdb/src/common/types/hyperloglog.cpp +2 -0
- package/src/duckdb/src/common/types/row/tuple_data_allocator.cpp +13 -0
- package/src/duckdb/src/common/types/row/tuple_data_layout.cpp +5 -7
- package/src/duckdb/src/common/types/uuid.cpp +1 -1
- package/src/duckdb/src/common/types/vector.cpp +22 -14
- package/src/duckdb/src/common/types.cpp +8 -1
- package/src/duckdb/src/common/vector_operations/comparison_operators.cpp +20 -18
- package/src/duckdb/src/common/vector_operations/generators.cpp +1 -1
- package/src/duckdb/src/common/vector_operations/is_distinct_from.cpp +267 -110
- package/src/duckdb/src/common/vector_operations/vector_hash.cpp +52 -23
- package/src/duckdb/src/common/virtual_file_system.cpp +33 -20
- package/src/duckdb/src/core_functions/aggregate/algebraic/avg.cpp +2 -2
- package/src/duckdb/src/core_functions/aggregate/distributive/minmax.cpp +3 -3
- package/src/duckdb/src/core_functions/aggregate/distributive/sum.cpp +31 -16
- package/src/duckdb/src/core_functions/aggregate/holistic/quantile.cpp +3 -0
- package/src/duckdb/src/core_functions/aggregate/nested/list.cpp +2 -0
- package/src/duckdb/src/core_functions/core_functions.cpp +1 -1
- package/src/duckdb/src/core_functions/function_list.cpp +2 -2
- package/src/duckdb/src/core_functions/scalar/date/time_bucket.cpp +1 -1
- package/src/duckdb/src/core_functions/scalar/generic/system_functions.cpp +46 -17
- package/src/duckdb/src/core_functions/scalar/list/array_slice.cpp +1 -1
- package/src/duckdb/src/core_functions/scalar/list/flatten.cpp +82 -45
- package/src/duckdb/src/core_functions/scalar/list/list_aggregates.cpp +2 -2
- package/src/duckdb/src/core_functions/scalar/list/list_sort.cpp +3 -0
- package/src/duckdb/src/core_functions/scalar/math/numeric.cpp +3 -2
- package/src/duckdb/src/core_functions/scalar/string/hex.cpp +2 -4
- package/src/duckdb/src/core_functions/scalar/string/repeat.cpp +12 -21
- package/src/duckdb/src/execution/column_binding_resolver.cpp +2 -10
- package/src/duckdb/src/execution/expression_executor/execute_comparison.cpp +133 -66
- package/src/duckdb/src/execution/expression_executor/execute_function.cpp +0 -2
- package/src/duckdb/src/execution/expression_executor.cpp +0 -4
- package/src/duckdb/src/execution/expression_executor_state.cpp +1 -1
- package/src/duckdb/src/execution/index/art/art.cpp +2 -2
- package/src/duckdb/src/execution/index/unknown_index.cpp +13 -13
- package/src/duckdb/src/execution/join_hashtable.cpp +1 -1
- package/src/duckdb/src/execution/nested_loop_join/nested_loop_join_mark.cpp +0 -1
- package/src/duckdb/src/execution/operator/csv_scanner/buffer_manager/csv_buffer.cpp +10 -7
- package/src/duckdb/src/execution/operator/csv_scanner/buffer_manager/csv_buffer_manager.cpp +32 -1
- package/src/duckdb/src/execution/operator/csv_scanner/buffer_manager/csv_file_handle.cpp +16 -2
- package/src/duckdb/src/execution/operator/csv_scanner/scanner/scanner_boundary.cpp +7 -7
- package/src/duckdb/src/execution/operator/csv_scanner/scanner/string_value_scanner.cpp +354 -159
- package/src/duckdb/src/execution/operator/csv_scanner/sniffer/csv_sniffer.cpp +11 -2
- package/src/duckdb/src/execution/operator/csv_scanner/sniffer/dialect_detection.cpp +22 -7
- package/src/duckdb/src/execution/operator/csv_scanner/sniffer/type_detection.cpp +1 -1
- package/src/duckdb/src/execution/operator/csv_scanner/state_machine/csv_state_machine_cache.cpp +10 -10
- package/src/duckdb/src/execution/operator/csv_scanner/table_function/csv_file_scanner.cpp +9 -18
- package/src/duckdb/src/execution/operator/csv_scanner/table_function/global_csv_state.cpp +180 -47
- package/src/duckdb/src/execution/operator/csv_scanner/util/csv_error.cpp +100 -58
- package/src/duckdb/src/execution/operator/csv_scanner/util/csv_reader_options.cpp +88 -21
- package/src/duckdb/src/execution/operator/helper/physical_vacuum.cpp +12 -13
- package/src/duckdb/src/execution/operator/join/physical_iejoin.cpp +2 -0
- package/src/duckdb/src/execution/operator/persistent/csv_rejects_table.cpp +118 -23
- package/src/duckdb/src/execution/operator/persistent/physical_batch_copy_to_file.cpp +2 -2
- package/src/duckdb/src/execution/operator/persistent/physical_batch_insert.cpp +14 -5
- package/src/duckdb/src/execution/operator/persistent/physical_copy_database.cpp +1 -1
- package/src/duckdb/src/execution/operator/persistent/physical_export.cpp +5 -5
- package/src/duckdb/src/execution/operator/schema/physical_attach.cpp +1 -1
- package/src/duckdb/src/execution/physical_plan/plan_simple.cpp +0 -9
- package/src/duckdb/src/execution/physical_plan/plan_vacuum.cpp +18 -0
- package/src/duckdb/src/execution/physical_plan_generator.cpp +5 -3
- package/src/duckdb/src/execution/radix_partitioned_hashtable.cpp +81 -106
- package/src/duckdb/src/execution/reservoir_sample.cpp +1 -1
- package/src/duckdb/src/execution/window_executor.cpp +48 -28
- package/src/duckdb/src/execution/window_segment_tree.cpp +20 -23
- package/src/duckdb/src/function/aggregate/sorted_aggregate_function.cpp +1 -1
- package/src/duckdb/src/function/cast/enum_casts.cpp +20 -55
- package/src/duckdb/src/function/cast/vector_cast_helpers.cpp +10 -9
- package/src/duckdb/src/function/cast_rules.cpp +9 -1
- package/src/duckdb/src/function/compression_config.cpp +1 -1
- package/src/duckdb/src/function/function_binder.cpp +45 -44
- package/src/duckdb/src/function/function_set.cpp +9 -9
- package/src/duckdb/src/function/pragma/pragma_queries.cpp +1 -2
- package/src/duckdb/src/function/scalar/compressed_materialization/compress_integral.cpp +21 -5
- package/src/duckdb/src/function/scalar/compressed_materialization/compress_string.cpp +2 -2
- package/src/duckdb/src/function/scalar/list/list_select.cpp +5 -2
- package/src/duckdb/src/function/scalar/list/list_zip.cpp +5 -4
- package/src/duckdb/src/function/scalar/operators/arithmetic.cpp +60 -32
- package/src/duckdb/src/function/scalar/sequence/nextval.cpp +1 -1
- package/src/duckdb/src/function/scalar/strftime_format.cpp +31 -25
- package/src/duckdb/src/function/scalar/string/caseconvert.cpp +6 -6
- package/src/duckdb/src/function/scalar/string/length.cpp +23 -2
- package/src/duckdb/src/function/scalar/string/like.cpp +1 -1
- package/src/duckdb/src/function/scalar/string/regexp/regexp_extract_all.cpp +1 -1
- package/src/duckdb/src/function/scalar/system/aggregate_export.cpp +3 -3
- package/src/duckdb/src/function/table/arrow/arrow_array_scan_state.cpp +1 -1
- package/src/duckdb/src/function/table/arrow.cpp +7 -1
- package/src/duckdb/src/function/table/copy_csv.cpp +17 -13
- package/src/duckdb/src/function/table/read_csv.cpp +52 -39
- package/src/duckdb/src/function/table/sniff_csv.cpp +7 -13
- package/src/duckdb/src/function/table/system/duckdb_constraints.cpp +1 -1
- package/src/duckdb/src/function/table/system/duckdb_databases.cpp +7 -1
- package/src/duckdb/src/function/table/system/duckdb_extensions.cpp +12 -2
- package/src/duckdb/src/function/table/system/duckdb_sequences.cpp +1 -2
- package/src/duckdb/src/function/table/system/duckdb_tables.cpp +2 -2
- package/src/duckdb/src/function/table/system/pragma_metadata_info.cpp +9 -2
- package/src/duckdb/src/function/table/system/pragma_table_info.cpp +10 -6
- package/src/duckdb/src/function/table/table_scan.cpp +1 -4
- package/src/duckdb/src/function/table/version/pragma_version.cpp +3 -3
- package/src/duckdb/src/include/duckdb/catalog/catalog.hpp +6 -2
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/duck_index_entry.hpp +1 -1
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/duck_schema_entry.hpp +1 -1
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/sequence_catalog_entry.hpp +1 -1
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry.hpp +6 -1
- package/src/duckdb/src/include/duckdb/catalog/catalog_set.hpp +3 -3
- package/src/duckdb/src/include/duckdb/catalog/default/default_functions.hpp +3 -3
- package/src/duckdb/src/include/duckdb/catalog/dependency.hpp +26 -4
- package/src/duckdb/src/include/duckdb/catalog/dependency_list.hpp +39 -6
- package/src/duckdb/src/include/duckdb/catalog/dependency_manager.hpp +19 -14
- package/src/duckdb/src/include/duckdb/catalog/duck_catalog.hpp +1 -1
- package/src/duckdb/src/include/duckdb/catalog/standard_entry.hpp +4 -0
- package/src/duckdb/src/include/duckdb/common/allocator.hpp +3 -3
- package/src/duckdb/src/include/duckdb/common/arrow/arrow_wrapper.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/bit_utils.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/box_renderer.hpp +16 -16
- package/src/duckdb/src/include/duckdb/common/crypto/md5.hpp +0 -1
- package/src/duckdb/src/include/duckdb/common/enum_util.hpp +32 -0
- package/src/duckdb/src/include/duckdb/common/enums/expression_type.hpp +4 -2
- package/src/duckdb/src/include/duckdb/common/exception/binder_exception.hpp +14 -10
- package/src/duckdb/src/include/duckdb/common/exception/catalog_exception.hpp +4 -4
- package/src/duckdb/src/include/duckdb/common/exception/conversion_exception.hpp +6 -6
- package/src/duckdb/src/include/duckdb/common/exception/http_exception.hpp +3 -3
- package/src/duckdb/src/include/duckdb/common/exception/parser_exception.hpp +4 -4
- package/src/duckdb/src/include/duckdb/common/exception/transaction_exception.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/exception.hpp +57 -58
- package/src/duckdb/src/include/duckdb/common/exception_format_value.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/extra_type_info.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/file_open_flags.hpp +134 -0
- package/src/duckdb/src/include/duckdb/common/file_opener.hpp +9 -6
- package/src/duckdb/src/include/duckdb/common/file_system.hpp +35 -36
- package/src/duckdb/src/include/duckdb/common/filename_pattern.hpp +4 -6
- package/src/duckdb/src/include/duckdb/common/fixed_size_map.hpp +13 -13
- package/src/duckdb/src/include/duckdb/common/helper.hpp +42 -47
- package/src/duckdb/src/include/duckdb/common/http_state.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/hugeint.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/index_vector.hpp +10 -10
- package/src/duckdb/src/include/duckdb/common/local_file_system.hpp +13 -10
- package/src/duckdb/src/include/duckdb/common/memory_safety.hpp +3 -3
- package/src/duckdb/src/include/duckdb/common/multi_file_reader_options.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/opener_file_system.hpp +50 -24
- package/src/duckdb/src/include/duckdb/common/operator/abs.hpp +12 -4
- package/src/duckdb/src/include/duckdb/common/optional_ptr.hpp +5 -5
- package/src/duckdb/src/include/duckdb/common/pipe_file_system.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/platform.h +1 -1
- package/src/duckdb/src/include/duckdb/common/printer.hpp +5 -5
- package/src/duckdb/src/include/duckdb/common/profiler.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/progress_bar/display/terminal_progress_bar_display.hpp +5 -5
- package/src/duckdb/src/include/duckdb/common/random_engine.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/re2_regex.hpp +7 -7
- package/src/duckdb/src/include/duckdb/common/serializer/buffered_file_reader.hpp +3 -0
- package/src/duckdb/src/include/duckdb/common/serializer/buffered_file_writer.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/serializer/deserialization_data.hpp +17 -6
- package/src/duckdb/src/include/duckdb/common/serializer/deserializer.hpp +12 -0
- package/src/duckdb/src/include/duckdb/common/serializer/serialization_traits.hpp +14 -0
- package/src/duckdb/src/include/duckdb/common/serializer/serializer.hpp +16 -0
- package/src/duckdb/src/include/duckdb/common/sort/duckdb_pdqsort.hpp +3 -0
- package/src/duckdb/src/include/duckdb/common/sort/partition_state.hpp +2 -0
- package/src/duckdb/src/include/duckdb/common/string_util.hpp +4 -4
- package/src/duckdb/src/include/duckdb/common/tree_renderer.hpp +24 -25
- package/src/duckdb/src/include/duckdb/common/typedefs.hpp +5 -5
- package/src/duckdb/src/include/duckdb/common/types/cast_helpers.hpp +1 -2
- package/src/duckdb/src/include/duckdb/common/types/column/column_data_collection.hpp +10 -10
- package/src/duckdb/src/include/duckdb/common/types/column/column_data_collection_iterators.hpp +5 -5
- package/src/duckdb/src/include/duckdb/common/types/column/partitioned_column_data.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/types/constraint_conflict_info.hpp +1 -2
- package/src/duckdb/src/include/duckdb/common/types/data_chunk.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/types/date.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/types/hash.hpp +5 -5
- package/src/duckdb/src/include/duckdb/common/types/hyperloglog.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/types/interval.hpp +4 -4
- 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_layout.hpp +10 -3
- package/src/duckdb/src/include/duckdb/common/types/row/tuple_data_segment.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/types/selection_vector.hpp +12 -12
- package/src/duckdb/src/include/duckdb/common/types/string_heap.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/types/string_type.hpp +21 -20
- package/src/duckdb/src/include/duckdb/common/types/time.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/types/timestamp.hpp +3 -3
- package/src/duckdb/src/include/duckdb/common/types/uuid.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/types/value.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/types/vector.hpp +15 -7
- package/src/duckdb/src/include/duckdb/common/types/vector_buffer.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/types.hpp +14 -10
- package/src/duckdb/src/include/duckdb/common/uhugeint.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/union_by_name.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/unique_ptr.hpp +15 -14
- package/src/duckdb/src/include/duckdb/common/vector.hpp +21 -21
- package/src/duckdb/src/include/duckdb/common/vector_operations/aggregate_executor.hpp +2 -0
- package/src/duckdb/src/include/duckdb/common/vector_operations/general_cast.hpp +2 -1
- package/src/duckdb/src/include/duckdb/common/vector_operations/generic_executor.hpp +2 -3
- package/src/duckdb/src/include/duckdb/common/vector_operations/unary_executor.hpp +3 -2
- package/src/duckdb/src/include/duckdb/common/vector_operations/vector_operations.hpp +50 -32
- package/src/duckdb/src/include/duckdb/common/virtual_file_system.hpp +10 -11
- package/src/duckdb/src/include/duckdb/core_functions/aggregate/distributive_functions.hpp +1 -1
- package/src/duckdb/src/include/duckdb/core_functions/aggregate/sum_helpers.hpp +13 -1
- package/src/duckdb/src/include/duckdb/core_functions/function_list.hpp +1 -1
- package/src/duckdb/src/include/duckdb/core_functions/lambda_functions.hpp +2 -1
- package/src/duckdb/src/include/duckdb/execution/aggregate_hashtable.hpp +1 -1
- package/src/duckdb/src/include/duckdb/execution/column_binding_resolver.hpp +1 -1
- package/src/duckdb/src/include/duckdb/execution/expression_executor.hpp +1 -1
- package/src/duckdb/src/include/duckdb/execution/expression_executor_state.hpp +2 -5
- package/src/duckdb/src/include/duckdb/execution/merge_sort_tree.hpp +3 -3
- package/src/duckdb/src/include/duckdb/execution/operator/aggregate/aggregate_object.hpp +2 -2
- package/src/duckdb/src/include/duckdb/execution/operator/aggregate/distinct_aggregate_data.hpp +1 -1
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/base_scanner.hpp +1 -1
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/column_count_scanner.hpp +0 -3
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_buffer.hpp +9 -6
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_buffer_manager.hpp +3 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_error.hpp +40 -22
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_file_handle.hpp +5 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_file_scanner.hpp +1 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_option.hpp +6 -4
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_reader_options.hpp +24 -10
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/csv_state_machine.hpp +4 -0
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/global_csv_state.hpp +3 -1
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/skip_scanner.hpp +0 -3
- package/src/duckdb/src/include/duckdb/execution/operator/csv_scanner/string_value_scanner.hpp +58 -17
- package/src/duckdb/src/include/duckdb/execution/operator/helper/physical_batch_collector.hpp +1 -1
- package/src/duckdb/src/include/duckdb/execution/operator/helper/physical_explain_analyze.hpp +1 -1
- package/src/duckdb/src/include/duckdb/execution/operator/helper/physical_prepare.hpp +3 -3
- package/src/duckdb/src/include/duckdb/execution/operator/helper/physical_set.hpp +1 -1
- package/src/duckdb/src/include/duckdb/execution/operator/helper/physical_vacuum.hpp +4 -1
- package/src/duckdb/src/include/duckdb/execution/operator/persistent/csv_rejects_table.hpp +16 -5
- package/src/duckdb/src/include/duckdb/execution/physical_operator_states.hpp +6 -6
- package/src/duckdb/src/include/duckdb/execution/physical_plan_generator.hpp +2 -1
- package/src/duckdb/src/include/duckdb/execution/window_executor.hpp +1 -1
- package/src/duckdb/src/include/duckdb/execution/window_segment_tree.hpp +1 -1
- package/src/duckdb/src/include/duckdb/function/aggregate_function.hpp +1 -1
- package/src/duckdb/src/include/duckdb/function/cast/cast_function_set.hpp +5 -5
- package/src/duckdb/src/include/duckdb/function/cast/default_casts.hpp +4 -4
- package/src/duckdb/src/include/duckdb/function/cast/vector_cast_helpers.hpp +6 -6
- package/src/duckdb/src/include/duckdb/function/compression_function.hpp +4 -4
- package/src/duckdb/src/include/duckdb/function/copy_function.hpp +10 -13
- package/src/duckdb/src/include/duckdb/function/function.hpp +3 -3
- package/src/duckdb/src/include/duckdb/function/function_binder.hpp +24 -23
- package/src/duckdb/src/include/duckdb/function/function_serialization.hpp +1 -1
- package/src/duckdb/src/include/duckdb/function/function_set.hpp +1 -1
- package/src/duckdb/src/include/duckdb/function/pragma_function.hpp +1 -1
- package/src/duckdb/src/include/duckdb/function/scalar/regexp.hpp +3 -3
- package/src/duckdb/src/include/duckdb/function/scalar/strftime_format.hpp +7 -7
- package/src/duckdb/src/include/duckdb/function/scalar/string_functions.hpp +3 -3
- package/src/duckdb/src/include/duckdb/function/scalar_function.hpp +6 -6
- package/src/duckdb/src/include/duckdb/function/table/arrow/arrow_duck_schema.hpp +4 -4
- package/src/duckdb/src/include/duckdb/function/table/arrow.hpp +2 -2
- package/src/duckdb/src/include/duckdb/function/table/read_csv.hpp +1 -3
- package/src/duckdb/src/include/duckdb/function/table/table_scan.hpp +1 -1
- package/src/duckdb/src/include/duckdb/function/table_function.hpp +12 -11
- package/src/duckdb/src/include/duckdb/function/udf_function.hpp +66 -60
- package/src/duckdb/src/include/duckdb/main/appender.hpp +6 -6
- package/src/duckdb/src/include/duckdb/main/attached_database.hpp +3 -1
- package/src/duckdb/src/include/duckdb/main/buffered_data/buffered_data.hpp +2 -2
- package/src/duckdb/src/include/duckdb/main/buffered_data/simple_buffered_data.hpp +1 -1
- package/src/duckdb/src/include/duckdb/main/capi/capi_internal.hpp +2 -2
- package/src/duckdb/src/include/duckdb/main/chunk_scan_state/query_result.hpp +2 -2
- package/src/duckdb/src/include/duckdb/main/client_context.hpp +1 -1
- package/src/duckdb/src/include/duckdb/main/client_context_file_opener.hpp +3 -2
- package/src/duckdb/src/include/duckdb/main/client_data.hpp +1 -0
- package/src/duckdb/src/include/duckdb/main/client_properties.hpp +2 -1
- package/src/duckdb/src/include/duckdb/main/config.hpp +14 -5
- package/src/duckdb/src/include/duckdb/main/connection.hpp +27 -26
- package/src/duckdb/src/include/duckdb/main/database.hpp +19 -3
- package/src/duckdb/src/include/duckdb/main/database_file_opener.hpp +58 -0
- package/src/duckdb/src/include/duckdb/main/database_path_and_type.hpp +2 -2
- package/src/duckdb/src/include/duckdb/main/error_manager.hpp +6 -6
- package/src/duckdb/src/include/duckdb/main/extension_entries.hpp +8 -0
- package/src/duckdb/src/include/duckdb/main/extension_helper.hpp +1 -0
- package/src/duckdb/src/include/duckdb/main/external_dependencies.hpp +2 -1
- package/src/duckdb/src/include/duckdb/main/prepared_statement.hpp +8 -8
- package/src/duckdb/src/include/duckdb/main/query_profiler.hpp +2 -59
- package/src/duckdb/src/include/duckdb/main/query_result.hpp +3 -3
- package/src/duckdb/src/include/duckdb/main/relation/query_relation.hpp +1 -1
- package/src/duckdb/src/include/duckdb/main/relation.hpp +1 -1
- package/src/duckdb/src/include/duckdb/main/secret/secret.hpp +11 -7
- package/src/duckdb/src/include/duckdb/main/secret/secret_manager.hpp +2 -2
- package/src/duckdb/src/include/duckdb/main/secret/secret_storage.hpp +4 -4
- package/src/duckdb/src/include/duckdb/main/settings.hpp +78 -70
- package/src/duckdb/src/include/duckdb/optimizer/column_lifetime_analyzer.hpp +45 -0
- package/src/duckdb/src/include/duckdb/optimizer/compressed_materialization.hpp +11 -13
- package/src/duckdb/src/include/duckdb/optimizer/join_order/cardinality_estimator.hpp +2 -2
- package/src/duckdb/src/include/duckdb/optimizer/join_order/cost_model.hpp +1 -1
- package/src/duckdb/src/include/duckdb/optimizer/join_order/join_node.hpp +1 -1
- package/src/duckdb/src/include/duckdb/optimizer/join_order/query_graph.hpp +1 -1
- package/src/duckdb/src/include/duckdb/optimizer/join_order/query_graph_manager.hpp +1 -1
- package/src/duckdb/src/include/duckdb/optimizer/join_order/relation_manager.hpp +1 -1
- package/src/duckdb/src/include/duckdb/optimizer/matcher/expression_matcher.hpp +7 -7
- package/src/duckdb/src/include/duckdb/optimizer/matcher/function_matcher.hpp +7 -7
- package/src/duckdb/src/include/duckdb/optimizer/matcher/type_matcher.hpp +1 -1
- package/src/duckdb/src/include/duckdb/optimizer/optimizer.hpp +3 -0
- package/src/duckdb/src/include/duckdb/optimizer/statistics_propagator.hpp +32 -30
- package/src/duckdb/src/include/duckdb/optimizer/unnest_rewriter.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parallel/event.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parallel/executor_task.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parallel/interrupt.hpp +2 -2
- package/src/duckdb/src/include/duckdb/parallel/pipeline_event.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/column_list.hpp +4 -4
- package/src/duckdb/src/include/duckdb/parser/constraints/unique_constraint.hpp +49 -8
- package/src/duckdb/src/include/duckdb/parser/expression/bound_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/positional_reference_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/star_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/alter_scalar_function_info.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/alter_table_function_info.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/alter_table_info.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/copy_database_info.hpp +40 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_function_info.hpp +2 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_index_info.hpp +1 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_info.hpp +2 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_macro_info.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_pragma_function_info.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_secret_info.hpp +2 -2
- package/src/duckdb/src/include/duckdb/parser/parsed_data/extra_drop_info.hpp +3 -3
- package/src/duckdb/src/include/duckdb/parser/parsed_data/parse_info.hpp +3 -2
- package/src/duckdb/src/include/duckdb/parser/parsed_data/vacuum_info.hpp +2 -5
- package/src/duckdb/src/include/duckdb/parser/parser.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/parser_extension.hpp +3 -3
- package/src/duckdb/src/include/duckdb/parser/query_error_context.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/transformer.hpp +3 -5
- package/src/duckdb/src/include/duckdb/planner/bind_context.hpp +2 -2
- package/src/duckdb/src/include/duckdb/planner/binder.hpp +16 -9
- package/src/duckdb/src/include/duckdb/planner/expression/bound_case_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_cast_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_default_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_expanded_expression.hpp +34 -0
- package/src/duckdb/src/include/duckdb/planner/expression/bound_subquery_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression_binder/base_select_binder.hpp +5 -8
- package/src/duckdb/src/include/duckdb/planner/expression_binder/column_alias_binder.hpp +3 -4
- package/src/duckdb/src/include/duckdb/planner/expression_binder/group_binder.hpp +3 -2
- package/src/duckdb/src/include/duckdb/planner/expression_binder/having_binder.hpp +3 -5
- package/src/duckdb/src/include/duckdb/planner/expression_binder/order_binder.hpp +6 -14
- package/src/duckdb/src/include/duckdb/planner/expression_binder/qualify_binder.hpp +3 -6
- package/src/duckdb/src/include/duckdb/planner/expression_binder/select_bind_state.hpp +52 -0
- package/src/duckdb/src/include/duckdb/planner/expression_binder/select_binder.hpp +4 -10
- package/src/duckdb/src/include/duckdb/planner/expression_binder/table_function_binder.hpp +5 -2
- package/src/duckdb/src/include/duckdb/planner/expression_binder.hpp +1 -0
- package/src/duckdb/src/include/duckdb/planner/expression_iterator.hpp +2 -0
- package/src/duckdb/src/include/duckdb/planner/filter/conjunction_filter.hpp +3 -6
- package/src/duckdb/src/include/duckdb/planner/logical_operator.hpp +2 -0
- package/src/duckdb/src/include/duckdb/planner/logical_tokens.hpp +1 -0
- package/src/duckdb/src/include/duckdb/planner/operator/list.hpp +1 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_copy_database.hpp +4 -12
- package/src/duckdb/src/include/duckdb/planner/operator/logical_create_secret.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/operator/logical_cteref.hpp +2 -2
- package/src/duckdb/src/include/duckdb/planner/operator/logical_delim_get.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/operator/logical_dummy_scan.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/operator/logical_explain.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/operator/logical_export.hpp +2 -2
- package/src/duckdb/src/include/duckdb/planner/operator/logical_expression_get.hpp +2 -2
- package/src/duckdb/src/include/duckdb/planner/operator/logical_extension_operator.hpp +2 -2
- package/src/duckdb/src/include/duckdb/planner/operator/logical_materialized_cte.hpp +2 -2
- package/src/duckdb/src/include/duckdb/planner/operator/logical_pragma.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/operator/logical_prepare.hpp +3 -2
- package/src/duckdb/src/include/duckdb/planner/operator/logical_recursive_cte.hpp +3 -3
- package/src/duckdb/src/include/duckdb/planner/operator/logical_reset.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/operator/logical_set.hpp +2 -1
- package/src/duckdb/src/include/duckdb/planner/operator/logical_vacuum.hpp +52 -0
- package/src/duckdb/src/include/duckdb/planner/operator_extension.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/parsed_data/bound_create_table_info.hpp +2 -2
- package/src/duckdb/src/include/duckdb/planner/query_node/bound_select_node.hpp +5 -4
- package/src/duckdb/src/include/duckdb/planner/subquery/flatten_dependent_join.hpp +2 -2
- package/src/duckdb/src/include/duckdb/storage/arena_allocator.hpp +4 -1
- package/src/duckdb/src/include/duckdb/storage/buffer/block_handle.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/buffer_manager.hpp +3 -3
- package/src/duckdb/src/include/duckdb/storage/checkpoint/row_group_writer.hpp +2 -3
- package/src/duckdb/src/include/duckdb/storage/checkpoint/string_checkpoint_state.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/checkpoint/table_data_writer.hpp +3 -3
- package/src/duckdb/src/include/duckdb/storage/checkpoint_manager.hpp +5 -5
- package/src/duckdb/src/include/duckdb/storage/compression/alp/alp_analyze.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/compression/alp/alp_compress.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/compression/alp/alp_fetch.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/compression/alp/alp_scan.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/compression/alprd/algorithm/alprd.hpp +3 -3
- package/src/duckdb/src/include/duckdb/storage/compression/alprd/alprd_analyze.hpp +2 -2
- package/src/duckdb/src/include/duckdb/storage/compression/alprd/alprd_compress.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/compression/alprd/alprd_fetch.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/compression/alprd/alprd_scan.hpp +3 -3
- package/src/duckdb/src/include/duckdb/storage/compression/chimp/algorithm/flag_buffer.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/compression/chimp/algorithm/leading_zero_buffer.hpp +3 -3
- package/src/duckdb/src/include/duckdb/storage/compression/chimp/chimp.hpp +3 -3
- package/src/duckdb/src/include/duckdb/storage/compression/chimp/chimp_analyze.hpp +0 -1
- package/src/duckdb/src/include/duckdb/storage/compression/chimp/chimp_fetch.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/compression/chimp/chimp_scan.hpp +4 -4
- package/src/duckdb/src/include/duckdb/storage/compression/patas/patas.hpp +4 -4
- package/src/duckdb/src/include/duckdb/storage/compression/patas/patas_analyze.hpp +0 -1
- package/src/duckdb/src/include/duckdb/storage/compression/patas/patas_fetch.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/compression/patas/patas_scan.hpp +3 -3
- package/src/duckdb/src/include/duckdb/storage/data_pointer.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/index.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/magic_bytes.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/object_cache.hpp +3 -3
- package/src/duckdb/src/include/duckdb/storage/optimistic_data_writer.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/partial_block_manager.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/single_file_block_manager.hpp +4 -1
- package/src/duckdb/src/include/duckdb/storage/standard_buffer_manager.hpp +24 -24
- package/src/duckdb/src/include/duckdb/storage/statistics/numeric_stats_union.hpp +3 -3
- package/src/duckdb/src/include/duckdb/storage/statistics/segment_statistics.hpp +2 -2
- package/src/duckdb/src/include/duckdb/storage/storage_info.hpp +2 -2
- package/src/duckdb/src/include/duckdb/storage/storage_manager.hpp +4 -4
- package/src/duckdb/src/include/duckdb/storage/string_uncompressed.hpp +9 -6
- package/src/duckdb/src/include/duckdb/storage/table/append_state.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/table/chunk_info.hpp +2 -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 +10 -1
- package/src/duckdb/src/include/duckdb/storage/table/data_table_info.hpp +3 -2
- package/src/duckdb/src/include/duckdb/storage/table/row_group.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/table/row_group_segment_tree.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/table/row_version_manager.hpp +2 -1
- package/src/duckdb/src/include/duckdb/storage/table/scan_state.hpp +3 -3
- package/src/duckdb/src/include/duckdb/storage/table/segment_lock.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/table/segment_tree.hpp +4 -4
- package/src/duckdb/src/include/duckdb/storage/table/standard_column_data.hpp +2 -0
- package/src/duckdb/src/include/duckdb/storage/table/table_index_list.hpp +3 -2
- package/src/duckdb/src/include/duckdb/storage/table/table_statistics.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/table/update_segment.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/table_storage_info.hpp +2 -1
- package/src/duckdb/src/include/duckdb/storage/write_ahead_log.hpp +1 -1
- package/src/duckdb/src/include/duckdb/transaction/delete_info.hpp +20 -1
- package/src/duckdb/src/include/duckdb/transaction/transaction.hpp +1 -1
- package/src/duckdb/src/include/duckdb/transaction/transaction_data.hpp +1 -1
- package/src/duckdb/src/include/duckdb/transaction/undo_buffer.hpp +1 -1
- package/src/duckdb/src/include/duckdb/transaction/update_info.hpp +1 -1
- package/src/duckdb/src/main/appender.cpp +1 -1
- package/src/duckdb/src/main/attached_database.cpp +11 -3
- package/src/duckdb/src/main/capi/arrow-c.cpp +6 -2
- package/src/duckdb/src/main/capi/cast/utils-c.cpp +1 -1
- package/src/duckdb/src/main/capi/duckdb-c.cpp +1 -1
- package/src/duckdb/src/main/capi/pending-c.cpp +1 -1
- package/src/duckdb/src/main/capi/prepared-c.cpp +2 -2
- package/src/duckdb/src/main/capi/result-c.cpp +4 -4
- package/src/duckdb/src/main/client_context.cpp +4 -12
- package/src/duckdb/src/main/client_context_file_opener.cpp +15 -3
- package/src/duckdb/src/main/client_data.cpp +5 -0
- package/src/duckdb/src/main/config.cpp +82 -82
- package/src/duckdb/src/main/database.cpp +31 -7
- package/src/duckdb/src/main/database_manager.cpp +3 -2
- package/src/duckdb/src/main/database_path_and_type.cpp +4 -4
- package/src/duckdb/src/main/error_manager.cpp +1 -1
- package/src/duckdb/src/main/extension/extension_alias.cpp +9 -9
- package/src/duckdb/src/main/extension/extension_helper.cpp +10 -5
- package/src/duckdb/src/main/extension/extension_install.cpp +1 -1
- package/src/duckdb/src/main/extension/extension_load.cpp +111 -37
- package/src/duckdb/src/main/query_profiler.cpp +1 -118
- package/src/duckdb/src/main/secret/secret_manager.cpp +1 -2
- package/src/duckdb/src/main/secret/secret_storage.cpp +1 -1
- package/src/duckdb/src/main/settings/settings.cpp +81 -65
- package/src/duckdb/src/optimizer/column_lifetime_analyzer.cpp +8 -1
- package/src/duckdb/src/optimizer/compressed_materialization/compress_aggregate.cpp +3 -0
- package/src/duckdb/src/optimizer/compressed_materialization.cpp +26 -28
- package/src/duckdb/src/optimizer/cse_optimizer.cpp +5 -5
- package/src/duckdb/src/optimizer/join_order/cardinality_estimator.cpp +10 -6
- package/src/duckdb/src/optimizer/optimizer.cpp +14 -17
- package/src/duckdb/src/optimizer/pushdown/pushdown_cross_product.cpp +16 -5
- package/src/duckdb/src/optimizer/pushdown/pushdown_inner_join.cpp +7 -4
- package/src/duckdb/src/optimizer/pushdown/pushdown_set_operation.cpp +2 -2
- package/src/duckdb/src/optimizer/remove_unused_columns.cpp +3 -3
- package/src/duckdb/src/optimizer/rule/ordered_aggregate_optimizer.cpp +2 -2
- package/src/duckdb/src/optimizer/statistics/expression/propagate_aggregate.cpp +1 -1
- package/src/duckdb/src/optimizer/statistics/expression/propagate_between.cpp +8 -8
- package/src/duckdb/src/optimizer/statistics/expression/propagate_case.cpp +1 -1
- package/src/duckdb/src/optimizer/statistics/expression/propagate_cast.cpp +1 -1
- package/src/duckdb/src/optimizer/statistics/expression/propagate_columnref.cpp +1 -1
- package/src/duckdb/src/optimizer/statistics/expression/propagate_comparison.cpp +7 -7
- package/src/duckdb/src/optimizer/statistics/expression/propagate_conjunction.cpp +6 -6
- package/src/duckdb/src/optimizer/statistics/expression/propagate_constant.cpp +1 -1
- package/src/duckdb/src/optimizer/statistics/expression/propagate_function.cpp +2 -2
- package/src/duckdb/src/optimizer/statistics/expression/propagate_operator.cpp +10 -10
- package/src/duckdb/src/optimizer/statistics/operator/propagate_aggregate.cpp +1 -1
- package/src/duckdb/src/optimizer/statistics/operator/propagate_cross_product.cpp +1 -1
- package/src/duckdb/src/optimizer/statistics/operator/propagate_filter.cpp +14 -7
- package/src/duckdb/src/optimizer/statistics/operator/propagate_get.cpp +2 -2
- package/src/duckdb/src/optimizer/statistics/operator/propagate_join.cpp +9 -9
- package/src/duckdb/src/optimizer/statistics/operator/propagate_limit.cpp +1 -1
- package/src/duckdb/src/optimizer/statistics/operator/propagate_order.cpp +1 -1
- package/src/duckdb/src/optimizer/statistics/operator/propagate_projection.cpp +2 -2
- package/src/duckdb/src/optimizer/statistics/operator/propagate_set_operation.cpp +1 -1
- package/src/duckdb/src/optimizer/statistics/operator/propagate_window.cpp +1 -1
- package/src/duckdb/src/optimizer/statistics_propagator.cpp +39 -18
- package/src/duckdb/src/parallel/pipeline_finish_event.cpp +1 -1
- package/src/duckdb/src/parallel/task_scheduler.cpp +8 -1
- package/src/duckdb/src/parser/constraints/unique_constraint.cpp +4 -2
- package/src/duckdb/src/parser/parsed_data/create_index_info.cpp +64 -0
- package/src/duckdb/src/parser/parsed_data/vacuum_info.cpp +1 -0
- package/src/duckdb/src/parser/transform/expression/transform_function.cpp +13 -5
- package/src/duckdb/src/parser/transform/expression/transform_subquery.cpp +24 -0
- package/src/duckdb/src/parser/transform/helpers/transform_cte.cpp +1 -8
- package/src/duckdb/src/parser/transform/statement/transform_create_function.cpp +2 -1
- package/src/duckdb/src/parser/transform/statement/transform_create_index.cpp +3 -0
- package/src/duckdb/src/parser/transform/statement/transform_delete.cpp +2 -6
- package/src/duckdb/src/parser/transform/statement/transform_insert.cpp +2 -6
- package/src/duckdb/src/parser/transform/statement/transform_pivot_stmt.cpp +2 -6
- package/src/duckdb/src/parser/transform/statement/transform_pragma.cpp +1 -1
- package/src/duckdb/src/parser/transform/statement/transform_select.cpp +5 -2
- package/src/duckdb/src/parser/transform/statement/transform_select_node.cpp +2 -8
- package/src/duckdb/src/parser/transform/statement/transform_update.cpp +1 -6
- package/src/duckdb/src/parser/transform/statement/transform_use.cpp +3 -2
- package/src/duckdb/src/parser/transformer.cpp +14 -2
- package/src/duckdb/src/planner/binder/expression/bind_aggregate_expression.cpp +40 -17
- package/src/duckdb/src/planner/binder/expression/bind_unnest_expression.cpp +8 -3
- package/src/duckdb/src/planner/binder/expression/bind_window_expression.cpp +32 -30
- package/src/duckdb/src/planner/binder/query_node/bind_cte_node.cpp +28 -17
- package/src/duckdb/src/planner/binder/query_node/bind_select_node.cpp +146 -101
- package/src/duckdb/src/planner/binder/query_node/bind_setop_node.cpp +28 -26
- package/src/duckdb/src/planner/binder/query_node/plan_cte_node.cpp +29 -0
- package/src/duckdb/src/planner/binder/query_node/plan_subquery.cpp +10 -10
- package/src/duckdb/src/planner/binder/statement/bind_copy.cpp +3 -2
- package/src/duckdb/src/planner/binder/statement/bind_copy_database.cpp +23 -28
- package/src/duckdb/src/planner/binder/statement/bind_create.cpp +11 -12
- package/src/duckdb/src/planner/binder/statement/bind_create_table.cpp +9 -11
- package/src/duckdb/src/planner/binder/statement/bind_insert.cpp +10 -13
- package/src/duckdb/src/planner/binder/statement/bind_pragma.cpp +3 -3
- package/src/duckdb/src/planner/binder/statement/bind_set.cpp +3 -0
- package/src/duckdb/src/planner/binder/statement/bind_vacuum.cpp +66 -65
- package/src/duckdb/src/planner/binder/tableref/bind_basetableref.cpp +54 -46
- package/src/duckdb/src/planner/binder/tableref/bind_pivot.cpp +3 -0
- package/src/duckdb/src/planner/binder/tableref/bind_subqueryref.cpp +1 -1
- package/src/duckdb/src/planner/binder/tableref/bind_table_function.cpp +5 -5
- package/src/duckdb/src/planner/binder.cpp +78 -6
- package/src/duckdb/src/planner/expression/bound_cast_expression.cpp +11 -3
- package/src/duckdb/src/planner/expression/bound_expanded_expression.cpp +22 -0
- package/src/duckdb/src/planner/expression_binder/base_select_binder.cpp +11 -58
- package/src/duckdb/src/planner/expression_binder/column_alias_binder.cpp +5 -8
- package/src/duckdb/src/planner/expression_binder/group_binder.cpp +5 -4
- package/src/duckdb/src/planner/expression_binder/having_binder.cpp +5 -19
- package/src/duckdb/src/planner/expression_binder/lateral_binder.cpp +8 -8
- package/src/duckdb/src/planner/expression_binder/order_binder.cpp +42 -26
- package/src/duckdb/src/planner/expression_binder/qualify_binder.cpp +3 -22
- package/src/duckdb/src/planner/expression_binder/select_bind_state.cpp +52 -0
- package/src/duckdb/src/planner/expression_binder/select_binder.cpp +43 -5
- package/src/duckdb/src/planner/expression_binder/table_function_binder.cpp +19 -7
- package/src/duckdb/src/planner/logical_operator.cpp +20 -3
- package/src/duckdb/src/planner/operator/logical_copy_database.cpp +4 -14
- package/src/duckdb/src/planner/operator/logical_delete.cpp +1 -1
- package/src/duckdb/src/planner/operator/logical_get.cpp +1 -1
- package/src/duckdb/src/planner/operator/logical_insert.cpp +1 -1
- package/src/duckdb/src/planner/operator/logical_update.cpp +1 -1
- package/src/duckdb/src/planner/operator/logical_vacuum.cpp +65 -0
- package/src/duckdb/src/planner/planner.cpp +4 -4
- package/src/duckdb/src/planner/subquery/flatten_dependent_join.cpp +26 -27
- package/src/duckdb/src/storage/arena_allocator.cpp +9 -0
- package/src/duckdb/src/storage/buffer/buffer_pool_reservation.cpp +1 -1
- package/src/duckdb/src/storage/buffer_manager.cpp +2 -10
- package/src/duckdb/src/storage/checkpoint/table_data_writer.cpp +2 -3
- package/src/duckdb/src/storage/checkpoint_manager.cpp +15 -8
- package/src/duckdb/src/storage/compression/bitpacking.cpp +6 -1
- package/src/duckdb/src/storage/compression/string_uncompressed.cpp +1 -1
- package/src/duckdb/src/storage/data_pointer.cpp +1 -1
- package/src/duckdb/src/storage/data_table.cpp +18 -7
- package/src/duckdb/src/storage/local_storage.cpp +8 -5
- package/src/duckdb/src/storage/magic_bytes.cpp +6 -5
- package/src/duckdb/src/storage/partial_block_manager.cpp +1 -1
- package/src/duckdb/src/storage/serialization/serialize_logical_operator.cpp +20 -9
- package/src/duckdb/src/storage/serialization/serialize_nodes.cpp +12 -10
- package/src/duckdb/src/storage/serialization/serialize_parse_info.cpp +23 -0
- package/src/duckdb/src/storage/single_file_block_manager.cpp +46 -19
- package/src/duckdb/src/storage/standard_buffer_manager.cpp +21 -5
- package/src/duckdb/src/storage/statistics/array_stats.cpp +1 -1
- package/src/duckdb/src/storage/statistics/base_statistics.cpp +2 -3
- package/src/duckdb/src/storage/statistics/list_stats.cpp +1 -1
- package/src/duckdb/src/storage/statistics/struct_stats.cpp +1 -1
- package/src/duckdb/src/storage/storage_info.cpp +19 -19
- package/src/duckdb/src/storage/storage_manager.cpp +18 -13
- package/src/duckdb/src/storage/table/chunk_info.cpp +11 -3
- package/src/duckdb/src/storage/table/column_data.cpp +88 -66
- package/src/duckdb/src/storage/table/row_group.cpp +7 -7
- package/src/duckdb/src/storage/table/row_version_manager.cpp +2 -2
- package/src/duckdb/src/storage/table/standard_column_data.cpp +4 -0
- package/src/duckdb/src/storage/table/update_segment.cpp +3 -1
- package/src/duckdb/src/storage/table_index_list.cpp +6 -1
- package/src/duckdb/src/storage/temporary_file_manager.cpp +1 -1
- package/src/duckdb/src/storage/wal_replay.cpp +8 -7
- package/src/duckdb/src/storage/write_ahead_log.cpp +3 -4
- package/src/duckdb/src/transaction/cleanup_state.cpp +10 -3
- package/src/duckdb/src/transaction/commit_state.cpp +11 -4
- package/src/duckdb/src/transaction/duck_transaction.cpp +23 -3
- package/src/duckdb/src/transaction/rollback_state.cpp +1 -1
- package/src/duckdb/src/transaction/transaction_context.cpp +1 -1
- package/src/duckdb/src/transaction/undo_buffer.cpp +3 -1
- package/src/duckdb/third_party/fmt/include/fmt/core.h +0 -5
- package/src/duckdb/third_party/fsst/fsst.h +1 -1
- package/src/duckdb/third_party/fsst/libfsst.cpp +1 -140
- package/src/duckdb/third_party/fsst/libfsst.hpp +0 -13
- package/src/duckdb/third_party/hyperloglog/hyperloglog.hpp +4 -0
- package/src/duckdb/third_party/libpg_query/include/nodes/parsenodes.hpp +8 -1
- package/src/duckdb/third_party/libpg_query/include/parser/gram.hpp +2 -1
- package/src/duckdb/third_party/libpg_query/src_backend_parser_gram.cpp +15401 -15354
- package/src/duckdb/third_party/libpg_query/src_backend_parser_scan.cpp +299 -538
- package/src/duckdb/third_party/lz4/lz4.cpp +2605 -0
- package/src/duckdb/third_party/lz4/lz4.hpp +843 -0
- package/src/duckdb/third_party/parquet/parquet_types.cpp +3 -0
- package/src/duckdb/third_party/parquet/parquet_types.h +2 -1
- package/src/duckdb/third_party/re2/re2/bitmap256.cc +44 -0
- package/src/duckdb/third_party/re2/re2/bitmap256.h +3 -35
- package/src/duckdb/third_party/re2/re2/bitstate.cc +31 -24
- package/src/duckdb/third_party/re2/re2/compile.cc +146 -164
- package/src/duckdb/third_party/re2/re2/dfa.cc +174 -181
- package/src/duckdb/third_party/re2/re2/filtered_re2.cc +19 -3
- package/src/duckdb/third_party/re2/re2/filtered_re2.h +27 -23
- package/src/duckdb/third_party/re2/re2/mimics_pcre.cc +21 -11
- package/src/duckdb/third_party/re2/re2/nfa.cc +91 -131
- package/src/duckdb/third_party/re2/re2/onepass.cc +11 -10
- package/src/duckdb/third_party/re2/re2/parse.cc +171 -154
- package/src/duckdb/third_party/re2/re2/perl_groups.cc +35 -35
- package/src/duckdb/third_party/re2/re2/pod_array.h +55 -0
- package/src/duckdb/third_party/re2/re2/prefilter.cc +40 -40
- package/src/duckdb/third_party/re2/re2/prefilter.h +24 -2
- package/src/duckdb/third_party/re2/re2/prefilter_tree.cc +70 -84
- package/src/duckdb/third_party/re2/re2/prefilter_tree.h +5 -4
- package/src/duckdb/third_party/re2/re2/prog.cc +315 -58
- package/src/duckdb/third_party/re2/re2/prog.h +77 -44
- package/src/duckdb/third_party/re2/re2/re2.cc +333 -221
- package/src/duckdb/third_party/re2/re2/re2.h +277 -201
- package/src/duckdb/third_party/re2/re2/regexp.cc +137 -105
- package/src/duckdb/third_party/re2/re2/regexp.h +45 -40
- package/src/duckdb/third_party/re2/re2/set.cc +40 -17
- package/src/duckdb/third_party/re2/re2/set.h +11 -6
- package/src/duckdb/third_party/re2/re2/simplify.cc +50 -41
- package/src/duckdb/third_party/re2/re2/sparse_array.h +392 -0
- package/src/duckdb/third_party/re2/re2/sparse_set.h +264 -0
- package/src/duckdb/third_party/re2/re2/stringpiece.cc +1 -1
- package/src/duckdb/third_party/re2/re2/stringpiece.h +11 -8
- package/src/duckdb/third_party/re2/re2/tostring.cc +8 -6
- package/src/duckdb/third_party/re2/re2/unicode_casefold.cc +39 -10
- package/src/duckdb/third_party/re2/re2/unicode_casefold.h +1 -1
- package/src/duckdb/third_party/re2/re2/unicode_groups.cc +5019 -4566
- package/src/duckdb/third_party/re2/re2/unicode_groups.h +1 -1
- package/src/duckdb/third_party/re2/re2/walker-inl.h +21 -20
- package/src/duckdb/third_party/re2/util/logging.h +14 -18
- package/src/duckdb/third_party/re2/util/mix.h +4 -4
- package/src/duckdb/third_party/re2/util/mutex.h +48 -15
- package/src/duckdb/third_party/re2/util/rune.cc +5 -5
- package/src/duckdb/third_party/re2/util/strutil.cc +1 -16
- package/src/duckdb/third_party/re2/util/strutil.h +1 -3
- package/src/duckdb/third_party/re2/util/utf.h +1 -1
- package/src/duckdb/third_party/re2/util/util.h +9 -1
- package/src/duckdb/third_party/utf8proc/include/utf8proc_wrapper.hpp +2 -0
- package/src/duckdb/third_party/utf8proc/utf8proc_wrapper.cpp +36 -1
- package/src/duckdb/ub_src_common.cpp +0 -2
- package/src/duckdb/ub_src_execution_physical_plan.cpp +2 -0
- package/src/duckdb/ub_src_planner_expression.cpp +2 -0
- package/src/duckdb/ub_src_planner_expression_binder.cpp +2 -0
- package/src/duckdb/ub_src_planner_operator.cpp +2 -0
|
@@ -47,7 +47,7 @@ void AccessModeSetting::ResetGlobal(DatabaseInstance *db, DBConfig &config) {
|
|
|
47
47
|
config.options.access_mode = DBConfig().options.access_mode;
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
Value AccessModeSetting::GetSetting(ClientContext &context) {
|
|
50
|
+
Value AccessModeSetting::GetSetting(const ClientContext &context) {
|
|
51
51
|
auto &config = DBConfig::GetConfig(context);
|
|
52
52
|
switch (config.options.access_mode) {
|
|
53
53
|
case AccessMode::AUTOMATIC:
|
|
@@ -73,7 +73,7 @@ void AllowPersistentSecrets::ResetGlobal(DatabaseInstance *db, DBConfig &config)
|
|
|
73
73
|
config.secret_manager->ResetEnablePersistentSecrets();
|
|
74
74
|
}
|
|
75
75
|
|
|
76
|
-
Value AllowPersistentSecrets::GetSetting(ClientContext &context) {
|
|
76
|
+
Value AllowPersistentSecrets::GetSetting(const ClientContext &context) {
|
|
77
77
|
auto &config = DBConfig::GetConfig(context);
|
|
78
78
|
return Value::BOOLEAN(config.secret_manager->PersistentSecretsEnabled());
|
|
79
79
|
}
|
|
@@ -90,7 +90,7 @@ void CheckpointThresholdSetting::ResetGlobal(DatabaseInstance *db, DBConfig &con
|
|
|
90
90
|
config.options.checkpoint_wal_size = DBConfig().options.checkpoint_wal_size;
|
|
91
91
|
}
|
|
92
92
|
|
|
93
|
-
Value CheckpointThresholdSetting::GetSetting(ClientContext &context) {
|
|
93
|
+
Value CheckpointThresholdSetting::GetSetting(const ClientContext &context) {
|
|
94
94
|
auto &config = DBConfig::GetConfig(context);
|
|
95
95
|
return Value(StringUtil::BytesToHumanReadableString(config.options.checkpoint_wal_size));
|
|
96
96
|
}
|
|
@@ -118,7 +118,7 @@ void DebugCheckpointAbort::ResetGlobal(DatabaseInstance *db, DBConfig &config) {
|
|
|
118
118
|
config.options.checkpoint_abort = DBConfig().options.checkpoint_abort;
|
|
119
119
|
}
|
|
120
120
|
|
|
121
|
-
Value DebugCheckpointAbort::GetSetting(ClientContext &context) {
|
|
121
|
+
Value DebugCheckpointAbort::GetSetting(const ClientContext &context) {
|
|
122
122
|
auto &config = DBConfig::GetConfig(*context.db);
|
|
123
123
|
auto setting = config.options.checkpoint_abort;
|
|
124
124
|
switch (setting) {
|
|
@@ -146,7 +146,7 @@ void DebugForceExternal::SetLocal(ClientContext &context, const Value &input) {
|
|
|
146
146
|
ClientConfig::GetConfig(context).force_external = input.GetValue<bool>();
|
|
147
147
|
}
|
|
148
148
|
|
|
149
|
-
Value DebugForceExternal::GetSetting(ClientContext &context) {
|
|
149
|
+
Value DebugForceExternal::GetSetting(const ClientContext &context) {
|
|
150
150
|
return Value::BOOLEAN(ClientConfig::GetConfig(context).force_external);
|
|
151
151
|
}
|
|
152
152
|
|
|
@@ -161,7 +161,7 @@ void DebugForceNoCrossProduct::SetLocal(ClientContext &context, const Value &inp
|
|
|
161
161
|
ClientConfig::GetConfig(context).force_no_cross_product = input.GetValue<bool>();
|
|
162
162
|
}
|
|
163
163
|
|
|
164
|
-
Value DebugForceNoCrossProduct::GetSetting(ClientContext &context) {
|
|
164
|
+
Value DebugForceNoCrossProduct::GetSetting(const ClientContext &context) {
|
|
165
165
|
return Value::BOOLEAN(ClientConfig::GetConfig(context).force_no_cross_product);
|
|
166
166
|
}
|
|
167
167
|
|
|
@@ -180,7 +180,7 @@ void OrderedAggregateThreshold::SetLocal(ClientContext &context, const Value &in
|
|
|
180
180
|
ClientConfig::GetConfig(context).ordered_aggregate_threshold = param;
|
|
181
181
|
}
|
|
182
182
|
|
|
183
|
-
Value OrderedAggregateThreshold::GetSetting(ClientContext &context) {
|
|
183
|
+
Value OrderedAggregateThreshold::GetSetting(const ClientContext &context) {
|
|
184
184
|
return Value::UBIGINT(ClientConfig::GetConfig(context).ordered_aggregate_threshold);
|
|
185
185
|
}
|
|
186
186
|
|
|
@@ -204,7 +204,7 @@ void DebugWindowMode::ResetGlobal(DatabaseInstance *db, DBConfig &config) {
|
|
|
204
204
|
config.options.window_mode = DBConfig().options.window_mode;
|
|
205
205
|
}
|
|
206
206
|
|
|
207
|
-
Value DebugWindowMode::GetSetting(ClientContext &context) {
|
|
207
|
+
Value DebugWindowMode::GetSetting(const ClientContext &context) {
|
|
208
208
|
return Value();
|
|
209
209
|
}
|
|
210
210
|
|
|
@@ -219,7 +219,7 @@ void DebugAsOfIEJoin::SetLocal(ClientContext &context, const Value &input) {
|
|
|
219
219
|
ClientConfig::GetConfig(context).force_asof_iejoin = input.GetValue<bool>();
|
|
220
220
|
}
|
|
221
221
|
|
|
222
|
-
Value DebugAsOfIEJoin::GetSetting(ClientContext &context) {
|
|
222
|
+
Value DebugAsOfIEJoin::GetSetting(const ClientContext &context) {
|
|
223
223
|
return Value::BOOLEAN(ClientConfig::GetConfig(context).force_asof_iejoin);
|
|
224
224
|
}
|
|
225
225
|
|
|
@@ -234,7 +234,7 @@ void PreferRangeJoins::SetLocal(ClientContext &context, const Value &input) {
|
|
|
234
234
|
ClientConfig::GetConfig(context).prefer_range_joins = input.GetValue<bool>();
|
|
235
235
|
}
|
|
236
236
|
|
|
237
|
-
Value PreferRangeJoins::GetSetting(ClientContext &context) {
|
|
237
|
+
Value PreferRangeJoins::GetSetting(const ClientContext &context) {
|
|
238
238
|
return Value::BOOLEAN(ClientConfig::GetConfig(context).prefer_range_joins);
|
|
239
239
|
}
|
|
240
240
|
|
|
@@ -263,7 +263,7 @@ void DefaultCollationSetting::SetLocal(ClientContext &context, const Value &inpu
|
|
|
263
263
|
config.options.collation = parameter;
|
|
264
264
|
}
|
|
265
265
|
|
|
266
|
-
Value DefaultCollationSetting::GetSetting(ClientContext &context) {
|
|
266
|
+
Value DefaultCollationSetting::GetSetting(const ClientContext &context) {
|
|
267
267
|
auto &config = DBConfig::GetConfig(context);
|
|
268
268
|
return Value(config.options.collation);
|
|
269
269
|
}
|
|
@@ -287,7 +287,7 @@ void DefaultOrderSetting::ResetGlobal(DatabaseInstance *db, DBConfig &config) {
|
|
|
287
287
|
config.options.default_order_type = DBConfig().options.default_order_type;
|
|
288
288
|
}
|
|
289
289
|
|
|
290
|
-
Value DefaultOrderSetting::GetSetting(ClientContext &context) {
|
|
290
|
+
Value DefaultOrderSetting::GetSetting(const ClientContext &context) {
|
|
291
291
|
auto &config = DBConfig::GetConfig(context);
|
|
292
292
|
switch (config.options.default_order_type) {
|
|
293
293
|
case OrderType::ASCENDING:
|
|
@@ -325,7 +325,7 @@ void DefaultNullOrderSetting::ResetGlobal(DatabaseInstance *db, DBConfig &config
|
|
|
325
325
|
config.options.default_null_order = DBConfig().options.default_null_order;
|
|
326
326
|
}
|
|
327
327
|
|
|
328
|
-
Value DefaultNullOrderSetting::GetSetting(ClientContext &context) {
|
|
328
|
+
Value DefaultNullOrderSetting::GetSetting(const ClientContext &context) {
|
|
329
329
|
auto &config = DBConfig::GetConfig(context);
|
|
330
330
|
switch (config.options.default_null_order) {
|
|
331
331
|
case DefaultOrderByNullType::NULLS_FIRST:
|
|
@@ -352,7 +352,7 @@ void DefaultSecretStorage::ResetGlobal(DatabaseInstance *db, DBConfig &config) {
|
|
|
352
352
|
config.secret_manager->ResetDefaultStorage();
|
|
353
353
|
}
|
|
354
354
|
|
|
355
|
-
Value DefaultSecretStorage::GetSetting(ClientContext &context) {
|
|
355
|
+
Value DefaultSecretStorage::GetSetting(const ClientContext &context) {
|
|
356
356
|
auto &config = DBConfig::GetConfig(context);
|
|
357
357
|
return config.secret_manager->DefaultStorage();
|
|
358
358
|
}
|
|
@@ -377,7 +377,7 @@ void DisabledFileSystemsSetting::ResetGlobal(DatabaseInstance *db, DBConfig &con
|
|
|
377
377
|
fs.SetDisabledFileSystems(vector<string>());
|
|
378
378
|
}
|
|
379
379
|
|
|
380
|
-
Value DisabledFileSystemsSetting::GetSetting(ClientContext &context) {
|
|
380
|
+
Value DisabledFileSystemsSetting::GetSetting(const ClientContext &context) {
|
|
381
381
|
return Value("");
|
|
382
382
|
}
|
|
383
383
|
|
|
@@ -402,7 +402,7 @@ void DisabledOptimizersSetting::ResetGlobal(DatabaseInstance *db, DBConfig &conf
|
|
|
402
402
|
config.options.disabled_optimizers = DBConfig().options.disabled_optimizers;
|
|
403
403
|
}
|
|
404
404
|
|
|
405
|
-
Value DisabledOptimizersSetting::GetSetting(ClientContext &context) {
|
|
405
|
+
Value DisabledOptimizersSetting::GetSetting(const ClientContext &context) {
|
|
406
406
|
auto &config = DBConfig::GetConfig(context);
|
|
407
407
|
string result;
|
|
408
408
|
for (auto &optimizer : config.options.disabled_optimizers) {
|
|
@@ -432,7 +432,7 @@ void EnableExternalAccessSetting::ResetGlobal(DatabaseInstance *db, DBConfig &co
|
|
|
432
432
|
config.options.enable_external_access = DBConfig().options.enable_external_access;
|
|
433
433
|
}
|
|
434
434
|
|
|
435
|
-
Value EnableExternalAccessSetting::GetSetting(ClientContext &context) {
|
|
435
|
+
Value EnableExternalAccessSetting::GetSetting(const ClientContext &context) {
|
|
436
436
|
auto &config = DBConfig::GetConfig(context);
|
|
437
437
|
return Value::BOOLEAN(config.options.enable_external_access);
|
|
438
438
|
}
|
|
@@ -448,7 +448,7 @@ void EnableFSSTVectors::ResetGlobal(DatabaseInstance *db, DBConfig &config) {
|
|
|
448
448
|
config.options.enable_fsst_vectors = DBConfig().options.enable_fsst_vectors;
|
|
449
449
|
}
|
|
450
450
|
|
|
451
|
-
Value EnableFSSTVectors::GetSetting(ClientContext &context) {
|
|
451
|
+
Value EnableFSSTVectors::GetSetting(const ClientContext &context) {
|
|
452
452
|
auto &config = DBConfig::GetConfig(context);
|
|
453
453
|
return Value::BOOLEAN(config.options.enable_fsst_vectors);
|
|
454
454
|
}
|
|
@@ -471,11 +471,28 @@ void AllowUnsignedExtensionsSetting::ResetGlobal(DatabaseInstance *db, DBConfig
|
|
|
471
471
|
config.options.allow_unsigned_extensions = DBConfig().options.allow_unsigned_extensions;
|
|
472
472
|
}
|
|
473
473
|
|
|
474
|
-
Value AllowUnsignedExtensionsSetting::GetSetting(ClientContext &context) {
|
|
474
|
+
Value AllowUnsignedExtensionsSetting::GetSetting(const ClientContext &context) {
|
|
475
475
|
auto &config = DBConfig::GetConfig(context);
|
|
476
476
|
return Value::BOOLEAN(config.options.allow_unsigned_extensions);
|
|
477
477
|
}
|
|
478
478
|
|
|
479
|
+
//===--------------------------------------------------------------------===//
|
|
480
|
+
// Allow Extensions Metadata Mismatch
|
|
481
|
+
//===--------------------------------------------------------------------===//
|
|
482
|
+
void AllowExtensionsMetadataMismatchSetting::SetGlobal(DatabaseInstance *db, DBConfig &config, const Value &input) {
|
|
483
|
+
auto new_value = input.GetValue<bool>();
|
|
484
|
+
config.options.allow_extensions_metadata_mismatch = new_value;
|
|
485
|
+
}
|
|
486
|
+
|
|
487
|
+
void AllowExtensionsMetadataMismatchSetting::ResetGlobal(DatabaseInstance *db, DBConfig &config) {
|
|
488
|
+
config.options.allow_extensions_metadata_mismatch = DBConfig().options.allow_extensions_metadata_mismatch;
|
|
489
|
+
}
|
|
490
|
+
|
|
491
|
+
Value AllowExtensionsMetadataMismatchSetting::GetSetting(const ClientContext &context) {
|
|
492
|
+
auto &config = DBConfig::GetConfig(context);
|
|
493
|
+
return Value::BOOLEAN(config.options.allow_extensions_metadata_mismatch);
|
|
494
|
+
}
|
|
495
|
+
|
|
479
496
|
//===--------------------------------------------------------------------===//
|
|
480
497
|
// Allow Unredacted Secrets
|
|
481
498
|
//===--------------------------------------------------------------------===//
|
|
@@ -494,7 +511,7 @@ void AllowUnredactedSecretsSetting::ResetGlobal(DatabaseInstance *db, DBConfig &
|
|
|
494
511
|
config.options.allow_unredacted_secrets = DBConfig().options.allow_unredacted_secrets;
|
|
495
512
|
}
|
|
496
513
|
|
|
497
|
-
Value AllowUnredactedSecretsSetting::GetSetting(ClientContext &context) {
|
|
514
|
+
Value AllowUnredactedSecretsSetting::GetSetting(const ClientContext &context) {
|
|
498
515
|
auto &config = DBConfig::GetConfig(context);
|
|
499
516
|
return Value::BOOLEAN(config.options.allow_unredacted_secrets);
|
|
500
517
|
}
|
|
@@ -510,7 +527,7 @@ void EnableObjectCacheSetting::ResetGlobal(DatabaseInstance *db, DBConfig &confi
|
|
|
510
527
|
config.options.object_cache_enable = DBConfig().options.object_cache_enable;
|
|
511
528
|
}
|
|
512
529
|
|
|
513
|
-
Value EnableObjectCacheSetting::GetSetting(ClientContext &context) {
|
|
530
|
+
Value EnableObjectCacheSetting::GetSetting(const ClientContext &context) {
|
|
514
531
|
auto &config = DBConfig::GetConfig(context);
|
|
515
532
|
return Value::BOOLEAN(config.options.object_cache_enable);
|
|
516
533
|
}
|
|
@@ -526,7 +543,7 @@ void EnableHTTPMetadataCacheSetting::ResetGlobal(DatabaseInstance *db, DBConfig
|
|
|
526
543
|
config.options.http_metadata_cache_enable = DBConfig().options.http_metadata_cache_enable;
|
|
527
544
|
}
|
|
528
545
|
|
|
529
|
-
Value EnableHTTPMetadataCacheSetting::GetSetting(ClientContext &context) {
|
|
546
|
+
Value EnableHTTPMetadataCacheSetting::GetSetting(const ClientContext &context) {
|
|
530
547
|
auto &config = DBConfig::GetConfig(context);
|
|
531
548
|
return Value::BOOLEAN(config.options.http_metadata_cache_enable);
|
|
532
549
|
}
|
|
@@ -559,7 +576,7 @@ void EnableProfilingSetting::SetLocal(ClientContext &context, const Value &input
|
|
|
559
576
|
config.emit_profiler_output = true;
|
|
560
577
|
}
|
|
561
578
|
|
|
562
|
-
Value EnableProfilingSetting::GetSetting(ClientContext &context) {
|
|
579
|
+
Value EnableProfilingSetting::GetSetting(const ClientContext &context) {
|
|
563
580
|
auto &config = ClientConfig::GetConfig(context);
|
|
564
581
|
if (!config.enable_profiler) {
|
|
565
582
|
return Value();
|
|
@@ -587,7 +604,7 @@ void CustomExtensionRepository::SetGlobal(DatabaseInstance *db, DBConfig &config
|
|
|
587
604
|
config.options.custom_extension_repo = input.ToString();
|
|
588
605
|
}
|
|
589
606
|
|
|
590
|
-
Value CustomExtensionRepository::GetSetting(ClientContext &context) {
|
|
607
|
+
Value CustomExtensionRepository::GetSetting(const ClientContext &context) {
|
|
591
608
|
auto &config = DBConfig::GetConfig(context);
|
|
592
609
|
return Value(config.options.custom_extension_repo);
|
|
593
610
|
}
|
|
@@ -603,7 +620,7 @@ void AutoloadExtensionRepository::SetGlobal(DatabaseInstance *db, DBConfig &conf
|
|
|
603
620
|
config.options.autoinstall_extension_repo = input.ToString();
|
|
604
621
|
}
|
|
605
622
|
|
|
606
|
-
Value AutoloadExtensionRepository::GetSetting(ClientContext &context) {
|
|
623
|
+
Value AutoloadExtensionRepository::GetSetting(const ClientContext &context) {
|
|
607
624
|
auto &config = DBConfig::GetConfig(context);
|
|
608
625
|
return Value(config.options.autoinstall_extension_repo);
|
|
609
626
|
}
|
|
@@ -619,7 +636,7 @@ void AutoinstallKnownExtensions::ResetGlobal(DatabaseInstance *db, DBConfig &con
|
|
|
619
636
|
config.options.autoinstall_known_extensions = DBConfig().options.autoinstall_known_extensions;
|
|
620
637
|
}
|
|
621
638
|
|
|
622
|
-
Value AutoinstallKnownExtensions::GetSetting(ClientContext &context) {
|
|
639
|
+
Value AutoinstallKnownExtensions::GetSetting(const ClientContext &context) {
|
|
623
640
|
auto &config = DBConfig::GetConfig(context);
|
|
624
641
|
return Value::BOOLEAN(config.options.autoinstall_known_extensions);
|
|
625
642
|
}
|
|
@@ -634,7 +651,7 @@ void AutoloadKnownExtensions::ResetGlobal(DatabaseInstance *db, DBConfig &config
|
|
|
634
651
|
config.options.autoload_known_extensions = DBConfig().options.autoload_known_extensions;
|
|
635
652
|
}
|
|
636
653
|
|
|
637
|
-
Value AutoloadKnownExtensions::GetSetting(ClientContext &context) {
|
|
654
|
+
Value AutoloadKnownExtensions::GetSetting(const ClientContext &context) {
|
|
638
655
|
auto &config = DBConfig::GetConfig(context);
|
|
639
656
|
return Value::BOOLEAN(config.options.autoload_known_extensions);
|
|
640
657
|
}
|
|
@@ -654,7 +671,7 @@ void EnableProgressBarSetting::SetLocal(ClientContext &context, const Value &inp
|
|
|
654
671
|
config.enable_progress_bar = input.GetValue<bool>();
|
|
655
672
|
}
|
|
656
673
|
|
|
657
|
-
Value EnableProgressBarSetting::GetSetting(ClientContext &context) {
|
|
674
|
+
Value EnableProgressBarSetting::GetSetting(const ClientContext &context) {
|
|
658
675
|
return Value::BOOLEAN(ClientConfig::GetConfig(context).enable_progress_bar);
|
|
659
676
|
}
|
|
660
677
|
|
|
@@ -673,7 +690,7 @@ void EnableProgressBarPrintSetting::ResetLocal(ClientContext &context) {
|
|
|
673
690
|
config.print_progress_bar = ClientConfig().print_progress_bar;
|
|
674
691
|
}
|
|
675
692
|
|
|
676
|
-
Value EnableProgressBarPrintSetting::GetSetting(ClientContext &context) {
|
|
693
|
+
Value EnableProgressBarPrintSetting::GetSetting(const ClientContext &context) {
|
|
677
694
|
return Value::BOOLEAN(ClientConfig::GetConfig(context).print_progress_bar);
|
|
678
695
|
}
|
|
679
696
|
|
|
@@ -688,7 +705,7 @@ void ErrorsAsJsonSetting::SetLocal(ClientContext &context, const Value &input) {
|
|
|
688
705
|
ClientConfig::GetConfig(context).errors_as_json = BooleanValue::Get(input);
|
|
689
706
|
}
|
|
690
707
|
|
|
691
|
-
Value ErrorsAsJsonSetting::GetSetting(ClientContext &context) {
|
|
708
|
+
Value ErrorsAsJsonSetting::GetSetting(const ClientContext &context) {
|
|
692
709
|
return Value::BOOLEAN(ClientConfig::GetConfig(context).errors_as_json ? 1 : 0);
|
|
693
710
|
}
|
|
694
711
|
|
|
@@ -713,7 +730,7 @@ void ExplainOutputSetting::SetLocal(ClientContext &context, const Value &input)
|
|
|
713
730
|
}
|
|
714
731
|
}
|
|
715
732
|
|
|
716
|
-
Value ExplainOutputSetting::GetSetting(ClientContext &context) {
|
|
733
|
+
Value ExplainOutputSetting::GetSetting(const ClientContext &context) {
|
|
717
734
|
switch (ClientConfig::GetConfig(context).explain_output_type) {
|
|
718
735
|
case ExplainOutputType::ALL:
|
|
719
736
|
return "all";
|
|
@@ -730,7 +747,6 @@ Value ExplainOutputSetting::GetSetting(ClientContext &context) {
|
|
|
730
747
|
// Extension Directory Setting
|
|
731
748
|
//===--------------------------------------------------------------------===//
|
|
732
749
|
void ExtensionDirectorySetting::SetGlobal(DatabaseInstance *db, DBConfig &config, const Value &input) {
|
|
733
|
-
auto new_directory = input.ToString();
|
|
734
750
|
config.options.extension_directory = input.ToString();
|
|
735
751
|
}
|
|
736
752
|
|
|
@@ -738,7 +754,7 @@ void ExtensionDirectorySetting::ResetGlobal(DatabaseInstance *db, DBConfig &conf
|
|
|
738
754
|
config.options.extension_directory = DBConfig().options.extension_directory;
|
|
739
755
|
}
|
|
740
756
|
|
|
741
|
-
Value ExtensionDirectorySetting::GetSetting(ClientContext &context) {
|
|
757
|
+
Value ExtensionDirectorySetting::GetSetting(const ClientContext &context) {
|
|
742
758
|
return Value(DBConfig::GetConfig(context).options.extension_directory);
|
|
743
759
|
}
|
|
744
760
|
|
|
@@ -765,7 +781,7 @@ void ExternalThreadsSetting::ResetGlobal(DatabaseInstance *db, DBConfig &config)
|
|
|
765
781
|
config.options.external_threads = new_external_threads;
|
|
766
782
|
}
|
|
767
783
|
|
|
768
|
-
Value ExternalThreadsSetting::GetSetting(ClientContext &context) {
|
|
784
|
+
Value ExternalThreadsSetting::GetSetting(const ClientContext &context) {
|
|
769
785
|
auto &config = DBConfig::GetConfig(context);
|
|
770
786
|
return Value::BIGINT(config.options.external_threads);
|
|
771
787
|
}
|
|
@@ -784,7 +800,7 @@ void FileSearchPathSetting::SetLocal(ClientContext &context, const Value &input)
|
|
|
784
800
|
client_data.file_search_path = parameter;
|
|
785
801
|
}
|
|
786
802
|
|
|
787
|
-
Value FileSearchPathSetting::GetSetting(ClientContext &context) {
|
|
803
|
+
Value FileSearchPathSetting::GetSetting(const ClientContext &context) {
|
|
788
804
|
auto &client_data = ClientData::Get(context);
|
|
789
805
|
return Value(client_data.file_search_path);
|
|
790
806
|
}
|
|
@@ -814,7 +830,7 @@ void ForceCompressionSetting::ResetGlobal(DatabaseInstance *db, DBConfig &config
|
|
|
814
830
|
config.options.force_compression = DBConfig().options.force_compression;
|
|
815
831
|
}
|
|
816
832
|
|
|
817
|
-
Value ForceCompressionSetting::GetSetting(ClientContext &context) {
|
|
833
|
+
Value ForceCompressionSetting::GetSetting(const ClientContext &context) {
|
|
818
834
|
auto &config = DBConfig::GetConfig(*context.db);
|
|
819
835
|
return CompressionTypeToString(config.options.force_compression);
|
|
820
836
|
}
|
|
@@ -836,7 +852,7 @@ void ForceBitpackingModeSetting::ResetGlobal(DatabaseInstance *db, DBConfig &con
|
|
|
836
852
|
config.options.force_bitpacking_mode = DBConfig().options.force_bitpacking_mode;
|
|
837
853
|
}
|
|
838
854
|
|
|
839
|
-
Value ForceBitpackingModeSetting::GetSetting(ClientContext &context) {
|
|
855
|
+
Value ForceBitpackingModeSetting::GetSetting(const ClientContext &context) {
|
|
840
856
|
return Value(BitpackingModeToString(context.db->config.options.force_bitpacking_mode));
|
|
841
857
|
}
|
|
842
858
|
|
|
@@ -857,7 +873,7 @@ void HomeDirectorySetting::SetLocal(ClientContext &context, const Value &input)
|
|
|
857
873
|
config.home_directory = input.IsNull() ? string() : input.ToString();
|
|
858
874
|
}
|
|
859
875
|
|
|
860
|
-
Value HomeDirectorySetting::GetSetting(ClientContext &context) {
|
|
876
|
+
Value HomeDirectorySetting::GetSetting(const ClientContext &context) {
|
|
861
877
|
auto &config = ClientConfig::GetConfig(context);
|
|
862
878
|
return Value(config.home_directory);
|
|
863
879
|
}
|
|
@@ -874,7 +890,7 @@ void IntegerDivisionSetting::SetLocal(ClientContext &context, const Value &input
|
|
|
874
890
|
config.integer_division = input.GetValue<bool>();
|
|
875
891
|
}
|
|
876
892
|
|
|
877
|
-
Value IntegerDivisionSetting::GetSetting(ClientContext &context) {
|
|
893
|
+
Value IntegerDivisionSetting::GetSetting(const ClientContext &context) {
|
|
878
894
|
auto &config = ClientConfig::GetConfig(context);
|
|
879
895
|
return Value(config.integer_division);
|
|
880
896
|
}
|
|
@@ -900,7 +916,7 @@ void LogQueryPathSetting::SetLocal(ClientContext &context, const Value &input) {
|
|
|
900
916
|
}
|
|
901
917
|
}
|
|
902
918
|
|
|
903
|
-
Value LogQueryPathSetting::GetSetting(ClientContext &context) {
|
|
919
|
+
Value LogQueryPathSetting::GetSetting(const ClientContext &context) {
|
|
904
920
|
auto &client_data = ClientData::Get(context);
|
|
905
921
|
return client_data.log_query_writer ? Value(client_data.log_query_writer->path) : Value();
|
|
906
922
|
}
|
|
@@ -917,7 +933,7 @@ void LockConfigurationSetting::ResetGlobal(DatabaseInstance *db, DBConfig &confi
|
|
|
917
933
|
config.options.lock_configuration = DBConfig().options.lock_configuration;
|
|
918
934
|
}
|
|
919
935
|
|
|
920
|
-
Value LockConfigurationSetting::GetSetting(ClientContext &context) {
|
|
936
|
+
Value LockConfigurationSetting::GetSetting(const ClientContext &context) {
|
|
921
937
|
auto &config = DBConfig::GetConfig(context);
|
|
922
938
|
return Value::BOOLEAN(config.options.lock_configuration);
|
|
923
939
|
}
|
|
@@ -933,7 +949,7 @@ void ImmediateTransactionModeSetting::ResetGlobal(DatabaseInstance *db, DBConfig
|
|
|
933
949
|
config.options.immediate_transaction_mode = DBConfig().options.immediate_transaction_mode;
|
|
934
950
|
}
|
|
935
951
|
|
|
936
|
-
Value ImmediateTransactionModeSetting::GetSetting(ClientContext &context) {
|
|
952
|
+
Value ImmediateTransactionModeSetting::GetSetting(const ClientContext &context) {
|
|
937
953
|
auto &config = DBConfig::GetConfig(context);
|
|
938
954
|
return Value::BOOLEAN(config.options.immediate_transaction_mode);
|
|
939
955
|
}
|
|
@@ -949,7 +965,7 @@ void MaximumExpressionDepthSetting::SetLocal(ClientContext &context, const Value
|
|
|
949
965
|
ClientConfig::GetConfig(context).max_expression_depth = input.GetValue<uint64_t>();
|
|
950
966
|
}
|
|
951
967
|
|
|
952
|
-
Value MaximumExpressionDepthSetting::GetSetting(ClientContext &context) {
|
|
968
|
+
Value MaximumExpressionDepthSetting::GetSetting(const ClientContext &context) {
|
|
953
969
|
return Value::UBIGINT(ClientConfig::GetConfig(context).max_expression_depth);
|
|
954
970
|
}
|
|
955
971
|
|
|
@@ -967,7 +983,7 @@ void MaximumMemorySetting::ResetGlobal(DatabaseInstance *db, DBConfig &config) {
|
|
|
967
983
|
config.SetDefaultMaxMemory();
|
|
968
984
|
}
|
|
969
985
|
|
|
970
|
-
Value MaximumMemorySetting::GetSetting(ClientContext &context) {
|
|
986
|
+
Value MaximumMemorySetting::GetSetting(const ClientContext &context) {
|
|
971
987
|
auto &config = DBConfig::GetConfig(context);
|
|
972
988
|
return Value(StringUtil::BytesToHumanReadableString(config.options.maximum_memory));
|
|
973
989
|
}
|
|
@@ -983,7 +999,7 @@ void OldImplicitCasting::ResetGlobal(DatabaseInstance *db, DBConfig &config) {
|
|
|
983
999
|
config.options.old_implicit_casting = DBConfig().options.old_implicit_casting;
|
|
984
1000
|
}
|
|
985
1001
|
|
|
986
|
-
Value OldImplicitCasting::GetSetting(ClientContext &context) {
|
|
1002
|
+
Value OldImplicitCasting::GetSetting(const ClientContext &context) {
|
|
987
1003
|
auto &config = DBConfig::GetConfig(context);
|
|
988
1004
|
return Value::BOOLEAN(config.options.old_implicit_casting);
|
|
989
1005
|
}
|
|
@@ -1000,7 +1016,7 @@ void PartitionedWriteFlushThreshold::SetLocal(ClientContext &context, const Valu
|
|
|
1000
1016
|
ClientConfig::GetConfig(context).partitioned_write_flush_threshold = input.GetValue<idx_t>();
|
|
1001
1017
|
}
|
|
1002
1018
|
|
|
1003
|
-
Value PartitionedWriteFlushThreshold::GetSetting(ClientContext &context) {
|
|
1019
|
+
Value PartitionedWriteFlushThreshold::GetSetting(const ClientContext &context) {
|
|
1004
1020
|
return Value::BIGINT(ClientConfig::GetConfig(context).partitioned_write_flush_threshold);
|
|
1005
1021
|
}
|
|
1006
1022
|
|
|
@@ -1015,7 +1031,7 @@ void PasswordSetting::ResetGlobal(DatabaseInstance *db, DBConfig &config) {
|
|
|
1015
1031
|
// nop
|
|
1016
1032
|
}
|
|
1017
1033
|
|
|
1018
|
-
Value PasswordSetting::GetSetting(ClientContext &context) {
|
|
1034
|
+
Value PasswordSetting::GetSetting(const ClientContext &context) {
|
|
1019
1035
|
return Value();
|
|
1020
1036
|
}
|
|
1021
1037
|
|
|
@@ -1034,7 +1050,7 @@ void PerfectHashThresholdSetting::SetLocal(ClientContext &context, const Value &
|
|
|
1034
1050
|
ClientConfig::GetConfig(context).perfect_ht_threshold = bits;
|
|
1035
1051
|
}
|
|
1036
1052
|
|
|
1037
|
-
Value PerfectHashThresholdSetting::GetSetting(ClientContext &context) {
|
|
1053
|
+
Value PerfectHashThresholdSetting::GetSetting(const ClientContext &context) {
|
|
1038
1054
|
return Value::BIGINT(ClientConfig::GetConfig(context).perfect_ht_threshold);
|
|
1039
1055
|
}
|
|
1040
1056
|
|
|
@@ -1049,7 +1065,7 @@ void PivotFilterThreshold::SetLocal(ClientContext &context, const Value &input)
|
|
|
1049
1065
|
ClientConfig::GetConfig(context).pivot_filter_threshold = input.GetValue<uint64_t>();
|
|
1050
1066
|
}
|
|
1051
1067
|
|
|
1052
|
-
Value PivotFilterThreshold::GetSetting(ClientContext &context) {
|
|
1068
|
+
Value PivotFilterThreshold::GetSetting(const ClientContext &context) {
|
|
1053
1069
|
return Value::BIGINT(ClientConfig::GetConfig(context).pivot_filter_threshold);
|
|
1054
1070
|
}
|
|
1055
1071
|
|
|
@@ -1064,7 +1080,7 @@ void PivotLimitSetting::SetLocal(ClientContext &context, const Value &input) {
|
|
|
1064
1080
|
ClientConfig::GetConfig(context).pivot_limit = input.GetValue<uint64_t>();
|
|
1065
1081
|
}
|
|
1066
1082
|
|
|
1067
|
-
Value PivotLimitSetting::GetSetting(ClientContext &context) {
|
|
1083
|
+
Value PivotLimitSetting::GetSetting(const ClientContext &context) {
|
|
1068
1084
|
return Value::BIGINT(ClientConfig::GetConfig(context).pivot_limit);
|
|
1069
1085
|
}
|
|
1070
1086
|
|
|
@@ -1079,7 +1095,7 @@ void PreserveIdentifierCase::SetLocal(ClientContext &context, const Value &input
|
|
|
1079
1095
|
ClientConfig::GetConfig(context).preserve_identifier_case = input.GetValue<bool>();
|
|
1080
1096
|
}
|
|
1081
1097
|
|
|
1082
|
-
Value PreserveIdentifierCase::GetSetting(ClientContext &context) {
|
|
1098
|
+
Value PreserveIdentifierCase::GetSetting(const ClientContext &context) {
|
|
1083
1099
|
return Value::BOOLEAN(ClientConfig::GetConfig(context).preserve_identifier_case);
|
|
1084
1100
|
}
|
|
1085
1101
|
|
|
@@ -1094,7 +1110,7 @@ void PreserveInsertionOrder::ResetGlobal(DatabaseInstance *db, DBConfig &config)
|
|
|
1094
1110
|
config.options.preserve_insertion_order = DBConfig().options.preserve_insertion_order;
|
|
1095
1111
|
}
|
|
1096
1112
|
|
|
1097
|
-
Value PreserveInsertionOrder::GetSetting(ClientContext &context) {
|
|
1113
|
+
Value PreserveInsertionOrder::GetSetting(const ClientContext &context) {
|
|
1098
1114
|
auto &config = DBConfig::GetConfig(context);
|
|
1099
1115
|
return Value::BOOLEAN(config.options.preserve_insertion_order);
|
|
1100
1116
|
}
|
|
@@ -1112,7 +1128,7 @@ void ExportLargeBufferArrow::ResetGlobal(DatabaseInstance *db, DBConfig &config)
|
|
|
1112
1128
|
config.options.arrow_offset_size = DBConfig().options.arrow_offset_size;
|
|
1113
1129
|
}
|
|
1114
1130
|
|
|
1115
|
-
Value ExportLargeBufferArrow::GetSetting(ClientContext &context) {
|
|
1131
|
+
Value ExportLargeBufferArrow::GetSetting(const ClientContext &context) {
|
|
1116
1132
|
auto &config = DBConfig::GetConfig(context);
|
|
1117
1133
|
bool export_large_buffers_arrow = config.options.arrow_offset_size == ArrowOffsetSize::LARGE;
|
|
1118
1134
|
return Value::BOOLEAN(export_large_buffers_arrow);
|
|
@@ -1131,7 +1147,7 @@ void ProfileOutputSetting::SetLocal(ClientContext &context, const Value &input)
|
|
|
1131
1147
|
config.profiler_save_location = parameter;
|
|
1132
1148
|
}
|
|
1133
1149
|
|
|
1134
|
-
Value ProfileOutputSetting::GetSetting(ClientContext &context) {
|
|
1150
|
+
Value ProfileOutputSetting::GetSetting(const ClientContext &context) {
|
|
1135
1151
|
auto &config = ClientConfig::GetConfig(context);
|
|
1136
1152
|
return Value(config.profiler_save_location);
|
|
1137
1153
|
}
|
|
@@ -1161,7 +1177,7 @@ void ProfilingModeSetting::SetLocal(ClientContext &context, const Value &input)
|
|
|
1161
1177
|
}
|
|
1162
1178
|
}
|
|
1163
1179
|
|
|
1164
|
-
Value ProfilingModeSetting::GetSetting(ClientContext &context) {
|
|
1180
|
+
Value ProfilingModeSetting::GetSetting(const ClientContext &context) {
|
|
1165
1181
|
auto &config = ClientConfig::GetConfig(context);
|
|
1166
1182
|
if (!config.enable_profiler) {
|
|
1167
1183
|
return Value();
|
|
@@ -1186,7 +1202,7 @@ void ProgressBarTimeSetting::SetLocal(ClientContext &context, const Value &input
|
|
|
1186
1202
|
config.enable_progress_bar = true;
|
|
1187
1203
|
}
|
|
1188
1204
|
|
|
1189
|
-
Value ProgressBarTimeSetting::GetSetting(ClientContext &context) {
|
|
1205
|
+
Value ProgressBarTimeSetting::GetSetting(const ClientContext &context) {
|
|
1190
1206
|
return Value::BIGINT(ClientConfig::GetConfig(context).wait_time);
|
|
1191
1207
|
}
|
|
1192
1208
|
|
|
@@ -1205,7 +1221,7 @@ void SchemaSetting::SetLocal(ClientContext &context, const Value &input) {
|
|
|
1205
1221
|
client_data.catalog_search_path->Set(CatalogSearchEntry::Parse(parameter), CatalogSetPathType::SET_SCHEMA);
|
|
1206
1222
|
}
|
|
1207
1223
|
|
|
1208
|
-
Value SchemaSetting::GetSetting(ClientContext &context) {
|
|
1224
|
+
Value SchemaSetting::GetSetting(const ClientContext &context) {
|
|
1209
1225
|
auto &client_data = ClientData::Get(context);
|
|
1210
1226
|
return client_data.catalog_search_path->GetDefault().schema;
|
|
1211
1227
|
}
|
|
@@ -1225,7 +1241,7 @@ void SearchPathSetting::SetLocal(ClientContext &context, const Value &input) {
|
|
|
1225
1241
|
client_data.catalog_search_path->Set(CatalogSearchEntry::ParseList(parameter), CatalogSetPathType::SET_SCHEMAS);
|
|
1226
1242
|
}
|
|
1227
1243
|
|
|
1228
|
-
Value SearchPathSetting::GetSetting(ClientContext &context) {
|
|
1244
|
+
Value SearchPathSetting::GetSetting(const ClientContext &context) {
|
|
1229
1245
|
auto &client_data = ClientData::Get(context);
|
|
1230
1246
|
auto &set_paths = client_data.catalog_search_path->GetSetPaths();
|
|
1231
1247
|
return Value(CatalogSearchEntry::ListToString(set_paths));
|
|
@@ -1242,7 +1258,7 @@ void SecretDirectorySetting::ResetGlobal(DatabaseInstance *db, DBConfig &config)
|
|
|
1242
1258
|
config.secret_manager->ResetPersistentSecretPath();
|
|
1243
1259
|
}
|
|
1244
1260
|
|
|
1245
|
-
Value SecretDirectorySetting::GetSetting(ClientContext &context) {
|
|
1261
|
+
Value SecretDirectorySetting::GetSetting(const ClientContext &context) {
|
|
1246
1262
|
auto &config = DBConfig::GetConfig(context);
|
|
1247
1263
|
return config.secret_manager->PersistentSecretPath();
|
|
1248
1264
|
}
|
|
@@ -1268,7 +1284,7 @@ void TempDirectorySetting::ResetGlobal(DatabaseInstance *db, DBConfig &config) {
|
|
|
1268
1284
|
}
|
|
1269
1285
|
}
|
|
1270
1286
|
|
|
1271
|
-
Value TempDirectorySetting::GetSetting(ClientContext &context) {
|
|
1287
|
+
Value TempDirectorySetting::GetSetting(const ClientContext &context) {
|
|
1272
1288
|
auto &buffer_manager = BufferManager::GetBufferManager(context);
|
|
1273
1289
|
return Value(buffer_manager.GetTemporaryDirectory());
|
|
1274
1290
|
}
|
|
@@ -1296,7 +1312,7 @@ void ThreadsSetting::ResetGlobal(DatabaseInstance *db, DBConfig &config) {
|
|
|
1296
1312
|
config.options.maximum_threads = new_maximum_threads;
|
|
1297
1313
|
}
|
|
1298
1314
|
|
|
1299
|
-
Value ThreadsSetting::GetSetting(ClientContext &context) {
|
|
1315
|
+
Value ThreadsSetting::GetSetting(const ClientContext &context) {
|
|
1300
1316
|
auto &config = DBConfig::GetConfig(context);
|
|
1301
1317
|
return Value::BIGINT(config.options.maximum_threads);
|
|
1302
1318
|
}
|
|
@@ -1312,7 +1328,7 @@ void UsernameSetting::ResetGlobal(DatabaseInstance *db, DBConfig &config) {
|
|
|
1312
1328
|
// nop
|
|
1313
1329
|
}
|
|
1314
1330
|
|
|
1315
|
-
Value UsernameSetting::GetSetting(ClientContext &context) {
|
|
1331
|
+
Value UsernameSetting::GetSetting(const ClientContext &context) {
|
|
1316
1332
|
return Value();
|
|
1317
1333
|
}
|
|
1318
1334
|
|
|
@@ -1333,7 +1349,7 @@ void FlushAllocatorSetting::ResetGlobal(DatabaseInstance *db, DBConfig &config)
|
|
|
1333
1349
|
}
|
|
1334
1350
|
}
|
|
1335
1351
|
|
|
1336
|
-
Value FlushAllocatorSetting::GetSetting(ClientContext &context) {
|
|
1352
|
+
Value FlushAllocatorSetting::GetSetting(const ClientContext &context) {
|
|
1337
1353
|
auto &config = DBConfig::GetConfig(context);
|
|
1338
1354
|
return Value(StringUtil::BytesToHumanReadableString(config.options.allocator_flush_threshold));
|
|
1339
1355
|
}
|
|
@@ -1357,7 +1373,7 @@ void DuckDBApiSetting::ResetGlobal(DatabaseInstance *db, DBConfig &config) {
|
|
|
1357
1373
|
config.options.duckdb_api = GetDefaultUserAgent();
|
|
1358
1374
|
}
|
|
1359
1375
|
|
|
1360
|
-
Value DuckDBApiSetting::GetSetting(ClientContext &context) {
|
|
1376
|
+
Value DuckDBApiSetting::GetSetting(const ClientContext &context) {
|
|
1361
1377
|
auto &config = DBConfig::GetConfig(context);
|
|
1362
1378
|
return Value(config.options.duckdb_api);
|
|
1363
1379
|
}
|
|
@@ -1382,7 +1398,7 @@ void CustomUserAgentSetting::ResetGlobal(DatabaseInstance *db, DBConfig &config)
|
|
|
1382
1398
|
config.options.custom_user_agent = DBConfig().options.custom_user_agent;
|
|
1383
1399
|
}
|
|
1384
1400
|
|
|
1385
|
-
Value CustomUserAgentSetting::GetSetting(ClientContext &context) {
|
|
1401
|
+
Value CustomUserAgentSetting::GetSetting(const ClientContext &context) {
|
|
1386
1402
|
auto &config = DBConfig::GetConfig(context);
|
|
1387
1403
|
return Value(config.options.custom_user_agent);
|
|
1388
1404
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
#include "duckdb/optimizer/
|
|
1
|
+
#include "duckdb/optimizer/column_lifetime_analyzer.hpp"
|
|
2
|
+
|
|
2
3
|
#include "duckdb/planner/expression/bound_columnref_expression.hpp"
|
|
3
4
|
#include "duckdb/planner/operator/logical_comparison_join.hpp"
|
|
4
5
|
#include "duckdb/planner/operator/logical_filter.hpp"
|
|
@@ -139,6 +140,12 @@ void ColumnLifetimeAnalyzer::VisitOperator(LogicalOperator &op) {
|
|
|
139
140
|
|
|
140
141
|
// then generate the projection map
|
|
141
142
|
GenerateProjectionMap(op.children[0]->GetColumnBindings(), unused_bindings, filter.projection_map);
|
|
143
|
+
auto bindings = filter.GetColumnBindings();
|
|
144
|
+
|
|
145
|
+
if (bindings.empty()) {
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
|
|
142
149
|
return;
|
|
143
150
|
}
|
|
144
151
|
default:
|
|
@@ -7,6 +7,9 @@ namespace duckdb {
|
|
|
7
7
|
|
|
8
8
|
void CompressedMaterialization::CompressAggregate(unique_ptr<LogicalOperator> &op) {
|
|
9
9
|
auto &aggregate = op->Cast<LogicalAggregate>();
|
|
10
|
+
if (aggregate.grouping_sets.size() > 1) {
|
|
11
|
+
return; // FIXME: we should be able to compress here but for some reason the NULL statistics ain't right
|
|
12
|
+
}
|
|
10
13
|
auto &groups = aggregate.groups;
|
|
11
14
|
column_binding_set_t group_binding_set;
|
|
12
15
|
for (const auto &group : groups) {
|