Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Jun 2020 17:44:20 +0000 (UTC)
From:      Niclas Zeising <zeising@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-branches@freebsd.org
Subject:   svn commit: r538923 - in branches/2020Q2/databases/rrdtool: . files
Message-ID:  <202006151744.05FHiKSx019929@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: zeising
Date: Mon Jun 15 17:44:20 2020
New Revision: 538923
URL: https://svnweb.freebsd.org/changeset/ports/538923

Log:
  MFH: r538811
  
  databases/rrdtool: Fix resize on ZFS
  
  Add an upstream patch that fixes resize on ZFS.  Since ZFS does not support
  posix_fallocate(), returning EINVAL, the patch simply ignores this error
  from posix_fallocate().
  
  PR:		245898
  Reported by:	Tomohiro Hosaka
  
  Approved by:	ports-secteam (joenum)

Added:
  branches/2020Q2/databases/rrdtool/files/patch-8829fa7.c
     - copied unchanged from r538811, head/databases/rrdtool/files/patch-8829fa7.c
Modified:
  branches/2020Q2/databases/rrdtool/Makefile
Directory Properties:
  branches/2020Q2/   (props changed)

Modified: branches/2020Q2/databases/rrdtool/Makefile
==============================================================================
--- branches/2020Q2/databases/rrdtool/Makefile	Mon Jun 15 17:07:48 2020	(r538922)
+++ branches/2020Q2/databases/rrdtool/Makefile	Mon Jun 15 17:44:20 2020	(r538923)
@@ -3,7 +3,7 @@
 
 PORTNAME=	rrdtool
 PORTVERSION=	1.7.2
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	databases graphics
 MASTER_SITES=	http://oss.oetiker.ch/rrdtool/pub/
 

Copied: branches/2020Q2/databases/rrdtool/files/patch-8829fa7.c (from r538811, head/databases/rrdtool/files/patch-8829fa7.c)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/2020Q2/databases/rrdtool/files/patch-8829fa7.c	Mon Jun 15 17:44:20 2020	(r538923, copy of r538811, head/databases/rrdtool/files/patch-8829fa7.c)
@@ -0,0 +1,35 @@
+From 8829fa758f3e585f20094cff69b32489f4cce3e7 Mon Sep 17 00:00:00 2001
+From: Niclas Zeising
+Date: Sun, 14 Jun 2020 11:31:33 +0200
+Subject: [PATCH] rrd_open: Ignore EINVAL from posix_fallocate()
+
+ZFS on FreeBSD (at least) does not support posix_fallocate(),
+returning EINVAL instead.  Ignore this error and continue normally.
+Without this change, it is not possible to resize rrd files on ZFS.
+
+This fixes #1082
+
+Signed-off-by: Niclas Zeising
+---
+ src/rrd_open.c | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/src/rrd_open.c b/src/rrd_open.c
+index d8005fe4..00dfb8ca 100644
+--- src/rrd_open.c
++++ src/rrd_open.c
+@@ -363,7 +363,13 @@ rrd_file_t *rrd_open(
+          */
+         int       fret =
+             posix_fallocate(rrd_simple_file->fd, 0, newfile_size);
+-        if (fret) {
++        /* ZFS (on FreeBSD) does not support posix_fallocate(), always returning
++         * EINVAL.  Ignore this error and continue anyway.
++         * Without this, resize isn't possible on ZFS filesystems.
++         */
++        if (fret == EINVAL) {
++            /* DO NOTHING */
++        } else if (fret) {
+             rrd_set_error("posix_fallocate '%s': %s", file_name,
+                           rrd_strerror(fret));
+             goto out_close;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202006151744.05FHiKSx019929>