summaryrefslogtreecommitdiff
path: root/filesystems/glusterfs
diff options
context:
space:
mode:
authormanu <manu>2015-06-02 03:44:16 +0000
committermanu <manu>2015-06-02 03:44:16 +0000
commitfdd6a30a948c49087da9945e62d331a56792a29c (patch)
treef5cf1c15a66fef8668f98ee6398439d7a5e290de /filesystems/glusterfs
parent0758b47179fb4df2f49c23576479a306284699de (diff)
downloadpkgsrc-fdd6a30a948c49087da9945e62d331a56792a29c.tar.gz
* Bitrot Detection
Bitrot detection is a technique used to identify an ?insidious? type of disk error where data is silently corrupted with no indication from the disk to the storage software layer that an error has occurred. When bitrot detection is enabled on a volume, gluster performs signing of all files/objects in the volume and scrubs data periodically for signature verification. All anomalies observed will be noted in log files. * Multi threaded epoll for performance improvements Gluster 3.7 introduces multiple threads to dequeue and process more requests from epoll queues. This improves performance by processing more I/O requests. Workloads that involve read/write operations on a lot of small files can benefit from this enhancement. * Volume Tiering [Experimental] Policy based tiering for placement of files. This feature will serve as a foundational piece for building support for data classification. Volume Tiering is marked as an experimental feature for this release. It is expected to be fully supported in a 3.7.x minor release. Trashcan This feature will enable administrators to temporarily store deleted files from Gluster volumes for a specified time period. * Efficient Object Count and Inode Quota Support This improvement enables an easy mechanism to retrieve the number of objects per directory or volume. Count of objects/files within a directory hierarchy is stored as an extended attribute of a directory. The extended attribute can be queried to retrieve the count. This feature has been utilized to add support for inode quotas. * Pro-active Self healing for Erasure Coding Gluster 3.7 adds pro-active self healing support for erasure coded volumes. * Exports and Netgroups Authentication for NFS This feature adds Linux-style exports & netgroups authentication to the native NFS server. This enables administrators to restrict access to specific clients & netgroups for volume/sub-directory NFSv3 exports. * GlusterFind GlusterFind is a new tool that provides a mechanism to monitor data events within a volume. Detection of events like modified files is made easier without having to traverse the entire volume. * Rebalance Performance Improvements Rebalance and remove brick operations in Gluster get a performance boost by speeding up identification of files needing movement and a multi-threaded mechanism to move all such files. * NFSv4 and pNFS support Gluster 3.7 supports export of volumes through NFSv4, NFSv4.1 and pNFS. This support is enabled via NFS Ganesha. Infrastructure changes done in Gluster 3.7 to support this feature include: - Addition of upcall infrastructure for cache invalidation. - Support for lease locks and delegations. - Support for enabling Ganesha through Gluster CLI. - Corosync and pacemaker based implementation providing resource monitoring and failover to accomplish NFS HA. pNFS support for Gluster volumes and NFSv4 delegations are in beta for this release. Infrastructure changes to support Lease locks and NFSv4 delegations are targeted for a 3.7.x minor release. * Snapshot Scheduling With this enhancement, administrators can schedule volume snapshots. * Snapshot Cloning Volume snapshots can now be cloned to create a new writeable volume. * Sharding [Experimental] Sharding addresses the problem of fragmentation of space within a volume. This feature adds support for files that are larger than the size of an individual brick. Sharding works by chunking files to blobs of a configurabe size. Sharding is an experimental feature for this release. It is expected to be fully supported in a 3.7.x minor release. * RCU in glusterd Thread synchronization and critical section access has been improved by introducing userspace RCU in glusterd * Arbiter Volumes Arbiter volumes are 3 way replicated volumes where the 3rd brick of the replica is automatically configured as an arbiter. The 3rd brick contains only metadata which provides network partition tolerance and prevents split-brains from happening. Update to GlusterFS 3.7.1 * Better split-brain resolution split-brain resolutions can now be also driven by users without administrative intervention. * Geo-replication improvements There have been several improvements in geo-replication for stability and performance. * Minor Improvements - Message ID based logging has been added for several translators. - Quorum support for reads. - Snapshot names contain timestamps by default.Subsequent access to the snapshots should be done by the name listed in gluster snapshot list - Support for gluster volume get <volname> added. - libgfapi has added handle based functions to get/set POSIX ACLs based on common libacl structures.
Diffstat (limited to 'filesystems/glusterfs')
-rw-r--r--filesystems/glusterfs/Makefile57
-rw-r--r--filesystems/glusterfs/PLIST202
-rw-r--r--filesystems/glusterfs/distinfo12
-rw-r--r--filesystems/glusterfs/patches/patch-10963110
-rw-r--r--filesystems/glusterfs/patches/patch-rpc_rpc-lib_src_rpcsvc.c17
-rw-r--r--filesystems/glusterfs/patches/patch-xlator_storage_posix_src_posix.c17
-rw-r--r--filesystems/glusterfs/patches/patch-xlators_mgmt_glusterd_src_Makefile.in15
7 files changed, 279 insertions, 151 deletions
diff --git a/filesystems/glusterfs/Makefile b/filesystems/glusterfs/Makefile
index 682c3a5db3e..895ccc0691a 100644
--- a/filesystems/glusterfs/Makefile
+++ b/filesystems/glusterfs/Makefile
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.50 2015/05/01 12:19:07 joerg Exp $
+# $NetBSD: Makefile,v 1.51 2015/06/02 03:44:16 manu Exp $
-DISTNAME= glusterfs-3.6.2
+DISTNAME= glusterfs-3.7.1
PKGREVISION= 1
CATEGORIES= filesystems
MASTER_SITES= http://bits.gluster.org/pub/gluster/glusterfs/src/
@@ -12,7 +12,7 @@ LICENSE= gnu-gpl-v3
GNU_CONFIGURE= yes
USE_LIBTOOL= yes
-USE_TOOLS+= flex bison
+USE_TOOLS+= flex bison pkg-config bash
CONFIGURE_ARGS+= --disable-fusermount
CONFIGURE_ARGS+= --localstatedir=${VARBASE}
@@ -20,26 +20,41 @@ CONFIGURE_ARGS+= --localstatedir=${VARBASE}
# 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=""
PYTHON_VERSIONS_INCOMPATIBLE= 33 34 # only 2.x supported as of 3.6.0
-#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+= contrib/ipaddr-py/ipaddr.py
+REPLACE_PYTHON+= extras/snap_scheduler/gcron.py
+REPLACE_PYTHON+= extras/snap_scheduler/snap_scheduler.py
+REPLACE_PYTHON+= geo-replication/src/peer_mountbroker.in
REPLACE_PYTHON+= geo-replication/syncdaemon/changelogagent.py
REPLACE_PYTHON+= geo-replication/syncdaemon/gsyncd.py
-REPLACE_PYTHON+= contrib/ipaddr-py/ipaddr.py
-
+REPLACE_PYTHON+= geo-replication/syncdaemon/gsyncdstatus.py
+REPLACE_PYTHON+= tools/gfind_missing_files/gfid_to_path.py
+REPLACE_PYTHON+= tools/glusterfind/glusterfind.in
+REPLACE_PYTHON+= tools/glusterfind/src/__init__.py
+REPLACE_PYTHON+= tools/glusterfind/src/brickfind.py
+REPLACE_PYTHON+= tools/glusterfind/src/changelog.py
+REPLACE_PYTHON+= tools/glusterfind/src/changelogdata.py
+REPLACE_PYTHON+= tools/glusterfind/src/conf.py
+REPLACE_PYTHON+= tools/glusterfind/src/libgfchangelog.py
+REPLACE_PYTHON+= tools/glusterfind/src/main.py
+REPLACE_PYTHON+= tools/glusterfind/src/nodeagent.py
+REPLACE_PYTHON+= tools/glusterfind/src/utils.py
+
+REPLACE_BASH+= extras/ganesha/ocf/ganesha_grace
+REPLACE_BASH+= extras/ganesha/ocf/ganesha_mon
+REPLACE_BASH+= extras/ganesha/ocf/ganesha_nfsd
+REPLACE_BASH+= extras/ganesha/scripts/ganesha-ha.sh
REPLACE_BASH+= extras/geo-rep/generate-gfid-file.sh
REPLACE_BASH+= extras/geo-rep/get-gfid.sh
+REPLACE_BASH+= extras/geo-rep/gsync-upgrade.sh
+REPLACE_BASH+= extras/geo-rep/slave-upgrade.sh
+REPLACE_BASH+= extras/peer_add_secret_pub.in
+REPLACE_BASH+= extras/peer_add_secret_pub.in
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
@@ -78,20 +93,13 @@ MESSAGE_SRC= ${PKGDIR}/MESSAGE.${OPSYS}
pre-build:
cd ${WRKSRC}/extras && \
- echo "glusterd.vol.sample: glusterd.vol" >> Makefile && \
- echo " cp glusterd.vol glusterd.vol.sample" >> Makefile
+ ${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
-.include "../../mk/bsd.prefs.mk"
-
-.if ${MACHINE_ARCH} == "x86_64"
-PLIST_VARS+=ec
-PLIST.ec=yes
-.endif
-
# Debug
CFLAGS+= -g
INSTALL_UNSTRIPPED= yes
@@ -101,9 +109,12 @@ CONFIGURE_ARGS+= --enable-debug
#CFLAGS+=-include gc.h
#LIBS+=-lgc
-#.include "../../devel/argp/buildlink3.mk"
+.include "../../mk/bsd.prefs.mk"
+
.include "../../security/openssl/buildlink3.mk"
.include "../../textproc/libxml2/buildlink3.mk"
+.include "../../databases/sqlite3/buildlink3.mk"
+.include "../../devel/userspace-rcu/buildlink3.mk"
.include "../../lang/python/application.mk"
.include "../../lang/python/extension.mk"
diff --git a/filesystems/glusterfs/PLIST b/filesystems/glusterfs/PLIST
index ef345ea5f49..b8d9f9722d4 100644
--- a/filesystems/glusterfs/PLIST
+++ b/filesystems/glusterfs/PLIST
@@ -1,10 +1,12 @@
-@comment $NetBSD: PLIST,v 1.23 2015/05/01 12:19:07 joerg Exp $
+@comment $NetBSD: PLIST,v 1.24 2015/06/02 03:44:16 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
+${PYSITELIB}/gluster/glupy/__init__.py
+${PYSITELIB}/gluster/glupy/__init__.pyc
+${PYSITELIB}/gluster/glupy/__init__.pyo
+bin/glusterfind
+etc/ganesha/ganesha-ha.conf.sample
etc/glusterfs/gluster-rsyslog-5.8.conf
etc/glusterfs/gluster-rsyslog-7.2.conf
etc/glusterfs/glusterd.vol.sample
@@ -15,87 +17,136 @@ etc/glusterfs/logger.conf.example
include/glusterfs/api/glfs-handles.h
include/glusterfs/api/glfs.h
include/glusterfs/gfchangelog/changelog.h
-lib/glusterfs/3.6.2/auth/addr.la
-lib/glusterfs/3.6.2/auth/login.la
-lib/glusterfs/3.6.2/rpc-transport/socket.la
-lib/glusterfs/3.6.2/xlator/cluster/afr.la
-lib/glusterfs/3.6.2/xlator/cluster/dht.la
-lib/glusterfs/3.6.2/xlator/cluster/distribute.so
-${PLIST.ec}lib/glusterfs/3.6.2/xlator/cluster/disperse.so
-${PLIST.ec}lib/glusterfs/3.6.2/xlator/cluster/ec.la
-lib/glusterfs/3.6.2/xlator/cluster/nufa.la
-lib/glusterfs/3.6.2/xlator/cluster/pump.la
-lib/glusterfs/3.6.2/xlator/cluster/replicate.so
-lib/glusterfs/3.6.2/xlator/cluster/stripe.la
-lib/glusterfs/3.6.2/xlator/cluster/switch.la
-lib/glusterfs/3.6.2/xlator/debug/error-gen.la
-lib/glusterfs/3.6.2/xlator/debug/io-stats.la
-lib/glusterfs/3.6.2/xlator/debug/trace.la
-lib/glusterfs/3.6.2/xlator/encryption/crypt.la
-lib/glusterfs/3.6.2/xlator/encryption/rot-13.la
-lib/glusterfs/3.6.2/xlator/features/access-control.so
-lib/glusterfs/3.6.2/xlator/features/barrier.la
-lib/glusterfs/3.6.2/xlator/features/cdc.la
-lib/glusterfs/3.6.2/xlator/features/changelog.la
-lib/glusterfs/3.6.2/xlator/features/gfid-access.la
-lib/glusterfs/3.6.2/xlator/features/glupy.la
-lib/glusterfs/3.6.2/xlator/features/glupy/debug-trace.py
-lib/glusterfs/3.6.2/xlator/features/glupy/debug-trace.pyc
-lib/glusterfs/3.6.2/xlator/features/glupy/debug-trace.pyo
-lib/glusterfs/3.6.2/xlator/features/glupy/helloworld.py
-lib/glusterfs/3.6.2/xlator/features/glupy/helloworld.pyc
-lib/glusterfs/3.6.2/xlator/features/glupy/helloworld.pyo
-lib/glusterfs/3.6.2/xlator/features/glupy/negative.py
-lib/glusterfs/3.6.2/xlator/features/glupy/negative.pyc
-lib/glusterfs/3.6.2/xlator/features/glupy/negative.pyo
-lib/glusterfs/3.6.2/xlator/features/index.la
-lib/glusterfs/3.6.2/xlator/features/locks.la
-lib/glusterfs/3.6.2/xlator/features/mac-compat.la
-lib/glusterfs/3.6.2/xlator/features/marker.la
-lib/glusterfs/3.6.2/xlator/features/posix-locks.so
-lib/glusterfs/3.6.2/xlator/features/prot_client.la
-lib/glusterfs/3.6.2/xlator/features/prot_dht.la
-lib/glusterfs/3.6.2/xlator/features/prot_server.la
-lib/glusterfs/3.6.2/xlator/features/quiesce.la
-lib/glusterfs/3.6.2/xlator/features/quota.la
-lib/glusterfs/3.6.2/xlator/features/quotad.la
-lib/glusterfs/3.6.2/xlator/features/read-only.la
-lib/glusterfs/3.6.2/xlator/features/snapview-client.la
-lib/glusterfs/3.6.2/xlator/features/snapview-server.la
-lib/glusterfs/3.6.2/xlator/features/worm.la
-lib/glusterfs/3.6.2/xlator/meta.la
-lib/glusterfs/3.6.2/xlator/mgmt/glusterd.la
-lib/glusterfs/3.6.2/xlator/mount/api.la
-lib/glusterfs/3.6.2/xlator/mount/fuse.la
-lib/glusterfs/3.6.2/xlator/nfs/server.la
-lib/glusterfs/3.6.2/xlator/performance/io-cache.la
-lib/glusterfs/3.6.2/xlator/performance/io-threads.la
-lib/glusterfs/3.6.2/xlator/performance/md-cache.la
-lib/glusterfs/3.6.2/xlator/performance/open-behind.la
-lib/glusterfs/3.6.2/xlator/performance/quick-read.la
-lib/glusterfs/3.6.2/xlator/performance/read-ahead.la
-lib/glusterfs/3.6.2/xlator/performance/readdir-ahead.la
-lib/glusterfs/3.6.2/xlator/performance/stat-prefetch.so
-lib/glusterfs/3.6.2/xlator/performance/write-behind.la
-lib/glusterfs/3.6.2/xlator/protocol/client.la
-lib/glusterfs/3.6.2/xlator/protocol/server.la
-lib/glusterfs/3.6.2/xlator/storage/posix.la
-lib/glusterfs/3.6.2/xlator/system/posix-acl.la
-lib/glusterfs/3.6.2/xlator/testing/features/template.la
-lib/glusterfs/3.6.2/xlator/testing/performance/symlink-cache.la
+include/glusterfs/gfdb/gfdb_data_store.h
+include/glusterfs/gfdb/gfdb_data_store_types.h
+include/glusterfs/gfdb/gfdb_mem-types.h
+include/glusterfs/gfdb/gfdb_sqlite3.h
+include/glusterfs/gfdb/gfdb_sqlite3_helper.c
+lib/glusterfs/3.7.1/auth/addr.la
+lib/glusterfs/3.7.1/auth/login.la
+lib/glusterfs/3.7.1/rpc-transport/socket.la
+lib/glusterfs/3.7.1/xlator/cluster/afr.la
+lib/glusterfs/3.7.1/xlator/cluster/dht.la
+lib/glusterfs/3.7.1/xlator/cluster/disperse.so
+lib/glusterfs/3.7.1/xlator/cluster/distribute.so
+lib/glusterfs/3.7.1/xlator/cluster/ec.la
+lib/glusterfs/3.7.1/xlator/cluster/nufa.la
+lib/glusterfs/3.7.1/xlator/cluster/pump.la
+lib/glusterfs/3.7.1/xlator/cluster/replicate.so
+lib/glusterfs/3.7.1/xlator/cluster/stripe.la
+lib/glusterfs/3.7.1/xlator/cluster/switch.la
+lib/glusterfs/3.7.1/xlator/cluster/tier.la
+lib/glusterfs/3.7.1/xlator/debug/error-gen.la
+lib/glusterfs/3.7.1/xlator/debug/io-stats.la
+lib/glusterfs/3.7.1/xlator/debug/trace.la
+lib/glusterfs/3.7.1/xlator/encryption/crypt.la
+lib/glusterfs/3.7.1/xlator/encryption/rot-13.la
+lib/glusterfs/3.7.1/xlator/features/access-control.so
+lib/glusterfs/3.7.1/xlator/features/arbiter.la
+lib/glusterfs/3.7.1/xlator/features/barrier.la
+lib/glusterfs/3.7.1/xlator/features/bit-rot.la
+lib/glusterfs/3.7.1/xlator/features/bitrot-stub.la
+lib/glusterfs/3.7.1/xlator/features/cdc.la
+lib/glusterfs/3.7.1/xlator/features/changelog.la
+lib/glusterfs/3.7.1/xlator/features/changetimerecorder.la
+lib/glusterfs/3.7.1/xlator/features/ganesha.la
+lib/glusterfs/3.7.1/xlator/features/gfid-access.la
+lib/glusterfs/3.7.1/xlator/features/glupy.la
+lib/glusterfs/3.7.1/xlator/features/glupy/debug-trace.py
+lib/glusterfs/3.7.1/xlator/features/glupy/debug-trace.pyc
+lib/glusterfs/3.7.1/xlator/features/glupy/debug-trace.pyo
+lib/glusterfs/3.7.1/xlator/features/glupy/helloworld.py
+lib/glusterfs/3.7.1/xlator/features/glupy/helloworld.pyc
+lib/glusterfs/3.7.1/xlator/features/glupy/helloworld.pyo
+lib/glusterfs/3.7.1/xlator/features/glupy/negative.py
+lib/glusterfs/3.7.1/xlator/features/glupy/negative.pyc
+lib/glusterfs/3.7.1/xlator/features/glupy/negative.pyo
+lib/glusterfs/3.7.1/xlator/features/index.la
+lib/glusterfs/3.7.1/xlator/features/locks.la
+lib/glusterfs/3.7.1/xlator/features/mac-compat.la
+lib/glusterfs/3.7.1/xlator/features/marker.la
+lib/glusterfs/3.7.1/xlator/features/posix-locks.so
+lib/glusterfs/3.7.1/xlator/features/prot_client.la
+lib/glusterfs/3.7.1/xlator/features/prot_dht.la
+lib/glusterfs/3.7.1/xlator/features/prot_server.la
+lib/glusterfs/3.7.1/xlator/features/quiesce.la
+lib/glusterfs/3.7.1/xlator/features/quota.la
+lib/glusterfs/3.7.1/xlator/features/quotad.la
+lib/glusterfs/3.7.1/xlator/features/read-only.la
+lib/glusterfs/3.7.1/xlator/features/shard.la
+lib/glusterfs/3.7.1/xlator/features/snapview-client.la
+lib/glusterfs/3.7.1/xlator/features/snapview-server.la
+lib/glusterfs/3.7.1/xlator/features/trash.la
+lib/glusterfs/3.7.1/xlator/features/upcall.la
+lib/glusterfs/3.7.1/xlator/features/worm.la
+lib/glusterfs/3.7.1/xlator/meta.la
+lib/glusterfs/3.7.1/xlator/mgmt/glusterd.la
+lib/glusterfs/3.7.1/xlator/mount/api.la
+lib/glusterfs/3.7.1/xlator/mount/fuse.la
+lib/glusterfs/3.7.1/xlator/nfs/server.la
+lib/glusterfs/3.7.1/xlator/performance/io-cache.la
+lib/glusterfs/3.7.1/xlator/performance/io-threads.la
+lib/glusterfs/3.7.1/xlator/performance/md-cache.la
+lib/glusterfs/3.7.1/xlator/performance/open-behind.la
+lib/glusterfs/3.7.1/xlator/performance/quick-read.la
+lib/glusterfs/3.7.1/xlator/performance/read-ahead.la
+lib/glusterfs/3.7.1/xlator/performance/readdir-ahead.la
+lib/glusterfs/3.7.1/xlator/performance/stat-prefetch.so
+lib/glusterfs/3.7.1/xlator/performance/write-behind.la
+lib/glusterfs/3.7.1/xlator/protocol/client.la
+lib/glusterfs/3.7.1/xlator/protocol/server.la
+lib/glusterfs/3.7.1/xlator/storage/posix.la
+lib/glusterfs/3.7.1/xlator/system/posix-acl.la
+lib/glusterfs/3.7.1/xlator/testing/features/template.la
+lib/glusterfs/3.7.1/xlator/testing/performance/symlink-cache.la
lib/libgfapi.la
lib/libgfchangelog.la
+lib/libgfdb.la
lib/libgfrpc.la
lib/libgfxdr.la
lib/libglusterfs.la
lib/ocf/resource.d/glusterfs/glusterd
lib/ocf/resource.d/glusterfs/volume
+lib/ocf/resource.d/heartbeat/ganesha_grace
+lib/ocf/resource.d/heartbeat/ganesha_mon
+lib/ocf/resource.d/heartbeat/ganesha_nfsd
lib/pkgconfig/glusterfs-api.pc
lib/pkgconfig/libgfchangelog.pc
+lib/pkgconfig/libgfdb.pc
+libexec/ganesha/create-export-ganesha.sh
+libexec/ganesha/dbus-send.sh
+libexec/ganesha/ganesha-ha.sh
+libexec/glusterfs/gfind_missing_files/gcrawler
+libexec/glusterfs/gfind_missing_files/gfid_to_path.py
+libexec/glusterfs/gfind_missing_files/gfid_to_path.sh
+libexec/glusterfs/gfind_missing_files/gfind_missing_files.sh
+libexec/glusterfs/glusterfind/__init__.py
+libexec/glusterfs/glusterfind/__init__.pyc
+libexec/glusterfs/glusterfind/__init__.pyo
+libexec/glusterfs/glusterfind/brickfind.py
+libexec/glusterfs/glusterfind/changelog.py
+libexec/glusterfs/glusterfind/changelogdata.py
+libexec/glusterfs/glusterfind/changelogdata.pyc
+libexec/glusterfs/glusterfind/changelogdata.pyo
+libexec/glusterfs/glusterfind/conf.py
+libexec/glusterfs/glusterfind/conf.pyc
+libexec/glusterfs/glusterfind/conf.pyo
+libexec/glusterfs/glusterfind/libgfchangelog.py
+libexec/glusterfs/glusterfind/libgfchangelog.pyc
+libexec/glusterfs/glusterfind/libgfchangelog.pyo
+libexec/glusterfs/glusterfind/main.py
+libexec/glusterfs/glusterfind/main.pyc
+libexec/glusterfs/glusterfind/main.pyo
+libexec/glusterfs/glusterfind/nodeagent.py
+libexec/glusterfs/glusterfind/tool.conf
+libexec/glusterfs/glusterfind/utils.py
+libexec/glusterfs/glusterfind/utils.pyc
+libexec/glusterfs/glusterfind/utils.pyo
libexec/glusterfs/gsyncd
libexec/glusterfs/gverify.sh
libexec/glusterfs/peer_add_secret_pub
libexec/glusterfs/peer_gsec_create
+libexec/glusterfs/peer_mountbroker
libexec/glusterfs/python/syncdaemon/README.md
libexec/glusterfs/python/syncdaemon/__init__.py
libexec/glusterfs/python/syncdaemon/__init__.pyc
@@ -112,6 +163,9 @@ libexec/glusterfs/python/syncdaemon/gconf.pyo
libexec/glusterfs/python/syncdaemon/gsyncd.py
libexec/glusterfs/python/syncdaemon/gsyncd.pyc
libexec/glusterfs/python/syncdaemon/gsyncd.pyo
+libexec/glusterfs/python/syncdaemon/gsyncdstatus.py
+libexec/glusterfs/python/syncdaemon/gsyncdstatus.pyc
+libexec/glusterfs/python/syncdaemon/gsyncdstatus.pyo
libexec/glusterfs/python/syncdaemon/ipaddr.py
libexec/glusterfs/python/syncdaemon/ipaddr.pyc
libexec/glusterfs/python/syncdaemon/ipaddr.pyo
@@ -142,12 +196,15 @@ man/man8/glusterd.8
man/man8/glusterfs.8
man/man8/glusterfsd.8
man/man8/mount.glusterfs.8
+sbin/gcron.py
+sbin/gfind_missing_files
sbin/glfsheal
sbin/gluster
sbin/glusterd
sbin/glusterfs
sbin/glusterfsd
sbin/mount_glusterfs
+sbin/snap_scheduler.py
sbin/umountd
share/doc/glusterfs/benchmarking/README
share/doc/glusterfs/benchmarking/glfs-bm.c
@@ -164,4 +221,5 @@ share/glusterfs/scripts/gsync-upgrade.sh
share/glusterfs/scripts/post-upgrade-script-for-quota.sh
share/glusterfs/scripts/pre-upgrade-script-for-quota.sh
share/glusterfs/scripts/slave-upgrade.sh
+share/glusterfs/scripts/stop-all-gluster-processes.sh
@exec test -d ${PKG_SYSCONFDIR}/glusterd -a ! -d ${VARBASE}/lib/glusterd && ${MKDIR} -p ${VARBASE}/lib/ && mv ${PKG_SYSCONFDIR}/glusterd ${VARBASE}/lib/glusterd && ${LN} -s ${VARBASE}/lib/glusterd ${PKG_SYSCONFDIR}/glusterd
diff --git a/filesystems/glusterfs/distinfo b/filesystems/glusterfs/distinfo
index 6de5afc8141..1edb1f86a0e 100644
--- a/filesystems/glusterfs/distinfo
+++ b/filesystems/glusterfs/distinfo
@@ -1,8 +1,6 @@
-$NetBSD: distinfo,v 1.37 2015/04/09 15:20:47 manu Exp $
+$NetBSD: distinfo,v 1.38 2015/06/02 03:44:16 manu Exp $
-SHA1 (glusterfs-3.6.2.tar.gz) = 83aefa6b118f03bf3f78cbe0d8a8b8cc1634078a
-RMD160 (glusterfs-3.6.2.tar.gz) = 941d4e59ab3ed5faf216cc2c9267207aab0fb31a
-Size (glusterfs-3.6.2.tar.gz) = 6018636 bytes
-SHA1 (patch-rpc_rpc-lib_src_rpcsvc.c) = a174a78d3daec9b784966b4c4502b335e4561558
-SHA1 (patch-xlator_storage_posix_src_posix.c) = 1ca56830afac7cda2fb4fc119fdd6161134eb8b5
-SHA1 (patch-xlators_mgmt_glusterd_src_Makefile.in) = 78a2b9d6c406744cb415904030d60aa09b636463
+SHA1 (glusterfs-3.7.1.tar.gz) = 02e99a642e659b9c4232d12bff849d360a89c6fd
+RMD160 (glusterfs-3.7.1.tar.gz) = 0e33e3ac9b3eb110bbe1e3d1b6348103c2bc5704
+Size (glusterfs-3.7.1.tar.gz) = 7191402 bytes
+SHA1 (patch-10963) = ce20da94602b6ad4fcc8d63a3d125d5f72ad78f7
diff --git a/filesystems/glusterfs/patches/patch-10963 b/filesystems/glusterfs/patches/patch-10963
new file mode 100644
index 00000000000..f247de6f511
--- /dev/null
+++ b/filesystems/glusterfs/patches/patch-10963
@@ -0,0 +1,110 @@
+$NetBSD: patch-10963,v 1.1 2015/06/02 03:44:16 manu Exp $
+
+From upstream http://review.gluster.org/10963
+
+From 5c359a79bd3c978d0f636082871c289c717d354e Mon Sep 17 00:00:00 2001
+From: Krishnan Parthasarathi <kparthas@redhat.com>
+Date: Tue, 19 May 2015 14:48:01 +0530
+Subject: [PATCH] glusterd: fix repeated connection to nfssvc failed msgs
+
+... and disable reconnect timer on rpc_clnt_disconnect.
+
+Root Cause
+----------
+
+gluster-NFS service wouldn't be started if there are no
+started volumes that have nfs service enabled for them.
+Before this fix we would initiate a connect even when
+the gluster-NFS service wasn't (re)started. Compounding
+that glusterd_conn_disconnect doesn't disable reconnect
+timer. So, it is possible that the reconnect timer was
+in execution when the timer event was attempted to be
+removed.
+
+Change-Id: Iadcb5cff9eafefa95eaf3a1a9413eeb682d3aaac
+BUG: 1222065
+Signed-off-by: Krishnan Parthasarathi <kparthas@redhat.com>
+Reviewed-on: http://review.gluster.org/10830
+Reviewed-by: Atin Mukherjee <amukherj@redhat.com>
+Reviewed-by: Gaurav Kumar Garg <ggarg@redhat.com>
+Reviewed-by: Kaushal M <kaushal@redhat.com>
+---
+
+diff --git rpc/rpc-lib/src/rpc-clnt.c rpc/rpc-lib/src/rpc-clnt.c
+index 264a312..db99484 100644
+--- rpc/rpc-lib/src/rpc-clnt.c
++++ rpc/rpc-lib/src/rpc-clnt.c
+@@ -1108,6 +1108,11 @@
+
+ conn = &rpc->conn;
+
++ pthread_mutex_lock (&conn->lock);
++ {
++ rpc->disabled = 0;
++ }
++ pthread_mutex_unlock (&conn->lock);
+ rpc_clnt_reconnect (conn);
+
+ return 0;
+@@ -1758,6 +1763,7 @@
+
+ pthread_mutex_lock (&conn->lock);
+ {
++ rpc->disabled = 1;
+ if (conn->timer) {
+ gf_timer_call_cancel (rpc->ctx, conn->timer);
+ conn->timer = NULL;
+diff --git xlators/mgmt/glusterd/src/glusterd-conn-mgmt.c xlators/mgmt/glusterd/src/glusterd-conn-mgmt.c
+index da8c909..fca9323 100644
+--- xlators/mgmt/glusterd/src/glusterd-conn-mgmt.c
++++ xlators/mgmt/glusterd/src/glusterd-conn-mgmt.c
+@@ -80,7 +80,6 @@
+ int
+ glusterd_conn_term (glusterd_conn_t *conn)
+ {
+- rpc_clnt_disable (conn->rpc);
+ rpc_clnt_unref (conn->rpc);
+ return 0;
+ }
+diff --git a/xlators/mgmt/glusterd/src/glusterd-nfs-svc.c xlators/mgmt/glusterd/src/glusterd-nfs-svc.c
+index 49b1b56..cb08a20 100644
+--- xlators/mgmt/glusterd/src/glusterd-nfs-svc.c
++++ xlators/mgmt/glusterd/src/glusterd-nfs-svc.c
+@@ -164,18 +164,15 @@
+ {
+ int ret = -1;
+
+- if (glusterd_are_all_volumes_stopped ()) {
+- ret = svc->stop (svc, SIGKILL);
++ ret = svc->stop (svc, SIGKILL);
++ if (ret)
++ goto out;
+
+- } else {
+- ret = glusterd_nfssvc_create_volfile ();
+- if (ret)
+- goto out;
++ ret = glusterd_nfssvc_create_volfile ();
++ if (ret)
++ goto out;
+
+- ret = svc->stop (svc, SIGKILL);
+- if (ret)
+- goto out;
+-
++ if (glusterd_nfssvc_need_start ()) {
+ ret = svc->start (svc, flags);
+ if (ret)
+ goto out;
+@@ -192,10 +189,9 @@
+
+ int
+ glusterd_nfssvc_start (glusterd_svc_t *svc, int flags)
+ {
+- if (glusterd_nfssvc_need_start ())
+- return glusterd_svc_start (svc, flags, NULL);
++ return glusterd_svc_start (svc, flags, NULL);
+
+ return 0;
+ }
+
diff --git a/filesystems/glusterfs/patches/patch-rpc_rpc-lib_src_rpcsvc.c b/filesystems/glusterfs/patches/patch-rpc_rpc-lib_src_rpcsvc.c
deleted file mode 100644
index 7463236791f..00000000000
--- a/filesystems/glusterfs/patches/patch-rpc_rpc-lib_src_rpcsvc.c
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-rpc_rpc-lib_src_rpcsvc.c,v 1.3 2014/11/18 14:38:15 manu Exp $
-
-Shut up log-filling message
-
---- rpc/rpc-lib/src/rpcsvc.c.orig 2014-11-04 14:27:15.000000000 +0100
-+++ rpc/rpc-lib/src/rpcsvc.c 2014-11-04 14:28:46.000000000 +0100
-@@ -611,9 +611,9 @@
- goto err_reply;
-
- if (0 == svc->allow_insecure && unprivileged && !actor->unprivileged) {
- /* Non-privileged user, fail request */
-- gf_log (GF_RPCSVC, GF_LOG_ERROR,
-+ gf_log (GF_RPCSVC, GF_LOG_DEBUG,
- "Request received from non-"
- "privileged port. Failing request");
- rpcsvc_request_destroy (req);
- return -1;
diff --git a/filesystems/glusterfs/patches/patch-xlator_storage_posix_src_posix.c b/filesystems/glusterfs/patches/patch-xlator_storage_posix_src_posix.c
deleted file mode 100644
index 9ca0cfad4c6..00000000000
--- a/filesystems/glusterfs/patches/patch-xlator_storage_posix_src_posix.c
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-xlator_storage_posix_src_posix.c,v 1.1 2014/11/18 14:38:15 manu Exp $
-
-Shut up log-filling message
-
---- xlators/storage/posix/src/posix.c.orig 2014-11-04 14:29:56.000000000 +0100
-+++ xlators/storage/posix/src/posix.c 2014-11-04 14:30:49.000000000 +0100
-@@ -3431,9 +3431,9 @@
- &nlink_samepgfid,
- sizeof(nlink_samepgfid));
- if (op_ret == -1) {
- *op_errno = errno;
-- gf_log (this->name, GF_LOG_ERROR,
-+ gf_log (this->name, GF_LOG_DEBUG,
- "getxattr failed on "
- "%s: key = %s (%s)",
- leaf_path,
- key,
diff --git a/filesystems/glusterfs/patches/patch-xlators_mgmt_glusterd_src_Makefile.in b/filesystems/glusterfs/patches/patch-xlators_mgmt_glusterd_src_Makefile.in
deleted file mode 100644
index 1f6a30fe65c..00000000000
--- a/filesystems/glusterfs/patches/patch-xlators_mgmt_glusterd_src_Makefile.in
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-xlators_mgmt_glusterd_src_Makefile.in,v 1.2 2015/04/09 15:20:48 manu Exp $
-
---- xlators/mgmt/glusterd/src/Makefile.in.orig 2015-01-21 13:11:01.000000000 +0100
-+++ xlators/mgmt/glusterd/src/Makefile.in 2015-04-09 15:58:41.000000000 +0200
-@@ -358,9 +358,9 @@
- glusterd-syncop.h glusterd-hooks.h glusterd-locks.h \
- glusterd-mgmt.h glusterd-messages.h glusterd-peer-utils.h
-
- AM_CPPFLAGS = $(GF_CPPFLAGS) -I$(top_srcdir)/libglusterfs/src \
-- -I$(rpclibdir) -I$(CONTRIBDIR)/rbtree \
-+ -I$(CONTRIBDIR)/rbtree \
- -I$(top_srcdir)/rpc/xdr/src -I$(top_srcdir)/rpc/rpc-lib/src \
- -I$(CONTRIBDIR)/uuid -I$(CONTRIBDIR)/mount \
- -DSBIN_DIR=\"$(sbindir)\" -DDATADIR=\"$(localstatedir)\" \
- -DGSYNCD_PREFIX=\"$(libexecdir)/glusterfs\"\