pkgsrc-Changes-HG archive

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

[pkgsrc/trunk]: pkgsrc/filesystems/glusterfs Upgrate to glusterfs 3.6.0



details:   https://anonhg.NetBSD.org/pkgsrc/rev/d8cd4dc3b121
branches:  trunk
changeset: 641796:d8cd4dc3b121
user:      manu <manu%pkgsrc.org@localhost>
date:      Tue Nov 18 14:38:15 2014 +0000

description:
Upgrate to glusterfs 3.6.0

New features:

- Volume Snapshots
Distributed lvm thin-pool based snapshots for backing up volumes
in a Gluster Trusted Storage Pool.  Apart from providing cluster
wide co-ordination to trigger a consistent snapshot, several
improvements have been  performed through the GlusterFS stack to
make translators more crash consistent. Snapshotting of volumes is
tightly coupled with lvm today but one could also enhance the same
framework to integrate with a backend storage technology like btrfs
that can perform snapshots.

- Erasure Coding
Xavier Hernandez from Datalab added support to perform erasure
coding of data in a GlusterFS volume across nodes in a Trusted
Storage Pool. Erasure Coding requires fewer nodes to provide better
redundancy than a n-way replicated volume and can help in reducing
the overall deployment cost. We look forward to build on this
foundation and deliver more enhancememnts in upcoming releases.

- Better SSL support
Multiple improvements to SSL support in GlusterFS. The GlusterFS
driver in OpenStack Manila that provides certificate based access
to tenants relies on these improvements.

- Meta translator
This translator provides a /proc like view for examining internal
state of translators on the client stack of a GlusterFS volume and
certainly looks like an interface that I would be heavily consuming
for introspection of  GlusterFS.

- Automatic File Replication (AFR) v2
A significant re-factor of the synchronous replication translator,
provides granular entry self-healing and reduced resource consumption
with entry self-heals.

- NetBSD, OSX and FreeBSD ports
Lot of fixes on the portability front. The NetBSD port passes most
regression tests as of 3.6.0. At this point, none of these ports
are ready to be deployed in production. However, with dedicated
maintainers for each of these ports, we expect to reach production
readiness on these platforms in a future release.

Complete releases notes are available at
https://github.com/gluster/glusterfs/blob/release-3.6/doc/release-notes/3.6.0.md

diffstat:

 filesystems/glusterfs/MESSAGE.NetBSD                                      |   21 +-
 filesystems/glusterfs/Makefile                                            |   60 +-
 filesystems/glusterfs/PLIST                                               |  196 +++--
 filesystems/glusterfs/PLIST.georeplication                                |   35 -
 filesystems/glusterfs/distinfo                                            |   21 +-
 filesystems/glusterfs/files/glusterd.sh                                   |   37 +
 filesystems/glusterfs/files/glusterfsd.sh                                 |   19 -
 filesystems/glusterfs/files/xattr-init.sh                                 |   67 -
 filesystems/glusterfs/options.mk                                          |   13 -
 filesystems/glusterfs/patches/patch-9006                                  |   55 +
 filesystems/glusterfs/patches/patch-9010                                  |   72 ++
 filesystems/glusterfs/patches/patch-9045                                  |   43 +
 filesystems/glusterfs/patches/patch-9080                                  |  264 +++++++
 filesystems/glusterfs/patches/patch-9084                                  |  350 ++++++++++
 filesystems/glusterfs/patches/patch-argp-standalone_argp-fmtstream.c      |   19 -
 filesystems/glusterfs/patches/patch-argp-standalone_argp-fmtstream.h      |   48 -
 filesystems/glusterfs/patches/patch-configure                             |   61 +
 filesystems/glusterfs/patches/patch-rpc_rpc-lib_src_rpcsvc.c              |   17 +
 filesystems/glusterfs/patches/patch-xlator_cluster_dht_src_dht-common.c   |   17 +
 filesystems/glusterfs/patches/patch-xlator_features_glupy_src_Makefile.in |   28 +
 filesystems/glusterfs/patches/patch-xlator_storage_posix_src_posix.c      |   17 +
 21 files changed, 1141 insertions(+), 319 deletions(-)

diffs (truncated from 1644 to 300 lines):

diff -r ea7fea2dcc18 -r d8cd4dc3b121 filesystems/glusterfs/MESSAGE.NetBSD
--- a/filesystems/glusterfs/MESSAGE.NetBSD      Tue Nov 18 13:59:57 2014 +0000
+++ b/filesystems/glusterfs/MESSAGE.NetBSD      Tue Nov 18 14:38:15 2014 +0000
@@ -1,5 +1,5 @@
 ===========================================================================
-$NetBSD: MESSAGE.NetBSD,v 1.14 2013/04/08 11:17:13 rodent Exp $
+$NetBSD: MESSAGE.NetBSD,v 1.15 2014/11/18 14:38:15 manu Exp $
 
 *** GlusterFS clients ***
 This is required in /etc/sysctl.conf in order to avoid hangs on I/O operations
@@ -8,7 +8,7 @@
        net.inet.tcp.recvbuf_max=1048576
 
 In order to use mount -t glusterfs, please install this link
-       ln -s ${PREFIX}/sbin/mount.glusterfs /sbin/mount_glusterfs
+       ln -s ${PREFIX}/sbin/mount_glusterfs /sbin/mount_glusterfs
 
 * Only for netbsd-5 branch (later NetBSD GENERIC kernels have it enabled):
 A kernel with the following option is required:
@@ -18,17 +18,14 @@
 
 *** GlusterFS servers ***
 glusterfs servers will need extended attributes in exported filesystems.
-This require a kernel with the following options:
-       options         UFS_EXTATTR
-
-You will need to create the directories below on exported filesystems' roots,
-and then mount with -o extattr
+This is currently only supported in UFS1 (newfs -O1). You will need to
+create the directories below on exported filesystems' roots, and then 
+mount with -o extattr
        .attribute/system
        .attribute/user
-
-* Only for netbsd-5 branch (later NetBSD version do not need that)
-mount -o extattr shall not be used, but the kernel needs options below:
-       options         UFS_EXTATTR_AUTOSTART
-       options         UFS_EXTATTR_AUTOCREATE=1024
+ 
+* For netbsd-6 branch and earlier (later NetBSD GENERIC kernels have it),
+the kernel must have the following option enabled:
+       options         UFS_EXTATTR
 
 ===========================================================================
diff -r ea7fea2dcc18 -r d8cd4dc3b121 filesystems/glusterfs/Makefile
--- a/filesystems/glusterfs/Makefile    Tue Nov 18 13:59:57 2014 +0000
+++ b/filesystems/glusterfs/Makefile    Tue Nov 18 14:38:15 2014 +0000
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.43 2014/08/13 22:37:37 joerg Exp $
+# $NetBSD: Makefile,v 1.44 2014/11/18 14:38:15 manu Exp $
 
-DISTNAME=      glusterfs-3.5.0
-PKGREVISION=   4
+DISTNAME=      glusterfs-3.6.0
+#PKGREVISION=  1
 CATEGORIES=    filesystems
 MASTER_SITES=  http://bits.gluster.org/pub/gluster/glusterfs/src/
 
@@ -16,19 +16,31 @@
 
 CONFIGURE_ARGS+=       --disable-fusermount
 CONFIGURE_ARGS+=       --localstatedir=${VARBASE}
-CONFIGURE_ARGS+=       CFLAGS=${CFLAGS:M*:Q}\ -DDEBUG
 
 # Make sure we do not attept to link with -lfl
 # Only libfl.a is available, and libtool wants libfl.so
 MAKE_FLAGS+=           LEXLIB=""
 MAKE_FLAGS+=           libglusterfs_la_LIBADD=""
-MAKE_ENV+=             AM_MAKEFLAGS=${MAKE_FLAGS:Q}
 
-REPLACE_PYTHON=                api/examples/gfapi.py
+#REPLACE_PYTHON+=      contrib/ipaddr-py/ipaddr.py
+#REPLACE_PYTHON+=      gen-headers.py
+#REPLACE_PYTHON+=      tests/bugs/overlap.py
+#REPLACE_PYTHON+=      tests/utils/create-files.py
+REPLACE_PYTHON+=       geo-replication/syncdaemon/changelogagent.py
+REPLACE_PYTHON+=       geo-replication/syncdaemon/gsyncd.py
 REPLACE_PYTHON+=       contrib/ipaddr-py/ipaddr.py
-REPLACE_PYTHON+=       gen-headers.py
-REPLACE_PYTHON+=       tests/bugs/overlap.py
-REPLACE_PYTHON+=       tests/utils/create-files.py
+
+REPLACE_BASH+=         extras/geo-rep/generate-gfid-file.sh
+REPLACE_BASH+=         extras/geo-rep/get-gfid.sh
+REPLACE_BASH+=         extras/post-upgrade-script-for-quota.sh
+REPLACE_BASH+=         extras/pre-upgrade-script-for-quota.sh
+REPLACE_BASH+=         extras/geo-rep/slave-upgrade.sh
+REPLACE_BASH+=         extras/geo-rep/gsync-upgrade.sh
+REPLACE_BASH+=         geo-replication/src/gverify.sh
+REPLACE_BASH+=         geo-replication/src/peer_add_secret_pub.in
+REPLACE_BASH+=         geo-replication/src/peer_gsec_create.in
+REPLACE_BASH+=         geo-replication/src/set_geo_rep_pem_keys.sh
+
 
 SUBST_CLASSES+=                mtab
 SUBST_STAGE.mtab=      post-build
@@ -47,14 +59,14 @@
 SUBST_CLASSES+=                vol
 SUBST_STAGE.vol=       post-build
 SUBST_FILES.vol=       extras/Makefile
-SUBST_SED.vol=         -e "s/glusterd.vol/glusterd.vol.sample/g"
+SUBST_SED.vol=         -e "/^vol_DATA/s/glusterd.vol/glusterd.vol.sample/g"
 
 EGDIR=                 ${PREFIX}/etc/glusterfs
 CONF_FILES+=           ${EGDIR}/glusterd.vol.sample ${EGDIR}/glusterd.vol
 OWN_DIRS+=             ${VARBASE}/log/glusterfs
 BUILD_DEFS+=           VARBASE
 
-RCD_SCRIPTS=           glusterfsd
+RCD_SCRIPTS=           glusterd
 
 PLIST_SRC=             ${PLIST_SRC_DFLT}
 PLIST_SUBST+=          VARBASE=${VARBASE}
@@ -62,29 +74,27 @@
 PLIST_SUBST+=          PYSITELIB=${PYSITELIB:Q}
 MESSAGE_SRC=           ${PKGDIR}/MESSAGE.${OPSYS}
 
-
 pre-build:
-       cd ${WRKSRC} && ./gen-headers.py
-
-post-build:
-       cp ${WRKSRC}/extras/glusterd.vol ${WRKSRC}/extras/glusterd.vol.sample
+       cd ${WRKSRC}/extras &&                                  \
+       echo "glusterd.vol.sample: glusterd.vol" >> Makefile && \
+       echo "  cp glusterd.vol glusterd.vol.sample" >> Makefile
 
 post-install:
-       ${INSTALL_SCRIPT} ${DESTDIR}/sbin/mount.glusterfs \
-           ${DESTDIR}/${PREFIX}/sbin/mount.glusterfs
+       ${INSTALL_SCRIPT} ${DESTDIR}/sbin/mount_glusterfs \
+           ${DESTDIR}/${PREFIX}/sbin/mount_glusterfs
 
 # Debug
 CFLAGS+=               -g 
 INSTALL_UNSTRIPPED=    yes
-.include "../../devel/boehm-gc/buildlink3.mk"
-CFLAGS+=-DGC_DEBUG
-CFLAGS+=-include gc.h
-LIBS+=-lgc
-
-.include "options.mk"
+CONFIGURE_ARGS+=       --enable-debug
+#.include "../../devel/boehm-gc/buildlink3.mk"
+#CFLAGS+=-DGC_DEBUG
+#CFLAGS+=-include gc.h
+#LIBS+=-lgc
 
 .include "../../mk/bsd.prefs.mk"
-.include "../../devel/argp/buildlink3.mk"
+#.include "../../devel/argp/buildlink3.mk"
+.include "../../textproc/libxml2/buildlink3.mk"
 .include "../../lang/python/application.mk"
 .include "../../lang/python/extension.mk"
 
diff -r ea7fea2dcc18 -r d8cd4dc3b121 filesystems/glusterfs/PLIST
--- a/filesystems/glusterfs/PLIST       Tue Nov 18 13:59:57 2014 +0000
+++ b/filesystems/glusterfs/PLIST       Tue Nov 18 14:38:15 2014 +0000
@@ -1,75 +1,86 @@
-@comment $NetBSD: PLIST,v 1.19 2014/08/13 22:37:37 joerg Exp $
+@comment $NetBSD: PLIST,v 1.20 2014/11/18 14:38:15 manu Exp $
+${PYSITELIB}/gluster/__init__.py
+${PYSITELIB}/gluster/__init__.pyc
+${PYSITELIB}/gluster/__init__.pyo
+${PYSITELIB}/gluster/glupy.py
+${PYSITELIB}/gluster/glupy.pyc
+${PYSITELIB}/gluster/glupy.pyo
 etc/glusterfs/gluster-rsyslog-5.8.conf
 etc/glusterfs/gluster-rsyslog-7.2.conf
 etc/glusterfs/glusterd.vol.sample
 etc/glusterfs/glusterfs-georep-logrotate
 etc/glusterfs/glusterfs-logrotate
+etc/glusterfs/group-virt.example
 etc/glusterfs/logger.conf.example
 include/glusterfs/api/glfs-handles.h
 include/glusterfs/api/glfs.h
 include/glusterfs/gfchangelog/changelog.h
-lib/glusterfs/3.5.0/auth/addr.la
-lib/glusterfs/3.5.0/auth/login.la
-lib/glusterfs/3.5.0/rpc-transport/socket.la
-lib/glusterfs/3.5.0/xlator/cluster/afr.la
-lib/glusterfs/3.5.0/xlator/cluster/dht.la
-lib/glusterfs/3.5.0/xlator/cluster/distribute.so
-lib/glusterfs/3.5.0/xlator/cluster/nufa.la
-lib/glusterfs/3.5.0/xlator/cluster/pump.la
-lib/glusterfs/3.5.0/xlator/cluster/replicate.so
-lib/glusterfs/3.5.0/xlator/cluster/stripe.la
-lib/glusterfs/3.5.0/xlator/cluster/switch.la
-lib/glusterfs/3.5.0/xlator/debug/error-gen.la
-lib/glusterfs/3.5.0/xlator/debug/io-stats.la
-lib/glusterfs/3.5.0/xlator/debug/trace.la
-lib/glusterfs/3.5.0/xlator/encryption/crypt.la
-lib/glusterfs/3.5.0/xlator/encryption/rot-13.la
-lib/glusterfs/3.5.0/xlator/features/access-control.so
-lib/glusterfs/3.5.0/xlator/features/cdc.la
-lib/glusterfs/3.5.0/xlator/features/changelog.la
-lib/glusterfs/3.5.0/xlator/features/gfid-access.la
-lib/glusterfs/3.5.0/xlator/features/glupy.la
-lib/glusterfs/3.5.0/xlator/features/glupy/debug-trace.py
-lib/glusterfs/3.5.0/xlator/features/glupy/debug-trace.pyc
-lib/glusterfs/3.5.0/xlator/features/glupy/debug-trace.pyo
-lib/glusterfs/3.5.0/xlator/features/glupy/helloworld.py
-lib/glusterfs/3.5.0/xlator/features/glupy/helloworld.pyc
-lib/glusterfs/3.5.0/xlator/features/glupy/helloworld.pyo
-lib/glusterfs/3.5.0/xlator/features/glupy/negative.py
-lib/glusterfs/3.5.0/xlator/features/glupy/negative.pyc
-lib/glusterfs/3.5.0/xlator/features/glupy/negative.pyo
-lib/glusterfs/3.5.0/xlator/features/index.la
-lib/glusterfs/3.5.0/xlator/features/locks.la
-lib/glusterfs/3.5.0/xlator/features/mac-compat.la
-lib/glusterfs/3.5.0/xlator/features/marker.la
-lib/glusterfs/3.5.0/xlator/features/posix-locks.so
-lib/glusterfs/3.5.0/xlator/features/prot_client.la
-lib/glusterfs/3.5.0/xlator/features/prot_dht.la
-lib/glusterfs/3.5.0/xlator/features/prot_server.la
-lib/glusterfs/3.5.0/xlator/features/quiesce.la
-lib/glusterfs/3.5.0/xlator/features/quota.la
-lib/glusterfs/3.5.0/xlator/features/quotad.la
-lib/glusterfs/3.5.0/xlator/features/read-only.la
-lib/glusterfs/3.5.0/xlator/features/worm.la
-lib/glusterfs/3.5.0/xlator/mgmt/glusterd.la
-lib/glusterfs/3.5.0/xlator/mount/api.la
-lib/glusterfs/3.5.0/xlator/mount/fuse.la
-lib/glusterfs/3.5.0/xlator/nfs/server.la
-lib/glusterfs/3.5.0/xlator/performance/io-cache.la
-lib/glusterfs/3.5.0/xlator/performance/io-threads.la
-lib/glusterfs/3.5.0/xlator/performance/md-cache.la
-lib/glusterfs/3.5.0/xlator/performance/open-behind.la
-lib/glusterfs/3.5.0/xlator/performance/quick-read.la
-lib/glusterfs/3.5.0/xlator/performance/read-ahead.la
-lib/glusterfs/3.5.0/xlator/performance/readdir-ahead.la
-lib/glusterfs/3.5.0/xlator/performance/stat-prefetch.so
-lib/glusterfs/3.5.0/xlator/performance/write-behind.la
-lib/glusterfs/3.5.0/xlator/protocol/client.la
-lib/glusterfs/3.5.0/xlator/protocol/server.la
-lib/glusterfs/3.5.0/xlator/storage/posix.la
-lib/glusterfs/3.5.0/xlator/system/posix-acl.la
-lib/glusterfs/3.5.0/xlator/testing/features/template.la
-lib/glusterfs/3.5.0/xlator/testing/performance/symlink-cache.la
+lib/glusterfs/3.6.0/auth/addr.la
+lib/glusterfs/3.6.0/auth/login.la
+lib/glusterfs/3.6.0/rpc-transport/socket.la
+lib/glusterfs/3.6.0/xlator/cluster/afr.la
+lib/glusterfs/3.6.0/xlator/cluster/dht.la
+lib/glusterfs/3.6.0/xlator/cluster/distribute.so
+lib/glusterfs/3.6.0/xlator/cluster/nufa.la
+lib/glusterfs/3.6.0/xlator/cluster/pump.la
+lib/glusterfs/3.6.0/xlator/cluster/replicate.so
+lib/glusterfs/3.6.0/xlator/cluster/stripe.la
+lib/glusterfs/3.6.0/xlator/cluster/switch.la
+lib/glusterfs/3.6.0/xlator/debug/error-gen.la
+lib/glusterfs/3.6.0/xlator/debug/io-stats.la
+lib/glusterfs/3.6.0/xlator/debug/trace.la
+lib/glusterfs/3.6.0/xlator/encryption/crypt.la
+lib/glusterfs/3.6.0/xlator/encryption/rot-13.la
+lib/glusterfs/3.6.0/xlator/features/access-control.so
+lib/glusterfs/3.6.0/xlator/features/barrier.la
+lib/glusterfs/3.6.0/xlator/features/cdc.la
+lib/glusterfs/3.6.0/xlator/features/changelog.la
+lib/glusterfs/3.6.0/xlator/features/gfid-access.la
+lib/glusterfs/3.6.0/xlator/features/glupy.la
+lib/glusterfs/3.6.0/xlator/features/glupy/debug-trace.py
+lib/glusterfs/3.6.0/xlator/features/glupy/debug-trace.pyc
+lib/glusterfs/3.6.0/xlator/features/glupy/debug-trace.pyo
+lib/glusterfs/3.6.0/xlator/features/glupy/helloworld.py
+lib/glusterfs/3.6.0/xlator/features/glupy/helloworld.pyc
+lib/glusterfs/3.6.0/xlator/features/glupy/helloworld.pyo
+lib/glusterfs/3.6.0/xlator/features/glupy/negative.py
+lib/glusterfs/3.6.0/xlator/features/glupy/negative.pyc
+lib/glusterfs/3.6.0/xlator/features/glupy/negative.pyo
+lib/glusterfs/3.6.0/xlator/features/index.la
+lib/glusterfs/3.6.0/xlator/features/locks.la
+lib/glusterfs/3.6.0/xlator/features/mac-compat.la
+lib/glusterfs/3.6.0/xlator/features/marker.la
+lib/glusterfs/3.6.0/xlator/features/posix-locks.so
+lib/glusterfs/3.6.0/xlator/features/prot_client.la
+lib/glusterfs/3.6.0/xlator/features/prot_dht.la
+lib/glusterfs/3.6.0/xlator/features/prot_server.la
+lib/glusterfs/3.6.0/xlator/features/quiesce.la
+lib/glusterfs/3.6.0/xlator/features/quota.la
+lib/glusterfs/3.6.0/xlator/features/quotad.la
+lib/glusterfs/3.6.0/xlator/features/read-only.la
+lib/glusterfs/3.6.0/xlator/features/snapview-client.la
+lib/glusterfs/3.6.0/xlator/features/snapview-server.la
+lib/glusterfs/3.6.0/xlator/features/worm.la
+lib/glusterfs/3.6.0/xlator/meta.la
+lib/glusterfs/3.6.0/xlator/mgmt/glusterd.la
+lib/glusterfs/3.6.0/xlator/mount/api.la
+lib/glusterfs/3.6.0/xlator/mount/fuse.la
+lib/glusterfs/3.6.0/xlator/nfs/server.la
+lib/glusterfs/3.6.0/xlator/performance/io-cache.la
+lib/glusterfs/3.6.0/xlator/performance/io-threads.la
+lib/glusterfs/3.6.0/xlator/performance/md-cache.la
+lib/glusterfs/3.6.0/xlator/performance/open-behind.la
+lib/glusterfs/3.6.0/xlator/performance/quick-read.la
+lib/glusterfs/3.6.0/xlator/performance/read-ahead.la
+lib/glusterfs/3.6.0/xlator/performance/readdir-ahead.la
+lib/glusterfs/3.6.0/xlator/performance/stat-prefetch.so
+lib/glusterfs/3.6.0/xlator/performance/write-behind.la
+lib/glusterfs/3.6.0/xlator/protocol/client.la



Home | Main Index | Thread Index | Old Index