mariadb/mysql-test/suite/binlog/t
Vladislav Vaintroub 061adae9a2 MDEV-16944 Fix file sharing issues on Windows in mysqltest
On Windows systems, occurrences of ERROR_SHARING_VIOLATION due to
conflicting share modes between processes accessing the same file can
result in CreateFile failures.

mysys' my_open() already incorporates a workaround by implementing
wait/retry logic on Windows.

But this does not help if files are opened using shell redirection like
mysqltest traditionally did it, i.e via

--echo exec "some text" > output_file

In such cases, it is cmd.exe, that opens the output_file, and it
won't do any sharing-violation retries.

This commit addresses the issue by introducing a new built-in command,
'write_line', in mysqltest. This new command serves as a brief alternative
to 'write_file', with a single line output, that also resolves variables
like "exec" would.

Internally, this command will use my_open(), and therefore retry-on-error
logic.

Hopefully this will eliminate the very sporadic "can't open file because
it is used by another process" error on CI.
2024-04-17 16:52:37 +02:00
..
backup.test
binlog_1pc.test
binlog_admin_cmd_kill.test
binlog_autocommit_off_no_hang-master.opt
binlog_autocommit_off_no_hang.test MDEV-16944 Fix file sharing issues on Windows in mysqltest 2024-04-17 16:52:37 +02:00
binlog_base64_flag.test
binlog_bug23533.test
binlog_bug36391-master.opt
binlog_bug36391.test
binlog_checkpoint.test MDEV-29607: binlog.binlog_checkpoint fails in buildbot with result content mismatch 2022-11-25 12:45:35 -07:00
binlog_checkpoint_flush_logs.test
binlog_checksum.test
binlog_commit_wait.test
binlog_database.test
binlog_delete_and_flush_index-master.opt
binlog_delete_and_flush_index.test
binlog_dmls_on_tmp_tables_readonly.test
binlog_drop_if_exists.test
binlog_empty_xa_prepared.test Merge branch '10.4' into 10.5 2023-07-27 15:43:21 +02:00
binlog_flush_binlogs_delete_domain.test
binlog_format_switch_in_tmp_table.test
binlog_gis_user_var_stm.test MDEV-27666 User variable not parsed as geometry variable in geometry function 2024-01-16 18:53:23 +04:00
binlog_grant.test
binlog_gtid_delete_domain_debug.test
binlog_implicit_commit.test
binlog_incident.test
binlog_index-master.opt
binlog_index.test
binlog_innodb.opt
binlog_innodb.test
binlog_innodb_row.test
binlog_innodb_stm.test
binlog_invalid_read_in_rotate.combinations
binlog_invalid_read_in_rotate.test
binlog_ioerr.test
binlog_killed.test
binlog_killed_simulate-master.opt
binlog_killed_simulate.test
binlog_max_binlog_stmt_cache_size.opt
binlog_max_binlog_stmt_cache_size.test
binlog_max_extension.test
binlog_mdev342-master.opt
binlog_mdev342.test
binlog_mdev717.test
binlog_mixed.test
binlog_mixed_cache_stat.opt
binlog_mixed_cache_stat.test
binlog_mixed_load_data.test
binlog_mysqlbinlog-cp932-master.opt
binlog_mysqlbinlog-cp932.test
binlog_mysqlbinlog2-master.opt
binlog_mysqlbinlog2.test [MDEV-30824] Fix binlog to use 'String' for setting 'character_set_client' 2023-03-21 17:19:44 +04:00
binlog_mysqlbinlog_base64.test
binlog_mysqlbinlog_raw_flush.test MDEV-30064: binlog.binlog_mysqlbinlog_raw_flush sometimes fails with Errcode: 2 "No such file or directory" 2023-11-15 16:13:46 +01:00
binlog_mysqlbinlog_row-master.opt
binlog_mysqlbinlog_row.test [MDEV-30824] Fix binlog to use 'String' for setting 'character_set_client' 2023-03-21 17:19:44 +04:00
binlog_mysqlbinlog_row_frag.test
binlog_mysqlbinlog_row_innodb-master.opt
binlog_mysqlbinlog_row_innodb.test
binlog_mysqlbinlog_row_myisam-master.opt
binlog_mysqlbinlog_row_myisam.test
binlog_mysqlbinlog_row_trans-master.opt
binlog_mysqlbinlog_row_trans.test [MDEV-30824] Fix binlog to use 'String' for setting 'character_set_client' 2023-03-21 17:19:44 +04:00
binlog_mysqlbinlog_stop_never.test
binlog_mysqlbinlog_suppress_O_TMPFILE.test
binlog_no_uniqfile_crash.test
binlog_old_versions.test
binlog_parallel_replication_ddl.test
binlog_parallel_replication_marks_row.test
binlog_parallel_replication_marks_stm_mix.test
binlog_query_filter_rules-master.opt
binlog_query_filter_rules.test
binlog_recover_checksum_error.test
binlog_rotate_perf.test MDEV-16944 Fix file sharing issues on Windows in mysqltest 2024-04-17 16:52:37 +02:00
binlog_row_annotate-master.opt
binlog_row_annotate.test
binlog_row_binlog-master.opt
binlog_row_binlog.test
binlog_row_cache_stat.test
binlog_row_ctype_cp932.test
binlog_row_ctype_ucs.test
binlog_row_drop_tbl.test
binlog_row_drop_tmp_tbl.test
binlog_row_innodb_stat-master.opt
binlog_row_insert_select.test
binlog_row_mix_innodb_myisam-master.opt
binlog_row_mix_innodb_myisam.test
binlog_row_mysqlbinlog_db_filter.test
binlog_row_mysqlbinlog_options-master.opt
binlog_row_mysqlbinlog_options.test [MDEV-30824] Fix binlog to use 'String' for setting 'character_set_client' 2023-03-21 17:19:44 +04:00
binlog_row_mysqlbinlog_verbose.test
binlog_server_id.test
binlog_sf.test
binlog_show_binlog_event_random_pos.combinations
binlog_show_binlog_event_random_pos.test
binlog_show_binlog_events_invalid_offset_silent.test MDEV-32628: Cryptic ERROR message & inconsistent behavior on incorrect SHOW BINLOG EVENTS FROM ... 2023-11-17 09:43:56 -08:00
binlog_spurious_ddl_errors.test
binlog_sql_mode.test
binlog_start_comment.test
binlog_statement_insert_delayed.test
binlog_stm_binlog-master.opt
binlog_stm_binlog.test Merge 10.3 into 10.4 2022-12-13 11:37:33 +02:00
binlog_stm_blackhole.test
binlog_stm_cache_stat.test
binlog_stm_ctype_cp932.test
binlog_stm_ctype_ucs.test
binlog_stm_datetime_ranges_mdev15289.test
binlog_stm_do_db-master.opt
binlog_stm_do_db.test
binlog_stm_drop_tbl.test
binlog_stm_drop_tmp_tbl.test
binlog_stm_innodb_stat-master.opt
binlog_stm_insert_select.test
binlog_stm_mix_innodb_myisam-master.opt
binlog_stm_mix_innodb_myisam.test
binlog_stm_ps.test
binlog_stm_row.test MDEV-31003: Second execution for ps-protocol 2023-07-26 17:15:00 +07:00
binlog_stm_sp.test
binlog_stm_sp_type_row.test
binlog_stm_unsafe_warning-master.opt
binlog_stm_unsafe_warning.test
binlog_stm_user_variables.test
binlog_switch_inside_trans.test
binlog_table_map_optional_metadata.test
binlog_table_map_optional_metadata_binary.test MDEV-29866: Add RESET MASTER to clear possible remaining binlog from previous test 2022-11-09 17:36:42 +00:00
binlog_table_map_optional_metadata_ucs2.test MDEV-29866: Add RESET MASTER to clear possible remaining binlog from previous test 2022-11-09 17:36:42 +00:00
binlog_table_map_optional_metadata_utf32.test MDEV-29866: Add RESET MASTER to clear possible remaining binlog from previous test 2022-11-09 17:36:42 +00:00
binlog_tmp_table.test
binlog_tmp_table_row.test
binlog_trigger.test
binlog_truncate_innodb.test
binlog_truncate_kill.test
binlog_truncate_myisam.test
binlog_unsafe-master.opt
binlog_unsafe.test MDEV-31003: Second execution for ps-protocol 2023-07-26 17:15:00 +07:00
binlog_variables_log_bin-master.opt
binlog_variables_log_bin.test
binlog_variables_log_bin_index-master.opt
binlog_variables_log_bin_index.test
binlog_variables_relay_log-master.opt
binlog_variables_relay_log.test
binlog_variables_relay_log_index-master.opt
binlog_variables_relay_log_index.test
binlog_verbose_compressed_fields.test MDEV-25277: mysqlbinlog --verbose cannot read row events with compressed columns: Don't know how to handle column type: 140 2023-01-11 10:37:49 -07:00
binlog_write_error.test
binlog_xa_checkpoint.test
binlog_xa_handling.test
binlog_xa_prepared.inc
binlog_xa_prepared_disconnect.test
binlog_xa_recover.opt
binlog_xa_recover.test
flashback-largebinlog.test
flashback-master.opt
flashback.test Merge branch '10.4' into 10.5 2023-12-07 16:38:00 +11:00
foreign_key.test
innodb_autoinc_lock_mode_binlog.opt
innodb_autoinc_lock_mode_binlog.test
innodb_rc_insert_before_delete.test MDEV-30940: Revert "binlog.innodb_rc_insert_before_delete is disabled with MDEV-30490" 2023-01-30 21:28:21 +01:00
load_data_stm_view.test
mysqladmin.test
read_only.inc
read_only.test
read_only_statement.test
show_concurrent_rotate.test
temptable_uservar_disconnect-7938.test