3604df
From bd3c250eb91e82ad5ebf12020a1bcda25dd1a5cb Mon Sep 17 00:00:00 2001
3604df
From: Poornima G <pgurusid@redhat.com>
3604df
Date: Wed, 1 Feb 2017 17:11:46 +0530
3604df
Subject: [PATCH 284/285] extras: Provide group set for md-cache and
3604df
 invalidation options
3604df
3604df
To enable the integration of md-cache and invalidation features
3604df
we need to perform 3 volume set options in a specific order.
3604df
In order to ease this for user provide a group volume set option.
3604df
3604df
Usage: gluster vol set <VOLNAME> group metadata-cache
3604df
3604df
>Reviewed-on: https://review.gluster.org/16503
3604df
>Smoke: Gluster Build System <jenkins@build.gluster.org>
3604df
>NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
3604df
>CentOS-regression: Gluster Build System <jenkins@build.gluster.org>
3604df
>Reviewed-by: Rajesh Joseph <rjoseph@redhat.com>
3604df
>Reviewed-by: Atin Mukherjee <amukherj@redhat.com>
3604df
>Signed-off-by: Poornima G <pgurusid@redhat.com>
3604df
3604df
Change-Id: I9bf0fd4217aa2a1c7ffbdc93e879b10f87addeac
3604df
BUG: 1417955
3604df
Signed-off-by: Poornima G <pgurusid@redhat.com>
3604df
Reviewed-on: https://code.engineering.redhat.com/gerrit/96839
3604df
Reviewed-by: Milind Changire <mchangir@redhat.com>
3604df
Reviewed-by: Atin Mukherjee <amukherj@redhat.com>
3604df
---
3604df
 extras/Makefile.am                 |  4 +++-
3604df
 extras/group-metadata-cache        |  6 ++++++
3604df
 glusterfs.spec.in                  |  5 +++++
3604df
 tests/basic/md-cache/bug-1418249.t | 20 ++++++++++++++++++++
3604df
 4 files changed, 34 insertions(+), 1 deletion(-)
3604df
 create mode 100644 extras/group-metadata-cache
3604df
 create mode 100755 tests/basic/md-cache/bug-1418249.t
3604df
3604df
diff --git a/extras/Makefile.am b/extras/Makefile.am
3604df
index 37b297f..4555d34 100644
3604df
--- a/extras/Makefile.am
3604df
+++ b/extras/Makefile.am
3604df
@@ -9,7 +9,7 @@ SUBDIRS = init.d systemd benchmarking hook-scripts $(OCF_SUBDIR) LinuxRPM \
3604df
 
3604df
 confdir = $(sysconfdir)/glusterfs
3604df
 conf_DATA = glusterfs-logrotate gluster-rsyslog-7.2.conf gluster-rsyslog-5.8.conf \
3604df
-	logger.conf.example glusterfs-georep-logrotate group-virt.example
3604df
+	logger.conf.example glusterfs-georep-logrotate group-virt.example group-metadata-cache
3604df
 
3604df
 voldir = $(sysconfdir)/glusterfs
3604df
 vol_DATA = glusterd.vol
3604df
@@ -33,3 +33,5 @@ install-data-local:
3604df
 	$(mkdir_p) $(DESTDIR)$(GLUSTERD_WORKDIR)/groups
3604df
 	$(INSTALL_DATA) $(top_srcdir)/extras/group-virt.example \
3604df
 		$(DESTDIR)$(GLUSTERD_WORKDIR)/groups/virt
3604df
+	$(INSTALL_DATA) $(top_srcdir)/extras/group-metadata-cache \
3604df
+		$(DESTDIR)$(GLUSTERD_WORKDIR)/groups/metadata-cache
3604df
diff --git a/extras/group-metadata-cache b/extras/group-metadata-cache
3604df
new file mode 100644
3604df
index 0000000..0f780eb
3604df
--- /dev/null
3604df
+++ b/extras/group-metadata-cache
3604df
@@ -0,0 +1,6 @@
3604df
+features.cache-invalidation=on
3604df
+features.cache-invalidation-timeout=600
3604df
+performance.stat-prefetch=on
3604df
+performance.cache-invalidation=on
3604df
+performance.md-cache-timeout=600
3604df
+network.inode-lru-limit=50000
3604df
diff --git a/glusterfs.spec.in b/glusterfs.spec.in
3604df
index 9b29de3..be1865e 100644
3604df
--- a/glusterfs.spec.in
3604df
+++ b/glusterfs.spec.in
3604df
@@ -1042,6 +1042,7 @@ exit 0
3604df
 %exclude %{_sysconfdir}/glusterfs/gluster-rsyslog-5.8.conf
3604df
 %exclude %{_sysconfdir}/glusterfs/gluster-rsyslog-7.2.conf
3604df
 %exclude %{_sysconfdir}/glusterfs/group-virt.example
3604df
+%exclude %{_sysconfdir}/glusterfs/group-metadata-cache
3604df
 %exclude %{_sysconfdir}/glusterfs/logger.conf.example
3604df
 %exclude %_init_glusterd
3604df
 %exclude %{_sysconfdir}/sysconfig/glusterd
3604df
@@ -1357,6 +1358,7 @@ exit 0
3604df
 %ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/bitd
3604df
        %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/groups
3604df
             %attr(0644,-,-) %{_sharedstatedir}/glusterd/groups/virt
3604df
+            %attr(0644,-,-) %{_sharedstatedir}/glusterd/groups/metadata-cache
3604df
        %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/glusterfind
3604df
        %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/glusterfind/.keys
3604df
 %ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/glustershd
3604df
@@ -2046,6 +2048,9 @@ end
3604df
 %endif
3604df
 
3604df
 %changelog
3604df
+* Wed Feb 1 2017 Poornima G <pgurusid@redhat.com>
3604df
+- Install /var/lib/glusterd/groups/metadata-cache by default
3604df
+
3604df
 * Thu Dec 7 2016 Jiffin Tony Thottan <jhottan@redhat.com>
3604df
 - remove S31ganesha-reset.sh from hooks (#1397450)
3604df
 
3604df
diff --git a/tests/basic/md-cache/bug-1418249.t b/tests/basic/md-cache/bug-1418249.t
3604df
new file mode 100755
3604df
index 0000000..119a6ae
3604df
--- /dev/null
3604df
+++ b/tests/basic/md-cache/bug-1418249.t
3604df
@@ -0,0 +1,20 @@
3604df
+#!/bin/bash
3604df
+
3604df
+. $(dirname $0)/../../include.rc
3604df
+. $(dirname $0)/../../volume.rc
3604df
+
3604df
+cleanup;
3604df
+
3604df
+TEST glusterd
3604df
+
3604df
+TEST $CLI volume create $V0 $H0:$B0/$V0
3604df
+TEST $CLI volume start $V0
3604df
+
3604df
+TEST $CLI volume set $V0 group metadata-cache
3604df
+EXPECT 'on' volinfo_field $V0 'performance.cache-invalidation'
3604df
+EXPECT '600' volinfo_field $V0 'performance.md-cache-timeout'
3604df
+EXPECT 'on' volinfo_field $V0 'performance.stat-prefetch'
3604df
+EXPECT '600' volinfo_field $V0 'features.cache-invalidation-timeout'
3604df
+EXPECT 'on' volinfo_field $V0 'features.cache-invalidation'
3604df
+EXPECT '50000' volinfo_field $V0  'network.inode-lru-limit'
3604df
+cleanup;
3604df
-- 
3604df
2.9.3
3604df