Hello community, here is the log from the commit of package mysql-cluster for openSUSE:Factory checked in at Mon Aug 15 16:38:17 CEST 2011.
-------- --- mysql-cluster/mysql-cluster.changes 2011-02-21 01:43:08.000000000 +0100 +++ /mounts/work_src_done/STABLE/mysql-cluster/mysql-cluster.changes 2011-08-15 13:05:58.000000000 +0200 @@ -1,0 +2,27 @@ +Mon Aug 15 07:52:54 CEST 2011 - mhruse...@suse.cz + +- updated to MySQL Cluster 7.1.15 (based on MySQL 5.1.56), see + http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster-news-5-1-56-ndb-7-1-15.html + http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster-news-5-1-56-ndb-7-1-14.html + http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster-news-5-1-56-ndb-7-1-13.html + http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster-news-5-1-51-ndb-7-1-12.html + http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster-news-5-1-51-ndb-7-1-11.html +- dropped obsolete directory in /var/run (bnc#710274) + +------------------------------------------------------------------- +Wed Feb 23 16:13:33 CET 2011 - mhruse...@suse.cz + +- updated to MySQL Cluster 7.1.10 (based on MySQL 5.1.51), see + http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster-news-5-1-51-ndb-7-1-10.html +- fixed init script to + - work with SELinux (bnc#635645) + - allow running as different user/group + - create TMPDIR correctly + +------------------------------------------------------------------- +Wed Feb 23 10:59:13 UTC 2011 - adr...@suse.de + +- remove runlevel 2 from default start in init script or it isn't + usable on openSUSE 11.4 and later + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- mysql-cluster-gpl-7.1.9a.tar.bz2 New: ---- mysql-cluster-gpl-7.1.15.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mysql-cluster.spec ++++++ --- /var/tmp/diff_new_pack.9ykFJf/_old 2011-08-15 16:36:54.000000000 +0200 +++ /var/tmp/diff_new_pack.9ykFJf/_new 2011-08-15 16:36:54.000000000 +0200 @@ -31,9 +31,9 @@ Name: mysql-cluster Summary: A True Multiuser, Multithreaded SQL Database Server -Version: 7.1.9a -Release: 6 -%define srv_vers 5.1.51 +Version: 7.1.15 +Release: 1 +%define srv_vers 5.1.56 License: GPLv2 ; with additional permissions: EXCEPTIONS-CLIENT Group: Productivity/Databases/Servers Url: http://www.mysql.com @@ -603,7 +603,6 @@ /etc/init.d/mysql /usr/sbin/rcmysql /usr/share/mysql/ -%dir %attr(755,mysql,mysql)/var/run/mysql %dir %{_libdir}/mysql %{_libdir}/mysql/mysqld.sym %config /etc/sysconfig/SuSEfirewall2.d/services/mysql ++++++ install.inc ++++++ --- /var/tmp/diff_new_pack.9ykFJf/_old 2011-08-15 16:36:54.000000000 +0200 +++ /var/tmp/diff_new_pack.9ykFJf/_new 2011-08-15 16:36:54.000000000 +0200 @@ -49,7 +49,7 @@ filelist ndbd ndbmtd ndbd_redo_log_reader >mysql-ndb-storage.files filelist ndb_mgmd >mysql-ndb-management.files filelist ndb_{config,desc,error_reporter,mgm,print_backup_file,print_schema_file,print_sys_file,restore,select_all,select_count,show_tables,size.pl,test_platform,waiter} >mysql-ndb-tools.files -filelist ndb_{cpcd,delete_all,drop_index,drop_table} >mysql-ndb-extra.files +filelist ndb_{cpcd,delete_all,drop_index,drop_table,print_file,index_stat} >mysql-ndb-extra.files ### files not installed by make install # Create directory structure DOCS=(COPYING README EXCEPTIONS-CLIENT %_sourcedir/README.debug %_sourcedir/README.SuSE) @@ -65,7 +65,9 @@ %endif install -m 660 _build/support-files/my-medium.cnf %buildroot/etc/my.cnf install -m 640 scripts/mysqlaccess.conf %buildroot/etc/mysqlaccess.conf -install -m 644 "${DOCS[@]}" ${DOCDIR} +for i in "${DOCS[@]}"; do + install -m 644 "$i" ${DOCDIR} || true +done install -m 755 %_sourcedir/rc.mysql-multi %buildroot/etc/init.d/mysql ln -sf ../../etc/init.d/mysql %buildroot/usr/sbin/rcmysql # this is used by the init script ++++++ mysql-cluster-gpl-7.1.9a.tar.bz2 -> mysql-cluster-gpl-7.1.15.tar.bz2 ++++++ mysql-cluster/mysql-cluster-gpl-7.1.9a.tar.bz2 /mounts/work_src_done/STABLE/mysql-cluster/mysql-cluster-gpl-7.1.15.tar.bz2 differ: char 11, line 1 ++++++ mysql-patches.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/README new/mysql-patches/README --- old/mysql-patches/README 2010-05-12 11:47:12.000000000 +0200 +++ new/mysql-patches/README 2010-12-23 10:49:09.000000000 +0100 @@ -1,28 +1,46 @@ -This repository contain SUSE MySQL patches. Each patch contains in his name -version of MySQL against which it was created and brief description. If you -look into the patch, you'll see detailed description. On first line, there is -always a tag. It contains four words separated by dash. First word is always -PATCH. Second is in form P[0-9]+ and denotes how long prefix should be -stripped when applying patch. Third one can be FIX, HACK or FEATURE. - -FIX clean fix of error that anybody can be proud of and should be - published. -HACK ugly fix that's certainly not right, but makes it works somehow - and should be replaced by better fix in the future -FEATURE patch adds new feature which wasn't there before - -Last field in tag can contain only two values. SUSE or UPSTREAM. It denotes -whether patch affects only SUSE (various integration stuff or hacks around our -own problems) or whether this is an UPSTREAM problem that should be fixed in -official MySQL package. +This repository contains set of patches following several rules to make it +easier to work with them. All patches follows same naming conventions. Patch +name consists of "${package name}-${package version}-${patch name}.patch". +Package name and version denotes against which version was patch created. If +you look into the patch, you'll see detailed description. On first line, there +is always a tag. It contains four words separated by dash. First word is always +PATCH. Second is in form P[0-9]+ and denotes how long prefix should be stripped +when applying patch. Third one can be FIX, HACK or FEATURE. + +FIX clean fix of error that anybody can be proud of and should be + published. +HACK ugly fix that's certainly not right, but makes it works somehow + and should be replaced by better fix in the future +FEATURE patch adds new feature which wasn't there before + +Last field in tag specifies intended audience for the patch. It can contain +following values: + +SUSE patch specific to SuSE integration. Probably not interesting for + anybody else. +UPSTREAM patch that either should be upstream or is already at upstream. + This includes backports of security patches and fixes, that should + be reported and corrected in upstream. +DOWNSTREAM This patch will never make it to the upstream version for whatever + reason. But every sane distribution has something like this. In + this category falls patches like fixing build scripts to follow + LSB even though upstream don't want to, striping out embedded + libraries and fixing compilation against system ones and such. Second line of patch is optional and it can contain line starting with BUGS: and then list all bug numbers. It can use bnc#[0-9]+ for Novell Bugzilla number and upstream#[0-9]+ for upstream bug tracking number. -Optionally after empty line, patch description can continue with more detailed description of the patch. +Optional third line is TAGS. It contain blank separated set of patch features +that patch has. apply-series.sh script can take additional arguments that +specifies which features you DON'T like so patches with these tags will be +excluded even if they are mentioned in series file. -And optionally the detailed description can be followed by empty line and list of maintainers in following format: +Optionally after empty line, patch description can continue with more detailed +description of the patch. + +Detailed description (if it is there) should be followed by empty line and list +of maintainers in following format: Maintainer: Joe Hacker <joe.hac...@gmail.com> Maintainer: Ben Lamer <ben.la...@msn.com> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/apply-series.sh new/mysql-patches/apply-series.sh --- old/mysql-patches/apply-series.sh 2010-10-21 17:01:58.000000000 +0200 +++ new/mysql-patches/apply-series.sh 2010-12-23 10:35:24.000000000 +0100 @@ -1,14 +1,14 @@ #!/bin/sh if [ -z "$1" ]; then echo "Usage:" - echo " ./apply-series.sh series [flag ...]" + echo " ./apply-series.sh series [tag ...]" exit 3 fi series="$1" shift -FLAGS="" +TAGS="" while [ "$1" ]; do - FLAGS="$FLAGS $1" + TAGS="$TAGS $1" shift done [ "$PATCHDIR" ] || PATCHDIR="`echo "$0" | sed 's|apply-series.sh|/patches|'`" @@ -21,18 +21,18 @@ exit 1 fi p="`head -n1 "$PATCHDIR/$patch" | sed -n 's/^PATCH-P\([0-9]\+\)-.*/\1/p'`" - f="`head -n3 "$PATCHDIR/$patch" | sed -n '2,3 s/^FLAG:[[:blank:]]\+\([^[:blank:]]\+\)/\1/p'`" + tags="`head -n3 "$PATCHDIR/$patch" | sed -n '2,3 s/^TAGS:[[:blank:]]\+\([^[:blank:]]\+\)/\1/p'`" if [ \! "$p" ]; then echo " ! Patch \"$patch\" doesn't have a correct tag !!!" exit 2 fi - if [ "$f" ]; then - end="" + end="" + for t in $tags; do for i in $FLAGS; do - [ "$i" == "$f" ] && end="true" + [ "$i" == "$t" ] && end="true" done - [ "$end" ] && continue - fi + done + [ "$end" ] && continue if patch -p$p --fuzz=0 < "$PATCHDIR/$patch"; then echo " * Patch \"$patch\" applied..." else diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/gettar.sh new/mysql-patches/gettar.sh --- old/mysql-patches/gettar.sh 2010-10-19 05:53:20.000000000 +0200 +++ new/mysql-patches/gettar.sh 2010-12-20 12:34:37.000000000 +0100 @@ -1,7 +1,7 @@ #!/bin/sh -series="series" +series="`ls -1 *.series series 2> /dev/null`" [ -z "$1" ] || series="$1" -if [ \! -f "$series" ]; then +if [ -z "$series" ]; then echo "ERROR: No series file!" echo echo "Usage:" @@ -33,7 +33,11 @@ fi TO_PACK="$TO_PACK $PREFIX/patches/$patch" echo " * $patch" -done < "$series" +done << EOF +`echo "$series" | while read serie; do + cat "$serie" +done` +EOF echo rm -f "$PREFIX.tar" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/patches/mysql-cluster-7.1.15-string-format-indirect.patch new/mysql-patches/patches/mysql-cluster-7.1.15-string-format-indirect.patch --- old/mysql-patches/patches/mysql-cluster-7.1.15-string-format-indirect.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/mysql-patches/patches/mysql-cluster-7.1.15-string-format-indirect.patch 2011-08-15 08:06:27.000000000 +0200 @@ -0,0 +1,50 @@ +PATCH-P0-FIX-UPSTREAM: Not passing variables directly to printf + +This patch fixes all places where variable is used in printf as a format. If +something bad like %s will get to the format, it may cause troubles, crashes +and other bad things. + +Maintainer: Michal Hrusecky <mhruse...@suse.cz> + +Index: storage/ndb/src/mgmapi/mgmapi.cpp +=================================================================== +--- storage/ndb/src/mgmapi/mgmapi.cpp.orig ++++ storage/ndb/src/mgmapi/mgmapi.cpp +@@ -499,7 +499,7 @@ ndb_mgm_call(NdbMgmHandle handle, + out.println("%s", ""); + + if (cmd_bulk) +- out.println(cmd_bulk); ++ out.println("%s", cmd_bulk); + + CHECK_TIMEDOUT_RET(handle, in, out, NULL); + +Index: storage/ndb/src/mgmsrv/Services.cpp +=================================================================== +--- storage/ndb/src/mgmsrv/Services.cpp.orig ++++ storage/ndb/src/mgmsrv/Services.cpp +@@ -638,10 +638,10 @@ MgmApiSession::getConfig(Parser_t::Conte + { + // Return only half the packed config + BaseString half64 = pack64.substr(0, pack64.length()); +- m_output->println(half64.c_str()); ++ m_output->println("%s", half64.c_str()); + return; + } +- m_output->println(pack64.c_str()); ++ m_output->println("%s", pack64.c_str()); + m_output->print("\n"); + return; + } +@@ -1469,9 +1469,9 @@ Ndb_mgmd_event_service::log(int eventTyp + + int r; + if (m_clients[i].m_parsable) +- r= out.println(str.c_str()); ++ r= out.println("%s", str.c_str()); + else +- r= out.println(pretty_text); ++ r= out.println("%s", pretty_text); + + if (r<0) + { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/patches/mysql-cluster-7.1.9a-string-format-indirect.patch new/mysql-patches/patches/mysql-cluster-7.1.9a-string-format-indirect.patch --- old/mysql-patches/patches/mysql-cluster-7.1.9a-string-format-indirect.patch 2010-12-14 16:00:01.000000000 +0100 +++ new/mysql-patches/patches/mysql-cluster-7.1.9a-string-format-indirect.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,365 +0,0 @@ -PATCH-P0-FIX-UPSTREAM: Not passing variables directly to printf - -This patch fixes all places where variable is used in printf as a format. If -something bad like %s will get to the format, it may cause troubles, crashes -and other bad things. - -Maintainer: Michal Hrusecky <mhruse...@suse.cz> - -Index: storage/ndb/src/common/debugger/signaldata/FsRef.cpp -=================================================================== ---- storage/ndb/src/common/debugger/signaldata/FsRef.cpp.orig -+++ storage/ndb/src/common/debugger/signaldata/FsRef.cpp -@@ -38,7 +38,7 @@ printFSREF(FILE * output, const Uint32 * - fprintf(output, "No error"); - break; - default: -- fprintf(output, ndbd_exit_message(sig->getErrorCode(sig->errorCode), &cl)); -+ fprintf(output, "%s", ndbd_exit_message(sig->getErrorCode(sig->errorCode), &cl)); - break; - } - fprintf(output, "\n"); -Index: storage/ndb/src/common/debugger/EventLogger.cpp -=================================================================== ---- storage/ndb/src/common/debugger/EventLogger.cpp.orig -+++ storage/ndb/src/common/debugger/EventLogger.cpp -@@ -758,7 +758,7 @@ void getTextUNDORecordsExecuted(QQQQ) { - theData[11]); - } - void getTextInfoEvent(QQQQ) { -- BaseString::snprintf(m_text, m_text_len, (char *)&theData[1]); -+ BaseString::snprintf(m_text, m_text_len, "%s", (char *)&theData[1]); - } - const char bytes_unit[]= "B"; - const char kbytes_unit[]= "KB"; -@@ -798,7 +798,7 @@ void getTextEventBufferStatus(QQQQ) { - theData[7], theData[6]); - } - void getTextWarningEvent(QQQQ) { -- BaseString::snprintf(m_text, m_text_len, (char *)&theData[1]); -+ BaseString::snprintf(m_text, m_text_len, "%s", (char *)&theData[1]); - } - void getTextGCP_TakeoverStarted(QQQQ) { - BaseString::snprintf(m_text, m_text_len, "GCP Take over started"); -@@ -1394,25 +1394,25 @@ EventLogger::log(int eventType, const Ui - - switch (severity){ - case Logger::LL_ALERT: -- alert(log_text); -+ alert("%s",log_text); - break; - case Logger::LL_CRITICAL: -- critical(log_text); -+ critical("%s",log_text); - break; - case Logger::LL_WARNING: -- warning(log_text); -+ warning("%s",log_text); - break; - case Logger::LL_ERROR: -- error(log_text); -+ error("%s",log_text); - break; - case Logger::LL_INFO: -- info(log_text); -+ info("%s",log_text); - break; - case Logger::LL_DEBUG: -- debug(log_text); -+ debug("%s",log_text); - break; - default: -- info(log_text); -+ info("%s",log_text); - break; - } - } // if (.. -Index: storage/ndb/src/common/util/File.cpp -=================================================================== ---- storage/ndb/src/common/util/File.cpp.orig -+++ storage/ndb/src/common/util/File.cpp -@@ -80,7 +80,7 @@ File_class::File_class(const char* aFile - m_file(NULL), - m_fileMode(mode) - { -- BaseString::snprintf(m_fileName, PATH_MAX, aFileName); -+ BaseString::snprintf(m_fileName, PATH_MAX, "%s", aFileName); - } - - bool -@@ -97,7 +97,7 @@ File_class::open(const char* aFileName, - /** - * Only copy if it's not the same string - */ -- BaseString::snprintf(m_fileName, PATH_MAX, aFileName); -+ BaseString::snprintf(m_fileName, PATH_MAX, "%s", aFileName); - } - m_fileMode = mode; - bool rc = true; -Index: storage/ndb/src/mgmapi/mgmapi.cpp -=================================================================== ---- storage/ndb/src/mgmapi/mgmapi.cpp.orig -+++ storage/ndb/src/mgmapi/mgmapi.cpp -@@ -500,7 +500,7 @@ ndb_mgm_call(NdbMgmHandle handle, - out.println("%s", ""); - - if (cmd_bulk) -- out.println(cmd_bulk); -+ out.println("%s", cmd_bulk); - - CHECK_TIMEDOUT_RET(handle, in, out, NULL); - -Index: storage/ndb/src/kernel/error/ErrorReporter.cpp -=================================================================== ---- storage/ndb/src/kernel/error/ErrorReporter.cpp.orig -+++ storage/ndb/src/kernel/error/ErrorReporter.cpp -@@ -240,8 +240,8 @@ ErrorReporter::handleError(int messageID - - WriteMessage(messageID, problemData, objRef, nst); - -- g_eventLogger->info(problemData); -- g_eventLogger->info(objRef); -+ g_eventLogger->info("%s", problemData); -+ g_eventLogger->info("%s", objRef); - - NdbShutdown(messageID, nst); - exit(1); // kill warning -Index: storage/ndb/src/kernel/blocks/lgman.cpp -=================================================================== ---- storage/ndb/src/kernel/blocks/lgman.cpp.orig -+++ storage/ndb/src/kernel/blocks/lgman.cpp -@@ -369,8 +369,8 @@ Lgman::execDUMP_STATE_ORD(Signal* signal - !ptr.p->m_log_buffer_waiters.isEmpty(), - !ptr.p->m_log_sync_waiters.isEmpty()); - if (signal->theData[0] == 12001) -- infoEvent(tmp); -- ndbout_c(tmp); -+ infoEvent("%s", tmp); -+ ndbout_c("%s", tmp); - - BaseString::snprintf(tmp, sizeof(tmp), - " callback_buffer_words: %u" -@@ -379,8 +379,8 @@ Lgman::execDUMP_STATE_ORD(Signal* signal - ptr.p->m_free_buffer_words, - ptr.p->m_free_file_words); - if (signal->theData[0] == 12001) -- infoEvent(tmp); -- ndbout_c(tmp); -+ infoEvent("%s", tmp); -+ ndbout_c("%s", tmp); - if (!ptr.p->m_log_buffer_waiters.isEmpty()) - { - Ptr<Log_waiter> waiter; -@@ -392,8 +392,8 @@ Lgman::execDUMP_STATE_ORD(Signal* signal - waiter.p->m_size, - FREE_BUFFER_MARGIN); - if (signal->theData[0] == 12001) -- infoEvent(tmp); -- ndbout_c(tmp); -+ infoEvent("%s", tmp); -+ ndbout_c("%s", tmp); - } - if (!ptr.p->m_log_sync_waiters.isEmpty()) - { -@@ -407,8 +407,8 @@ Lgman::execDUMP_STATE_ORD(Signal* signal - waiter.i, - waiter.p->m_sync_lsn); - if (signal->theData[0] == 12001) -- infoEvent(tmp); -- ndbout_c(tmp); -+ infoEvent("%s", tmp); -+ ndbout_c("%s", tmp); - - while(!waiter.isNull()) - { -Index: storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp -=================================================================== ---- storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp.orig -+++ storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp -@@ -3945,7 +3945,7 @@ Dbdict::startRestoreSchema(Signal* signa - if (c_restartRecord.m_start_banner) - { - jam(); -- infoEvent(c_restartRecord.m_start_banner); -+ infoEvent("%s", c_restartRecord.m_start_banner); - } - } - -@@ -4167,7 +4167,7 @@ Dbdict::restart_fromWriteSchemaFile(Sign - if (c_restartRecord.m_end_banner) - { - jam(); -- infoEvent(c_restartRecord.m_end_banner); -+ infoEvent("%s", c_restartRecord.m_end_banner); - } - - execute(signal, c_schemaRecord.m_callback, retCode); -Index: storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp -=================================================================== ---- storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp.orig -+++ storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp -@@ -11859,7 +11859,7 @@ void Dbdih::startFragment(Signal* signal - BaseString::snprintf(buf, sizeof(buf), "table: %d fragment: %d gci: %d", - tableId, fragId, SYSFILE->newestRestorableGCI); - -- ndbout_c(buf); -+ ndbout_c("%s",buf); - dump_replica_info(); - - progError(__LINE__, NDBD_EXIT_NO_RESTORABLE_REPLICA, buf); -@@ -17006,7 +17006,7 @@ Dbdih::execDUMP_STATE_ORD(Signal* signal - BaseString::snprintf(tmp, sizeof(tmp), "%d ", nodeOrder[k]); - strcat(buf, tmp); - } -- infoEvent(buf); -+ infoEvent("%s",buf); - } - } - } -@@ -17385,7 +17385,7 @@ Dbdih::execDUMP_STATE_ORD(Signal* signal - num++; - replicaPtr.i = replicaPtr.p->nextReplica; - } while (replicaPtr.i != RNIL); -- infoEvent(buf); -+ infoEvent("%s",buf); - } - } - -Index: storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp -=================================================================== ---- storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp.orig -+++ storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp -@@ -21624,9 +21624,9 @@ Dblqh::match_and_print(Signal* signal, P - state); - - if (!ERROR_INSERTED(4002)) -- infoEvent(buf); -+ infoEvent("%s",buf); - else -- ndbout_c(buf); -+ ndbout_c("%s",buf); - - memcpy(signal->theData, temp, 4*len); - return true; -@@ -22269,7 +22269,7 @@ Dblqh::execDUMP_STATE_ORD(Signal* signal - "OP[%u]: transid: 0x%x 0x%x key: %s", - tcRec.i, - tcRec.p->transid[0], tcRec.p->transid[1], key.c_str()); -- infoEvent(buf); -+ infoEvent("%s",buf); - } - } - -Index: storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp -=================================================================== ---- storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp.orig -+++ storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp -@@ -7382,10 +7382,10 @@ void Dbtc::sendAbortedAfterTimeout(Signa - for(Uint32 i = 0; i<TloopCount; i++) - { - BaseString::snprintf(buf2, sizeof(buf2), "%s %d", buf, tmp[i]); -- BaseString::snprintf(buf, sizeof(buf), buf2); -+ BaseString::snprintf(buf, sizeof(buf), "%s", buf2); - } -- warningEvent(buf); -- ndbout_c(buf); -+ warningEvent("%s", buf); -+ ndbout_c("%s", buf); - ndbrequire(false); - releaseAbortResources(signal); - return; -@@ -12906,7 +12906,7 @@ Dbtc::match_and_print(Signal* signal, Ap - apiTimer ? (ctcTimer - apiTimer) / 100 : 0, - c_apiConTimer_line[apiPtr.i], - stateptr); -- infoEvent(buf); -+ infoEvent("%s", buf); - - memcpy(signal->theData, temp, 4*len); - return true; -Index: storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp -=================================================================== ---- storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp.orig -+++ storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp -@@ -1112,7 +1112,7 @@ retry: - "I think president is: %d", - nodeId, president, cpresident); - -- ndbout_c(buf); -+ ndbout_c("%s", buf); - CRASH_INSERTION(933); - - if (getNodeState().startLevel == NodeState::SL_STARTED) -@@ -2795,7 +2795,7 @@ void Qmgr::checkStartInterface(Signal* s - nodePtr.i, - (getNodeInfo(nodePtr.i).m_heartbeat_cnt + 1)/60, - nodePtr.p->failState); -- warningEvent(buf); -+ warningEvent("%s", buf); - if (((getNodeInfo(nodePtr.i).m_heartbeat_cnt + 1) % 300) == 0) - { - jam(); -@@ -5737,7 +5737,7 @@ Qmgr::execDUMP_STATE_ORD(Signal* signal) - sprintf(buf, "Node %d: <UNKNOWN>(%d)", i, nodePtr.p->phase); - break; - } -- infoEvent(buf); -+ infoEvent("%s", buf); - } - } - -Index: storage/ndb/src/mgmsrv/Services.cpp -=================================================================== ---- storage/ndb/src/mgmsrv/Services.cpp.orig -+++ storage/ndb/src/mgmsrv/Services.cpp -@@ -634,10 +634,10 @@ MgmApiSession::getConfig(Parser_t::Conte - { - // Return only half the packed config - BaseString half64 = pack64.substr(0, pack64.length()); -- m_output->println(half64.c_str()); -+ m_output->println("%s", half64.c_str()); - return; - } -- m_output->println(pack64.c_str()); -+ m_output->println("%s", pack64.c_str()); - m_output->print("\n"); - return; - } -@@ -1463,9 +1463,9 @@ Ndb_mgmd_event_service::log(int eventTyp - - int r; - if (m_clients[i].m_parsable) -- r= out.println(str.c_str()); -+ r= out.println("%s", str.c_str()); - else -- r= out.println(pretty_text); -+ r= out.println("%s", pretty_text); - - if (r<0) - { -Index: storage/ndb/tools/ndb_test_platform.cpp -=================================================================== ---- storage/ndb/tools/ndb_test_platform.cpp.orig -+++ storage/ndb/tools/ndb_test_platform.cpp -@@ -29,7 +29,7 @@ int test_snprintf(const char * fmt, int - { - int ret; - char buf[100]; -- ret = BaseString::snprintf(buf, buf_sz, fmt); -+ ret = BaseString::snprintf(buf, buf_sz, "%s", fmt); - - if(ret < 0) - { -Index: storage/ndb/src/common/transporter/SHM_Transporter.unix.cpp -=================================================================== ---- storage/ndb/src/common/transporter/SHM_Transporter.unix.cpp.orig -+++ storage/ndb/src/common/transporter/SHM_Transporter.unix.cpp -@@ -77,7 +77,7 @@ SHM_Transporter::checkConnected(){ - "shmctl(%d, IPC_STAT) errno: %d(%s). ", shmId, - errno, strerror(errno)); - make_error_info(buf+r, sizeof(buf)-r); -- DBUG_PRINT("error",(buf)); -+ DBUG_PRINT("error", ("%s", buf)); - switch (errno) - { - case EACCES: ++++++ rc.mysql-multi ++++++ --- /var/tmp/diff_new_pack.9ykFJf/_old 2011-08-15 16:36:54.000000000 +0200 +++ /var/tmp/diff_new_pack.9ykFJf/_new 2011-08-15 16:36:54.000000000 +0200 @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 1995-2010 SuSE Linux AG Nuernberg, Germany. +# Copyright (c) 1995-2011 SuSE Linux AG Nuernberg, Germany. # # Author: Lenz Grimmer # Maintainer: Michal Hrusecky <mhruse...@suse.cz> @@ -16,7 +16,7 @@ # Provides: mysql # Required-Start: $network $remote_fs # Required-Stop: $network $remote_fs -# Default-Start: 2 3 5 +# Default-Start: 3 5 # Default-Stop: # Short-Description: Start the MySQL database server # Description: Start the MySQL database server @@ -61,11 +61,13 @@ parse_arguments() { for arg do case "$arg" in - --basedir=*) basedir="`echo "$arg" | sed -e 's/^[^=]*=//'`" ;; - --datadir=*) datadir="`echo "$arg" | sed -e 's/^[^=]*=//'`" ;; - --pid-file=*) pid_file="`echo "$arg" | sed -e 's/^[^=]*=//'`" ;; - --socket=*) socket="`echo "$arg" | sed -e 's/^[^=]*=//'`" ;; - --log-error=*) log_error="`echo "$arg" | sed -e 's/^[^=]*=//'`" ;; + --basedir=*) basedir="`echo "$arg" | sed -e 's/^[^=]*=//'`" ;; + --datadir=*) datadir="`echo "$arg" | sed -e 's/^[^=]*=//'`" ;; + --pid-file=*) pid_file="`echo "$arg" | sed -e 's/^[^=]*=//'`" ;; + --socket=*) socket="`echo "$arg" | sed -e 's/^[^=]*=//'`" ;; + --log-error=*) log_error="`echo "$arg" | sed -e 's/^[^=]*=//'`" ;; + --user=*) mysql_daemon_user="`echo "$arg" | sed -e 's/^[^=]*=//'`" ;; + --group=*) mysql_daemon_group="`echo "$arg" | sed -e 's/^[^=]*=//'`" ;; esac done } @@ -251,8 +253,6 @@ datadir=/var/lib/mysql mysql_daemon_user=mysql mysql_daemon_group=mysql - mkdir -m 755 -p /var/run/mysql - chown $mysql_daemon_user:$mysql_daemon_group /var/run/mysql pid_file=/var/run/mysql/mysqld.pid socket=/var/run/mysql/mysql.sock print_defaults=/usr/bin/my_print_defaults @@ -267,7 +267,9 @@ log_query="${log_base}-query.log" parse_arguments `$print_defaults $defaults mysqld mysql_server` - export TMPDIR="`cat /var/run/mysql/tmpdir 2> /dev/null`" + mkdir -m 755 -p /var/run/mysql + chown $mysql_daemon_user:$mysql_daemon_group /var/run/mysql + export TEMPDIR="`cat /var/run/mysql/tmpdir 2> /dev/null`" # Safeguard (relative paths, core dumps..) cd "$basedir" @@ -279,14 +281,15 @@ rc_status -v && rc_exit # prepare tmp dir - if [ "$TMPDIR" ] && [ -d "$TMPDIR" ] && \ - [ "`ls -ld "$TMPDIR" | grep "^drwx------[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`" ]; then - rm -rf "$TMPDIR" + unset TMPDIR + if [ "$TEMPDIR" ] && [ -d "$TEMPDIR" ] && \ + [ "`ls -ld "$TEMPDIR" | grep "^drwx------[\\.\+]\?[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`" ]; then + rm -rf "$TEMPDIR" fi - TMPDIR="`mktemp -d -p /var/tmp mysql.XXXXXX | tee /var/run/mysql/tmpdir`" - [ -z "$TMPDIR" ] || chown "$mysql_daemon_user:$mysql_daemon_group" "$TMPDIR" - [ "`ls -ld "$TMPDIR" | grep "^drwx------[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`" ] || { - echo "Can't create secure $TMPDIR" + TEMPDIR="`mktemp -d -p /var/tmp mysql.XXXXXX | tee /var/run/mysql/tmpdir`" + [ -z "$TEMPDIR" ] || chown "$mysql_daemon_user:$mysql_daemon_group" "$TEMPDIR" + [ "`ls -ld "$TEMPDIR" | grep "^drwx------[\\.\+]\?[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`" ] || { + echo "Can't create secure $TEMPDIR" rc_failed; rc_status -v; rc_exit; } @@ -378,8 +381,9 @@ fi fi protected="`mktemp -d -p /var/tmp mysql-protected.XXXXXX | tee /var/run/mysql/protecteddir`" + export TMPDIR="$TEMPDIR" [ -z "$protected" ] || chown "$mysql_daemon_user:$mysql_daemon_group" "$protected" - [ "`ls -ld "$protected" | grep "^drwx------[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`" ] || { + [ "`ls -ld "$protected" | grep "^drwx------[\\.\+]\?[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`" ] || { echo "Can't create secure $protected" | tee -a "$log_upgrade" rc_failed; rc_status -v; rc_exit; } @@ -419,6 +423,7 @@ chmod 640 "$log_upgrade" fi + export TMPDIR="$TEMPDIR" echo -n "Starting service MySQL " @@ -443,9 +448,9 @@ stop) echo -n "Shutting down service MySQL " kill_mysql - if [ "$TMPDIR" ] && [ -d "$TMPDIR" ] && \ - [ "`ls -ld "$TMPDIR" | grep "^drwx------[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`" ]; then - rm -rf "$TMPDIR" + if [ "$TEMPDIR" ] && [ -d "$TEMPDIR" ] && \ + [ "`ls -ld "$TEMPDIR" | grep "^drwx------[\\.\+]\?[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`" ]; then + rm -rf "$TEMPDIR" fi # Remember status and be verbose rc_status -v ++++++ series ++++++ --- /var/tmp/diff_new_pack.9ykFJf/_old 2011-08-15 16:36:54.000000000 +0200 +++ /var/tmp/diff_new_pack.9ykFJf/_new 2011-08-15 16:36:54.000000000 +0200 @@ -18,4 +18,4 @@ mysql-community-server-5.1.51-upgrade-exit-status.patch mysql-cluster-7.1.8-no-mysqld-examples.patch mysql-cluster-7.1.9a-strncat-overflow.patch -mysql-cluster-7.1.9a-string-format-indirect.patch +mysql-cluster-7.1.15-string-format-indirect.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org