Writes every setting's current value, and every read-only limit, to unit.
The quickest way to see what this library will actually do without reading the guide: what the settable knobs are set to right now, and what the caps on filter rules, sort keys and MAML lines are. The two sections are separate because the second one is not settable -- a limit shown here is a fact about the library, not something a program can change.
Always prints, whatever else has been silenced. A settings dump that could itself be suppressed would leave a quiet program with no way to be asked why it is quiet.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in), | optional | :: | unit |
output unit (default output_unit). |
subroutine parquet_print_settings(unit) integer, intent(in), optional :: unit !! output unit (default output_unit). integer :: u character(len=:), allocatable :: codec, token u = output_unit if (present(unit)) u = unit write (u, '(a)') "parquet-fortran settings" call print_one(u, "arrow_threads", parquet_get_arrow_threads()) call print_one(u, "sort_threads", cfg_sort_threads) call print_one(u, "prefetch_threads", cfg_prefetch_threads) call print_one(u, "table_threads", cfg_table_threads) call print_one(u, "string_threads", cfg_string_threads) call print_one(u, "random_threads", cfg_random_threads) call print_big(u, "random_parallel_min_elements", cfg_random_parallel_min_elements) call print_text(u, "sort_counting_path", merge("true ", "false", cfg_sort_counting_path)) call print_text(u, "sort_radix_path", merge("true ", "false", cfg_sort_radix_path)) call print_big(u, "sort_counting_bucket_limit", parquet_get_sort_counting_bucket_limit()) call parquet_get_default_compression(codec) call print_text(u, "default_compression", codec) call print_one(u, "default_compression_level", parquet_get_default_compression_level()) call print_text(u, "default_use_threads", merge("true ", "false", cfg_default_use_threads)) call print_big(u, "target_row_group_bytes", parquet_get_target_row_group_bytes()) call print_text(u, "statistics_prescreen", merge("true ", "false", cfg_statistics_prescreen)) call parquet_get_verbosity(token) call print_text(u, "verbosity", token) call parquet_get_message_stream(token) call print_text(u, "message_stream", token) ! Printed as `(clock)` rather than as an empty field, so a dump makes it obvious that the ! date is being read rather than that the row failed to print. The token is not one the ! setter accepts -- an empty string is -- which is why it is bracketed. call parquet_get_file_date(token) if (len(token) == 0) token = "(clock)" call print_text(u, "file_date", token) write (u, '(a)') "limits (read-only)" call print_one(u, "parquet_max_filter_rule_len", parquet_max_filter_rule_len) call print_one(u, "parquet_max_filter_depth", parquet_max_filter_depth) call print_one(u, "parquet_max_filter_nodes", parquet_max_filter_nodes) call print_one(u, "parquet_max_sort_keys", parquet_max_sort_keys) call print_one(u, "parquet_max_sort_key_len", parquet_max_sort_key_len) call print_one(u, "parquet_max_maml_line_len", parquet_max_maml_line_len) end subroutine parquet_print_settings