Commit Graph

876 Commits

Author SHA1 Message Date
126cd10486 Improve formatting. 2017-04-01 17:21:55 +03:00
19f2dc73e2 Fix #114: building sysbench on Windows
Document the current Windows (non)support status and WSL as a
recommended way to build on Windows 10.
2017-04-01 17:17:04 +03:00
84bec5e223 Improved structure + shell decorates in build instructions. 2017-04-01 16:57:51 +03:00
e1cd610c0c Fix #102: Document build requirements
Document build requirements for Debian/Ubuntu, RedHat/CentOS and macOS.
2017-04-01 16:49:27 +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
1fc8326c0d Prevent compiler from optimizing memory loads/stores in the memory benchmark. 2017-03-29 23:33:58 +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
d514625849 Override the default time limit in test_memory.t to improve stability. 2017-03-29 16:43:35 +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
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
7777ff5d85 Fix #121: make buildhost cpudetection optional
Don't fail with an error when --without-gcc-arch is specified, or CPU
autodetection fails.
2017-03-14 20:39:36 +03:00
75ad51a2b1 Release 1.0.4. 2017-03-13 15:05:12 +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
df9217e43a Do not auto-detect -march if already specified in CFLAGS by the user. 2017-03-13 12:07:26 +03:00
956d12996e Fix "PYTHONPATH: unbound variable" error in test_run.sh. 2017-03-12 12:03:21 +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
6b83cb3af1 Fix bundled LuaJIT builds on 32-bit x86 where LJ_TARGET_JUMPRANGE is not defined. 2017-03-09 23:52:21 +03:00
355f6331d0 Define cram-specific variables in AM_TESTS_ENVIRONMENT. 2017-03-05 21:59:38 +03:00
ff51db425d Add third_party/cram to EXTRA_DIST in the top-level Makefile.am. 2017-03-05 21:42:43 +03:00
0bfe606faa Don't install cram in .travis.yml, use the bundled one instead. 2017-03-05 21:16:17 +03:00
f9315b637d Bundle cram and make it used automatically by 'make test'. 2017-03-05 21:14:24 +03:00
9bd33c7e41 Fix grammar in help text for --skip-trx. 2017-02-28 12:30:10 +03:00
351ccc88f7 Update bundled ConcurrencyKit to 0.6.0. 2017-02-28 08:18:11 +03:00
db1da5b1d8 Pull ax_gcc_archgflag.m4 from upstream. 2017-02-27 21:48:14 +03:00
6b60ce7c8b Add a release badge to README.md. 2017-02-26 19:06:44 +03:00
dc28fd86a4 README.md cleanup. 2017-02-26 18:34:43 +03:00
ca0cdffdda Release 1.0.3. 2017-02-26 13:12:24 +03:00
b4f3d22c38 Build on Illumos 2017-02-26 12:02:33 +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
a62d26da6f Merge from akopytov/LuaJIT up to commit fc9893e. 2017-02-25 18:43:26 +03:00
b0fcdf5a0c Merge from LuaJIT upstream up to commit 5aa0201. 2017-02-19 19:17:54 +03:00
ffcc8084f2 Release 1.0.2. 2017-02-17 12:41:27 +03:00
f5f8595876 Fix documented defaults for --events and --time. 2017-02-15 16:56:28 +03:00
ba8b1d0781 Get rid of timers_mutex, improve --report-checkpoints scalability. 2017-02-14 20:53:08 +03:00
24fa9b2a04 Do not require Autoconf 2.64, as CentOS 6 provides 2.63.
The only required bit from Autoconf 2.64 is AS_VAR_IF. Which is in fact
provided, but just in case there is now a fallback implementation in
m4/sb_autoconf_compat.m4.
2017-02-13 21:55:23 +03:00
731b5e7aa2 Add snapcraft.yaml to .gitignore. 2017-02-09 10:52:50 +03:00
1654ef0a16 Fix OLTP regression tests. 2017-02-09 10:52:26 +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
7fe53e4ffb Convert snapcraft.yaml to snapcraft.yaml.in to update version automatically. 2017-02-07 20:40:21 +03:00
db2f6588e2 Add snap packaging
Add snapcraft.yaml for use with the snapcraft tool for
producing snap packages for sysbench.

For more details on snappy and snap packages see:

  https://snapcraft.io
2017-02-07 20:33:04 +03:00
76aa8fd3cb Bump version number to 1.0.1. 2017-02-06 00:07:31 +01:00
e71dcd79ac Update ChangeLog for 1.0.1. 2017-02-05 22:49:44 +01:00
21d87e792e Run OLTP RW regression tests with a single thread for more deterministic results. 2017-02-05 11:22:47 +01:00
481a9fa34a Fixes #105: 1.0.0 clock_gettime runtime failure built with macOS 10.11 and Xcode 8.x
XCode 8 SDK declares clock_gettime() but macOS 10.11 and earlier do not
actually implement it. So just checking for a clock_gettime()
declaration in configure is insufficient.

Instead, do AC_SEARCH_LIBS first to check if -lrt is required, then use
AC_CHECK_FUNCS to check for clock_gettime() availability.
2017-02-05 10:31:41 +01:00
f964f5bc1c Update ChangeLog for the 1.0.0 release. 2017-02-03 13:29:17 +03:00
08e5b4fa9e Add a new line to an error message. 2017-02-02 23:32:46 +03:00