~drizzle-developers/drizzle/major-docs-cleanup

« back to all changes in this revision

Viewing changes to tests/sql-bench/test-select

  • Committer: Continuous Integration
  • Date: 2012-06-04 03:04:13 UTC
  • mfrom: (2558.1.3 qp-gsoc)
  • Revision ID: ci@drizzle.org-20120604030413-2mj4ixk0ykxiozoi
removed:
  tests/crashme_tests/
  tests/crashme_tests/main/
  tests/crashme_tests/main/crashme.cnf
  tests/dbqp.py
  tests/dbqp_data/
  tests/kewpie/
  tests/kewpie/.bzrignore
  tests/kewpie/lib/
  tests/kewpie/lib/__init__.py
  tests/kewpie/lib/modes/sysbench/
  tests/kewpie/lib/modes/sysbench/__init__.py
  tests/kewpie/lib/modes/sysbench/sysbench_test_execution.py
  tests/kewpie/lib/modes/sysbench/sysbench_test_management.py
  tests/kewpie/sysbench_tests/
  tests/kewpie/sysbench_tests/readonly/
  tests/kewpie/sysbench_tests/readonly/concurrency_1024.cnf
  tests/kewpie/sysbench_tests/readonly/concurrency_128.cnf
  tests/kewpie/sysbench_tests/readonly/concurrency_16.cnf
  tests/kewpie/sysbench_tests/readonly/concurrency_256.cnf
  tests/kewpie/sysbench_tests/readonly/concurrency_32.cnf
  tests/kewpie/sysbench_tests/readonly/concurrency_512.cnf
  tests/kewpie/sysbench_tests/readonly/concurrency_64.cnf
  tests/kewpie/sysbench_tests/readwrite/
  tests/kewpie/sysbench_tests/readwrite/concurrency_1024.cnf
  tests/kewpie/sysbench_tests/readwrite/concurrency_128.cnf
  tests/kewpie/sysbench_tests/readwrite/concurrency_16.cnf
  tests/kewpie/sysbench_tests/readwrite/concurrency_256.cnf
  tests/kewpie/sysbench_tests/readwrite/concurrency_32.cnf
  tests/kewpie/sysbench_tests/readwrite/concurrency_512.cnf
  tests/kewpie/sysbench_tests/readwrite/concurrency_64.cnf
  tests/lib/dbqp_modes/
  tests/lib/dbqp_modes/__init__.py
  tests/lib/dbqp_modes/crashme/
  tests/lib/dbqp_modes/crashme/__init__.py
  tests/lib/dbqp_modes/crashme/crashme_test_execution.py
  tests/lib/dbqp_modes/crashme/crashme_test_management.py
  tests/lib/dbqp_modes/dtr/
  tests/lib/dbqp_modes/dtr/__init__.py
  tests/lib/dbqp_modes/dtr/dtr_test_execution.py
  tests/lib/dbqp_modes/dtr/dtr_test_management.py
  tests/lib/dbqp_modes/native/
  tests/lib/dbqp_modes/randgen/
  tests/lib/dbqp_modes/randgen/__init__.py
  tests/lib/dbqp_modes/randgen/randgen_test_execution.py
  tests/lib/dbqp_modes/randgen/randgen_test_management.py
  tests/lib/dbqp_modes/sqlbench/
  tests/lib/dbqp_modes/sqlbench/__init__.py
  tests/lib/dbqp_modes/sqlbench/sqlbench_test_execution.py
  tests/lib/dbqp_modes/sqlbench/sqlbench_test_management.py
  tests/lib/dbqp_modes/sysbench/
  tests/lib/dbqp_modes/sysbench/__init__.py
  tests/lib/dbqp_modes/sysbench/sysbench_test_execution.py
  tests/lib/dbqp_modes/sysbench/sysbench_test_management.py
  tests/lib/dbqp_modes/test_mode.py
  tests/lib/dbqp_opts/
  tests/lib/dbqp_opts/__init__.py
  tests/lib/dbqp_opts/test_run_options.py
  tests/lib/server_mgmt/
  tests/lib/server_mgmt/__init__.py
  tests/lib/server_mgmt/drizzled.py
  tests/lib/server_mgmt/mysqld.py
  tests/lib/server_mgmt/server.py
  tests/lib/server_mgmt/server_management.py
  tests/lib/sys_mgmt/
  tests/lib/sys_mgmt/__init__.py
  tests/lib/sys_mgmt/codeTree.py
  tests/lib/sys_mgmt/code_management.py
  tests/lib/sys_mgmt/environment_management.py
  tests/lib/sys_mgmt/logging_management.py
  tests/lib/sys_mgmt/port_management.py
  tests/lib/sys_mgmt/system_management.py
  tests/lib/sys_mgmt/time_management.py
  tests/lib/test_mgmt/
  tests/lib/test_mgmt/__init__.py
  tests/lib/test_mgmt/execution_management.py
  tests/lib/test_mgmt/test_execution.py
  tests/lib/test_mgmt/test_management.py
  tests/randgen/
  tests/randgen/Contributors
  tests/randgen/LICENSE
  tests/randgen/README
  tests/randgen/backtrace-all.gdb
  tests/randgen/backtrace.gdb
  tests/randgen/bench/
  tests/randgen/bench/WL5004_sql.yy
  tests/randgen/bench/benchmark.pl
  tests/randgen/bench/falcon_data_types.zz
  tests/randgen/bughunt_template.cfg
  tests/randgen/combinations.pl
  tests/randgen/conf/
  tests/randgen/conf/backup/
  tests/randgen/conf/backup/backup_interop.yy
  tests/randgen/conf/backup/backup_obj.yy
  tests/randgen/conf/backup/backup_simple.yy
  tests/randgen/conf/backup/invariant.yy
  tests/randgen/conf/backup/invariant.zz
  tests/randgen/conf/dbt3/
  tests/randgen/conf/dbt3/dbt3-dml.yy
  tests/randgen/conf/dbt3/dbt3-joins.yy
  tests/randgen/conf/dbt3/dbt3-ranges.yy
  tests/randgen/conf/dbt3/dbt3-s0.0001.dump
  tests/randgen/conf/dbt3/dbt3-s0.001.dump
  tests/randgen/conf/dbt3/dbt3-s0.01.dump.bz2
  tests/randgen/conf/drizzle/
  tests/randgen/conf/drizzle/bug680669.yy
  tests/randgen/conf/drizzle/collations_drizzle.yy
  tests/randgen/conf/drizzle/combinations_drizzle.zz
  tests/randgen/conf/drizzle/data_dict_concurrent_drizzle.yy
  tests/randgen/conf/drizzle/drizzle.yy
  tests/randgen/conf/drizzle/drizzle.zz
  tests/randgen/conf/drizzle/drizzledump.yy
  tests/randgen/conf/drizzle/drizzledump_migrate.yy
  tests/randgen/conf/drizzle/drizzledump_migrate.zz
  tests/randgen/conf/drizzle/limit_compare_drizzle.yy
  tests/randgen/conf/drizzle/many_indexes_drizzle.yy
  tests/randgen/conf/drizzle/many_indexes_drizzle.zz
  tests/randgen/conf/drizzle/optimizer_subquery_data_dictionary_drizzle.yy
  tests/randgen/conf/drizzle/optimizer_subquery_drizzle.yy
  tests/randgen/conf/drizzle/outer_join_data_dictionary_drizzle.yy
  tests/randgen/conf/drizzle/outer_join_drizzle.yy
  tests/randgen/conf/drizzle/outer_join_drizzle.zz
  tests/randgen/conf/drizzle/outer_join_portable_drizzle.yy
  tests/randgen/conf/drizzle/proclist_drizzle.yy
  tests/randgen/conf/drizzle/proclist_subquery_drizzle.yy
  tests/randgen/conf/drizzle/range_access_drizzle.yy
  tests/randgen/conf/drizzle/range_access_drizzle.zz
  tests/randgen/conf/drizzle/subquery_drizzle.yy
  tests/randgen/conf/drizzle/subquery_materialization_drizzle.yy
  tests/randgen/conf/drizzle/subquery_semijoin_drizzle.yy
  tests/randgen/conf/drizzle/subquery_semijoin_nested_drizzle.yy
  tests/randgen/conf/drizzle/translog_concurrent1.yy
  tests/randgen/conf/drizzle/translog_concurrent2.yy
  tests/randgen/conf/drizzle/translog_concurrent3.yy
  tests/randgen/conf/drizzle/translog_drizzle.zz
  tests/randgen/conf/drizzle/translog_ordering.yy
  tests/randgen/conf/drizzle/translog_ordering.zz
  tests/randgen/conf/drizzle/varchar_drizzle.zz
  tests/randgen/conf/dyncol/
  tests/randgen/conf/dyncol/dyncol_dml.yy
  tests/randgen/conf/dyncol/dyncol_dml.zz
  tests/randgen/conf/engines/
  tests/randgen/conf/engines/blobs.yy
  tests/randgen/conf/engines/engine_stress.yy
  tests/randgen/conf/engines/engine_stress.zz
  tests/randgen/conf/engines/falcon/
  tests/randgen/conf/engines/falcon/falcon_backlog.yy
  tests/randgen/conf/engines/falcon/falcon_backlog.zz
  tests/randgen/conf/engines/falcon/falcon_blobs.yy
  tests/randgen/conf/engines/falcon/falcon_blobs.zz
  tests/randgen/conf/engines/falcon/falcon_chill_thaw.yy
  tests/randgen/conf/engines/falcon/falcon_chill_thaw.zz
  tests/randgen/conf/engines/falcon/falcon_data_types.yy
  tests/randgen/conf/engines/falcon/falcon_data_types.zz
  tests/randgen/conf/engines/falcon/falcon_data_types_no_year_time.yy
  tests/randgen/conf/engines/falcon/falcon_data_types_no_year_time.zz
  tests/randgen/conf/engines/falcon/falcon_ddl.yy
  tests/randgen/conf/engines/falcon/falcon_limit.yy
  tests/randgen/conf/engines/falcon/falcon_nolimit.yy
  tests/randgen/conf/engines/falcon/falcon_nolimit_int.yy
  tests/randgen/conf/engines/falcon/falcon_online_alter.yy
  tests/randgen/conf/engines/falcon/falcon_pagesize.yy
  tests/randgen/conf/engines/falcon/falcon_pagesize2K.zz
  tests/randgen/conf/engines/falcon/falcon_pagesize32K.zz
  tests/randgen/conf/engines/falcon/falcon_recovery.yy
  tests/randgen/conf/engines/falcon/falcon_recovery.zz
  tests/randgen/conf/engines/falcon/falcon_replication.yy
  tests/randgen/conf/engines/falcon/falcon_replication.zz
  tests/randgen/conf/engines/falcon/falcon_select_autocommit.yy
  tests/randgen/conf/engines/falcon/falcon_simple.cc
  tests/randgen/conf/engines/falcon/falcon_varchar.cc
  tests/randgen/conf/engines/falcon/limit_compare.yy
  tests/randgen/conf/engines/handler.yy
  tests/randgen/conf/engines/handler.zz
  tests/randgen/conf/engines/heap/
  tests/randgen/conf/engines/heap/heap_ddl_multi.yy
  tests/randgen/conf/engines/heap/heap_dml_single.init
  tests/randgen/conf/engines/heap/heap_dml_single.yy
  tests/randgen/conf/engines/innodb/
  tests/randgen/conf/engines/innodb/innodb_simple.cc
  tests/randgen/conf/engines/many_indexes.yy
  tests/randgen/conf/engines/many_indexes.zz
  tests/randgen/conf/engines/maria/
  tests/randgen/conf/engines/maria/maria.zz
  tests/randgen/conf/engines/maria/maria_bulk_insert.yy
  tests/randgen/conf/engines/maria/maria_dml_alter.yy
  tests/randgen/conf/engines/maria/maria_mostly_selects.yy
  tests/randgen/conf/engines/maria/maria_recovery.cc
  tests/randgen/conf/engines/maria/maria_stress.yy
  tests/randgen/conf/engines/tiny_inserts.yy
  tests/randgen/conf/engines/tiny_inserts.zz
  tests/randgen/conf/engines/varchar.yy
  tests/randgen/conf/engines/varchar.zz
  tests/randgen/conf/examples/
  tests/randgen/conf/examples/example.ff
  tests/randgen/conf/examples/example.yy
  tests/randgen/conf/examples/example.zz
  tests/randgen/conf/examples/flightstats.yy
  tests/randgen/conf/hivol/
  tests/randgen/conf/hivol/hivol_fbase_small.yy
  tests/randgen/conf/hivol/hivol_film.yy
  tests/randgen/conf/i18n/
  tests/randgen/conf/i18n/collations.yy
  tests/randgen/conf/optimizer/
  tests/randgen/conf/optimizer/archive/
  tests/randgen/conf/optimizer/archive/subquery_materialization.yy
  tests/randgen/conf/optimizer/archive/subquery_semijoin.yy
  tests/randgen/conf/optimizer/archive/subquery_semijoin_nested.yy
  tests/randgen/conf/optimizer/dsmrr-cpk-compare.cc
  tests/randgen/conf/optimizer/dsmrr-cpk-single.cc
  tests/randgen/conf/optimizer/dsmrr-cpk.ff
  tests/randgen/conf/optimizer/intersect.ff
  tests/randgen/conf/optimizer/join_buffer.ff
  tests/randgen/conf/optimizer/mrr-single.cc
  tests/randgen/conf/optimizer/mrr.ff
  tests/randgen/conf/optimizer/optimizer_access_exp.yy
  tests/randgen/conf/optimizer/optimizer_no_subquery.yy
  tests/randgen/conf/optimizer/optimizer_no_subquery_portable.yy
  tests/randgen/conf/optimizer/optimizer_subquery.yy
  tests/randgen/conf/optimizer/optimizer_subquery_no_outer_join.yy
  tests/randgen/conf/optimizer/optimizer_subquery_portable.yy
  tests/randgen/conf/optimizer/outer_join.yy
  tests/randgen/conf/optimizer/outer_join.zz
  tests/randgen/conf/optimizer/outer_join_portable.yy
  tests/randgen/conf/optimizer/range_access.ff
  tests/randgen/conf/optimizer/range_access.yy
  tests/randgen/conf/optimizer/range_access.zz
  tests/randgen/conf/optimizer/range_access2.yy
  tests/randgen/conf/optimizer/range_access2.zz
  tests/randgen/conf/optimizer/sort_union-index_merge.ff
  tests/randgen/conf/optimizer/virtual_columns.yy
  tests/randgen/conf/oqgraph/
  tests/randgen/conf/oqgraph/oqgraph.init
  tests/randgen/conf/oqgraph/oqgraph.yy
  tests/randgen/conf/oqgraph/oqgraph_bulgaria.sql.bz2
  tests/randgen/conf/oqgraph/osm2oqg.pl
  tests/randgen/conf/osm/
  tests/randgen/conf/osm/LICENCE
  tests/randgen/conf/osm/andorra.sql
  tests/randgen/conf/osm/osm-schema.sql
  tests/randgen/conf/partitioning/
  tests/randgen/conf/partitioning/partition_pruning.yy
  tests/randgen/conf/partitioning/partition_pruning.zz
  tests/randgen/conf/partitioning/partitions-ddl.yy
  tests/randgen/conf/partitioning/partitions-wl4571.yy
  tests/randgen/conf/partitioning/partitions_procedures_triggers.yy
  tests/randgen/conf/replication/
  tests/randgen/conf/replication/WL5092_data.zz
  tests/randgen/conf/replication/WL5092_sql_1.yy
  tests/randgen/conf/replication/WL5092_sql_2.yy
  tests/randgen/conf/replication/replication-5.1.zz
  tests/randgen/conf/replication/replication-6.0.zz
  tests/randgen/conf/replication/replication-ddl_data.zz
  tests/randgen/conf/replication/replication-ddl_sql.yy
  tests/randgen/conf/replication/replication-dml_data.zz
  tests/randgen/conf/replication/replication-dml_sql.yy
  tests/randgen/conf/replication/replication.yy
  tests/randgen/conf/replication/replication_innodb_myisam.zz
  tests/randgen/conf/replication/replication_simple.yy
  tests/randgen/conf/replication/replication_single_engine.zz
  tests/randgen/conf/replication/replication_single_engine_pk.zz
  tests/randgen/conf/replication/rpl_transactions.yy
  tests/randgen/conf/replication/rpl_transactions.zz
  tests/randgen/conf/replication/rpl_transactions_nopk.zz
  tests/randgen/conf/runtime/
  tests/randgen/conf/runtime/WL5004_data.zz
  tests/randgen/conf/runtime/WL5004_sql.yy
  tests/randgen/conf/runtime/WL5004_sql_custom.yy
  tests/randgen/conf/runtime/connect_kill_data.zz
  tests/randgen/conf/runtime/connect_kill_sql.yy
  tests/randgen/conf/runtime/create_drop.yy
  tests/randgen/conf/runtime/information_schema.yy
  tests/randgen/conf/runtime/metadata_locking.cc
  tests/randgen/conf/runtime/metadata_stability.yy
  tests/randgen/conf/runtime/metadata_stability.zz
  tests/randgen/conf/runtime/performance_schema.yy
  tests/randgen/conf/runtime/signal_resignal.yy
  tests/randgen/conf/temporal/
  tests/randgen/conf/temporal/temporal_functions.yy
  tests/randgen/conf/temporal/temporal_functions.zz
  tests/randgen/conf/temporal/temporal_ranges.yy
  tests/randgen/conf/temporal/temporal_ranges.zz
  tests/randgen/conf/temporal/temporal_replication.yy
  tests/randgen/conf/transactions/
  tests/randgen/conf/transactions/combinations.yy
  tests/randgen/conf/transactions/combinations.zz
  tests/randgen/conf/transactions/repeatable_read.yy
  tests/randgen/conf/transactions/transaction_durability.yy
  tests/randgen/conf/transactions/transactions-flat.yy
  tests/randgen/conf/transactions/transactions.yy
  tests/randgen/conf/transactions/transactions.zz
  tests/randgen/data/
  tests/randgen/data/earth11k.jpg
  tests/randgen/data/earth15kb.jpg
  tests/randgen/data/earth1886kb.jpg
  tests/randgen/data/earth215kb.jpg
  tests/randgen/data/earth2kb.jpg
  tests/randgen/data/earth579kb.jpg
  tests/randgen/data/earth5kb.jpg
  tests/randgen/data/earth81kb.jpg
  tests/randgen/dict/
  tests/randgen/dict/english.txt
  tests/randgen/dict/states.txt
  tests/randgen/gendata-old.pl
  tests/randgen/gendata.pl
  tests/randgen/gengrammar.pl
  tests/randgen/gensql.pl
  tests/randgen/gentest.pl
  tests/randgen/init/
  tests/randgen/init/all_off.sql
  tests/randgen/init/mrr_no_opt.sql
  tests/randgen/init/mrr_opt.sql
  tests/randgen/init/no_materialization.sql
  tests/randgen/init/no_mrr.opt
  tests/randgen/init/no_mrr_no_opt.sql
  tests/randgen/init/no_mrr_opt.sql
  tests/randgen/init/no_semijoin.sql
  tests/randgen/init/no_subquery.sql
  tests/randgen/lib/
  tests/randgen/lib/DBServer/
  tests/randgen/lib/DBServer/DBServer.pm
  tests/randgen/lib/DBServer/MySQL/
  tests/randgen/lib/DBServer/MySQL/MySQLd.pm
  tests/randgen/lib/DBServer/MySQL/ReplMySQLd.pm
  tests/randgen/lib/GenTest/
  tests/randgen/lib/GenTest.pm
  tests/randgen/lib/GenTest/App/
  tests/randgen/lib/GenTest/App/GenTest.pm
  tests/randgen/lib/GenTest/App/Gendata.pm
  tests/randgen/lib/GenTest/App/GendataSimple.pm
  tests/randgen/lib/GenTest/BzrInfo.pm
  tests/randgen/lib/GenTest/Comparator.pm
  tests/randgen/lib/GenTest/Constants.pm
  tests/randgen/lib/GenTest/ErrorFilter.pm
  tests/randgen/lib/GenTest/Executor/
  tests/randgen/lib/GenTest/Executor.pm
  tests/randgen/lib/GenTest/Executor/Drizzle.pm
  tests/randgen/lib/GenTest/Executor/Dummy.pm
  tests/randgen/lib/GenTest/Executor/JavaDB.pm
  tests/randgen/lib/GenTest/Executor/MySQL.pm
  tests/randgen/lib/GenTest/Executor/MySQLPrepared.pm
  tests/randgen/lib/GenTest/Executor/Postgres.pm
  tests/randgen/lib/GenTest/Filter/
  tests/randgen/lib/GenTest/Filter/Regexp.pm
  tests/randgen/lib/GenTest/Generator/
  tests/randgen/lib/GenTest/Generator.pm
  tests/randgen/lib/GenTest/Generator/FromGrammar.pm
  tests/randgen/lib/GenTest/Grammar/
  tests/randgen/lib/GenTest/Grammar.pm
  tests/randgen/lib/GenTest/Grammar/Rule.pm
  tests/randgen/lib/GenTest/IPC/
  tests/randgen/lib/GenTest/IPC/Channel.pm
  tests/randgen/lib/GenTest/IPC/Process.pm
  tests/randgen/lib/GenTest/Incident.pm
  tests/randgen/lib/GenTest/Mixer/
  tests/randgen/lib/GenTest/Mixer.pm
  tests/randgen/lib/GenTest/Properties.pm
  tests/randgen/lib/GenTest/Random.pm
  tests/randgen/lib/GenTest/Reporter/
  tests/randgen/lib/GenTest/Reporter.pm
  tests/randgen/lib/GenTest/Reporter/AriaDoubleRecovery.pm
  tests/randgen/lib/GenTest/Reporter/Backtrace.pm
  tests/randgen/lib/GenTest/Reporter/BackupAndRestore.pm
  tests/randgen/lib/GenTest/Reporter/BackupAndRestoreInvariant.pm
  tests/randgen/lib/GenTest/Reporter/BackupInterop.pm
  tests/randgen/lib/GenTest/Reporter/CloneSlave.pm
  tests/randgen/lib/GenTest/Reporter/CloneSlaveXtrabackup.pm
  tests/randgen/lib/GenTest/Reporter/DatabaseConsistency.pm
  tests/randgen/lib/GenTest/Reporter/Deadlock.pm
  tests/randgen/lib/GenTest/Reporter/DrizzleInnoTrxLog.pm
  tests/randgen/lib/GenTest/Reporter/DrizzleInnoTrxLogCrashRecovery.pm
  tests/randgen/lib/GenTest/Reporter/DrizzleRecovery.pm
  tests/randgen/lib/GenTest/Reporter/DrizzleRecoveryConsistency.pm
  tests/randgen/lib/GenTest/Reporter/DrizzleSlavePlugin.pm
  tests/randgen/lib/GenTest/Reporter/DrizzleSlavePluginCrashRecover.pm
  tests/randgen/lib/GenTest/Reporter/DrizzleTransactionLog.pm
  tests/randgen/lib/GenTest/Reporter/ErrorLog.pm
  tests/randgen/lib/GenTest/Reporter/ErrorLogAlarm.pm
  tests/randgen/lib/GenTest/Reporter/LockTableKiller.pm
  tests/randgen/lib/GenTest/Reporter/MemoryUsage.pm
  tests/randgen/lib/GenTest/Reporter/MySQLClient.pm
  tests/randgen/lib/GenTest/Reporter/QueryTimeout.pm
  tests/randgen/lib/GenTest/Reporter/Recovery.pm
  tests/randgen/lib/GenTest/Reporter/RecoveryConsistency.pm
  tests/randgen/lib/GenTest/Reporter/ReplicationAnalyzeTable.pm
  tests/randgen/lib/GenTest/Reporter/ReplicationConnectionKiller.pm
  tests/randgen/lib/GenTest/Reporter/ReplicationConsistency.pm
  tests/randgen/lib/GenTest/Reporter/ReplicationLogFlusher.pm
  tests/randgen/lib/GenTest/Reporter/ReplicationSemiSync.pm
  tests/randgen/lib/GenTest/Reporter/ReplicationThreadRestarter.pm
  tests/randgen/lib/GenTest/Reporter/Shutdown.pm
  tests/randgen/lib/GenTest/Reporter/ValgrindXMLErrors.pm
  tests/randgen/lib/GenTest/Reporter/WinPackage.pm
  tests/randgen/lib/GenTest/ReporterManager.pm
  tests/randgen/lib/GenTest/Result.pm
  tests/randgen/lib/GenTest/Server/
  tests/randgen/lib/GenTest/SimPipe/
  tests/randgen/lib/GenTest/SimPipe/DBObject.pm
  tests/randgen/lib/GenTest/SimPipe/Oracle/
  tests/randgen/lib/GenTest/SimPipe/Oracle.pm
  tests/randgen/lib/GenTest/SimPipe/Oracle/Crash.pm
  tests/randgen/lib/GenTest/SimPipe/Oracle/FullScan.pm
  tests/randgen/lib/GenTest/SimPipe/Oracle/TwiceSporadic.pm
  tests/randgen/lib/GenTest/SimPipe/Testcase.pm
  tests/randgen/lib/GenTest/Simplifier/
  tests/randgen/lib/GenTest/Simplifier/Grammar.pm
  tests/randgen/lib/GenTest/Simplifier/Mysqltest.pm
  tests/randgen/lib/GenTest/Simplifier/SQL.pm
  tests/randgen/lib/GenTest/Simplifier/Tables.pm
  tests/randgen/lib/GenTest/Simplifier/Test.pm
  tests/randgen/lib/GenTest/Stack/
  tests/randgen/lib/GenTest/Stack/Stack.pm
  tests/randgen/lib/GenTest/Stack/StackFrame.pm
  tests/randgen/lib/GenTest/Statement.pm
  tests/randgen/lib/GenTest/Transform/
  tests/randgen/lib/GenTest/Transform.pm
  tests/randgen/lib/GenTest/Transform/ConvertLiteralsToSubqueries.pm
  tests/randgen/lib/GenTest/Transform/ConvertSubqueriesToViews.pm
  tests/randgen/lib/GenTest/Transform/Count.pm
  tests/randgen/lib/GenTest/Transform/DisableChosenPlan.pm
  tests/randgen/lib/GenTest/Transform/DisableIndexes.pm
  tests/randgen/lib/GenTest/Transform/DisableJoinCache.pm
  tests/randgen/lib/GenTest/Transform/Distinct.pm
  tests/randgen/lib/GenTest/Transform/DrizzleExecuteString.pm
  tests/randgen/lib/GenTest/Transform/DrizzleExecuteVariable.pm
  tests/randgen/lib/GenTest/Transform/Dummy.pm
  tests/randgen/lib/GenTest/Transform/ExecuteAsFunctionTwice.pm
  tests/randgen/lib/GenTest/Transform/ExecuteAsInsertSelect.pm
  tests/randgen/lib/GenTest/Transform/ExecuteAsPreparedTwice.pm
  tests/randgen/lib/GenTest/Transform/ExecuteAsSPTwice.pm
  tests/randgen/lib/GenTest/Transform/ExecuteAsSelectItem.pm
  tests/randgen/lib/GenTest/Transform/ExecuteAsTrigger.pm
  tests/randgen/lib/GenTest/Transform/ExecuteAsUnion.pm
  tests/randgen/lib/GenTest/Transform/ExecuteAsUpdateDelete.pm
  tests/randgen/lib/GenTest/Transform/ExecuteAsView.pm
  tests/randgen/lib/GenTest/Transform/ExecuteAsWhereSubquery.pm
  tests/randgen/lib/GenTest/Transform/FromSubquery.pm
  tests/randgen/lib/GenTest/Transform/Having.pm
  tests/randgen/lib/GenTest/Transform/InlineSubqueries.pm
  tests/randgen/lib/GenTest/Transform/InlineVirtualColumns.pm
  tests/randgen/lib/GenTest/Transform/LimitDecrease.pm
  tests/randgen/lib/GenTest/Transform/LimitIncrease.pm
  tests/randgen/lib/GenTest/Transform/OrderBy.pm
  tests/randgen/lib/GenTest/Transform/RemoveIndexHints.pm
  tests/randgen/lib/GenTest/Transform/SelectOption.pm
  tests/randgen/lib/GenTest/Transform/StraightJoin.pm
  tests/randgen/lib/GenTest/Translator/
  tests/randgen/lib/GenTest/Translator.pm
  tests/randgen/lib/GenTest/Translator/MysqlDML2ANSI.pm
  tests/randgen/lib/GenTest/Translator/MysqlDML2javadb.pm
  tests/randgen/lib/GenTest/Translator/MysqlDML2pgsql.pm
  tests/randgen/lib/GenTest/Translator/Mysqldump2ANSI.pm
  tests/randgen/lib/GenTest/Translator/Mysqldump2javadb.pm
  tests/randgen/lib/GenTest/Translator/Mysqldump2pgsql.pm
  tests/randgen/lib/GenTest/Validator/
  tests/randgen/lib/GenTest/Validator.pm
  tests/randgen/lib/GenTest/Validator/AbortOnSyntaxError.pm
  tests/randgen/lib/GenTest/Validator/DML.pm
  tests/randgen/lib/GenTest/Validator/DatabaseComparator.pm
  tests/randgen/lib/GenTest/Validator/DatabaseConsistency.pm
  tests/randgen/lib/GenTest/Validator/DrizzleErrorLogScan.pm
  tests/randgen/lib/GenTest/Validator/DrizzleTransformer.pm
  tests/randgen/lib/GenTest/Validator/Drizzledump.pm
  tests/randgen/lib/GenTest/Validator/DrizzledumpMigrate.pm
  tests/randgen/lib/GenTest/Validator/ErrorMessageCorruption.pm
  tests/randgen/lib/GenTest/Validator/ExecutionTimeComparator.pm
  tests/randgen/lib/GenTest/Validator/ExplainMatch.pm
  tests/randgen/lib/GenTest/Validator/ExplicitRollback.pm
  tests/randgen/lib/GenTest/Validator/Falcon.pm
  tests/randgen/lib/GenTest/Validator/FalconErrors.pm
  tests/randgen/lib/GenTest/Validator/Invariant.pm
  tests/randgen/lib/GenTest/Validator/Limit.pm
  tests/randgen/lib/GenTest/Validator/MarkErrorLog.pm
  tests/randgen/lib/GenTest/Validator/OptimizerTraceParser.pm
  tests/randgen/lib/GenTest/Validator/OrderBy.pm
  tests/randgen/lib/GenTest/Validator/QueryProperties.pm
  tests/randgen/lib/GenTest/Validator/RepeatableRead.pm
  tests/randgen/lib/GenTest/Validator/ReplicationSlaveStatus.pm
  tests/randgen/lib/GenTest/Validator/ReplicationWaitForSlave.pm
  tests/randgen/lib/GenTest/Validator/ResultsetComparator.pm
  tests/randgen/lib/GenTest/Validator/ResultsetComparator3.pm
  tests/randgen/lib/GenTest/Validator/ResultsetComparator3Simplify.pm
  tests/randgen/lib/GenTest/Validator/ResultsetComparatorSimplify.pm
  tests/randgen/lib/GenTest/Validator/ResultsetCorruption.pm
  tests/randgen/lib/GenTest/Validator/SelectStability.pm
  tests/randgen/lib/GenTest/Validator/Transformer.pm
  tests/randgen/lib/GenTest/Validator/Transformer2.pm
  tests/randgen/lib/GenTest/XML/
  tests/randgen/lib/GenTest/XML/BuildInfo.pm
  tests/randgen/lib/GenTest/XML/Environment.pm
  tests/randgen/lib/GenTest/XML/Report.pm
  tests/randgen/lib/GenTest/XML/Test.pm
  tests/randgen/lib/GenTest/XML/Transporter.pm
  tests/randgen/pb2combinations.pl
  tests/randgen/pb2gentest-new.pl
  tests/randgen/pb2gentest.pl
  tests/randgen/pb2runtest.pl
  tests/randgen/runall-new.pl
  tests/randgen/runall.pl
  tests/randgen/server.pl
  tests/randgen/simpipe-crash.pl
  tests/randgen/simpipe.pl
  tests/randgen/simplify-grammar_template.cfg
  tests/randgen/simplify-mysqltest_template-huge.cfg
  tests/randgen/simplify-mysqltest_template.cfg
  tests/randgen/t/
  tests/randgen/t/constant.t
  tests/randgen/t/gensql.t
  tests/randgen/t/gensql.yy
  tests/randgen/t/gentest.t
  tests/randgen/t/grammar-doubledefine.t.disabled
  tests/randgen/t/grammar-doubledefine.yy
  tests/randgen/t/grammar.t
  tests/randgen/t/prng.t
  tests/randgen/t/simplify-empty.t
  tests/randgen/t/simplify-empty.yy
  tests/randgen/t/simplify-grammar.t
  tests/randgen/t/simplify-grammar.yy
  tests/randgen/t/test.bat
  tests/randgen/tmp/
  tests/randgen/translateMysql.pl
  tests/randgen/unit/
  tests/randgen/unit/DBDVersion.pm
  tests/randgen/unit/ExecutorTest.pm
  tests/randgen/unit/FromGrammarTest.pm
  tests/randgen/unit/GendataTest.pm
  tests/randgen/unit/GendataTest.zz
  tests/randgen/unit/GrammarTest.pm
  tests/randgen/unit/IPC.pm
  tests/randgen/unit/IPC_P1.pm
  tests/randgen/unit/Metadata.pm
  tests/randgen/unit/ParseAllGrammars.pm
  tests/randgen/unit/README
  tests/randgen/unit/RQGRunner.pm
  tests/randgen/unit/RandomTest.pm
  tests/randgen/unit/Suite.pm
  tests/randgen/unit/TestMySQLServer.pm
  tests/randgen/unit/TestReplServer.pm
  tests/randgen/unit/TestScripts.pm
  tests/randgen/unit/testGrammar.yy
  tests/randgen/unit/testStack.yy
  tests/randgen/unit/unit.pl
  tests/randgen/util/
  tests/randgen/util/bughunt.pl
  tests/randgen/util/dump-test.pl
  tests/randgen/util/mask-grammar.pl
  tests/randgen/util/simplify-crash.pl
  tests/randgen/util/simplify-grammar.pl
  tests/randgen/util/simplify-mysqltest.pl
  tests/randgen/util/simplify-query-performance.pl
  tests/randgen/util/simplify-query.pl
  tests/randgen/util/simplify-sporadic.pl
  tests/randgen_tests/
  tests/randgen_tests/innodb_trx_log/
  tests/randgen_tests/innodb_trx_log/multi_thread1.cnf
  tests/randgen_tests/innodb_trx_log/multi_thread1_crash_recover.cnf
  tests/randgen_tests/innodb_trx_log/multi_thread1_mix.cnf
  tests/randgen_tests/innodb_trx_log/multi_thread2.cnf
  tests/randgen_tests/innodb_trx_log/multi_thread2_mix.cnf
  tests/randgen_tests/innodb_trx_log/multi_thread3.cnf
  tests/randgen_tests/innodb_trx_log/multi_thread3_mix.cnf
  tests/randgen_tests/innodb_trx_log/single_thread3.cnf
  tests/randgen_tests/innodb_trx_log/trx_ordering.cnf
  tests/randgen_tests/main/
  tests/randgen_tests/main/basic.cnf
  tests/randgen_tests/main/blob.cnf
  tests/randgen_tests/main/collations.cnf
  tests/randgen_tests/main/combinations.cnf
  tests/randgen_tests/main/create_drop.cnf
  tests/randgen_tests/main/database_consistency_after_recovery.disabled
  tests/randgen_tests/main/database_integrity_after_recovery.cnf
  tests/randgen_tests/main/drizzledump_restore.cnf
  tests/randgen_tests/main/drizzledump_restore_rand.cnf
  tests/randgen_tests/main/limit_compare.cnf
  tests/randgen_tests/main/many_indexes.cnf
  tests/randgen_tests/main/optimizer_subquery.cnf
  tests/randgen_tests/main/orderby_validator.disabled
  tests/randgen_tests/main/outer_join.cnf
  tests/randgen_tests/main/outer_join_portable.cnf
  tests/randgen_tests/main/repeatable_read.cnf
  tests/randgen_tests/main/select_stability_validator.cnf
  tests/randgen_tests/main/subquery.cnf
  tests/randgen_tests/main/subquery_semijoin.cnf
  tests/randgen_tests/main/subquery_semijoin_nested.cnf
  tests/randgen_tests/main/varchar.cnf
  tests/randgen_tests/slave_plugin/
  tests/randgen_tests/slave_plugin/multi_thread1.cnf
  tests/randgen_tests/slave_plugin/multi_thread1_crash_recover.cnf
  tests/randgen_tests/slave_plugin/multi_thread1_mix.cnf
  tests/randgen_tests/slave_plugin/multi_thread2.cnf
  tests/randgen_tests/slave_plugin/multi_thread2_mix.cnf
  tests/randgen_tests/slave_plugin/multi_thread3.cnf
  tests/randgen_tests/slave_plugin/multi_thread3_mix.cnf
  tests/randgen_tests/slave_plugin/single_thread3.cnf
  tests/randgen_tests/slave_plugin/trx_ordering.cnf
  tests/randgen_tests/trx_log/
  tests/randgen_tests/trx_log/multi_thread1.cnf
  tests/randgen_tests/trx_log/multi_thread1_mix.cnf
  tests/randgen_tests/trx_log/multi_thread2.cnf
  tests/randgen_tests/trx_log/multi_thread2_mix.cnf
  tests/randgen_tests/trx_log/multi_thread3.cnf
  tests/randgen_tests/trx_log/multi_thread3_mix.cnf
  tests/randgen_tests/trx_log/single_thread3.cnf
  tests/randgen_tests/trx_log/trx_ordering.cnf
  tests/sql-bench/
  tests/sql-bench/COPYING
  tests/sql-bench/Comments/
  tests/sql-bench/Comments/Access.crash-me
  tests/sql-bench/Comments/Adabas.crash-me
  tests/sql-bench/Comments/Empress.crash-me
  tests/sql-bench/Comments/FrontBase.benchmark
  tests/sql-bench/Comments/Informix.crash-me
  tests/sql-bench/Comments/interbase
  tests/sql-bench/Comments/mysql.benchmark
  tests/sql-bench/Comments/postgres.benchmark
  tests/sql-bench/Comments/postgres.crash-me
  tests/sql-bench/Data/
  tests/sql-bench/Data/ATIS/
  tests/sql-bench/Data/ATIS/aircraft.txt
  tests/sql-bench/Data/ATIS/airline.txt
  tests/sql-bench/Data/ATIS/airport.txt
  tests/sql-bench/Data/ATIS/airport_service.txt
  tests/sql-bench/Data/ATIS/city.txt
  tests/sql-bench/Data/ATIS/class_of_service.txt
  tests/sql-bench/Data/ATIS/code_description.txt
  tests/sql-bench/Data/ATIS/compound_class.txt
  tests/sql-bench/Data/ATIS/connect_leg.txt
  tests/sql-bench/Data/ATIS/date_day.txt
  tests/sql-bench/Data/ATIS/day_name.txt
  tests/sql-bench/Data/ATIS/dual_carrier.txt
  tests/sql-bench/Data/ATIS/fare.txt
  tests/sql-bench/Data/ATIS/fconnection.txt
  tests/sql-bench/Data/ATIS/flight.txt
  tests/sql-bench/Data/ATIS/flight_class.txt
  tests/sql-bench/Data/ATIS/flight_day.txt
  tests/sql-bench/Data/ATIS/flight_fare.txt
  tests/sql-bench/Data/ATIS/food_service.txt
  tests/sql-bench/Data/ATIS/ground_service.txt
  tests/sql-bench/Data/ATIS/month_name.txt
  tests/sql-bench/Data/ATIS/restrict_carrier.txt
  tests/sql-bench/Data/ATIS/restrict_class.txt
  tests/sql-bench/Data/ATIS/restriction.txt
  tests/sql-bench/Data/ATIS/state.txt
  tests/sql-bench/Data/ATIS/stop.txt
  tests/sql-bench/Data/ATIS/stop1.txt
  tests/sql-bench/Data/ATIS/time_interval.txt
  tests/sql-bench/Data/ATIS/time_zone.txt
  tests/sql-bench/Data/ATIS/transport.txt
  tests/sql-bench/Data/Wisconsin/
  tests/sql-bench/Data/Wisconsin/onek.data
  tests/sql-bench/Data/Wisconsin/tenk.data
  tests/sql-bench/Makefile.am
  tests/sql-bench/README
  tests/sql-bench/TODO
  tests/sql-bench/as3ap
  tests/sql-bench/bench-count-distinct
  tests/sql-bench/bench-init.pl
  tests/sql-bench/compare-results
  tests/sql-bench/copy-db
  tests/sql-bench/crash-me
  tests/sql-bench/example
  tests/sql-bench/example.bat
  tests/sql-bench/graph-compare-results
  tests/sql-bench/innotest1
  tests/sql-bench/innotest1a
  tests/sql-bench/innotest1b
  tests/sql-bench/innotest2
  tests/sql-bench/innotest2a
  tests/sql-bench/innotest2b
  tests/sql-bench/limits/
  tests/sql-bench/limits/Adabas.cfg
  tests/sql-bench/limits/Informix.cfg
  tests/sql-bench/limits/access.cfg
  tests/sql-bench/limits/access_odbc.cfg
  tests/sql-bench/limits/db2.cfg
  tests/sql-bench/limits/empress.cfg
  tests/sql-bench/limits/frontbase.cfg
  tests/sql-bench/limits/interbase-dialect1.cfg
  tests/sql-bench/limits/interbase-dialect3.cfg
  tests/sql-bench/limits/interbase-superserver.cfg
  tests/sql-bench/limits/interbase.cfg
  tests/sql-bench/limits/mimer.cfg
  tests/sql-bench/limits/ms-sql.cfg
  tests/sql-bench/limits/ms-sql65.cfg
  tests/sql-bench/limits/msql.cfg
  tests/sql-bench/limits/mysql-3.22.cfg
  tests/sql-bench/limits/mysql-3.23.cfg
  tests/sql-bench/limits/mysql-4.0.cfg
  tests/sql-bench/limits/mysql-4.1.cfg
  tests/sql-bench/limits/mysql.cfg
  tests/sql-bench/limits/oracle.cfg
  tests/sql-bench/limits/pg.cfg
  tests/sql-bench/limits/solid-nt4.cfg
  tests/sql-bench/limits/solid.cfg
  tests/sql-bench/limits/sybase.cfg
  tests/sql-bench/myisam.cnf
  tests/sql-bench/output/
  tests/sql-bench/pwd.bat
  tests/sql-bench/run-all-tests
  tests/sql-bench/server-cfg
  tests/sql-bench/test-ATIS
  tests/sql-bench/test-alter-table
  tests/sql-bench/test-big-tables
  tests/sql-bench/test-connect
  tests/sql-bench/test-create
  tests/sql-bench/test-insert
  tests/sql-bench/test-select
  tests/sql-bench/test-transactions
  tests/sql-bench/test-wisconsin
  tests/sql-bench/uname.bat
  tests/sqlbench_tests/
  tests/sqlbench_tests/main/
  tests/sqlbench_tests/main/all_sqlbench_tests.cnf
  tests/sysbench_tests/
  tests/sysbench_tests/readonly/
  tests/sysbench_tests/readonly/concurrency_1024.cnf
  tests/sysbench_tests/readonly/concurrency_128.cnf
  tests/sysbench_tests/readonly/concurrency_16.cnf
  tests/sysbench_tests/readonly/concurrency_256.cnf
  tests/sysbench_tests/readonly/concurrency_32.cnf
  tests/sysbench_tests/readonly/concurrency_512.cnf
  tests/sysbench_tests/readonly/concurrency_64.cnf
  tests/sysbench_tests/readwrite/
  tests/sysbench_tests/readwrite/concurrency_1024.cnf
  tests/sysbench_tests/readwrite/concurrency_128.cnf
  tests/sysbench_tests/readwrite/concurrency_16.cnf
  tests/sysbench_tests/readwrite/concurrency_256.cnf
  tests/sysbench_tests/readwrite/concurrency_32.cnf
  tests/sysbench_tests/readwrite/concurrency_512.cnf
  tests/sysbench_tests/readwrite/concurrency_64.cnf
added:
  tests/lib/util/sysbench_methods.py
  tests/qp_tests/sysbench/
  tests/qp_tests/sysbench/sysbench_readonly_test.py
  tests/test_tools/
renamed:
  tests/kewpie/drizzle_tests/ => tests/qp_tests/
  tests/kewpie/kewpie.py => tests/kewpie.py
  tests/kewpie/lib/modes/ => tests/lib/modes/
  tests/kewpie/lib/opts/ => tests/lib/opts/
  tests/kewpie/lib/server_mgmt/ => tests/lib/server_mgmt/
  tests/kewpie/lib/sys_mgmt/ => tests/lib/sys_mgmt/
  tests/kewpie/lib/test_mgmt/ => tests/lib/test_mgmt/
  tests/kewpie/lib/util/ => tests/lib/util/
  tests/kewpie/qp_data/ => tests/qp_data/
  tests/kewpie/randgen/ => tests/test_tools/randgen/
  tests/kewpie/sql-bench/ => tests/test_tools/sql-bench/
modified:
  .bzrignore
  tests/include.am
  tests/lib/modes/native/native_test_management.py
  tests/lib/opts/defaults.py
  tests/lib/opts/test_run_options.py
  tests/lib/test_mgmt/test_execution.py
  tests/kewpie.py
pending merge tips: (use -v to see all merge revisions)
  patrick crews 2012-05-31 Minor cleanup of redundant entry in tests/include.am

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/usr/bin/perl
2
 
# Copyright (C) 2000-2001, 2003 MySQL AB
3
 
#
4
 
# This library is free software; you can redistribute it and/or
5
 
# modify it under the terms of the GNU Library General Public
6
 
# License as published by the Free Software Foundation; version 2
7
 
# of the License.
8
 
#
9
 
# This library is distributed in the hope that it will be useful,
10
 
# but WITHOUT ANY WARRANTY; without even the implied warranty of
11
 
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12
 
# Library General Public License for more details.
13
 
#
14
 
# You should have received a copy of the GNU Library General Public
15
 
# License along with this library; if not, write to the Free
16
 
# Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
17
 
# MA 02111-1307, USA
18
 
#
19
 
# Test of selecting on keys that consist of many parts
20
 
#
21
 
##################### Standard benchmark inits ##############################
22
 
 
23
 
use Cwd;
24
 
use DBI;
25
 
use Getopt::Long;
26
 
use Benchmark;
27
 
 
28
 
$opt_loop_count=10000;
29
 
$opt_medium_loop_count=1000;
30
 
$opt_small_loop_count=10;
31
 
$opt_regions=6;
32
 
$opt_groups=100;
33
 
 
34
 
$pwd = cwd(); $pwd = "." if ($pwd eq '');
35
 
require "$pwd/bench-init.pl" || die "Can't read Configuration file: $!\n";
36
 
 
37
 
$columns=min($limits->{'max_columns'},500,($limits->{'query_size'}-50)/24,
38
 
             $limits->{'max_conditions'}/2-3);
39
 
 
40
 
if ($opt_small_test)
41
 
{
42
 
  $opt_loop_count/=10;
43
 
  $opt_medium_loop_count/=10;
44
 
  $opt_small_loop_count/=10;
45
 
  $opt_groups/=10;
46
 
}
47
 
 
48
 
print "Testing the speed of selecting on keys that consist of many parts\n";
49
 
print "The test-table has $opt_loop_count rows and the test is done with $columns ranges.\n\n";
50
 
 
51
 
####
52
 
####  Connect and start timeing
53
 
####
54
 
 
55
 
$dbh = $server->connect();
56
 
$start_time=new Benchmark;
57
 
 
58
 
####
59
 
#### Create needed tables
60
 
####
61
 
 
62
 
goto select_test if ($opt_skip_create);
63
 
 
64
 
print "Creating table\n";
65
 
$dbh->do("drop table bench1" . $server->{'drop_attr'});
66
 
 
67
 
do_many($dbh,$server->create("bench1",
68
 
                             ["region char(1) NOT NULL",
69
 
                              "idn integer NOT NULL",
70
 
                              "rev_idn integer NOT NULL",
71
 
                              "grp integer NOT NULL"],
72
 
                             ["primary key (region,idn)",
73
 
                              "unique (region,rev_idn)",
74
 
                              "unique (region,grp,idn)"]));
75
 
if ($opt_lock_tables)
76
 
{
77
 
  do_query($dbh,"LOCK TABLES bench1 WRITE");
78
 
}
79
 
 
80
 
if ($opt_fast && defined($server->{vacuum}))
81
 
{
82
 
  $server->vacuum(1,\$dbh);
83
 
}
84
 
 
85
 
####
86
 
#### Insert $opt_loop_count records with
87
 
#### region:    "A" -> "E"
88
 
#### idn:       0 -> count
89
 
#### rev_idn:   count -> 0,
90
 
#### grp:       distributed values 0 - > count/100
91
 
####
92
 
 
93
 
print "Inserting $opt_loop_count rows\n";
94
 
 
95
 
$loop_time=new Benchmark;
96
 
 
97
 
if ($opt_fast && $server->{transactions})
98
 
{
99
 
  $dbh->{AutoCommit} = 0;
100
 
}
101
 
 
102
 
$query="insert into bench1 values (";
103
 
$half_done=$opt_loop_count/2;
104
 
for ($id=0,$rev_id=$opt_loop_count-1 ; $id < $opt_loop_count ; $id++,$rev_id--)
105
 
{
106
 
  $grp=$id*3 % $opt_groups;
107
 
  $region=chr(65+$id%$opt_regions);
108
 
  do_query($dbh,"$query'$region',$id,$rev_id,$grp)");
109
 
  if ($id == $half_done)
110
 
  {                             # Test with different insert
111
 
    $query="insert into bench1 (region,idn,rev_idn,grp) values (";
112
 
  }
113
 
}
114
 
 
115
 
if ($opt_fast && $server->{transactions})
116
 
{
117
 
  $dbh->commit;
118
 
  $dbh->{AutoCommit} = 1;
119
 
}
120
 
 
121
 
$end_time=new Benchmark;
122
 
print "Time to insert ($opt_loop_count): " .
123
 
    timestr(timediff($end_time, $loop_time),"all") . "\n\n";
124
 
 
125
 
if ($opt_lock_tables)
126
 
{
127
 
  do_query($dbh,"UNLOCK TABLES");
128
 
}
129
 
 
130
 
if ($opt_fast && defined($server->{vacuum}))
131
 
{
132
 
  $server->vacuum(0,\$dbh,"bench1");
133
 
}
134
 
 
135
 
if ($opt_lock_tables)
136
 
{
137
 
  do_query($dbh,"LOCK TABLES bench1 WRITE");
138
 
}
139
 
 
140
 
####
141
 
#### Do some selects on the table
142
 
####
143
 
 
144
 
select_test:
145
 
 
146
 
if ($limits->{'group_functions'})
147
 
{
148
 
  my ($tmp); $tmp=1000;
149
 
  print "Test if the database has a query cache\n";
150
 
 
151
 
  # First ensure that the table is read into memory
152
 
  fetch_all_rows($dbh,"select sum(idn+$tmp),sum(rev_idn-$tmp) from bench1");
153
 
 
154
 
  $loop_time=new Benchmark;
155
 
  for ($tests=0 ; $tests < $opt_loop_count ; $tests++)
156
 
  {
157
 
    fetch_all_rows($dbh,"select sum(idn+100),sum(rev_idn-100) from bench1");
158
 
  }
159
 
  $end_time=new Benchmark;
160
 
  print "Time for select_cache ($opt_loop_count): " .
161
 
     timestr(timediff($end_time, $loop_time),"all") . "\n\n";
162
 
 
163
 
  # If the database has a query cache, the following loop should be much
164
 
  # slower than the previous loop
165
 
 
166
 
  $loop_time=new Benchmark;
167
 
  for ($tests=0 ; $tests < $opt_loop_count ; $tests++)
168
 
  {
169
 
    fetch_all_rows($dbh,"select sum(idn+$tests),sum(rev_idn-$tests) from bench1");
170
 
  }
171
 
  $end_time=new Benchmark;
172
 
  print "Time for select_cache2 ($opt_loop_count): " .
173
 
     timestr(timediff($end_time, $loop_time),"all") . "\n\n";
174
 
}
175
 
 
176
 
 
177
 
print "Testing big selects on the table\n";
178
 
$loop_time=new Benchmark;
179
 
$rows=0;
180
 
for ($i=0 ; $i < $opt_small_loop_count ; $i++)
181
 
{
182
 
  $grp=$i*11 % $opt_groups;
183
 
  $region=chr(65+$i%($opt_regions+1));  # One larger to test misses
184
 
  $rows+=fetch_all_rows($dbh,"select idn from bench1 where region='$region'");
185
 
  $rows+=fetch_all_rows($dbh,"select idn from bench1 where region='$region' and idn=$i");
186
 
  $rows+=fetch_all_rows($dbh,"select idn from bench1 where region='$region' and rev_idn=$i");
187
 
  $rows+=fetch_all_rows($dbh,"select idn from bench1 where region='$region' and grp=$grp");
188
 
  $rows+=fetch_all_rows($dbh,"select idn from bench1 where region>='B' and region<='C' and grp=$grp");
189
 
  $rows+=fetch_all_rows($dbh,"select idn from bench1 where region>='B' and region<='E' and grp=$grp");
190
 
  $rows+=fetch_all_rows($dbh,"select idn from bench1 where grp=$grp"); # This is hard
191
 
}
192
 
$count=$opt_small_loop_count*7;
193
 
 
194
 
$end_time=new Benchmark;
195
 
print "Time for select_big ($count:$rows): " .
196
 
    timestr(timediff($end_time, $loop_time),"all") . "\n";
197
 
 
198
 
# Test select with many OR's
199
 
 
200
 
$loop_time=new Benchmark;
201
 
$tmpvar=0;
202
 
$count=0;
203
 
$estimated=0;
204
 
$max_and_conditions=$limits->{'max_conditions'}/2;
205
 
$rows=0;
206
 
 
207
 
for ($i=0 ; $i < $opt_small_loop_count ; $i++)
208
 
{
209
 
  $region=chr(65+$i%($opt_regions+1));  # One larger to test out-of-regions
210
 
  $query="select * from bench1 where ";
211
 
  $or_part="grp = 1";
212
 
  $or_part2="region='A' and grp=1";
213
 
 
214
 
  for ($j=1 ; $j < $columns; $j++)
215
 
  {
216
 
    $tmpvar^= ((($tmpvar + 63) + $j)*3 % 100000);
217
 
    $tmp=$tmpvar % $opt_groups;
218
 
    $tmp_region=chr(65+$tmpvar%$opt_regions);
219
 
    $or_part.=" or grp=$tmp";
220
 
    if ($j < $max_and_conditions)
221
 
    {
222
 
      $or_part2.=" or region='$tmp_region' and grp=$tmp";
223
 
    }
224
 
  }
225
 
  $or_part="region='$region' and ($or_part)";
226
 
 
227
 
# Same query, but use 'func_extra_in_num' instead.
228
 
  if ($limits->{'func_extra_in_num'})
229
 
  {
230
 
    $in_part=$or_part;
231
 
    $in_part=~ s/ = / IN \(/;
232
 
    $in_part=~ s/ or grp=/,/g;
233
 
    $in_part.= ")";
234
 
    defined($found=fetch_all_rows($dbh,$query . $in_part)) || die $DBI::errstr;
235
 
    $rows+=$found;
236
 
    $count++;
237
 
  }
238
 
  for ($j=0; $j < 10 ; $j++)
239
 
  {
240
 
    $rows+=fetch_all_rows($dbh,$query . $or_part);
241
 
    $rows+=fetch_all_rows($dbh,$query . $or_part2);
242
 
# Do it a little harder by setting a extra range
243
 
    $rows+=fetch_all_rows($dbh,"$query ($or_part) and idn < 50");
244
 
    $rows+=fetch_all_rows($dbh,"$query (($or_part) or (region='A' and grp < 10)) and region <='B'")
245
 
  }
246
 
  $count+=$j*4;
247
 
  $end_time=new Benchmark;
248
 
  last if ($estimated=predict_query_time($loop_time,$end_time,\$count,$i+1,
249
 
                                         $opt_small_loop_count));
250
 
}
251
 
 
252
 
print_time($estimated);
253
 
print " for select_range ($count:$rows): " .
254
 
  timestr(timediff($end_time, $loop_time),"all") . "\n";
255
 
 
256
 
#
257
 
# Testing MIN() and MAX() on keys
258
 
#
259
 
 
260
 
if ($limits->{'group_functions'} && $limits->{'order_by_unused'})
261
 
{
262
 
  $loop_time=new Benchmark;
263
 
  $count=0;
264
 
  $estimated=0;
265
 
  for ($tests=0 ; $tests < $opt_loop_count ; $tests++)
266
 
  {
267
 
    $count+=7;
268
 
    $grp=$tests*3 % $opt_groups;
269
 
    $region=chr(65+$tests % $opt_regions);
270
 
    if ($limits->{'group_func_sql_min_str'})
271
 
    {
272
 
      fetch_all_rows($dbh,"select min(region) from bench1");
273
 
      fetch_all_rows($dbh,"select max(region) from bench1");
274
 
      fetch_all_rows($dbh,"select min(region),max(region) from bench1");
275
 
    }
276
 
    fetch_all_rows($dbh,"select min(rev_idn) from bench1 where region='$region'");
277
 
 
278
 
    fetch_all_rows($dbh,"select max(grp) from bench1 where region='$region'");
279
 
    fetch_all_rows($dbh,"select max(idn) from bench1 where region='$region' and grp=$grp");
280
 
    if ($limits->{'group_func_sql_min_str'})
281
 
    {
282
 
      fetch_all_rows($dbh,"select max(region) from bench1 where region<'$region'");
283
 
    }
284
 
    $end_time=new Benchmark;
285
 
    last if ($estimated=predict_query_time($loop_time,$end_time,\$count,
286
 
                                           $tests+1, $opt_loop_count));
287
 
  }
288
 
  print_time($estimated);
289
 
  print " for min_max_on_key ($count): " .
290
 
    timestr(timediff($end_time, $loop_time),"all") . "\n";
291
 
 
292
 
  $loop_time=new Benchmark;
293
 
  $count=0;
294
 
  $estimated=0;
295
 
  for ($tests=0 ; $tests < $opt_loop_count ; $tests++)
296
 
  {
297
 
    $count+=5;
298
 
    $grp=$tests*3 % $opt_groups;
299
 
    $region=chr(65+$tests % $opt_regions);
300
 
    fetch_all_rows($dbh,"select count(*) from bench1 where region='$region'");
301
 
    fetch_all_rows($dbh,"select count(*) from bench1 where region='$region' and grp=$grp");
302
 
    fetch_all_rows($dbh,"select count(*) from bench1 where region>'$region'");
303
 
    fetch_all_rows($dbh,"select count(*) from bench1 where region<='$region'");
304
 
    fetch_all_rows($dbh,"select count(*) from bench1 where region='$region' and grp>$grp");
305
 
    $end_time=new Benchmark;
306
 
    last if ($estimated=predict_query_time($loop_time,$end_time,\$count,
307
 
                                           $tests+1, $opt_loop_count));
308
 
  }
309
 
  print_time($estimated);
310
 
  print " for count_on_key ($count): " .
311
 
    timestr(timediff($end_time, $loop_time),"all") . "\n\n";
312
 
  
313
 
}
314
 
 
315
 
if ($limits->{'group_functions'})
316
 
{
317
 
  $loop_time=new Benchmark;
318
 
  $rows=0;
319
 
  for ($i=0 ; $i < $opt_medium_loop_count ; $i++)
320
 
  {
321
 
    $rows+=fetch_all_rows($dbh,"select grp,count(*) from bench1 group by grp");
322
 
  }
323
 
  $end_time=new Benchmark;
324
 
  print "Time for count_group_on_key_parts ($i:$rows): " .
325
 
    timestr(timediff($end_time, $loop_time),"all") . "\n";
326
 
}
327
 
 
328
 
if ($limits->{'group_distinct_functions'})
329
 
{
330
 
  print "Testing count(distinct) on the table\n";
331
 
  $loop_time=new Benchmark;
332
 
  $rows=$estimated=$count=0;
333
 
  for ($i=0 ; $i < $opt_medium_loop_count ; $i++)
334
 
  {
335
 
    $count++;
336
 
    $rows+=fetch_all_rows($dbh,"select count(distinct region) from bench1");
337
 
    $end_time=new Benchmark;
338
 
    last if ($estimated=predict_query_time($loop_time,$end_time,\$count,$i+1,
339
 
                                           $opt_medium_loop_count));
340
 
  }
341
 
  print_time($estimated);
342
 
  print " for count_distinct_key_prefix ($count:$rows): " .
343
 
    timestr(timediff($end_time, $loop_time),"all") . "\n";
344
 
 
345
 
  $loop_time=new Benchmark;
346
 
  $rows=$estimated=$count=0;
347
 
  for ($i=0 ; $i < $opt_medium_loop_count ; $i++)
348
 
  {
349
 
    $count++;
350
 
    $rows+=fetch_all_rows($dbh,"select count(distinct grp) from bench1");
351
 
    $end_time=new Benchmark;
352
 
    last if ($estimated=predict_query_time($loop_time,$end_time,\$count,$i+1,
353
 
                                           $opt_medium_loop_count));
354
 
  }
355
 
  print_time($estimated);
356
 
  print " for count_distinct ($count:$rows): " .
357
 
    timestr(timediff($end_time, $loop_time),"all") . "\n";
358
 
 
359
 
#  Workaround mimer's behavior
360
 
  if ($limits->{'multi_distinct'})
361
 
  {
362
 
    $loop_time=new Benchmark;
363
 
    $rows=$estimated=$count=0;
364
 
    for ($i=0 ; $i < $opt_medium_loop_count ; $i++)
365
 
    {
366
 
      $count++;
367
 
      $rows+=fetch_all_rows($dbh,"select count(distinct grp),count(distinct rev_idn) from bench1");
368
 
      $end_time=new Benchmark;
369
 
      last if ($estimated=predict_query_time($loop_time,$end_time,\$count,$i+1,
370
 
                                           $opt_medium_loop_count));
371
 
    } 
372
 
    print_time($estimated);
373
 
    print " for count_distinct_2 ($count:$rows): " .
374
 
      timestr(timediff($end_time, $loop_time),"all") . "\n";
375
 
  }
376
 
 
377
 
  $loop_time=new Benchmark;
378
 
  $rows=$estimated=$count=0;
379
 
  for ($i=0 ; $i < $opt_medium_loop_count ; $i++)
380
 
  {
381
 
    $count++;
382
 
    $rows+=fetch_all_rows($dbh,"select region,count(distinct idn) from bench1 group by region");
383
 
    $end_time=new Benchmark;
384
 
    last if ($estimated=predict_query_time($loop_time,$end_time,\$count,$i+1,
385
 
                                           $opt_medium_loop_count));
386
 
  }
387
 
  print_time($estimated);
388
 
  print " for count_distinct_group_on_key ($count:$rows): " .
389
 
    timestr(timediff($end_time, $loop_time),"all") . "\n";
390
 
 
391
 
  $loop_time=new Benchmark;
392
 
  $rows=$estimated=$count=0;
393
 
  for ($i=0 ; $i < $opt_medium_loop_count ; $i++)
394
 
  {
395
 
    $count++;
396
 
    $rows+=fetch_all_rows($dbh,"select grp,count(distinct idn) from bench1 group by grp");
397
 
    $end_time=new Benchmark;
398
 
    last if ($estimated=predict_query_time($loop_time,$end_time,\$count,$i+1,
399
 
                                           $opt_medium_loop_count));
400
 
  }
401
 
  print_time($estimated);
402
 
  print " for count_distinct_group_on_key_parts ($count:$rows): " .
403
 
    timestr(timediff($end_time, $loop_time),"all") . "\n";
404
 
 
405
 
  $loop_time=new Benchmark;
406
 
  $rows=$estimated=$count=0;
407
 
  for ($i=0 ; $i < $opt_medium_loop_count ; $i++)
408
 
  {
409
 
    $count++;
410
 
    $rows+=fetch_all_rows($dbh,"select grp,count(distinct rev_idn) from bench1 group by grp");
411
 
    $end_time=new Benchmark;
412
 
    last if ($estimated=predict_query_time($loop_time,$end_time,\$count,$i+1,
413
 
                                           $opt_medium_loop_count));
414
 
  }
415
 
  print_time($estimated);
416
 
  print " for count_distinct_group ($count:$rows): " .
417
 
    timestr(timediff($end_time, $loop_time),"all") . "\n";
418
 
 
419
 
  $loop_time=new Benchmark;
420
 
  $rows=$estimated=$count=0;
421
 
  $test_count=$opt_medium_loop_count/10;
422
 
  for ($i=0 ; $i < $test_count ; $i++)
423
 
  {
424
 
    $count++;
425
 
    $rows+=fetch_all_rows($dbh,"select idn,count(distinct region) from bench1 group by idn");
426
 
    $end_time=new Benchmark;
427
 
    last if ($estimated=predict_query_time($loop_time,$end_time,\$count,$i+1,
428
 
                                           $test_count));
429
 
  }
430
 
  print_time($estimated);
431
 
  print " for count_distinct_big ($count:$rows): " .
432
 
    timestr(timediff($end_time, $loop_time),"all") . "\n";
433
 
}
434
 
 
435
 
####
436
 
#### End of benchmark
437
 
####
438
 
 
439
 
if ($opt_lock_tables)
440
 
{
441
 
  do_query($dbh,"UNLOCK TABLES");
442
 
}
443
 
if (!$opt_skip_delete)
444
 
{
445
 
  do_query($dbh,"drop table bench1" . $server->{'drop_attr'});
446
 
}
447
 
 
448
 
if ($opt_fast && defined($server->{vacuum}))
449
 
{
450
 
  $server->vacuum(0,\$dbh);
451
 
}
452
 
 
453
 
$dbh->disconnect;                               # close connection
454
 
 
455
 
end_benchmark($start_time);