Official Drizzle Blog: Testing BlitzDB with the randgen.
Thanks to the hard work of Toru Maesaka, BlitzDB is now in Drizzle's trunk. As a result, we are now testing BlitzDB in our automated tests.
One of the easiest and most powerful ways of beating up on BlitzDB is via the randgen (RQG). The RQG's data generation facility (gendata) is quite flexible and extensible and adding BlitzDB to the mix was very easy. Beyond adding 'BlitzDB' to the engines section of the altered gendata files and adjusting / removing some data types to accommodate BlitzDB limitations, all that is required is for us to modify the grammars to accomodate any changes to the test tables.
This new setup provides us with a test bed of both Innodb and BlitzDB tables and queries that will mix the different tables. Of course, we still keep the original tests to provide even more testing for Innodb only.
We now have 4 tests that utilize BlitzDB in our automated testing:
- optimizer_subquery_mix_engine
- optimizer_subquery_mix_engine_rand
- outer_join_mix_engine
- outer_join_mix_engine_rand
The grammars and gendata files have been pushed to lp:randgen and the tests are part of drizzle-automation's randgen testing.
These tests are based on two of the most productive RQG grammars we have. The 'mix' suffix means that we are mixing different storage engines across queries (we will likely add additional storage engines over time - looking at you, PBXT).
The 'rand' tests make use of the RQG's '--seed' option for increased randomness. For a given seed value, the queries and generated data will be consistent on any machine. By using seed=time in certain tests, we guarantee that we are constantly trying new data and query combinations in addition to our standard tests.
Additional information regarding Drizzle testing (including the randgen) can be found here. Please feel free to make use of the mailing lists if you want to get involved, have questions, etc - there's plenty of work for anyone who is interested : )
URL: http://blog.drizzle.org/2010/06/28/testing-blitzdb-with-the-randgen/
_______________________________________________ Mailing list: https://launchpad.net/~drizzle-discuss Post to : [email protected] Unsubscribe : https://launchpad.net/~drizzle-discuss More help : https://help.launchpad.net/ListHelp

