Hello community,

here is the log from the commit of package sysbench for openSUSE:Factory 
checked in at 2019-08-29 17:26:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sysbench (Old)
 and      /work/SRC/openSUSE:Factory/.sysbench.new.7948 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "sysbench"

Thu Aug 29 17:26:16 2019 rev:23 rq:726877 version:1.0.17

Changes:
--------
--- /work/SRC/openSUSE:Factory/sysbench/sysbench.changes        2019-04-09 
20:19:29.889908854 +0200
+++ /work/SRC/openSUSE:Factory/.sysbench.new.7948/sysbench.changes      
2019-08-29 17:26:19.087279515 +0200
@@ -1,0 +2,11 @@
+Wed Aug 28 06:27:01 UTC 2019 - Martin Pluskal <[email protected]>
+
+- Update to version 1.0.1:
+  * regression tests: remove unnecessary error leading to
+    opt_rate.t instability.
+  * --rate mode: return a non-zero exit code on event queue
+    overflow.
+  * --rate mode: fix a bogus error about eventgen thread
+    termination
+
+-------------------------------------------------------------------

Old:
----
  sysbench-1.0.16.tar.gz

New:
----
  sysbench-1.0.17.tar.gz

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

Other differences:
------------------
++++++ sysbench.spec ++++++
--- /var/tmp/diff_new_pack.U8baGv/_old  2019-08-29 17:26:19.815279394 +0200
+++ /var/tmp/diff_new_pack.U8baGv/_new  2019-08-29 17:26:19.819279394 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           sysbench
-Version:        1.0.16
+Version:        1.0.17
 Release:        0
 Summary:        A MySQL benchmarking tool
 License:        GPL-2.0-only

++++++ sysbench-1.0.16.tar.gz -> sysbench-1.0.17.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.16/ChangeLog 
new/sysbench-1.0.17/ChangeLog
--- old/sysbench-1.0.16/ChangeLog       2018-12-16 17:42:10.000000000 +0100
+++ new/sysbench-1.0.17/ChangeLog       2019-03-15 13:16:36.000000000 +0100
@@ -1,3 +1,13 @@
+2019-03-15  Alexey Kopytov  <[email protected]>
+
+       * version 1.0.17
+       * build/CI/packaging: update RPM spec to support RHEL8-beta
+       (thanks to Alexey Bychko for the patch)
+       * regression tests: remove unnecessary error leading to opt_rate.t 
instability.
+       * --rate mode: return a non-zero exit code on event queue
+       overflow.
+       * --rate mode: fix a bogus error about eventgen thread termination
+
 2018-12-16  Alexey Kopytov  <[email protected]>
 
        * version 1.0.16
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.16/configure.ac 
new/sysbench-1.0.17/configure.ac
--- old/sysbench-1.0.16/configure.ac    2018-12-16 17:42:10.000000000 +0100
+++ new/sysbench-1.0.17/configure.ac    2019-03-15 13:16:36.000000000 +0100
@@ -1,7 +1,7 @@
 # Process this file with autoconf to produce a configure script.
 
 AC_PREREQ(2.63)
-AC_INIT([sysbench],[1.0.16],[https://github.com/akopytov/sysbench/issues],
+AC_INIT([sysbench],[1.0.17],[https://github.com/akopytov/sysbench/issues],
         [sysbench], [https://github.com/akopytov/sysbench])
 AC_CONFIG_AUX_DIR([config])
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.16/m4/sb_check_mysql.m4 
new/sysbench-1.0.17/m4/sb_check_mysql.m4
--- old/sysbench-1.0.16/m4/sb_check_mysql.m4    2018-12-16 17:42:10.000000000 
+0100
+++ new/sysbench-1.0.17/m4/sb_check_mysql.m4    2019-03-15 13:16:36.000000000 
+0100
@@ -114,7 +114,24 @@
 USE_MYSQL=1
 AC_SUBST([MYSQL_LIBS])
 AC_SUBST([MYSQL_CFLAGS])
+
+AC_MSG_CHECKING([if mysql.h defines MYSQL_OPT_SSL_MODE])
+
+SAVE_CFLAGS="${CFLAGS}"
+CFLAGS="${CFLAGS} ${MYSQL_CFLAGS}"
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
+        [[
+#include <mysql.h>
+
+enum mysql_option opt = MYSQL_OPT_SSL_MODE;
+        ]])], [
+          AC_DEFINE([HAVE_MYSQL_OPT_SSL_MODE], 1,
+                    [Define to 1 if mysql.h defines MYSQL_OPT_SSL_MODE])
+          AC_MSG_RESULT([yes])
+          ], [AC_MSG_RESULT([no])])
 ])
+CFLAGS="${SAVE_CFLAGS}"
+
 
 AM_CONDITIONAL([USE_MYSQL], test "x$with_mysql" != xno)
 AC_SUBST([USE_MYSQL])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.16/rpm/sysbench.spec 
new/sysbench-1.0.17/rpm/sysbench.spec
--- old/sysbench-1.0.16/rpm/sysbench.spec       2018-12-16 17:42:10.000000000 
+0100
+++ new/sysbench-1.0.17/rpm/sysbench.spec       2019-03-15 13:16:36.000000000 
+0100
@@ -8,7 +8,7 @@
 Source0:       
https://github.com/akopytov/%{name}/archive/%{version}/%{name}-%{version}.tar.gz
 URL:           https://github.com/akopytov/sysbench/
 
-%if 0%{?el6}
+%if 0%{?rhel} < 7
 BuildRequires: mysql-devel
 %else
 BuildRequires: mariadb-devel
@@ -20,7 +20,11 @@
 BuildRequires: pkgconfig
 BuildRequires: libaio-devel
 # Use bundled cram for tests
+%if 0%{?rhel} > 7
+BuildRequires: python2
+%else
 BuildRequires: python
+%endif
 
 ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
 
@@ -74,6 +78,9 @@
 
 
 %changelog
+* Fri Mar 15 2019 Alexey Bychko <[email protected]> - 1.0.16-1
+- Updated build dependencies for RHEL8-Beta.
+
 * Sat Jan  6 2018 Alexey Kopytov <[email protected]> - 1.0.12-1
 - Remove vim-common from build dependencies.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.16/src/drivers/mysql/drv_mysql.c 
new/sysbench-1.0.17/src/drivers/mysql/drv_mysql.c
--- old/sysbench-1.0.16/src/drivers/mysql/drv_mysql.c   2018-12-16 
17:42:10.000000000 +0100
+++ new/sysbench-1.0.17/src/drivers/mysql/drv_mysql.c   2019-03-15 
13:16:36.000000000 +0100
@@ -323,10 +323,10 @@
 
     mysql_ssl_set(con, ssl_key, ssl_cert, ssl_ca, NULL, args.ssl_cipher);
 
-#ifdef MYSQL_OPT_SSL_MODE
+#ifdef HAVE_MYSQL_OPT_SSL_MODE
     unsigned int opt_ssl_mode = SSL_MODE_REQUIRED;
 
-    DEBUG("mysql_options(%p,%s,%u)", con, "MYSQL_OPT_SSL_MODE", opt_ssl_mode);
+    DEBUG("mysql_options(%p, %s, %u)", con, "MYSQL_OPT_SSL_MODE", 
opt_ssl_mode);
     mysql_options(con, MYSQL_OPT_SSL_MODE, &opt_ssl_mode);
 #endif
   }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.16/src/sysbench.c 
new/sysbench-1.0.17/src/sysbench.c
--- old/sysbench-1.0.16/src/sysbench.c  2018-12-16 17:42:10.000000000 +0100
+++ new/sysbench-1.0.17/src/sysbench.c  2019-03-15 13:16:36.000000000 +0100
@@ -140,8 +140,6 @@
 static ck_ring_buffer_t   queue_ring_buffer[MAX_QUEUE_LEN] CK_CC_CACHELINE;
 static ck_ring_t          queue_ring CK_CC_CACHELINE;
 
-static int queue_is_full CK_CC_CACHELINE;
-
 static int report_thread_created CK_CC_CACHELINE;
 static int checkpoints_thread_created;
 static int eventgen_thread_created;
@@ -710,7 +708,7 @@
     void *ptr = NULL;
 
     while (!ck_ring_dequeue_spmc(&queue_ring, queue_ring_buffer, &ptr) &&
-           !ck_pr_load_int(&queue_is_full))
+           !sb_globals.error)
     {
       pthread_mutex_lock(&queue_mutex);
       pthread_cond_wait(&queue_cond, &queue_mutex);
@@ -729,13 +727,6 @@
       }
     }
 
-    if (ck_pr_load_int(&queue_is_full))
-    {
-      log_text(LOG_FATAL, "Event queue is full. Terminating the worker 
thread");
-
-      return false;
-    }
-
     ck_pr_inc_int(&sb_globals.concurrency);
 
     timers[thread_id].queue_time = sb_timer_value(&sb_exec_timer) -
@@ -914,10 +905,11 @@
     if (ck_ring_enqueue_spmc(&queue_ring, queue_ring_buffer,
                              &queue_array[i]) == false)
     {
-      ck_pr_store_int(&queue_is_full, 1);
+      sb_globals.error = 1;
       log_text(LOG_FATAL,
                "The event queue is full. This means the worker threads are "
                "unable to keep up with the specified event generation rate");
+      pthread_cond_broadcast(&queue_cond);
       return NULL;
     }
 
@@ -1081,9 +1073,6 @@
 
   pthread_mutex_init(&sb_globals.exec_mutex, NULL);
 
-
-  queue_is_full = 0;
-
   sb_globals.threads_running = 0;
 
   /* Calculate the required number of threads for the start barrier */
@@ -1190,8 +1179,12 @@
 
   if (eventgen_thread_created)
   {
-    if (sb_thread_cancel(eventgen_thread) ||
-        sb_thread_join(eventgen_thread, NULL))
+    /*
+      When a time limit is used, the event generation thread may terminate
+      itself.
+    */
+    if ((sb_thread_cancel(eventgen_thread) ||
+         sb_thread_join(eventgen_thread, NULL)) && sb_globals.max_time_ns == 0)
       log_text(LOG_FATAL, "Terminating the event generator thread failed.");
   }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sysbench-1.0.16/tests/t/opt_rate.t 
new/sysbench-1.0.17/tests/t/opt_rate.t
--- old/sysbench-1.0.16/tests/t/opt_rate.t      1970-01-01 01:00:00.000000000 
+0100
+++ new/sysbench-1.0.17/tests/t/opt_rate.t      2019-03-15 13:16:36.000000000 
+0100
@@ -0,0 +1,8 @@
+########################################################################
+Tests for the --rate option (aka the limited rate mode)
+########################################################################
+
+# Failing to deliver the requested rate should result in a non-zero exit code
+  $ sysbench --rate=2000000000 cpu run --verbosity=1
+  FATAL: The event queue is full. This means the worker threads are unable to 
keep up with the specified event generation rate
+  [1]


Reply via email to