diff options
author | Sanju Rakonde <srakonde@redhat.com> | 2019-03-12 06:48:52 +0000 |
---|---|---|
committer | Sanju Rakonde <srakonde@redhat.com> | 2019-03-12 12:40:55 +0530 |
commit | d2b8167aeb5f5559a16eef4604b46f71f3dbf894 (patch) | |
tree | f32785fb2b2c5798bcde4d77d431f8a979b4b049 | |
parent | 421b7071f5acee064faf02dc91bcc83efbaa6523 (diff) | |
download | glusterfs-d2b8167aeb5f5559a16eef4604b46f71f3dbf894.tar.gz glusterfs-d2b8167aeb5f5559a16eef4604b46f71f3dbf894.tar.xz glusterfs-d2b8167aeb5f5559a16eef4604b46f71f3dbf894.zip |
Revert "libglusterfs/common-utils.c: Fix buffer size for checksum computation"
This reverts commit 421b7071f5acee064faf02dc91bcc83efbaa6523.
With this commit, the way glusterd calculates the checksum changes.
In a heterogeneous cluster, upgraded and non-upgraded nodes follow
different mechanisms to compute the checksum. Although the contents
of files are same, we will see checksum mismatch errors and peers
will run into the rejected state.
reverted patch: https://review.gluster.org/#/c/glusterfs/+/22149/
updates: bz#1672249
Change-Id: Ie12e1ac983d62594b161844b2967d8a3fbfedba6
Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
-rw-r--r-- | libglusterfs/src/common-utils.c | 5 | ||||
-rwxr-xr-x | tests/bugs/glusterd/quorum-value-check.t | 35 |
2 files changed, 3 insertions, 37 deletions
diff --git a/libglusterfs/src/common-utils.c b/libglusterfs/src/common-utils.c index 70b90104b8..e2874602a8 100644 --- a/libglusterfs/src/common-utils.c +++ b/libglusterfs/src/common-utils.c @@ -1874,7 +1874,7 @@ gf_unlockfd (int fd) } static void -compute_checksum (char *buf, const ssize_t size, uint32_t *checksum) +compute_checksum (char *buf, size_t size, uint32_t *checksum) { int ret = -1; char *checksum_buf = NULL; @@ -1915,7 +1915,8 @@ get_checksum_for_file (int fd, uint32_t *checksum) do { ret = sys_read (fd, &buf, GF_CHECKSUM_BUF_SIZE); if (ret > 0) - compute_checksum (buf, ret, checksum); + compute_checksum (buf, GF_CHECKSUM_BUF_SIZE, + checksum); } while (ret > 0); /* set it back */ diff --git a/tests/bugs/glusterd/quorum-value-check.t b/tests/bugs/glusterd/quorum-value-check.t deleted file mode 100755 index aaf636274b..0000000000 --- a/tests/bugs/glusterd/quorum-value-check.t +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/bash - -. $(dirname $0)/../../include.rc -. $(dirname $0)/../../volume.rc - -function check_quorum_nfs() { - local qnfs="$(less /var/lib/glusterd/nfs/nfs-server.vol | grep "quorum-count"| awk '{print $3}')" - local qinfo="$($CLI volume info $V0| grep "cluster.quorum-count"| awk '{print $2}')" - - if [ $qnfs = $qinfo ]; then - echo "Y" - else - echo "N" - fi -} - -cleanup; - -TEST glusterd -TEST pidof glusterd -TEST $CLI volume create $V0 replica 3 $H0:$B0/${V0}{0,1,2} -TEST $CLI volume set $V0 nfs.disable off -TEST $CLI volume set $V0 performance.write-behind off -TEST $CLI volume set $V0 cluster.self-heal-daemon off -TEST $CLI volume set $V0 cluster.quorum-type fixed -TEST $CLI volume start $V0 - -TEST $CLI volume set $V0 cluster.quorum-count 1 -EXPECT_WITHIN $CONFIG_UPDATE_TIMEOUT "Y" check_quorum_nfs -TEST $CLI volume set $V0 cluster.quorum-count 2 -EXPECT_WITHIN $CONFIG_UPDATE_TIMEOUT "Y" check_quorum_nfs -TEST $CLI volume set $V0 cluster.quorum-count 3 -EXPECT_WITHIN $CONFIG_UPDATE_TIMEOUT "Y" check_quorum_nfs - -cleanup; |