Hello community,

here is the log from the commit of package sysbench for openSUSE:Factory 
checked in at 2017-06-12 15:28:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sysbench (Old)
 and      /work/SRC/openSUSE:Factory/.sysbench.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "sysbench"

Mon Jun 12 15:28:29 2017 rev:13 rq:499635 version:1.0.7

Changes:
--------
--- /work/SRC/openSUSE:Factory/sysbench/sysbench.changes        2017-05-17 
17:19:28.567581921 +0200
+++ /work/SRC/openSUSE:Factory/.sysbench.new/sysbench.changes   2017-06-12 
15:28:30.589548139 +0200
@@ -1,0 +2,11 @@
+Tue May 30 08:43:58 UTC 2017 - [email protected]
+
+- Update to version 1.0.7:
+  * Ubuntu Zesty added to package build matrix
+  * fixed GH-130: Mutex Benchmark Documentation
+  * fixed latency reports in the --rate mode
+  * fixed compiler warnings when building against MySQL 8.0 client
+    libraries
+- Drop examples as they are no longer compliant with current syntax
+
+-------------------------------------------------------------------

Old:
----
  sysbench-1.0.6.tar.gz
  sysbench-example-tests.tar.bz2

New:
----
  sysbench-1.0.7.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ sysbench.spec ++++++
--- /var/tmp/diff_new_pack.8uLLPZ/_old  2017-06-12 15:28:31.529415589 +0200
+++ /var/tmp/diff_new_pack.8uLLPZ/_new  2017-06-12 15:28:31.533415024 +0200
@@ -16,26 +16,22 @@
 #
 
 
-%if 0%{?is_opensuse}
-%bcond_with  sysbench_tests
-%endif
 Name:           sysbench
-Version:        1.0.6
+Version:        1.0.7
 Release:        0
 Summary:        A MySQL benchmarking tool
 License:        GPL-2.0
 Group:          System/Benchmark
 Url:            https://github.com/akopytov/sysbench
-Source0:        
https://github.com/akopytov/sysbench/archive/1.0.6.tar.gz#/%{name}-%{version}.tar.gz
-Source1:        %{name}-example-tests.tar.bz2
+Source0:        
https://github.com/akopytov/sysbench/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
 BuildRequires:  autoconf
 BuildRequires:  automake
+BuildRequires:  cram
 BuildRequires:  docbook
 BuildRequires:  docbook-xsl-stylesheets
 BuildRequires:  libaio-devel
 BuildRequires:  libtool
 BuildRequires:  libxslt-tools
-BuildRequires:  libxslt-tools
 BuildRequires:  mysql-devel
 BuildRequires:  openssl-devel
 BuildRequires:  pkgconfig
@@ -43,10 +39,6 @@
 BuildRequires:  vim
 BuildRequires:  pkgconfig(ck)
 BuildRequires:  pkgconfig(luajit)
-BuildRoot:      %{_tmppath}/%{name}-%{version}-build
-%if %{with sysbench_tests}
-BuildRequires:  cram
-%endif
 
 %description
 This benchmark was designed for identifying basic system parameters, as
@@ -55,7 +47,6 @@
 
 %prep
 %setup -q
-%setup -q -T -D -a 1
 
 %build
 autoreconf -fiv
@@ -66,17 +57,11 @@
   --with-pgsql
 make %{?_smp_mflags} V=1
 
-%if %{with sysbench_tests}
 %check
 make %{?_smp_mflags} check
-%endif
 
 %install
 %make_install
-install -D -p -m 0755 sysbench-example-tests/sysbench-example-test \
-  %{buildroot}%{_datadir}/sysbench/sysbench-example-test
-install -D -p -m 0755 sysbench-example-tests/sysbench-example-all-tests \
-  %{buildroot}%{_datadir}/sysbench/sysbench-example-all-tests
 rm -rf %{buildroot}%{_datadir}/doc/sysbench
 
 %files

++++++ sysbench-1.0.6.tar.gz -> sysbench-1.0.7.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.6/.travis.yml 
new/sysbench-1.0.7/.travis.yml
--- old/sysbench-1.0.6/.travis.yml      2017-04-13 22:38:56.000000000 +0200
+++ new/sysbench-1.0.7/.travis.yml      2017-05-15 16:09:33.000000000 +0200
@@ -36,12 +36,14 @@
       - OS=ubuntu DIST=trusty
       - OS=ubuntu DIST=xenial
       - OS=ubuntu DIST=yakkety
+      - OS=ubuntu DIST=zesty
       - OS=debian DIST=wheezy
       - OS=debian DIST=jessie
       - OS=ubuntu DIST=precise ARCH=i386
       - OS=ubuntu DIST=trusty ARCH=i386
       - OS=ubuntu DIST=xenial ARCH=i386
       - OS=ubuntu DIST=yakkety ARCH=i386
+      - OS=ubuntu DIST=zesty ARCH=i386
       - OS=debian DIST=wheezy ARCH=i386
       - OS=debian DIST=jessie ARCH=i386
 
@@ -63,6 +65,8 @@
       compiler: clang
     - env: OS=ubuntu DIST=yakkety
       compiler: clang
+    - env: OS=ubuntu DIST=zesty
+      compiler: clang
     - env: OS=debian DIST=wheezy
       compiler: clang
     - env: OS=debian DIST=jessie
@@ -77,6 +81,8 @@
       compiler: clang
     - env: OS=ubuntu DIST=yakkety ARCH=i386
       compiler: clang
+    - env: OS=ubuntu DIST=zesty ARCH=i386
+      compiler: clang
     - env: OS=debian DIST=wheezy ARCH=i386
       compiler: clang
     - env: OS=debian DIST=jessie ARCH=i386
@@ -99,6 +105,8 @@
       os: osx
     - env: OS=ubuntu DIST=yakkety
       os: osx
+    - env: OS=ubuntu DIST=zesty
+      os: osx
     - env: OS=debian DIST=wheezy
       os: osx
     - env: OS=debian DIST=jessie
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.6/ChangeLog new/sysbench-1.0.7/ChangeLog
--- old/sysbench-1.0.6/ChangeLog        2017-04-13 22:38:56.000000000 +0200
+++ new/sysbench-1.0.7/ChangeLog        2017-05-15 16:09:33.000000000 +0200
@@ -1,3 +1,12 @@
+2017-05-15  Alexey Kopytov  <[email protected]>
+
+       * version 1.0.7
+       * Ubuntu Zesty added to package build matrix
+       * fixed GH-130: Mutex Benchmark Documentation
+       * fixed latency reports in the --rate mode
+       * fixed compiler warnings when building against MySQL 8.0 client
+       libraries
+
 2017-04-13  Alexey Kopytov  <[email protected]>
 
        * version 1.0.6
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.6/README.md new/sysbench-1.0.7/README.md
--- old/sysbench-1.0.6/README.md        2017-04-13 22:38:56.000000000 +0200
+++ new/sysbench-1.0.7/README.md        2017-05-15 16:09:33.000000000 +0200
@@ -5,6 +5,29 @@
 [![Coverage Status][coveralls-badge]][coveralls-url]
 [![License][license-badge]][license-url]
 
+<!-- markdown-toc start - Don't edit this section. Run M-x 
markdown-toc-generate-toc again -->
+**Table of Contents**
+
+- [sysbench](#sysbench)
+    - [Features](#features)
+- [Installing from Binary Packages](#installing-from-binary-packages)
+    - [Linux](#linux)
+    - [macOS](#macos)
+    - [Windows](#windows)
+- [Building and Installing From Source](#building-and-installing-from-source)
+    - [Build Requirements](#build-requirements)
+        - [Windows](#windows)
+        - [Debian/Ubuntu](#debianubuntu)
+        - [RHEL/CentOS](#rhelcentos)
+        - [Fedora](#fedora)
+        - [macOS](#macos)
+    - [Build and Install](#build-and-install)
+- [Usage](#usage)
+    - [General syntax](#general-syntax)
+    - [General command line options](#general-command-line-options)
+
+<!-- markdown-toc end -->
+
 # sysbench
 
 sysbench is a scriptable multi-threaded benchmark tool based on
@@ -48,7 +71,7 @@
 
 Quick install instructions:
 
-- Debian/Ubunu
+- Debian/Ubuntu
   ``` shell
   curl -s 
https://packagecloud.io/install/repositories/akopytov/sysbench/script.deb.sh | 
sudo bash
   sudo apt -y install sysbench
@@ -75,15 +98,16 @@
 ```
 
 ## Windows
-As of sysbench 1.0 support for native Windows builds was
-dropped. It may be re-introduced in later versions. Currently, the
-recommended way to obtain sysbench on Windows is using
+As of sysbench 1.0 support for native Windows builds was dropped. It may
+be re-introduced in later releases. Currently, the recommended way to
+obtain sysbench on Windows is
+using
 [Windows Subsystem for Linux available in Windows 
10](https://msdn.microsoft.com/en-us/commandline/wsl/about).
 
-After installing WSL and getting into bash prompt on Windows, following
-Debian/Ubuntu installation instructions is sufficient. Alternatively, one can
-use WSL build and install sysbench from source, or use an older sysbench
-release to build a native binary.
+After installing WSL and getting into he bash prompt on Windows
+following Debian/Ubuntu installation instructions is
+sufficient. Alternatively, one can use WSL to build and install sysbench
+from source, or use an older sysbench release to build a native binary.
 
 # Building and Installing From Source
 
@@ -103,7 +127,7 @@
 
 After installing WSL and getting into bash prompt on Windows, following
 Debian/Ubuntu build instructions is sufficient. Alternatively, one can
-build and use sysbench 0.5 natively for Windows.
+build and use an older 0.5 release on Windows.
 
 ### Debian/Ubuntu
 ``` shell
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.6/configure.ac 
new/sysbench-1.0.7/configure.ac
--- old/sysbench-1.0.6/configure.ac     2017-04-13 22:38:56.000000000 +0200
+++ new/sysbench-1.0.7/configure.ac     2017-05-15 16:09:33.000000000 +0200
@@ -1,7 +1,7 @@
 # Process this file with autoconf to produce a configure script.
 
 AC_PREREQ(2.63)
-AC_INIT([sysbench],[1.0.6],[https://github.com/akopytov/sysbench/issues],
+AC_INIT([sysbench],[1.0.7],[https://github.com/akopytov/sysbench/issues],
         [sysbench], [https://github.com/akopytov/sysbench])
 AC_CONFIG_AUX_DIR([config])
 # Setting CFLAGS here prevents AC_CANONICAL_TARGET from injecting them
@@ -329,6 +329,10 @@
 fi
 
 AC_CHECK_SIZEOF(size_t)
+AC_CHECK_SIZEOF(bool,,
+  [
+    #include <stdbool.h>
+  ])
 
 # Checks for library functions.
 AC_FUNC_MMAP
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.6/rpm/sysbench.spec 
new/sysbench-1.0.7/rpm/sysbench.spec
--- old/sysbench-1.0.6/rpm/sysbench.spec        2017-04-13 22:38:56.000000000 
+0200
+++ new/sysbench-1.0.7/rpm/sysbench.spec        2017-05-15 16:09:33.000000000 
+0200
@@ -75,13 +75,13 @@
 
 
 %changelog
-* Thu Apr 09 2017 Alexey Kopytov <[email protected]> - 1.0.5-1
+* Sun Apr 09 2017 Alexey Kopytov <[email protected]> - 1.0.5-1
 - Add --without-gcc-arch to configure flags
 
-* Thu Apr 08 2017 Alexey Kopytov <[email protected]> - 1.0.5-1
+* Sat Apr 08 2017 Alexey Kopytov <[email protected]> - 1.0.5-1
 - Workarounds for make_build and license macros which are not available on EL 
6.
 
-* Thu Apr 07 2017 Alexey Kopytov <[email protected]> - 1.0.5-1
+* Fri Apr 07 2017 Alexey Kopytov <[email protected]> - 1.0.5-1
 - Depend on mysql-devel rather than mariadb-devel on EL 6.
 - Use bundled cram for tests, because it's not available on EL 6.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.6/scripts/buildpack.sh 
new/sysbench-1.0.7/scripts/buildpack.sh
--- old/sysbench-1.0.6/scripts/buildpack.sh     2017-04-13 22:38:56.000000000 
+0200
+++ new/sysbench-1.0.7/scripts/buildpack.sh     2017-05-15 16:09:33.000000000 
+0200
@@ -54,6 +54,7 @@
     "ubuntu trusty x86_64"
     "ubuntu xenial x86_64"
     "ubuntu yakkety x86_64"
+    "ubuntu zesty x86_64"
     "debian wheezy x86_64"
     "debian jessie x86_64"
 )
@@ -63,6 +64,7 @@
     "ubuntu trusty i386"
     "ubuntu xenial i386"
     "ubuntu yakkety i386"
+    "ubuntu zesty i386"
     "debian wheezy i386"
     "debian jessie i386"
 )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.6/src/drivers/mysql/drv_mysql.c 
new/sysbench-1.0.7/src/drivers/mysql/drv_mysql.c
--- old/sysbench-1.0.6/src/drivers/mysql/drv_mysql.c    2017-04-13 
22:38:56.000000000 +0200
+++ new/sysbench-1.0.7/src/drivers/mysql/drv_mysql.c    2017-05-15 
16:09:33.000000000 +0200
@@ -548,6 +548,27 @@
 }
 
 
+static void convert_to_mysql_bind(MYSQL_BIND *mybind, db_bind_t *bind)
+{
+  mybind->buffer_type = get_mysql_bind_type(bind->type);
+  mybind->buffer = bind->buffer;
+  mybind->buffer_length = bind->max_len;
+  mybind->length = bind->data_len;
+  /*
+    Reuse the buffer passed by the caller to avoid conversions. This is only
+    valid if sizeof(char) == sizeof(mybind->is_null[0]). Depending on the
+    version of the MySQL client library, the type of MYSQL_BIND::is_null[0] can
+    be either my_bool or bool, but sizeof(bool) is not defined by the C
+    standard. We assume it to be 1 on most platforms to simplify code and Lua
+    API.
+  */
+#if SIZEOF_BOOL > 1
+# error This code assumes sizeof(bool) == 1!
+#endif
+  mybind->is_null = (my_bool *) bind->is_null;
+}
+
+
 /* Bind parameters for prepared statement */
 
 
@@ -584,13 +605,7 @@
     if (bind == NULL)
       return 1;
     for (i = 0; i < len; i++)
-    {
-      bind[i].buffer_type = get_mysql_bind_type(params[i].type);
-      bind[i].buffer = params[i].buffer;
-      bind[i].buffer_length = params[i].max_len;
-      bind[i].length = params[i].data_len;
-      bind[i].is_null = params[i].is_null;
-    }
+      convert_to_mysql_bind(&bind[i], &params[i]);
 
     rc = mysql_stmt_bind_param(stmt->ptr, bind);
     DEBUG("mysql_stmt_bind_param(%p, %p) = %d", stmt->ptr, bind, rc);
@@ -644,13 +659,7 @@
   if (bind == NULL)
     return 1;
   for (i = 0; i < len; i++)
-  {
-    bind[i].buffer_type = get_mysql_bind_type(params[i].type);
-    bind[i].buffer = params[i].buffer;
-    bind[i].buffer_length = params[i].max_len;
-    bind[i].length = params[i].data_len;
-    bind[i].is_null = params[i].is_null;
-  }
+    convert_to_mysql_bind(&bind[i], &params[i]);
 
   rc = mysql_stmt_bind_result(stmt->ptr, bind);
   DEBUG("mysql_stmt_bind_result(%p, %p) = %d", stmt->ptr, bind, rc);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.6/src/sysbench.c 
new/sysbench-1.0.7/src/sysbench.c
--- old/sysbench-1.0.6/src/sysbench.c   2017-04-13 22:38:56.000000000 +0200
+++ new/sysbench-1.0.7/src/sysbench.c   2017-05-15 16:09:33.000000000 +0200
@@ -913,9 +913,9 @@
     }
 
     /* Enqueue a new event */
-    queue_array[i++] = sb_timer_value(&sb_exec_timer);
+    queue_array[i] = sb_timer_value(&sb_exec_timer);
     if (ck_ring_enqueue_spmc(&queue_ring, queue_ring_buffer,
-                             &queue_array[i]) == false)
+                             &queue_array[i++]) == false)
     {
       ck_pr_store_int(&queue_is_full, 1);
       log_text(LOG_FATAL,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.6/src/tests/mutex/sb_mutex.c 
new/sysbench-1.0.7/src/tests/mutex/sb_mutex.c
--- old/sysbench-1.0.6/src/tests/mutex/sb_mutex.c       2017-04-13 
22:38:56.000000000 +0200
+++ new/sysbench-1.0.7/src/tests/mutex/sb_mutex.c       2017-05-15 
16:09:33.000000000 +0200
@@ -29,6 +29,8 @@
 #endif
 
 #include "sysbench.h"
+#include "sb_ck_pr.h"
+#include "sb_rand.h"
 
 typedef struct
 {
@@ -42,7 +44,7 @@
 {
   SB_OPT("mutex-num", "total size of mutex array", "4096", INT),
   SB_OPT("mutex-locks", "number of mutex locks to do per thread", "50000", 
INT),
-  SB_OPT("mutex-loops", "number of empty loops to do inside mutex lock",
+  SB_OPT("mutex-loops", "number of empty loops to do outside mutex lock",
          "10000", INT),
 
   SB_OPT_END
@@ -144,7 +146,6 @@
 int mutex_execute_event(sb_event_t *sb_req, int thread_id)
 {
   unsigned int         i;
-  unsigned int         c=0;
   unsigned int         current_lock;
   sb_mutex_request_t   *mutex_req = &sb_req->u.mutex_request;
 
@@ -152,9 +153,11 @@
 
   do
   {
-    current_lock = rand() % mutex_num;
+    current_lock = sb_rand_uniform(0, mutex_num - 1);
+
     for (i = 0; i < mutex_req->nloops; i++)
-      c++;
+      ck_pr_barrier();
+
     pthread_mutex_lock(&thread_locks[current_lock].mutex);
     global_var++;
     pthread_mutex_unlock(&thread_locks[current_lock].mutex);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.6/tests/t/test_mutex.t 
new/sysbench-1.0.7/tests/t/test_mutex.t
--- old/sysbench-1.0.6/tests/t/test_mutex.t     2017-04-13 22:38:56.000000000 
+0200
+++ new/sysbench-1.0.7/tests/t/test_mutex.t     2017-05-15 16:09:33.000000000 
+0200
@@ -8,7 +8,7 @@
   mutex options:
     --mutex-num=N   total size of mutex array [4096]
     --mutex-locks=N number of mutex locks to do per thread [50000]
-    --mutex-loops=N number of empty loops to do inside mutex lock [10000]
+    --mutex-loops=N number of empty loops to do outside mutex lock [10000]
   
   $ sysbench $args prepare
   sysbench *.* * (glob)


Reply via email to