MySQL Lists are EOL. Please join:

List:Commits« Previous MessageNext Message »
From:Ingo Strüwing Date:September 29 2009 12:01pm
Subject:Re: bzr commit into mysql-6.0-backup branch (Rafal.Somla:2875) WL#4766
View as plain text  
Hi Rafal,

STATUS:
Approved pending changes.

REQUIRED:
Remove "alter" as discussed on IRC.

REQUEST:
3) Please add 'perl' to --exec command.

SUGGESTION:
1) Treat get_lock/release_lock symmetrically.

OPTION:
2) Isn't this equivalent to CEILING?

DETAILS:
Rafal Somla, 28.09.2009 13:21:
...

>  2875 Rafal Somla	2009-09-28
>       WL#4766 - Online Backup : Test different transaction isolation levels
>       
>       This patch modifies the vptest of WL#4769 to additionally test the 
>       following:
>       
>       1. Transactions which run in parallel with BACKUP and use various 
>          possible transaction isolation levels.
>       2. Running BACKUP in parallel with other transactions and with 
>          different transaction isolation levels in the connection which runs 
>          BACKUP.
>       3. Run RESTORE in parallel with transactions which use different 
>          transaction isolation levels.
>       
>       Point 1 is tested by changing flightstat_stress_* test to use randomly 
>       selected transaction isolation levels. Point 2 is tested by adding a 
>       --tx-isolation-level parameter to the vptest/run_vp_test.pl script and 
>       invoking it with different levels in the weekly collection. Point 3 is 
>       tested by new restore_stress test which uses mysql-stress-test tool 
>       with the same Flightstats database which is used for tests of WL#4769.
...

> === added file 'mysql-test/suite/backup_extra/r/flightstat_stress_init.result'
...
> @@ -0,0 +1,8 @@
> +CREATE FUNCTION test.int_rand(num INT) RETURNS INT
> +RETURN ROUND(num * RAND() + 0.5);


2) Question: Isn't this equivalent to CEILING(num * RAND()) ?

...
> === added file 'mysql-test/suite/backup_extra/r/flightstat_stress_restore.result'
...
> @@ -0,0 +1,6 @@
> +RESTORE FROM 'FlightStats.bkp' OVERWRITE;
> +backup_id
> +#
> +SELECT release_lock('flighstat_restore_lock');
> +release_lock('flighstat_restore_lock')
> +NULL


1) Looks a little confusing to see release of a lock, but not acquire.
I suggest to disable query logging or fake the acquisition with echo.

Also I suggest to use "DO release_lock..." instead of "SELECT
release_lock..." as we don't need the result.

...

> === added file 'mysql-test/suite/backup_extra/t/restore_stress.test'

...
> +--exec ./mysql-stress-test.pl $STRESS_OPTS >$STRESS_DIR/stress.log

3) This failed on Windows with:
"

'.' is not recognized as an internal or external command,
operable program or batch file.
mysqltest: At line 127: command "./mysql-stress-test.pl $STRESS_OPTS
>$STRESS_DIR/stress.log" failed
"


--exec perl ./mysql-stress-test.pl ...
helped.

But then:
"

ERROR: mysqltest binary ../client/mysqltest not found No such file or directory.
You must either specify file location explicitly using --mysqltest
option, or make sure path to mysqltest binary is listed
in your PATH environment variable.
mysqltest: At line 127: command "perl ./mysql-stress-test.pl $STRESS_OPTS
>$STRESS_DIR/stress.log" failed
"


On Windows, this is located at ../client/debug/mysqltest. Or replace
"debug" by another build type.

If this test is meant to run on Windows, we need either to change
mysql-stress-test.pl with a function that can locate the required
programs on Windows, or change restore_stress.test so that it does the
search and provides the paths by options to mysql-stress-test.pl.
Unfortunately I couldn't bring the latter to work. mysql-stress-test.pl
ignored the --mysqltest option.

As agreed on IRC I will take this as a mysql-stress-test.pl bug.

After copying mysqltest to where it is expected, the test timed out
after 900 seconds. I saw a difference in the session id of show
processlist. When the stress test problem is fixed, this patch might
need some small fixes too.

...

Regards
Ingo
-- 
Ingo Strüwing, Database Group
Sun Microsystems GmbH, Sonnenallee 1, D-85551 Kirchheim-Heimstetten
Geschäftsführer: Thomas Schröder,   Wolfgang Engels,   Wolf Frenkel
Vorsitzender des Aufsichtsrates: Martin Häring   HRB München 161028

Thread
bzr commit into mysql-6.0-backup branch (Rafal.Somla:2875) WL#4766Rafal Somla28 Sep
  • Re: bzr commit into mysql-6.0-backup branch (Rafal.Somla:2875) WL#4766Ingo Strüwing29 Sep
    • Re: bzr commit into mysql-6.0-backup branch (Rafal.Somla:2875) WL#4766Rafal Somla29 Sep