should be it

This commit is contained in:
2025-10-24 19:21:19 -05:00
parent a4b23fc57c
commit f09560c7b1
14047 changed files with 3161551 additions and 1 deletions

View File

@@ -0,0 +1 @@
CALL dbgen(sf=0.01);

View File

@@ -0,0 +1,798 @@
# failure in serialization
# this means either
# (a) the test does not translate nicely to the serialization test (e.g. involves dropping + recreating a table)
# (b) this tests a new feature that is not available in the old version
test/sql/aggregate/aggregates/approx_top_k.test
test/sql/aggregate/aggregates/arg_min_max_n.test
test/sql/aggregate/aggregates/arg_min_max_n_tpch.test
test/sql/aggregate/aggregates/binning.test
test/sql/aggregate/aggregates/histogram_table_function.test
test/sql/aggregate/aggregates/test_aggregate_types_scalar.test
test/sql/aggregate/aggregates/test_any_value.test
test/sql/aggregate/aggregates/test_arg_min_max.test
test/sql/aggregate/aggregates/test_arg_min_max_null.test
test/sql/aggregate/aggregates/test_avg.test
test/sql/aggregate/aggregates/test_binned_histogram.test
test/sql/aggregate/aggregates/test_bit_and.test
test/sql/aggregate/aggregates/test_bit_or.test
test/sql/aggregate/aggregates/test_bit_xor.test
test/sql/aggregate/aggregates/test_bitstring_agg.test
test/sql/aggregate/aggregates/test_count_all_types.test
test/sql/aggregate/aggregates/test_last.test
test/sql/aggregate/aggregates/test_product.test
test/sql/aggregate/aggregates/test_regression.test
test/sql/aggregate/aggregates/test_state_export.test
test/sql/aggregate/distinct/distinct_on_order_by.test
test/sql/aggregate/distinct/grouped/string_agg.test
test/sql/aggregate/distinct/test_distinct.test
test/sql/aggregate/group/group_by_limits.test
test/sql/aggregate/group/test_group_by.test
test/sql/aggregate/qualify/test_qualify_view.test
test/sql/aggregate/qualify/test_qualify_view_no_view_dependencies.test
test/sql/alter/add_col/test_add_col_transactions.test
test/sql/alter/alter_col/test_not_null_in_tran.test
test/sql/alter/alter_col/test_not_null_multi_tran.test
test/sql/alter/alter_type/test_alter_type_transactions.test
test/sql/alter/drop_col/test_drop_col_transactions.test
test/sql/alter/rename_col/test_rename_col.test
test/sql/alter/rename_col/test_rename_col_rollback.test
test/sql/alter/rename_col/test_rename_col_transactions.test
test/sql/alter/rename_table/test_rename_table.test
test/sql/alter/rename_table/test_rename_table_chain_commit.test
test/sql/alter/rename_table/test_rename_table_collision.test
test/sql/alter/rename_table/test_rename_table_constraints.test
test/sql/alter/rename_table/test_rename_table_many_transactions.test
test/sql/alter/rename_table/test_rename_table_transactions.test
test/sql/alter/rename_view/test_rename_view.test
test/sql/alter/rename_view/test_rename_view_many_transactions.test
test/sql/alter/rename_view/test_rename_view_transactions.test
test/sql/attach/attach_all_types.test
test/sql/attach/attach_checkpoint_vacuum.test
test/sql/attach/attach_copy.test
test/sql/attach/attach_custom_block_size.test
test/sql/attach/attach_database_size.test
test/sql/attach/attach_dependencies.test
test/sql/attach/attach_did_you_mean.test
test/sql/attach/attach_different_alias.test
test/sql/attach/attach_duckdb_type.test
test/sql/attach/attach_enums.test
test/sql/attach/attach_export_import.test
test/sql/attach/attach_filepath_roundtrip.test
test/sql/attach/attach_foreign_key.test
test/sql/attach/attach_httpfs.test
test/sql/attach/attach_if_not_exists.test
test/sql/attach/attach_index.test
test/sql/attach/attach_issue_7660.test
test/sql/attach/attach_persistent.test
test/sql/attach/attach_pragma_storage_info.test
test/sql/attach/attach_read_only.test
test/sql/attach/attach_read_only_transaction.test
test/sql/attach/attach_reserved.test
test/sql/attach/attach_s3.test
test/sql/attach/attach_same_db.test
test/sql/attach/attach_sequence.test
test/sql/attach/attach_table_constraints.test
test/sql/attach/attach_table_info.test
test/sql/attach/attach_transactionality.test
test/sql/attach/attach_wal_alter.test
test/sql/attach/reattach_schema.test
test/sql/binder/column_value_alias_group.test
test/sql/binder/test_case_insensitive_binding.test
test/sql/binder/test_null_type_propagation.test
test/sql/cast/string_to_list_cast.test
test/sql/cast/string_to_struct_cast.test
test/sql/cast/test_boolean_cast.test
test/sql/catalog/case_insensitive_alter.test
test/sql/catalog/case_insensitive_binder.test
test/sql/catalog/case_insensitive_caps.test
test/sql/catalog/case_insensitive_using.test
test/sql/catalog/comment_on.test
test/sql/catalog/comment_on_extended.test
test/sql/catalog/comment_on_wal.test
test/sql/catalog/dependencies/add_column_to_table_referenced_by_view.test
test/sql/catalog/dependencies/test_alter_dependency_ownership.test
test/sql/catalog/dependencies/test_default_value_dependency.test
test/sql/catalog/dependencies/test_prepare_dependencies_transactions.test
test/sql/catalog/dependencies/test_schema_dependency.test
test/sql/catalog/drop_create_rollback.test
test/sql/catalog/function/query_function.test
test/sql/catalog/function/test_complex_macro.test
test/sql/catalog/function/test_macro_default_arg.test
test/sql/catalog/function/test_macro_default_arg_with_dependencies.test
test/sql/catalog/function/test_macro_issue_13104.test
test/sql/catalog/function/test_macro_overloads.test
test/sql/catalog/function/test_sequence_macro.test
test/sql/catalog/function/test_simple_macro.test
test/sql/catalog/function/test_table_macro.test
test/sql/catalog/function/test_table_macro_complex.test
test/sql/catalog/function/test_table_macro_groups.test
test/sql/catalog/sequence/sequence_cycle.test
test/sql/catalog/sequence/sequence_offset_increment.test
test/sql/catalog/sequence/sequence_overflow.test
test/sql/catalog/sequence/test_duckdb_sequences.test
test/sql/catalog/sequence/test_sequence.test
test/sql/catalog/test_schema.test
test/sql/catalog/test_schema_conflict.test
test/sql/catalog/test_set_schema.test
test/sql/catalog/test_set_search_path.test
test/sql/catalog/test_standard_schema.test
test/sql/catalog/test_temporary.test
test/sql/catalog/view/test_view.test
test/sql/catalog/view/test_view_alias.test
test/sql/catalog/view/test_view_schema_change.test
test/sql/catalog/view/test_view_schema_change_with_dependencies.test
test/sql/collate/collate_order_by_alias.test
test/sql/collate/collate_subquery.test
test/sql/collate/test_collate_list.test
test/sql/collate/test_icu_collate.test
test/sql/constraints/foreignkey/test_fk_export.test
test/sql/constraints/foreignkey/test_fk_multiple.test
test/sql/constraints/foreignkey/test_fk_self_referencing.test
test/sql/constraints/foreignkey/test_fk_temporary.test
test/sql/constraints/foreignkey/test_foreignkey.test
test/sql/constraints/primarykey/test_primary_key.test
test/sql/constraints/unique/test_unique.test
test/sql/constraints/unique/test_unique_multi_column.test
test/sql/constraints/unique/test_unique_string.test
test/sql/constraints/unique/test_unique_temp.test
test/sql/copy/csv/7702.test
test/sql/copy/csv/auto/test_auto_5378.test
test/sql/copy/csv/auto/test_auto_8860.test
test/sql/copy/csv/auto/test_auto_column_type_opt.test
test/sql/copy/csv/auto/test_auto_cranlogs.test
test/sql/copy/csv/auto/test_auto_greek_ncvoter.test
test/sql/copy/csv/auto/test_auto_greek_utf8.test
test/sql/copy/csv/auto/test_auto_imdb.test
test/sql/copy/csv/auto/test_auto_lineitem.test
test/sql/copy/csv/auto/test_auto_ontime.test
test/sql/copy/csv/auto/test_auto_web_page.test
test/sql/copy/csv/auto/test_csv_auto.test
test/sql/copy/csv/auto/test_date_format_bug_linux.test
test/sql/copy/csv/auto/test_fallback_all_varchar.test
test/sql/copy/csv/auto/test_header_completion.test
test/sql/copy/csv/auto/test_header_detection.test
test/sql/copy/csv/auto/test_normalize_names.test
test/sql/copy/csv/auto/test_sample_size.test
test/sql/copy/csv/auto/test_sniffer_blob.test
test/sql/copy/csv/auto/test_type_candidates.test
test/sql/copy/csv/auto/test_type_detection.test
test/sql/copy/csv/batched_write/batch_csv_write.test
test/sql/copy/csv/code_cov/buffer_manager_finalize.test
test/sql/copy/csv/code_cov/csv_disk_reload.test
test/sql/copy/csv/code_cov/csv_state_machine_invalid_utf.test
test/sql/copy/csv/column_names.test
test/sql/copy/csv/copy_disable_parallelism.test
test/sql/copy/csv/csv_dtypes.test
test/sql/copy/csv/csv_dtypes_union_by_name.test
test/sql/copy/csv/csv_error_message.test
test/sql/copy/csv/csv_external_access.test
test/sql/copy/csv/csv_hive.test
test/sql/copy/csv/csv_home_directory.test
test/sql/copy/csv/csv_limit_copy.test
test/sql/copy/csv/csv_names.test
test/sql/copy/csv/csv_null_padding.test
test/sql/copy/csv/csv_projection_pushdown.test
test/sql/copy/csv/csv_roundtrip_single_null.test
test/sql/copy/csv/csv_windows_mixed_separators.test
test/sql/copy/csv/glob/copy_csv_glob.test
test/sql/copy/csv/glob/copy_csv_glob_s3.test
test/sql/copy/csv/glob/read_csv_glob.test
test/sql/copy/csv/glob/read_csv_glob_crawl.test
test/sql/copy/csv/glob/read_csv_glob_s3.test
test/sql/copy/csv/overwrite/test_copy_overwrite.test
test/sql/copy/csv/parallel/csv_parallel_buffer_size.test
test/sql/copy/csv/parallel/csv_parallel_httpfs.test
test/sql/copy/csv/parallel/csv_parallel_null_option.test
test/sql/copy/csv/parallel/test_5438.test
test/sql/copy/csv/parallel/test_5566.test
test/sql/copy/csv/parallel/test_multiple_files.test
test/sql/copy/csv/parallel/test_parallel_csv.test
test/sql/copy/csv/read_csv_variable.test
test/sql/copy/csv/recursive_read_csv.test
test/sql/copy/csv/rejects/csv_incorrect_columns_amount_rejects.test
test/sql/copy/csv/rejects/csv_rejects_auto.test
test/sql/copy/csv/rejects/csv_rejects_flush_cast.test
test/sql/copy/csv/rejects/csv_rejects_flush_message.test
test/sql/copy/csv/rejects/csv_rejects_maximum_line.test
test/sql/copy/csv/rejects/csv_rejects_read.test
test/sql/copy/csv/rejects/csv_rejects_two_tables.test
test/sql/copy/csv/rejects/csv_unquoted_rejects.test
test/sql/copy/csv/rejects/test_invalid_parameters.test
test/sql/copy/csv/rejects/test_invalid_utf_rejects.test
test/sql/copy/csv/rejects/test_mixed.test
test/sql/copy/csv/rejects/test_multiple_errors_same_line.test
test/sql/copy/csv/struct_padding.test
test/sql/copy/csv/test_12596.test
test/sql/copy/csv/test_all_quotes.test
test/sql/copy/csv/test_allow_quoted_nulls_option.test
test/sql/copy/csv/test_bgzf_read.test
test/sql/copy/csv/test_big_header.test
test/sql/copy/csv/test_blob.test
test/sql/copy/csv/test_comment_midline.test
test/sql/copy/csv/test_comment_option.test
test/sql/copy/csv/test_compression_flag.test
test/sql/copy/csv/test_copy.test
test/sql/copy/csv/test_copy_default.test
test/sql/copy/csv/test_copy_gzip.test
test/sql/copy/csv/test_copy_many_empty_lines.test
test/sql/copy/csv/test_copy_null.test
test/sql/copy/csv/test_csv_duplicate_columns.test
test/sql/copy/csv/test_csv_httpfs_prepared.test
test/sql/copy/csv/test_csv_json.test
test/sql/copy/csv/test_csv_no_trailing_newline.test
test/sql/copy/csv/test_csv_projection_pushdown.test
test/sql/copy/csv/test_csv_projection_pushdown_glob.test
test/sql/copy/csv/test_csv_remote.test
test/sql/copy/csv/test_csv_timestamp_tz_icu.test
test/sql/copy/csv/test_date.test
test/sql/copy/csv/test_date_sniffer.test
test/sql/copy/csv/test_dateformat.test
test/sql/copy/csv/test_double_sniffer.test
test/sql/copy/csv/test_empty_quote.test
test/sql/copy/csv/test_escape_long_value.test
test/sql/copy/csv/test_export_force_quotes.test
test/sql/copy/csv/test_export_not_null.test
test/sql/copy/csv/test_force_not_null.test
test/sql/copy/csv/test_force_quote.test
test/sql/copy/csv/test_glob_reorder_lineitem.test
test/sql/copy/csv/test_glob_reorder_null.test
test/sql/copy/csv/test_greek_utf8.test
test/sql/copy/csv/test_ignore_errors.test
test/sql/copy/csv/test_ignore_errors_end_of_chunk.test
test/sql/copy/csv/test_ignore_mid_null_line.test
test/sql/copy/csv/test_imdb.test
test/sql/copy/csv/test_issue3562_assertion.test
test/sql/copy/csv/test_lineitem.test
test/sql/copy/csv/test_long_line.test
test/sql/copy/csv/test_many_columns.test
test/sql/copy/csv/test_mismatch_schemas.test
test/sql/copy/csv/test_missing_row.test
test/sql/copy/csv/test_mixed_line_endings.test
test/sql/copy/csv/test_ncvoter.test
test/sql/copy/csv/test_nfc.test
test/sql/copy/csv/test_nfc_suite.test
test/sql/copy/csv/test_non_unicode_header.test
test/sql/copy/csv/test_null_padding_projection.test
test/sql/copy/csv/test_ontime.test
test/sql/copy/csv/test_partition_compression.test
test/sql/copy/csv/test_quoted_newline.test
test/sql/copy/csv/test_read_csv.test
test/sql/copy/csv/test_replacement_scan_alias.test
test/sql/copy/csv/test_skip_bom.test
test/sql/copy/csv/test_sniff_csv.test
test/sql/copy/csv/test_sniff_csv_options.test
test/sql/copy/csv/test_sniffer_tab_delimiter.test
test/sql/copy/csv/test_time.test
test/sql/copy/csv/test_timestamp_offset.test
test/sql/copy/csv/test_timestamptz_12926.test
test/sql/copy/csv/test_union_by_name.test
test/sql/copy/csv/test_web_page.test
test/sql/copy/csv/test_windows_newline.test
test/sql/copy/csv/tsv_copy.test
test/sql/copy/csv/write_header_default.test
test/sql/copy/csv/zstd_crash.test
test/sql/copy/csv/zstd_fs.test
test/sql/copy/file_size_bytes.test
test/sql/copy/format_uuid.test
test/sql/copy/parquet/batched_write/batch_memory_usage.test
test/sql/copy/parquet/batched_write/batched_parquet_write.test
test/sql/copy/parquet/delta_byte_array_length_mismatch.test
test/sql/copy/parquet/delta_byte_array_multiple_pages.test
test/sql/copy/parquet/dictionary_compression_ratio_threshold.test
test/sql/copy/parquet/hive_partitioning_struct.test
test/sql/copy/parquet/hive_timestamps.test
test/sql/copy/parquet/infer_copy_format.test
test/sql/copy/parquet/kv_metadata.test
test/sql/copy/parquet/lineitem_arrow.test
test/sql/copy/parquet/multi_file_conversion_error.test
test/sql/copy/parquet/parquet_12621.test
test/sql/copy/parquet/parquet_13053_duplicate_column_names.test
test/sql/copy/parquet/parquet_3896.test
test/sql/copy/parquet/parquet_3989.test
test/sql/copy/parquet/parquet_5209.test
test/sql/copy/parquet/parquet_5968.test
test/sql/copy/parquet/parquet_6044.test
test/sql/copy/parquet/parquet_6933.test
test/sql/copy/parquet/parquet_copy_type_mismatch.test
test/sql/copy/parquet/parquet_encryption.test
test/sql/copy/parquet/parquet_encryption_httpfs.test
test/sql/copy/parquet/parquet_filename.test
test/sql/copy/parquet/parquet_glob.test
test/sql/copy/parquet/parquet_glob_s3.test
test/sql/copy/parquet/parquet_hive.test
test/sql/copy/parquet/parquet_hive2.test
test/sql/copy/parquet/parquet_hive_empty.test
test/sql/copy/parquet/parquet_hive_null.test
test/sql/copy/parquet/parquet_http_prefetch.test
test/sql/copy/parquet/parquet_metadata_cache.test
test/sql/copy/parquet/parquet_stats.test
test/sql/copy/parquet/parquet_write_repeated_lists.test
test/sql/copy/parquet/snowflake_lineitem.test
test/sql/copy/parquet/test_parquet_duplicate_columns.test
test/sql/copy/parquet/test_parquet_force_download.test
test/sql/copy/parquet/test_parquet_remote.test
test/sql/copy/parquet/test_parquet_remote_foreign_files.test
test/sql/copy/parquet/timetz_parquet.test
test/sql/copy/parquet/union_by_name_pushdown.test
test/sql/copy/parquet/writer/parquet_test_all_types.test
test/sql/copy/parquet/writer/parquet_write_booleans.test
test/sql/copy/parquet/writer/parquet_write_compression_level.test
test/sql/copy/parquet/writer/parquet_write_date.test
test/sql/copy/parquet/writer/parquet_write_decimals.test
test/sql/copy/parquet/writer/parquet_write_enums.test
test/sql/copy/parquet/writer/parquet_write_field_id.test
test/sql/copy/parquet/writer/parquet_write_home_directory.test
test/sql/copy/parquet/writer/parquet_write_hugeint.test
test/sql/copy/parquet/writer/parquet_write_interval.test
test/sql/copy/parquet/writer/parquet_write_issue_5779.test
test/sql/copy/parquet/writer/parquet_write_string_distinct.test
test/sql/copy/parquet/writer/parquet_write_strings.test
test/sql/copy/parquet/writer/parquet_write_timestamp.test
test/sql/copy/parquet/writer/parquet_write_uhugeint.test
test/sql/copy/parquet/writer/parquet_write_uuid.test
test/sql/copy/parquet/writer/row_group_size_bytes.test
test/sql/copy/parquet/writer/test_copy_overwrite_parquet.test
test/sql/copy/parquet/writer/test_parquet_write.test
test/sql/copy/parquet/writer/test_parquet_write_complex.test
test/sql/copy/parquet/writer/write_complex_nested.test
test/sql/copy/parquet/writer/write_list.test
test/sql/copy/parquet/writer/write_map.test
test/sql/copy/parquet/writer/write_stats_big_string.test
test/sql/copy/parquet/writer/write_stats_null_count.test
test/sql/copy/parquet/writer/write_struct.test
test/sql/copy/partitioned/hive_filter_pushdown.test
test/sql/copy/partitioned/hive_partition_append.test
test/sql/copy/partitioned/hive_partition_compression.test
test/sql/copy/partitioned/hive_partition_duplicate_name.test
test/sql/copy/partitioned/hive_partition_escape.test
test/sql/copy/partitioned/hive_partition_join_pushdown.test
test/sql/copy/partitioned/hive_partition_recursive_cte.test
test/sql/copy/partitioned/hive_partitioned_auto_detect.test
test/sql/copy/partitioned/hive_partitioned_write.test
test/sql/copy/partitioned/hive_partitioning_overwrite.test
test/sql/copy/partitioned/partition_issue_6304.test
test/sql/copy/partitioned/skip_partition_column_writes.test
test/sql/copy/per_thread_output.test
test/sql/copy/return_files.test
test/sql/copy/row_groups_per_file.test
test/sql/copy/s3/download_config.test
test/sql/copy/s3/fully_qualified_s3_url.test
test/sql/copy/s3/hive_partitioned_write_s3.test
test/sql/copy/s3/http_proxy.test
test/sql/copy/s3/http_secret.test
test/sql/copy/s3/metadata_cache.test
test/sql/copy/s3/s3_hive_partition.test
test/sql/copy/s3/s3_presigned_read.test
test/sql/copy/s3/starstar.test
test/sql/copy/s3/upload_small_file.test
test/sql/copy/s3/url_encode.test
test/sql/copy/tmp_file.test
test/sql/copy_database/copy_database_errors.test
test/sql/copy_database/copy_database_gen_col.test
test/sql/copy_database/copy_database_index.test
test/sql/create/create_table_compression.test
test/sql/cte/materialized/test_recursive_cte_tutorial_materialized.test
test/sql/cte/test_cte.test
test/sql/cte/test_cte_in_cte.test
test/sql/cte/test_recursive_cte_tutorial.test
test/sql/cte/test_recursive_cte_tutorial.test
test/sql/delete/test_segment_deletes.test
test/sql/detailed_profiler/test_detailed_profiler.test
test/sql/explain/test_explain.test
test/sql/explain/test_explain_analyze.test
test/sql/export/empty_export.test
test/sql/export/export_database.test
test/sql/export/export_external_access.test
test/sql/export/export_functions.test
test/sql/export/export_generated_columns.test
test/sql/export/export_macros.test
test/sql/export/export_quoted_enum.test
test/sql/export/export_quoted_structs.test
test/sql/export/export_quoted_union.test
test/sql/export/parquet/export_parquet_bit.test
test/sql/export/parquet/export_parquet_enum.test
test/sql/export/parquet/export_parquet_hugeint.test
test/sql/export/parquet/export_parquet_json.test
test/sql/export/parquet/export_parquet_list.test
test/sql/export/parquet/export_parquet_map.test
test/sql/export/parquet/export_parquet_struct.test
test/sql/export/parquet/export_parquet_union.test
test/sql/export/parquet_export.test
test/sql/extensions/version_is_valid_sqlite.test
test/sql/filter/test_struct_pushdown.test
test/sql/fts/issue_12330.test
test/sql/fts/test_fts_attach.test
test/sql/fts/test_issue_10254.test
test/sql/fts/test_issue_10281.test
test/sql/function/date/test_date_part.test
test/sql/function/generic/can_cast_implicitly.test
test/sql/function/generic/test_in.test
test/sql/function/generic/test_null_if.test
test/sql/function/interval/test_date_part.test
test/sql/function/list/aggregates/any_value.test
test/sql/function/list/aggregates/avg.test
test/sql/function/list/aggregates/bit_and.test
test/sql/function/list/aggregates/bit_or.test
test/sql/function/list/aggregates/bit_xor.test
test/sql/function/list/aggregates/first.test
test/sql/function/list/aggregates/last.test
test/sql/function/list/aggregates/max.test
test/sql/function/list/aggregates/min.test
test/sql/function/list/array_to_string_comma_default.test
test/sql/function/list/lambdas/list_comprehension.test
test/sql/function/list/lambdas/table_functions.test
test/sql/function/list/list_contains.test
test/sql/function/list/list_has_any_and_has_all.test
test/sql/function/list/list_inner_product.test
test/sql/function/list/list_position.test
test/sql/function/list/list_sort_having.test
test/sql/function/list/list_zip.test
test/sql/function/list/repeat_list.test
test/sql/function/numeric/test_fdiv_fmod.test
test/sql/function/numeric/test_random.test
test/sql/function/numeric/test_trigo.test
test/sql/function/operator/test_bitwise_ops.test
test/sql/function/operator/test_bitwise_ops_types.test
test/sql/function/operator/test_in_empty_table.test
test/sql/function/string/md5.test
test/sql/function/string/regex_search.test
test/sql/function/string/sha1.test
test/sql/function/string/sha256.test
test/sql/function/string/test_damerau_levenshtein.test
test/sql/function/string/test_format_extensions.test
test/sql/function/string/test_mismatches.test
test/sql/function/string/test_printf.test
test/sql/function/string/test_url_encode.test
test/sql/function/time/test_date_part.test
test/sql/function/timestamp/age.test
test/sql/function/timestamp/test_date_part.test
test/sql/function/timestamp/test_icu_age.test
test/sql/function/timestamp/test_now.test
test/sql/function/timetz/test_date_part.test
test/sql/function/uuid/test_uuid.test
test/sql/generated_columns/virtual/rename.test
test/sql/httpfs/internal_issue_2490.test
test/sql/index/art/create_drop/test_art_create_index_delete.test
test/sql/index/art/create_drop/test_art_create_many_duplicates.test
test/sql/index/art/create_drop/test_art_many_versions.test
test/sql/index/art/insert_update_delete/test_art_update_other_column.test
test/sql/index/art/issues/test_art_issue_6603.test
test/sql/index/art/issues/test_art_issue_7349.test
test/sql/index/art/nodes/test_art_leaf.test
test/sql/index/art/nodes/test_art_node_16.test
test/sql/index/art/nodes/test_art_node_256.test
test/sql/index/art/nodes/test_art_node_4.test
test/sql/index/art/nodes/test_art_node_48.test
test/sql/index/art/scan/test_art_adaptive_scan.test
test/sql/index/art/scan/test_art_many_matches.test
test/sql/index/art/scan/test_art_negative_range_scan.test
test/sql/index/art/scan/test_art_range_scan.test
test/sql/index/art/scan/test_art_scan_thresholds.test
test/sql/index/art/storage/test_art_auto_checkpoint.test
test/sql/index/art/storage/test_art_duckdb_versions.test
test/sql/index/art/storage/test_art_import.test
test/sql/index/art/storage/test_art_import_export.test
test/sql/index/art/types/test_art_varchar.test
test/sql/index/art/vacuum/test_art_vacuum_rollback.test
test/sql/insert/unaligned_interleaved_appends.test
test/sql/join/iejoin/iejoin_issue_6861.test
test/sql/join/iejoin/iejoin_issue_7278.test
test/sql/join/iejoin/merge_join_switch.test
test/sql/join/iejoin/predicate_expressions.test
test/sql/join/iejoin/test_iejoin.test
test/sql/join/iejoin/test_iejoin_east_west.test
test/sql/join/iejoin/test_iejoin_events.test
test/sql/join/iejoin/test_iejoin_null_keys.test
test/sql/join/iejoin/test_iejoin_overlaps.test
test/sql/join/inner/empty_tinyint_column.test
test/sql/join/inner/equality_join_limits.test
test/sql/join/inner/test_using_chain.test
test/sql/join/natural/natural_join.test
test/sql/join/semianti/antijoin.test
test/sql/join/semianti/right_anti.test
test/sql/join/semianti/right_semi.test
test/sql/join/semianti/semijoin.test
test/sql/json/issues/internal_issue2732.test
test/sql/json/issues/issue12188.test
test/sql/json/issues/issue12861.test
test/sql/json/issues/issue13212.test
test/sql/json/issues/read_json_memory_usage.test
test/sql/json/scalar/test_json_exists.test
test/sql/json/scalar/test_json_path.test
test/sql/json/scalar/test_json_pretty.test
test/sql/json/scalar/test_json_value.test
test/sql/json/table/json_multi_file_reader.test
test/sql/json/table/read_json.test
test/sql/json/table/read_json_objects.test
test/sql/json/test_json_empty_object.test
test/sql/json/test_json_export.test
test/sql/json/test_json_serialize_sql.test
test/sql/limit/test_preserve_insertion_order.test
test/sql/optimizer/expression/test_nop_arithmetic.test
test/sql/overflow/table_overflow.test
test/sql/parallelism/intraquery/parallel_sample.test
test/sql/parallelism/intraquery/test_parallel_nested_aggregates.test
test/sql/parallelism/intraquery/test_persistent_parallelism.test
test/sql/parallelism/intraquery/test_simple_parallelism.test
test/sql/parallelism/intraquery/test_verify_parallelism.test
test/sql/parser/test_columns_unpacked.test
test/sql/parser/test_value_functions.test
test/sql/pg_catalog/pg_privilege.test
test/sql/pivot/optional_pivots.test
test/sql/pivot/pivot_6390.test
test/sql/pivot/pivot_bigquery.test
test/sql/pivot/pivot_databricks.test
test/sql/pivot/pivot_empty.test
test/sql/pivot/pivot_example.test
test/sql/pivot/pivot_expressions.test
test/sql/pivot/pivot_in_boolean.test
test/sql/pivot/pivot_in_subquery.test
test/sql/pivot/pivot_struct_aggregate.test
test/sql/pivot/pivot_subquery.test
test/sql/pivot/top_level_pivot_syntax.test
test/sql/pragma/pragma_database_size_readonly.test
test/sql/pragma/test_custom_optimizer_profiling.test
test/sql/pragma/test_custom_profiling_settings.test
test/sql/pragma/test_metadata_info.test
test/sql/pragma/test_pragma_database_list.test
test/sql/pragma/test_pragma_database_size.test
test/sql/pragma/test_pragma_functions.test
test/sql/pragma/test_pragma_parsing.test
test/sql/pragma/test_pragma_version.test
test/sql/pragma/test_query_log.test
test/sql/pragma/test_show_tables.test
test/sql/pragma/test_storage_info.test
test/sql/pragma/test_table_info.test
test/sql/prepared/prepare_copy.test
test/sql/prepared/prepare_maintain_types.test
test/sql/prepared/prepared_null_binding.test
test/sql/prepared/test_prepare_delete.test
test/sql/prepared/test_prepare_delete_update.test
test/sql/projection/test_row_id_expression.test
test/sql/returning/returning_update.test
test/sql/secrets/create_secret_binding.test
test/sql/secrets/create_secret_defaults.test
test/sql/secrets/create_secret_hffs.test
test/sql/secrets/create_secret_minio.test
test/sql/secrets/create_secret_name_conflicts.test
test/sql/secrets/create_secret_non_writable_persistent_dir.test
test/sql/secrets/create_secret_overwriting.test
test/sql/secrets/create_secret_persistence.test
test/sql/secrets/create_secret_persistence_error_handling.test
test/sql/secrets/create_secret_r2.test
test/sql/secrets/create_secret_r2_serialization.test
test/sql/secrets/create_secret_s3_serialization.test
test/sql/secrets/create_secret_scope_matching.test
test/sql/secrets/create_secret_settings.test
test/sql/secrets/create_secret_storage_backends.test
test/sql/secrets/create_secret_transactional.test
test/sql/select/test_multi_column_reference.test
test/sql/setops/test_union_all_by_name.test
test/sql/settings/test_disabled_file_system_httpfs.test
test/sql/settings/test_disabled_file_systems.test
test/sql/show_select/test_describe_quoted.test
test/sql/show_select/test_summarize_quoted.test
test/sql/storage/bc/test_view_v092.test
test/sql/storage/buffer_manager_temp_dir.test
test/sql/storage/catalog/test_macro_storage.test
test/sql/storage/catalog/test_sequence_uncommitted_transaction.test
test/sql/storage/catalog/test_store_default_sequence.test
test/sql/storage/catalog/test_store_rename_column.test
test/sql/storage/catalog/test_store_rename_table.test
test/sql/storage/catalog/test_store_rename_view.test
test/sql/storage/catalog/test_store_sequences.test
test/sql/storage/catalog/test_store_temporary.test
test/sql/storage/catalog/test_table_macro_storage.test
test/sql/storage/catalog/test_view_explicit_aliases.test
test/sql/storage/catalog/test_view_storage.test
test/sql/storage/catalog/test_view_storage_no_view_dependencies.test
test/sql/storage/commit_abort.test
test/sql/storage/compact_block_size/block_size_with_rollback.test
test/sql/storage/compact_block_size/compact_block_size.test
test/sql/storage/compact_block_size/compact_vector_size.test
test/sql/storage/compact_block_size/create_table_compression.test
test/sql/storage/compact_block_size/default_block_size.test
test/sql/storage/compact_block_size/ensure_bitpacking.test
test/sql/storage/compact_block_size/ensure_no_bitpacking.test
test/sql/storage/compact_block_size/insertion_order_odd_batches.test
test/sql/storage/compact_block_size/mixed_block_sizes.test
test/sql/storage/compression/alp/alp_inf_null_nan.test
test/sql/storage/compression/alp/alp_nulls.test
test/sql/storage/compression/alp/alp_nulls_simple.test
test/sql/storage/compression/alprd/alprd_inf_null_nan.test
test/sql/storage/compression/alprd/alprd_nulls.test
test/sql/storage/compression/alprd/alprd_nulls_simple.test
test/sql/storage/compression/bitpacking/bitpacking_hugeint.test
test/sql/storage/compression/bitpacking/bitpacking_size_calculation.test
test/sql/storage/compression/bitpacking/bitpacking_uhugeint.test
test/sql/storage/multiple_clients_checkpoint_pending_updates.test
test/sql/storage/shutdown_running_transaction.test
test/sql/storage/shutdown_running_transaction_updates.test
test/sql/storage/temp_directory/max_swap_space_error.test
test/sql/storage/temp_directory/max_swap_space_explicit.test
test/sql/storage/temp_directory/max_swap_space_inmemory.test
test/sql/storage/temp_directory/max_swap_space_persistent.test
test/sql/storage/unicode_filename.test
test/sql/storage/wal/test_wal_bc.test
test/sql/storage/wal/wal_lazy_creation.test
test/sql/storage/wal/wal_sequence_uncommitted_transaction.test
test/sql/storage/wal/wal_storage_types.test
test/sql/storage/wal/wal_store_default_sequence.test
test/sql/storage/wal/wal_store_rename_column.test
test/sql/storage/wal/wal_store_rename_table.test
test/sql/storage/wal/wal_store_rename_view.test
test/sql/storage/wal/wal_store_sequences.test
test/sql/storage/wal/wal_store_temporary.test
test/sql/storage/wal/wal_view_explicit_aliases.test
test/sql/storage/wal/wal_view_explicit_aliases_no_view_dependencies.test
test/sql/storage/wal/wal_view_storage.test
test/sql/storage/wal/wal_view_storage_no_view_dependencies.test
test/sql/subquery/any_all/subquery_in.test
test/sql/subquery/lateral/lateral_binding_views.test
test/sql/subquery/lateral/test_lateral_join.test
test/sql/subquery/scalar/test_correlated_subquery.test
test/sql/subquery/scalar/test_correlated_subquery_cte.test
test/sql/subquery/scalar/test_issue_6136.test
test/sql/subquery/scalar/test_scalar_subquery.test
test/sql/subquery/scalar/test_scalar_subquery_cte.test
test/sql/subquery/scalar/test_uncorrelated_scalar_subquery.test
test/sql/table_function/duckdb_constraints_fk.test
test/sql/table_function/duckdb_databases.test
test/sql/table_function/information_schema.test
test/sql/table_function/range_function_lateral.test
test/sql/table_function/range_timestamp.test
test/sql/table_function/sqlite_master_connections.test
test/sql/tpcds/dsdgen_readonly.test
test/sql/tpch/dbgen_readonly.test
test/sql/transactions/aborted_transaction_commit.test
test/sql/transactions/test_basic_transactions.test
test/sql/transactions/test_from_update_conflict.test
test/sql/transactions/test_index_abort.test
test/sql/transactions/test_index_rollback_flushed_data.test
test/sql/transactions/test_index_transaction_local.test
test/sql/transactions/test_interleaved_versions.test
test/sql/transactions/test_multi_transaction_append.test
test/sql/transactions/test_read_only_transactions.test
test/sql/transactions/test_transactional_sequences.test
test/sql/transactions/transaction_insert_delete_chunks.test
test/sql/transactions/transaction_insert_mixed_deletes.test
test/sql/types/alias/test_alias_table.test
test/sql/types/bit/test_bit.test
test/sql/types/enum/test_enum_schema.test
test/sql/types/enum/test_enum_table.test
test/sql/types/enum/test_enum_to_numbers.test
test/sql/types/interval/interval_try_cast.test
test/sql/types/list/unnest_complex_types.test
test/sql/types/list/unnest_table_function.test
test/sql/types/list/unnest_types.test
test/sql/types/map/map_const_and_col_combination.test
test/sql/types/nested/array/array_aggregate.test
test/sql/types/nested/array/array_fuzzer_failures.test
test/sql/types/nested/array/array_roundtrip_csv.test
test/sql/types/nested/array/array_roundtrip_json.test
test/sql/types/nested/array/array_roundtrip_parquet.test
test/sql/types/nested/array/array_simple.test
test/sql/types/nested/array/array_tupleformat.test
test/sql/types/nested/list/test_list_extract.test
test/sql/types/nested/map/map_from_entries/column_null_entry.test
test/sql/types/nested/map/test_map_cardinality.test
test/sql/types/nested/map/test_map_concat.test
test/sql/types/nested/map/test_map_contains.test
test/sql/types/nested/map/test_map_subscript.test
test/sql/types/nested/map/test_map_subscript_composite.test
test/sql/types/nested/map/test_map_vector_types.test
test/sql/types/nested/struct/struct_aggregates_types.test
test/sql/types/null/test_null.test
test/sql/types/struct/struct_cast.test
test/sql/types/struct/unnest_struct_mix.test
test/sql/types/time/test_time.test
test/sql/types/union/struct_to_json_union.test
test/sql/types/union/union_cast.test
test/sql/types/union/union_join.test
test/sql/types/bignum/test_big_bignum.test
test/sql/types/bignum/test_double_bignum.test
test/sql/types/bignum/test_int_bignum_conversion.test
test/sql/types/bignum/test_varchar_bignum_conversion.test
test/sql/types/bignum/test_varchar_bignum_unhappy.test
test/sql/types/bignum/test_bignum_boundaries.test
test/sql/types/bignum/test_bignum_comparisons.test
test/sql/types/bignum/test_bignum_double.test
test/sql/types/bignum/test_bignum_hugeint.test
test/sql/types/bignum/test_bignum_implicit_cast.test
test/sql/update/string_update_transaction_local_7348.test
test/sql/update/test_cascading_updates.test
test/sql/update/test_update_delete_same_tuple.test
test/sql/update/test_update_issue_3170.test
test/sql/update/test_update_many_updaters.test
test/sql/update/test_update_many_updaters_nulls.test
test/sql/upsert/postgres/planner_preprocessing.test
test/sql/upsert/upsert_conflict_in_different_chunk.test
test/sql/upsert/upsert_distinct_bug.test
test/sql/upsert/upsert_lambda.test
test/sql/upsert/upsert_local_no_tuples.test
test/sql/variables/test_variables.test
test/sql/window/test_empty_frames.test
test/sql/window/test_thread_count.test
test/sql/window/test_tpcds_q49.test
test/sql/window/test_window_bool.test
test/sql/window/test_window_order_collate.test
test/sql/window/test_window_range.test
test/sql/window/test_window_tpcds.test
test/sql/pg_catalog/system_functions.test
test/sql/copy/csv/test_soccer_kaggle.test
test/sql/copy/csv/test_headers_12089.test
test/sql/order/test_order_range_mapping.test
test/sql/order/test_order_by_exceptions.test
test/sql/order/test_order_by.test
test/sql/order/test_limit.test
test/sql/table_function/duckdb_constraints.test
test/sql/table_function/duckdb_constraints_issue12863.test
test/sql/table_function/information_schema_fkey_constraint_names.test
# infinite loop bug in older version
test/sql/cte/test_recursive_cte_union.test
test/sql/cte/test_recursive_cte_union_all.test
# collation fixes
test/sql/collate/collate_ordered_aggregate.test
# timetz ordering fixes
test/sql/types/time/test_time_tz.test
test/sql/function/operator/test_date_arithmetic.test
# histogram/list_distinct type fix
test/sql/function/list/list_distinct.test
test/sql/function/list/aggregates/histogram.test
test/sql/aggregate/aggregates/test_mode.test
test/sql/aggregate/aggregates/test_histogram.test
test/sql/aggregate/aggregates/test_approx_quantile.test
# least/greatest type fix
test/sql/function/generic/test_least_greatest.test
test/sql/function/generic/least_greatest_enum.test
test/sql/types/uhugeint/test_uhugeint_functions.test
# null type changes
test/sql/types/list/list_concat_null.test
test/sql/function/string/test_concat_function.test
test/sql/function/string/test_concat_binding.test
test/sql/function/string/test_concat.test
# lateral join plan fix
test/sql/subquery/lateral/lateral_grouping_sets.test
# median/quantile type fixes
test/sql/types/nested/array/array_summarize.test
test/sql/show_select/test_summarize.test
# information schema fixes
test/sql/table_function/information_schema_issue12867.test
# test_all_types changes
test/sql/json/scalar/json_nested_casts.test
test/sql/function/string/hex.test
test/sql/function/list/lambdas/lambdas_and_group_by.test
test/sql/subquery/exists/test_exists_union_by_name.test
# extension load mismatch
test/sql/function/timestamp/test_try_strptime.test
test/sql/function/timestamp/test_strptime.test
test/sql/function/timestamp/test_icu_strftime.test
test/sql/extensions/version_is_valid_httpfs.test
# quantile bug fixes
test/sql/aggregate/aggregates/test_quantile_disc_list.test
test/sql/aggregate/aggregates/test_quantile_disc.test
test/sql/aggregate/aggregates/test_median.test
# nanosecond fix
test/sql/function/timestamp/test_strftime_timestamp_ns.test
# concat type change
test/sql/types/blob/test_blob_function.test
# rowsort (FIXME: this can be addressed in the testing framework)
test/sql/function/string/regex_capture.test
# dollar quote parser fix
test/sql/parser/dollar_quotes_internal_issue2224.test

View File

@@ -0,0 +1,24 @@
SELECT l_returnflag, l_linestatus, sum(l_quantity) AS sum_qty, sum(l_extendedprice) AS sum_base_price, sum(l_extendedprice * (1 - l_discount)) AS sum_disc_price, sum(l_extendedprice * (1 - l_discount) * (1 + l_tax)) AS sum_charge, avg(l_quantity) AS avg_qty, avg(l_extendedprice) AS avg_price, avg(l_discount) AS avg_disc, count(*) AS count_order FROM lineitem WHERE l_shipdate <= CAST('1998-09-02' AS date) GROUP BY l_returnflag, l_linestatus ORDER BY l_returnflag, l_linestatus;
SELECT s_acctbal, s_name, n_name, p_partkey, p_mfgr, s_address, s_phone, s_comment FROM part, supplier, partsupp, nation, region WHERE p_partkey = ps_partkey AND s_suppkey = ps_suppkey AND p_size = 15 AND p_type LIKE '%BRASS' AND s_nationkey = n_nationkey AND n_regionkey = r_regionkey AND r_name = 'EUROPE' AND ps_supplycost = ( SELECT min(ps_supplycost) FROM partsupp, supplier, nation, region WHERE p_partkey = ps_partkey AND s_suppkey = ps_suppkey AND s_nationkey = n_nationkey AND n_regionkey = r_regionkey AND r_name = 'EUROPE') ORDER BY s_acctbal DESC, n_name, s_name, p_partkey LIMIT 100;
SELECT l_orderkey, sum(l_extendedprice * (1 - l_discount)) AS revenue, o_orderdate, o_shippriority FROM customer, orders, lineitem WHERE c_mktsegment = 'BUILDING' AND c_custkey = o_custkey AND l_orderkey = o_orderkey AND o_orderdate < CAST('1995-03-15' AS date) AND l_shipdate > CAST('1995-03-15' AS date) GROUP BY l_orderkey, o_orderdate, o_shippriority ORDER BY revenue DESC, o_orderdate LIMIT 10;
SELECT o_orderpriority, count(*) AS order_count FROM orders WHERE o_orderdate >= CAST('1993-07-01' AS date) AND o_orderdate < CAST('1993-10-01' AS date) AND EXISTS ( SELECT * FROM lineitem WHERE l_orderkey = o_orderkey AND l_commitdate < l_receiptdate) GROUP BY o_orderpriority ORDER BY o_orderpriority;
SELECT n_name, sum(l_extendedprice * (1 - l_discount)) AS revenue FROM customer, orders, lineitem, supplier, nation, region WHERE c_custkey = o_custkey AND l_orderkey = o_orderkey AND l_suppkey = s_suppkey AND c_nationkey = s_nationkey AND s_nationkey = n_nationkey AND n_regionkey = r_regionkey AND r_name = 'ASIA' AND o_orderdate >= CAST('1994-01-01' AS date) AND o_orderdate < CAST('1995-01-01' AS date) GROUP BY n_name ORDER BY revenue DESC;
SELECT sum(l_extendedprice * l_discount) AS revenue FROM lineitem WHERE l_shipdate >= CAST('1994-01-01' AS date) AND l_shipdate < CAST('1995-01-01' AS date) AND l_discount BETWEEN 0.05 AND 0.07 AND l_quantity < 24;
SELECT supp_nation, cust_nation, l_year, sum(volume) AS revenue FROM ( SELECT n1.n_name AS supp_nation, n2.n_name AS cust_nation, extract(year FROM l_shipdate) AS l_year, l_extendedprice * (1 - l_discount) AS volume FROM supplier, lineitem, orders, customer, nation n1, nation n2 WHERE s_suppkey = l_suppkey AND o_orderkey = l_orderkey AND c_custkey = o_custkey AND s_nationkey = n1.n_nationkey AND c_nationkey = n2.n_nationkey AND ((n1.n_name = 'FRANCE' AND n2.n_name = 'GERMANY') OR (n1.n_name = 'GERMANY' AND n2.n_name = 'FRANCE')) AND l_shipdate BETWEEN CAST('1995-01-01' AS date) AND CAST('1996-12-31' AS date)) AS shipping GROUP BY supp_nation, cust_nation, l_year ORDER BY supp_nation, cust_nation, l_year;
SELECT o_year, sum( CASE WHEN nation = 'BRAZIL' THEN volume ELSE 0 END) / sum(volume) AS mkt_share FROM ( SELECT extract(year FROM o_orderdate) AS o_year, l_extendedprice * (1 - l_discount) AS volume, n2.n_name AS nation FROM part, supplier, lineitem, orders, customer, nation n1, nation n2, region WHERE p_partkey = l_partkey AND s_suppkey = l_suppkey AND l_orderkey = o_orderkey AND o_custkey = c_custkey AND c_nationkey = n1.n_nationkey AND n1.n_regionkey = r_regionkey AND r_name = 'AMERICA' AND s_nationkey = n2.n_nationkey AND o_orderdate BETWEEN CAST('1995-01-01' AS date) AND CAST('1996-12-31' AS date) AND p_type = 'ECONOMY ANODIZED STEEL') AS all_nations GROUP BY o_year ORDER BY o_year;
SELECT nation, o_year, sum(amount) AS sum_profit FROM ( SELECT n_name AS nation, extract(year FROM o_orderdate) AS o_year, l_extendedprice * (1 - l_discount) - ps_supplycost * l_quantity AS amount FROM part, supplier, lineitem, partsupp, orders, nation WHERE s_suppkey = l_suppkey AND ps_suppkey = l_suppkey AND ps_partkey = l_partkey AND p_partkey = l_partkey AND o_orderkey = l_orderkey AND s_nationkey = n_nationkey AND p_name LIKE '%green%') AS profit GROUP BY nation, o_year ORDER BY nation, o_year DESC;
SELECT c_custkey, c_name, sum(l_extendedprice * (1 - l_discount)) AS revenue, c_acctbal, n_name, c_address, c_phone, c_comment FROM customer, orders, lineitem, nation WHERE c_custkey = o_custkey AND l_orderkey = o_orderkey AND o_orderdate >= CAST('1993-10-01' AS date) AND o_orderdate < CAST('1994-01-01' AS date) AND l_returnflag = 'R' AND c_nationkey = n_nationkey GROUP BY c_custkey, c_name, c_acctbal, c_phone, n_name, c_address, c_comment ORDER BY revenue DESC LIMIT 20;
SELECT ps_partkey, sum(ps_supplycost * ps_availqty) AS value FROM partsupp, supplier, nation WHERE ps_suppkey = s_suppkey AND s_nationkey = n_nationkey AND n_name = 'GERMANY' GROUP BY ps_partkey HAVING sum(ps_supplycost * ps_availqty) > ( SELECT sum(ps_supplycost * ps_availqty) * 0.0001000000 FROM partsupp, supplier, nation WHERE ps_suppkey = s_suppkey AND s_nationkey = n_nationkey AND n_name = 'GERMANY') ORDER BY value DESC;
SELECT l_shipmode, sum( CASE WHEN o_orderpriority = '1-URGENT' OR o_orderpriority = '2-HIGH' THEN 1 ELSE 0 END) AS high_line_count, sum( CASE WHEN o_orderpriority <> '1-URGENT' AND o_orderpriority <> '2-HIGH' THEN 1 ELSE 0 END) AS low_line_count FROM orders, lineitem WHERE o_orderkey = l_orderkey AND l_shipmode IN ('MAIL', 'SHIP') AND l_commitdate < l_receiptdate AND l_shipdate < l_commitdate AND l_receiptdate >= CAST('1994-01-01' AS date) AND l_receiptdate < CAST('1995-01-01' AS date) GROUP BY l_shipmode ORDER BY l_shipmode;
SELECT c_count, count(*) AS custdist FROM ( SELECT c_custkey, count(o_orderkey) FROM customer LEFT OUTER JOIN orders ON c_custkey = o_custkey AND o_comment NOT LIKE '%special%requests%' GROUP BY c_custkey) AS c_orders (c_custkey, c_count) GROUP BY c_count ORDER BY custdist DESC, c_count DESC;
SELECT 100.00 * sum( CASE WHEN p_type LIKE 'PROMO%' THEN l_extendedprice * (1 - l_discount) ELSE 0 END) / sum(l_extendedprice * (1 - l_discount)) AS promo_revenue FROM lineitem, part WHERE l_partkey = p_partkey AND l_shipdate >= date '1995-09-01' AND l_shipdate < CAST('1995-10-01' AS date);
SELECT s_suppkey, s_name, s_address, s_phone, total_revenue FROM supplier, ( SELECT l_suppkey AS supplier_no, sum(l_extendedprice * (1 - l_discount)) AS total_revenue FROM lineitem WHERE l_shipdate >= CAST('1996-01-01' AS date) AND l_shipdate < CAST('1996-04-01' AS date) GROUP BY supplier_no) revenue0 WHERE s_suppkey = supplier_no AND total_revenue = ( SELECT max(total_revenue) FROM ( SELECT l_suppkey AS supplier_no, sum(l_extendedprice * (1 - l_discount)) AS total_revenue FROM lineitem WHERE l_shipdate >= CAST('1996-01-01' AS date) AND l_shipdate < CAST('1996-04-01' AS date) GROUP BY supplier_no) revenue1) ORDER BY s_suppkey;
SELECT p_brand, p_type, p_size, count(DISTINCT ps_suppkey) AS supplier_cnt FROM partsupp, part WHERE p_partkey = ps_partkey AND p_brand <> 'Brand#45' AND p_type NOT LIKE 'MEDIUM POLISHED%' AND p_size IN (49, 14, 23, 45, 19, 3, 36, 9) AND ps_suppkey NOT IN ( SELECT s_suppkey FROM supplier WHERE s_comment LIKE '%Customer%Complaints%') GROUP BY p_brand, p_type, p_size ORDER BY supplier_cnt DESC, p_brand, p_type, p_size;
SELECT sum(l_extendedprice) / 7.0 AS avg_yearly FROM lineitem, part WHERE p_partkey = l_partkey AND p_brand = 'Brand#23' AND p_container = 'MED BOX' AND l_quantity < ( SELECT 0.2 * avg(l_quantity) FROM lineitem WHERE l_partkey = p_partkey);
SELECT c_name, c_custkey, o_orderkey, o_orderdate, o_totalprice, sum(l_quantity) FROM customer, orders, lineitem WHERE o_orderkey IN ( SELECT l_orderkey FROM lineitem GROUP BY l_orderkey HAVING sum(l_quantity) > 300) AND c_custkey = o_custkey AND o_orderkey = l_orderkey GROUP BY c_name, c_custkey, o_orderkey, o_orderdate, o_totalprice ORDER BY o_totalprice DESC, o_orderdate LIMIT 100;
SELECT sum(l_extendedprice * (1 - l_discount)) AS revenue FROM lineitem, part WHERE (p_partkey = l_partkey AND p_brand = 'Brand#12' AND p_container IN ('SM CASE', 'SM BOX', 'SM PACK', 'SM PKG') AND l_quantity >= 1 AND l_quantity <= 1 + 10 AND p_size BETWEEN 1 AND 5 AND l_shipmode IN ('AIR', 'AIR REG') AND l_shipinstruct = 'DELIVER IN PERSON') OR (p_partkey = l_partkey AND p_brand = 'Brand#23' AND p_container IN ('MED BAG', 'MED BOX', 'MED PKG', 'MED PACK') AND l_quantity >= 10 AND l_quantity <= 10 + 10 AND p_size BETWEEN 1 AND 10 AND l_shipmode IN ('AIR', 'AIR REG') AND l_shipinstruct = 'DELIVER IN PERSON') OR (p_partkey = l_partkey AND p_brand = 'Brand#34' AND p_container IN ('LG CASE', 'LG BOX', 'LG PACK', 'LG PKG') AND l_quantity >= 20 AND l_quantity <= 20 + 10 AND p_size BETWEEN 1 AND 15 AND l_shipmode IN ('AIR', 'AIR REG') AND l_shipinstruct = 'DELIVER IN PERSON');
SELECT s_name, s_address FROM supplier, nation WHERE s_suppkey IN ( SELECT ps_suppkey FROM partsupp WHERE ps_partkey IN ( SELECT p_partkey FROM part WHERE p_name LIKE 'forest%') AND ps_availqty > ( SELECT 0.5 * sum(l_quantity) FROM lineitem WHERE l_partkey = ps_partkey AND l_suppkey = ps_suppkey AND l_shipdate >= CAST('1994-01-01' AS date) AND l_shipdate < CAST('1995-01-01' AS date))) AND s_nationkey = n_nationkey AND n_name = 'CANADA' ORDER BY s_name;
SELECT s_name, count(*) AS numwait FROM supplier, lineitem l1, orders, nation WHERE s_suppkey = l1.l_suppkey AND o_orderkey = l1.l_orderkey AND o_orderstatus = 'F' AND l1.l_receiptdate > l1.l_commitdate AND EXISTS ( SELECT * FROM lineitem l2 WHERE l2.l_orderkey = l1.l_orderkey AND l2.l_suppkey <> l1.l_suppkey) AND NOT EXISTS ( SELECT * FROM lineitem l3 WHERE l3.l_orderkey = l1.l_orderkey AND l3.l_suppkey <> l1.l_suppkey AND l3.l_receiptdate > l3.l_commitdate) AND s_nationkey = n_nationkey AND n_name = 'SAUDI ARABIA' GROUP BY s_name ORDER BY numwait DESC, s_name LIMIT 100;
SELECT * FROM range(10);
SELECT * FROM range(0, 100);
SELECT * FROM generate_series(0, 10) t(i);

Binary file not shown.

View File

@@ -0,0 +1,133 @@
#include "catch.hpp"
#include "duckdb/common/serializer/buffered_file_reader.hpp"
#include "duckdb/common/serializer/buffered_file_writer.hpp"
#include "duckdb/parser/parser.hpp"
#include "duckdb/planner/planner.hpp"
#include "duckdb/parser/statement/logical_plan_statement.hpp"
#include "duckdb/common/serializer/binary_serializer.hpp"
#include "duckdb/common/serializer/binary_deserializer.hpp"
#include "test_helpers.hpp"
#include "tpch_extension.hpp"
#include <fstream>
using namespace duckdb;
using namespace std;
string get_full_file_name(const string &file_name) {
auto my_name = string("test_plan_serialization_bwc.cpp");
auto path = string(__FILE__);
return path.replace(path.rfind(my_name), my_name.length(), file_name);
}
void load_db(Connection &con) {
std::ifstream queries(get_full_file_name("db_load.sql"));
string query;
while (std::getline(queries, query)) {
REQUIRE_NO_FAIL(con.Query(query));
}
}
void test_deserialization(const string &file_location);
const char *PERSISTENT_FILE_NAME = "serialized_plans.binary";
TEST_CASE("Generate serialized plans file", "[.][serialization]") {
string file_location;
if (std::getenv("GEN_PLAN_STORAGE") != nullptr) {
// there is no way in catch2 to only run a test if explicitly requested. Hidden tests will
// run when "*" is used - which we do to run slow tests. To avoid re-generating the bin file
// we require an env variable to be explicitly set.
//
// set `GEN_PLAN_STORAGE` as an environment variable to generate the serialized file
file_location = get_full_file_name(PERSISTENT_FILE_NAME);
} else {
file_location = TestCreatePath("serialized_plans.new.binary");
}
DuckDB db;
Connection con(db);
load_db(con);
BufferedFileWriter target(db.GetFileSystem(), file_location);
std::ifstream queries(get_full_file_name("queries.sql"));
string query;
while (std::getline(queries, query)) {
con.BeginTransaction();
Parser p;
p.ParseQuery(query);
Planner planner(*con.context);
planner.CreatePlan(std::move(p.statements[0]));
auto plan = std::move(planner.plan);
BinarySerializer serializer(target);
serializer.Begin();
plan->Serialize(serializer);
serializer.End();
con.Rollback();
}
target.Sync();
test_deserialization(file_location);
}
TEST_CASE("Test deserialized plans from file", "[.][serialization]") {
test_deserialization(get_full_file_name(PERSISTENT_FILE_NAME));
}
void test_deserialization(const string &file_location) {
DuckDB db;
Connection con(db);
load_db(con);
BufferedFileReader file_source(db.GetFileSystem(), file_location.c_str());
std::ifstream queries(get_full_file_name("queries.sql"));
string query;
while (std::getline(queries, query)) {
INFO("evaluating " << query)
con.BeginTransaction();
BinaryDeserializer deserializer(file_source);
deserializer.Set<ClientContext &>(*con.context);
deserializer.Begin();
auto deserialized_plan = LogicalOperator::Deserialize(deserializer);
deserializer.End();
deserialized_plan->ResolveOperatorTypes();
auto deserialized_results =
con.context->Query(make_uniq<LogicalPlanStatement>(std::move(deserialized_plan)), false);
REQUIRE_NO_FAIL(*deserialized_results);
Parser p;
p.ParseQuery(query);
Planner planner(*con.context);
planner.CreatePlan(std::move(p.statements[0]));
auto expected_plan = std::move(planner.plan);
expected_plan->ResolveOperatorTypes();
auto expected_results = con.Query(query);
REQUIRE_NO_FAIL(*expected_results);
if (deserialized_results->names.size() == expected_results->names.size()) {
// ignore names
deserialized_results->names = expected_results->names;
}
if (!deserialized_results->Equals(*expected_results)) {
fprintf(stderr, "-----------------------------------\n");
fprintf(stderr, "Deserialized result does not match!\n");
fprintf(stderr, "-----------------------------------\n");
fprintf(stderr, "Query: %s\n", query.c_str());
fprintf(stderr, "-------------Deserialized----------\n");
deserialized_results->Print();
fprintf(stderr, "---------------Expected------------\n");
expected_results->Print();
fprintf(stderr, "-----------------------------------\n");
FAIL("Deserialized result does not match");
}
con.Rollback();
}
}