Commit Graph

85 Commits

Author SHA1 Message Date
17125bad89 Merge branch '1.0' 2017-03-31 13:56:22 +03:00
fb7e62db24 Allow benchmarks to be specified as a module name, i.e. a require() argument. 2017-03-31 13:52:55 +03:00
b165b838b5 Merge branch '1.0' 2017-03-29 23:35:55 +03:00
1fc8326c0d Prevent compiler from optimizing memory loads/stores in the memory benchmark. 2017-03-29 23:33:58 +03:00
0adddc2b83 Merge branch '1.0' 2017-03-29 21:07:40 +03:00
a0658f09ce Memory benchmark optimizations.
Optimize the memory benchmark:
- get rid of the global mutex to calculate statistics
- remove if() and switch() branches on critical code paths
- align memory blocks to OS page size
- use native machine word size instead of 'int'
2017-03-29 21:02:07 +03:00
0a42ae1a92 Merge branch '1.0' 2017-03-29 14:16:52 +03:00
7fcbf2e025 Fix system ConcurrencyKit builds on ARMv6.
The problem reported for i686 in #118 also affects ARMv6. Fixed by
allowing workarounds in sb_ck_pr.h to work on architectures other than
i686.
2017-03-29 14:14:19 +03:00
b33e546fcf Add --luajit-cmd option which is equivalent to 'luajit -j'. 2017-03-29 00:21:45 +03:00
8914ed1a18 Merge branch '1.0' 2017-03-17 11:58:54 +03:00
154335edf6 Rename sb_option_copy() to sb_opt_copy() for consistency with other functions. 2017-03-17 11:57:39 +03:00
03c7eb5c29 Fix #123: Table already exists error on prepare
When the deprecated --num-threads option was used in OLTP prepare, the
sysbench.opt.threads variable exported to Lua scripts contained the
default value of 1, even though the actual number of threads created by
sysbench was higher. Which led to unexpected fireworks.

Now the deprecated options override the correspond sysbench.opt.*
variables when used.
2017-03-17 11:53:04 +03:00
2d2ad20cb9 Merge branch '1.0' 2017-03-13 14:40:34 +03:00
d2bc5d50f8 Fix warning in 32-bit builds. 2017-03-13 14:38:25 +03:00
05f2a8e87b Fix #118: Build fails on i686 when using system ck
Provide compatibility wrappers for system (i.e. distribution-provided)
ConcurrencyKit on i386. Unlike bundled ConcurrencyKit, older versions
that may be provided by distributions do not support CK_USE_CC_BUILTINS,
which makes implementing 64-bit atomics impossible on x86 (32-bit).

Detect if 64-bit atomics are not provided at compile stage and if so,
resort to GCC builtin implementations.
2017-03-13 14:38:19 +03:00
ce7770c626 Merge branch '1.0' 2017-03-12 10:46:59 +03:00
89ab44d50e Fix #119 (oltp_insert.lua + --auto-inc=0 fails)
Fix oltp_insert.lua when run with --auto-inc disabled. Add regression tests.
2017-03-12 10:45:03 +03:00
6c7c13913d Fix -Wformat warnings in sb_fileio.c. 2017-03-10 11:43:25 +03:00
2343e4bbe2 Merge branch '1.0' 2017-02-28 12:30:28 +03:00
9bd33c7e41 Fix grammar in help text for --skip-trx. 2017-02-28 12:30:10 +03:00
b4f3d22c38 Build on Illumos 2017-02-26 12:02:33 +03:00
70a969defb Build on Illumos 2017-02-26 03:07:19 -05:00
59d32c65c3 Merge branch '1.0' 2017-02-25 20:29:36 +03:00
1d40ad0e1c Optimize random string generation in OLTP_RW.
Avoid Lua string management in OLTP_RW by introducing a new sql_param
method: set_rand_str(). Which calls sb_rand_str() in C code with a given
template string and a pre-allocated result buffer. In oltp_common.lua,
use set_rand_str() instead of allocating a new Lua string each time we
need a random string parameter for a prepared statement.
2017-02-25 19:57:55 +03:00
073a1b445f Add --warmup-time option. 2017-02-15 15:53:50 +03:00
4136fd6b75 Merge branch '1.0' 2017-02-14 21:46:39 +03:00
ba8b1d0781 Get rid of timers_mutex, improve --report-checkpoints scalability. 2017-02-14 20:53:08 +03:00
eeb7fa19c4 Fix a syntax error in oltp_common.lua. 2017-02-14 14:23:37 +03:00
800f2e90e6 Rename the 'prewarm' command to 'warmup'. Keep the old name as an alias. 2017-02-14 14:09:52 +03:00
57b6f9d2b6 Correct a diagnostic message on index creation. 2017-02-08 22:46:28 +03:00
9c87d39700 Grammar fixes in a comment. 2017-02-08 21:45:51 +03:00
08e5b4fa9e Add a new line to an error message. 2017-02-02 23:32:46 +03:00
8359466dc7 Properly set the allocated array to 0 in sb_alloc_per_thread_array(). 2017-02-02 17:03:26 +03:00
d156b9b21f Exclude queries executed by background threads from statistic reports. 2017-02-02 15:25:54 +03:00
40c14789aa Export mysql_drv_reconnect() to Lua SQL API. 2017-02-02 10:59:51 +03:00
9fdec9dccf Rename sysbench.option_defs to sysbench.cmdline.options. 2017-02-01 19:31:53 +03:00
fdebeaffc3 Throw a more descriptive error when multiple DB drivers are available. 2017-02-01 19:03:13 +03:00
4a755b1c5d Make the default intermediate reports format a little more terse. 2017-02-01 18:57:37 +03:00
7f56e219f7 Rename --num-threads to --threads.
Accept the old name with a warning for compatibility.
2017-02-01 17:42:39 +03:00
788fcbb30b Rename --max-requests to --events, --max-time to --time.
Print warnings if old names are used, but accept them for compatibility.
2017-02-01 17:20:22 +03:00
8f227f64b3 Rename --tx-rate to --rate, keep --tx-rate as a deprecated alias. 2017-02-01 16:28:14 +03:00
2a3ca019cb if the test name on the command line is "-", read Lua script from the standard input. 2017-02-01 10:56:05 +03:00
d017ae0c85 Support the deprecated --test option for compatibility with legacy scripts. 2017-02-01 10:10:27 +03:00
443a60bd28 Export histogram API to Lua. 2017-01-31 20:51:47 +03:00
5ad977b50f Fix typo in sysbench.compat.lua. 2017-01-31 13:44:04 +03:00
a734561fa5 Check for command in OLTP scripts.
Check for the required command argument in oltp_common.lua and provide
list of supported commands when missing.
2017-01-31 13:35:41 +03:00
094c15d555 Make sysbench.cmdline.argv available from the master thread. 2017-01-31 13:21:57 +03:00
abb3f55a5f Export command line arguments + command name to sysbench.cmdline. 2017-01-31 12:52:59 +03:00
c1803286b0 Silence compiler warnings. 2017-01-30 21:45:58 +03:00
efb168643f Reimplement tx_rate with lockless bounded FIFO provided by ConcurrencyKit. 2017-01-30 21:26:55 +03:00