bad command-line options hang test cases
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Drizzle |
Fix Released
|
Medium
|
Patrick Crews | ||
7.0 |
Fix Released
|
Medium
|
Patrick Crews |
Bug Description
If a bad command-line argument is placed into a test-master.opt file, the test case will hang instead of correctly returning from server startup with an error message.
For instance, assume a test case named tester.test, and its master.opt file, tester-master.opt, which contains:
--bad-command-
The test runner will hang, waiting for around 60 seconds before returning a cryptic message such as:
main.tester [ fail ]
drizzletest: Could not open connection 'default' after 500 attempts: 21 drizzle_
Stopping All Servers
Restoring snapshot of databases
Resuming Tests
It is impossible to tell what the error is without then looking at the master.err file, which contains this:
CURRENT_TEST: main.tester
One can only use the --user switch if running as root
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use GCC atomic builtins.
100427 23:52:43 InnoDB: highest supported file format is Barracuda.
100427 23:52:43 InnoDB Plugin 1.0.4 started; log sequence number 47789
/home/jpipes/
/home/jpipes/
Error in my_thread_
Note that there is an error in my_thread_
Related branches
- Patrick Crews: Needs Resubmitting
- Lee Bieber (community): Needs Fixing
-
Diff: 4137 lines (+3158/-95)87 files modified.bzrignore (+1/-0)
plugin/filesystem_engine/tests/r/basic_create_table.result (+6/-6)
plugin/filesystem_engine/tests/r/basic_delete.result (+1/-1)
plugin/filesystem_engine/tests/r/basic_insert.result (+1/-1)
plugin/filesystem_engine/tests/r/basic_select.result (+1/-1)
plugin/filesystem_engine/tests/r/basic_update.result (+1/-1)
plugin/filesystem_engine/tests/r/multiple_update.result (+1/-1)
plugin/filesystem_engine/tests/r/rnd_pos.result (+1/-1)
plugin/filesystem_engine/tests/r/select_big_file.result (+1/-1)
plugin/filesystem_engine/tests/r/select_chop_line.result (+1/-1)
plugin/filesystem_engine/tests/r/select_cpuinfo.result (+2/-2)
plugin/filesystem_engine/tests/r/select_meminfo.result (+2/-2)
plugin/filesystem_engine/tests/r/select_separator_mode_weak.result (+1/-1)
plugin/filesystem_engine/tests/r/select_short_line.result (+1/-1)
plugin/filesystem_engine/tests/r/select_skip_blank_line.result (+1/-1)
plugin/filesystem_engine/tests/r/select_with_escaped_character.result (+1/-2)
plugin/filesystem_engine/tests/r/select_with_omit_field.result (+1/-1)
plugin/filesystem_engine/tests/r/select_with_separators.result (+1/-1)
plugin/filesystem_engine/tests/t/basic_create_table.test (+11/-5)
plugin/filesystem_engine/tests/t/basic_delete.test (+2/-1)
plugin/filesystem_engine/tests/t/basic_insert.test (+2/-1)
plugin/filesystem_engine/tests/t/basic_select.test (+2/-1)
plugin/filesystem_engine/tests/t/basic_update.test (+2/-1)
plugin/filesystem_engine/tests/t/multiple_update.test (+2/-1)
plugin/filesystem_engine/tests/t/rnd_pos.test (+3/-2)
plugin/filesystem_engine/tests/t/select_big_file.test (+2/-1)
plugin/filesystem_engine/tests/t/select_chop_line.test (+2/-1)
plugin/filesystem_engine/tests/t/select_cpuinfo.test (+3/-1)
plugin/filesystem_engine/tests/t/select_meminfo.test (+3/-1)
plugin/filesystem_engine/tests/t/select_separator_mode_weak.test (+2/-1)
plugin/filesystem_engine/tests/t/select_short_line.test (+2/-1)
plugin/filesystem_engine/tests/t/select_skip_blank_line.test (+2/-1)
plugin/filesystem_engine/tests/t/select_with_escaped_character.test (+2/-2)
plugin/filesystem_engine/tests/t/select_with_omit_field.test (+3/-2)
plugin/filesystem_engine/tests/t/select_with_separators.test (+3/-2)
plugin/filtered_replicator/tests/t/var_filteredschemas.test (+2/-1)
plugin/filtered_replicator/tests/t/var_filteredtables.test (+2/-2)
plugin/filtered_replicator/tests/t/var_schemaregex.test (+2/-1)
plugin/filtered_replicator/tests/t/var_tableregex.test (+2/-2)
plugin/innobase/tests/t/innodb_bug53756-master.opt (+0/-1)
plugin/storage_engine_api_tester/tests/t/txn_log_insert.test (+2/-2)
plugin/storage_engine_api_tester/tests/t/txn_log_rollback_large_stmt.test (+2/-1)
plugin/transaction_log/tests/r/truncate_log.result (+2/-2)
plugin/transaction_log/tests/t/alter.test (+2/-2)
plugin/transaction_log/tests/t/alter_schema.test (+2/-1)
plugin/transaction_log/tests/t/auto_commit.test (+2/-1)
plugin/transaction_log/tests/t/blob.test (+2/-1)
plugin/transaction_log/tests/t/create_select.test (+2/-1)
plugin/transaction_log/tests/t/create_table.test (+2/-1)
plugin/transaction_log/tests/t/delete.test (+2/-1)
plugin/transaction_log/tests/t/embedded_quotes.test (+2/-1)
plugin/transaction_log/tests/t/insert.test (+2/-1)
plugin/transaction_log/tests/t/insert_multi.test (+2/-1)
plugin/transaction_log/tests/t/insert_on_duplicate_update.test (+2/-1)
plugin/transaction_log/tests/t/insert_select.test (+2/-1)
plugin/transaction_log/tests/t/multi_column_primary_key.test (+2/-1)
plugin/transaction_log/tests/t/multi_table.test (+2/-1)
plugin/transaction_log/tests/t/no_modification.test (+2/-1)
plugin/transaction_log/tests/t/no_primary_key.test (+2/-1)
plugin/transaction_log/tests/t/null_values.test (+2/-1)
plugin/transaction_log/tests/t/rand.test (+2/-1)
plugin/transaction_log/tests/t/rename.test (+2/-1)
plugin/transaction_log/tests/t/replace.test (+2/-1)
plugin/transaction_log/tests/t/rollback.test (+2/-1)
plugin/transaction_log/tests/t/rollback_statement.test (+4/-3)
plugin/transaction_log/tests/t/schema.test (+2/-1)
plugin/transaction_log/tests/t/select_for_update.test (+2/-1)
plugin/transaction_log/tests/t/temp_tables.test (+2/-2)
plugin/transaction_log/tests/t/truncate.test (+2/-1)
plugin/transaction_log/tests/t/truncate_log.test (+4/-2)
plugin/transaction_log/tests/t/update.test (+2/-1)
tests/dbqp.py (+72/-0)
tests/include.am (+4/-0)
tests/lib/drizzle_test_run/dtr_test_execution.py (+159/-0)
tests/lib/drizzle_test_run/dtr_test_management.py (+393/-0)
tests/lib/server_mgmt/drizzled.py (+269/-0)
tests/lib/server_mgmt/server_management.py (+299/-0)
tests/lib/sys_mgmt/codeTree.py (+151/-0)
tests/lib/sys_mgmt/logging_management.py (+103/-0)
tests/lib/sys_mgmt/port_management.py (+172/-0)
tests/lib/sys_mgmt/system_management.py (+438/-0)
tests/lib/sys_mgmt/time_management.py (+103/-0)
tests/lib/test_mgmt/execution_management.py (+121/-0)
tests/lib/test_mgmt/test_execution.py (+145/-0)
tests/lib/test_mgmt/test_management.py (+264/-0)
tests/lib/test_mode.py (+45/-0)
tests/lib/test_run_options.py (+273/-0)
Changed in drizzle: | |
assignee: | nobody → Patrick Crews (patrick-crews) |
24 Jan 2011 12:34:33 ERROR: Server failed to start within 60 seconds. This could be a problem with the test machine or the server itself ======= ======= ======= ======= ======= ======= ======= ======= ======= ======= ===
24 Jan 2011 12:34:33 WARNING: Problem starting server(s) for test...failing test case
24 Jan 2011 12:34:33 : auth_test.basic [ fail ]
24 Jan 2011 12:34:36 : =======
24 Jan 2011 12:34:36 INFO: Test execution complete
24 Jan 2011 12:34:36 INFO: Summary report:
24 Jan 2011 12:34:36 INFO: Executed 19/19 test cases, 100.00 percent
24 Jan 2011 12:34:36 INFO: STATUS: FAIL, 1/19 test cases, 5.26 percent executed
24 Jan 2011 12:34:36 INFO: STATUS: PASS, 18/19 test cases, 94.74 percent executed
24 Jan 2011 12:34:36 INFO: FAIL tests: auth_test.basic
24 Jan 2011 12:34:36 INFO: Test execution complete
24 Jan 2011 12:34:36 INFO: Stopping all running servers...
We now have code that detects if the server hasn't started in %timeout seconds - will cause the test case to fail without calling drizzletest if the server start is bad.