[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#683720: marked as done (unblock: rrdtool/1.4.7-2)



Your message dated Sat, 18 Aug 2012 12:10:18 +0100
with message-id <1345288218.31960.55.camel@jacala.jungle.funky-badger.org>
and subject line Re: Bug#683720: unblock: rrdtool/1.4.7-2
has caused the Debian Bug report #683720,
regarding unblock: rrdtool/1.4.7-2
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
683720: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=683720
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Please unblock package rrdtool

The current version in unstable (1.4.7-2) fixes an RC bug (#664724)
causing RRDCacheD (the RRDtool Caching Daemon) to segfault on startup if
the daemon's data directory does not exist. This bug had been addressed
by an NMU by creating the default directories in the init script. I've
later added a patch fixing the issue in the daemon in order to provide a
general fix for the underlying issue.

Attached to this E-mail, you'll find a full debdiff for the source and
all binary packages.

unblock rrdtool/1.4.7-2

TIA,
Sebastian

-- 
Sebastian "tokkee" Harl +++ GnuPG-ID: 0x8501C7FC +++ http://tokkee.org/

Those who would give up Essential Liberty to purchase a little Temporary
Safety, deserve neither Liberty nor Safety.         -- Benjamin Franklin

diff -u rrdtool-1.4.7/debian/control rrdtool-1.4.7/debian/control
--- rrdtool-1.4.7/debian/control
+++ rrdtool-1.4.7/debian/control
@@ -8,7 +8,7 @@
  zlib1g-dev, libpng12-dev, libcairo2-dev, libpango1.0-dev, libfreetype6-dev,
  libdbi0-dev,
  libxml2-dev,
- tcl-dev (>= 8.5), tcl (>= 8.5),
+ tcl-dev (>= 8), tcl-dev (<= 9),
  perl (>= 5.8.0),
  python-all-dev (>= 2.6.6-3~), python-all-dbg (>= 2.6.6-3~),
  ruby1.8, ruby1.8-dev, ruby1.9.1, ruby1.9.1-dev,
diff -u rrdtool-1.4.7/debian/rules rrdtool-1.4.7/debian/rules
--- rrdtool-1.4.7/debian/rules
+++ rrdtool-1.4.7/debian/rules
@@ -123,7 +123,7 @@
 
 	# clean what the Makefiles do not clean ...
 	rm -rf bindings/perl-piped/blib bindings/perl-shared/blib \
-	       bindings/perl-piped/Makefile.old bindings/perl-shared/Makefile.old
+	       bindings/perl-piped/Makefile.old bindings/perl-shared/Makefile.old bindings/perl-shared/MYMETA.yml
 	rm -f bindings/tcl/pkgIndex.tcl bindings/tcl/tclrrd*.so
 	rm -f examples/cgi-demo.cgi
 	rm -rf src/.libs src/.deps doc/*.html doc/*.1 doc/*.txt
diff -u rrdtool-1.4.7/debian/rrdcached.init.d rrdtool-1.4.7/debian/rrdcached.init.d
--- rrdtool-1.4.7/debian/rrdcached.init.d
+++ rrdtool-1.4.7/debian/rrdcached.init.d
@@ -61,6 +61,10 @@
 		return 0
 	fi
 
+	# make sure we have the needed directories
+	mkdir -p /var/lib/rrdcached/journal/
+	mkdir -p /var/lib/rrdcached/db/
+
 	start-stop-daemon --start --quiet --oknodo --pidfile "$PIDFILE" \
 		--exec $DAEMON -- $OPTS -p "$PIDFILE"
 }
diff -u rrdtool-1.4.7/debian/changelog rrdtool-1.4.7/debian/changelog
--- rrdtool-1.4.7/debian/changelog
+++ rrdtool-1.4.7/debian/changelog
@@ -1,3 +1,27 @@
+rrdtool (1.4.7-2) unstable; urgency=low
+
+  * Ack NMUs; thanks to Jonathan Wiltshire and gregor herrmann!
+  * Added debian/patches/bts664724-rrdcached-j-segfault:
+    Fixed segfault in rrdcached when starting without having the journal
+    directory available: canonicalize the journal path after creating the
+    directory; else, realpath(3) will return NULL causing strdup() to
+    segfault. Also, check the return value of realpath(3) before further using
+    it. Thanks to Helmut Grohne for reporting this (Closes: #664724).
+
+ -- Sebastian Harl <tokkee@debian.org>  Wed, 01 Aug 2012 10:23:39 +0200
+
+rrdtool (1.4.7-1.2) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Fix "fails to install, postinst, invoke-rc.d rrdcached start, start-
+    stop-daemon, segfault":
+    (re-)create /var/lib/rrdcached/{journal,db} in init script.
+    (Closes: #664724)
+  * debian/rules: remove the generated bindings/perl-shared/MYMETA.yml in the
+    clean target.
+
+ -- gregor herrmann <gregoa@debian.org>  Sun, 29 Jul 2012 17:35:13 +0200
+
 rrdtool (1.4.7-1.1) unstable; urgency=low
 
   * Non-maintainer upload.
diff -u rrdtool-1.4.7/debian/patches/series rrdtool-1.4.7/debian/patches/series
--- rrdtool-1.4.7/debian/patches/series
+++ rrdtool-1.4.7/debian/patches/series
@@ -8,0 +9 @@
+bts664724-rrdcached-j-segfault
diff -u rrdtool-1.4.7/debian/patches/ruby_bindings_format_string.patch rrdtool-1.4.7/debian/patches/ruby_bindings_format_string.patch
--- rrdtool-1.4.7/debian/patches/ruby_bindings_format_string.patch
+++ rrdtool-1.4.7/debian/patches/ruby_bindings_format_string.patch
@@ -1,5 +1,5 @@
 Subject: fix format string in Ruby binding
-Author: Johannes Brandstätter <jbrandstaetter@gmail.com>
+Author: Johannes Brandst�er <jbrandstaetter@gmail.com>
 Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=676081
 Forwarded: no
 Last-Update: 2012-07-01
only in patch2:
unchanged:
--- rrdtool-1.4.7.orig/debian/patches/bts664724-rrdcached-j-segfault
+++ rrdtool-1.4.7/debian/patches/bts664724-rrdcached-j-segfault
@@ -0,0 +1,31 @@
+diff a/src/rrd_daemon.c b/src/rrd_daemon.c
+--- a/src/rrd_daemon.c
++++ b/src/rrd_daemon.c
+@@ -3090,8 +3090,7 @@ static int read_options (int argc, char **argv) /* {{{ */
+       case 'j':
+       {
+         char journal_dir_actual[PATH_MAX];
+-        const char *dir;
+-        dir = journal_dir = strdup(realpath((const char *)optarg, journal_dir_actual));
++        const char *dir = (const char *)optarg;
+ 
+         status = rrd_mkdir_p(dir, 0777);
+         if (status != 0)
+@@ -3100,8 +3099,16 @@ static int read_options (int argc, char **argv) /* {{{ */
+               dir, rrd_strerror(errno));
+           return 6;
+         }
++        journal_dir = realpath((const char *)dir, journal_dir_actual);
++        if (! journal_dir) {
++          fprintf(stderr, "Failed to canonicalize journal directory '%s': %s\n",
++              dir, rrd_strerror(errno));
++          return 6;
++        }
++
++        journal_dir = strdup(journal_dir);
+ 
+-        if (access(dir, R_OK|W_OK|X_OK) != 0)
++        if (access(journal_dir, R_OK|W_OK|X_OK) != 0)
+         {
+           fprintf(stderr, "Must specify a writable directory with -j! (%s)\n",
+                   errno ? rrd_strerror(errno) : "");
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Version: [-1.4.7-1.1-] {+1.4.7-2+}
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Depends: liblua5.1-rrd0 (= [-1.4.7-1.1)-] {+1.4.7-2)+}
Installed-Size: [-187-] {+188+}
Version: [-1.4.7-1.1-] {+1.4.7-2+}
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Installed-Size: [-623-] {+624+}
Version: [-1.4.7-1.1-] {+1.4.7-2+}
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Depends: libc6-dev | libc-dev, librrd4 (= [-1.4.7-1.1),-] {+1.4.7-2),+} libpng12-dev, zlib1g-dev, libcairo2-dev, libpango1.0-dev, libfreetype6-dev, libxml2-dev
Version: [-1.4.7-1.1-] {+1.4.7-2+}
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Version: [-1.4.7-1.1-] {+1.4.7-2+}
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Version: [-1.4.7-1.1-] {+1.4.7-2+}
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Version: [-1.4.7-1.1-] {+1.4.7-2+}
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Version: [-1.4.7-1.1-] {+1.4.7-2+}
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Installed-Size: [-186-] {+187+}
Version: [-1.4.7-1.1-] {+1.4.7-2+}
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Depends: [-python2.7 | python2.6,-] python (>= 2.6), python (<< 2.8), libc6 (>= 2.2.5), librrd4 (>= 1.4~rc2)
Installed-Size: [-198-] {+199+}
Version: [-1.4.7-1.1-] {+1.4.7-2+}
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Installed-Size: [-267-] {+268+}
Version: [-1.4.7-1.1-] {+1.4.7-2+}
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Version: [-1.4.7-1.1-] {+1.4.7-2+}
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Depends: rrdtool (= [-1.4.7-1.1),-] {+1.4.7-2),+} librrd4 (= [-1.4.7-1.1),-] {+1.4.7-2),+} libc6 (>= 2.2.5), [-python2.7-dbg | python2.6-dbg,-] python-dbg (>= 2.6), python-dbg (<< 2.8)
Installed-Size: [-2366-] {+2367+}
Recommends: librrds-perl (= [-1.4.7-1.1),-] {+1.4.7-2),+} rrdtool-tcl (= [-1.4.7-1.1),-] {+1.4.7-2),+} python-rrdtool (= [-1.4.7-1.1),-] {+1.4.7-2),+} librrd-ruby1.8 (= [-1.4.7-1.1),-] {+1.4.7-2),+} librrd-ruby1.9.1 (= [-1.4.7-1.1),-] {+1.4.7-2),+} python-all-dbg, liblua5.1-rrd0 (= [-1.4.7-1.1)-] {+1.4.7-2)+}
Version: [-1.4.7-1.1-] {+1.4.7-2+}
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Version: [-1.4.7-1.1-] {+1.4.7-2+}

Attachment: signature.asc
Description: Digital signature


--- End Message ---
--- Begin Message ---
On Sat, 2012-08-18 at 11:36 +0200, Sebastian Harl wrote:
> sorry, I must have missing this E-mail somehow :-/
> 
> On Sat, Aug 04, 2012 at 04:48:02PM +0100, Adam D. Barratt wrote:
> > This change appears not to be documented in the changelog:
> > 
> > --- rrdtool-1.4.7/debian/control
> > +++ rrdtool-1.4.7/debian/control
> > @@ -8,7 +8,7 @@
> > [...]
> > - tcl-dev (>= 8.5), tcl (>= 8.5),
> > + tcl-dev (>= 8), tcl-dev (<= 9),
> 
> Yes, this was a minor fix which was applied to the Debian Git tree in
> between our last upload to unstable and the 1.4.7-1.1 NMU and thus kinda
> accidentally ended up in the current upload.

Ah.

> The former restriction (depend on >= 8.5) was used for a test-build
> against newer versions of Tcl but is not imposed by RRDtool. Removing
> that restriction does not harm building RRDtool but, in contrast, makes
> backporting easier.

Thanks for the explanation.  It would be nice if the changelog could be
fixed up for a future upload, but I've unblocked the package "as-is".

Regards,

Adam

--- End Message ---

Reply to: