Bug 1594682 - eager-lock in 3.3.1 always does blocking lock even when non-blocking locks are successful
Summary: eager-lock in 3.3.1 always does blocking lock even when non-blocking locks ar...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Gluster Storage
Classification: Red Hat Storage
Component: replicate
Version: rhgs-3.3
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: RHGS 3.3.1 Async
Assignee: Pranith Kumar K
QA Contact: Nag Pavan Chilakam
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-06-25 08:09 UTC by Pranith Kumar K
Modified: 2018-07-19 06:01 UTC (History)
6 users (show)

Fixed In Version: glusterfs-3.8.4-54.13
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2018-07-19 06:00:07 UTC
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2018:2222 0 None None None 2018-07-19 06:01:41 UTC

Description Pranith Kumar K 2018-06-25 08:09:31 UTC
Description of problem:
While backporting the feature the following line is missed leading to always fallback to blocking locks.

commit ee66a21acd093d37109d8f7626a3a63fe131d156 (HEAD -> blocking-lock-build)
Author: Pranith Kumar K <pkarampu>
Date:   Wed Jun 20 14:56:25 2018 +0530

    cluster/afr: Increase the lock-count on success
    
    Change-Id: I047aebd23528b872a6b556bcf3a770d612ae550d
    Signed-off-by: Pranith Kumar K <pkarampu>

diff --git a/xlators/cluster/afr/src/afr-lk-common.c b/xlators/cluster/afr/src/afr-lk-common.c
index 494a63cb9..0c3ac6079 100644
--- a/xlators/cluster/afr/src/afr-lk-common.c
+++ b/xlators/cluster/afr/src/afr-lk-common.c
@@ -976,6 +976,7 @@ afr_nonblocking_inodelk_cbk (call_frame_t *frame, void *cookie, xlator_t *this,
                        }
                } else {
                         int_lock->locked_nodes[child_index] |= LOCKED_YES;
+                        int_lock->lock_count++;
                }
 
                 call_count = --int_lock->lk_call_count;



Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 2 Pranith Kumar K 2018-06-25 08:11:08 UTC
https://code.engineering.redhat.com/gerrit/142316

Comment 3 Pranith Kumar K 2018-06-25 08:33:44 UTC
Nag,
    Could you give QE-ack for this?

Comment 4 Nag Pavan Chilakam 2018-06-25 09:26:16 UTC
qa_ack given  as this bug was leading to inefficiencies

Comment 6 Nag Pavan Chilakam 2018-07-12 09:05:59 UTC
verified this on 3.8.4-54.13
saw that the number of locks has now reduced to half
hence moving bz to verified

with fix ie 3.8.4.54-13
###########################
v13


[root@dhcp42-224 ~]# gluster v profile nagv13 info
Brick: 10.70.42.224:/bricks/brick1/nagv13
-----------------------------------------
Cumulative Stats:
   Block Size:               1024b+                2048b+                4096b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  300                   306                 18129 
 
   Block Size:               8192b+               16384b+               32768b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  372                    11                     2 
 
   Block Size:              65536b+              131072b+ 
 No. of Reads:                    0                     0 
No. of Writes:                    3                     8 
 %-latency   Avg-latency   Min-Latency   Max-Latency   No. of calls         Fop
 ---------   -----------   -----------   -----------   ------------        ----
      0.00       0.00 us       0.00 us       0.00 us              1     RELEASE
      0.00      40.00 us      40.00 us      40.00 us              1       FLUSH
      0.01      81.00 us      71.00 us      91.00 us              2    FINODELK
      0.02     234.00 us     234.00 us     234.00 us              1 REMOVEXATTR
      0.02     237.00 us     237.00 us     237.00 us              1       FSTAT
      0.02     300.00 us     300.00 us     300.00 us              1        OPEN
      0.03     109.50 us      93.00 us     143.00 us              4     INODELK
      0.03     235.00 us     222.00 us     248.00 us              2    FXATTROP
      0.03     512.00 us     512.00 us     512.00 us              1      LOOKUP
      0.04     549.00 us     549.00 us     549.00 us              1    TRUNCATE
      0.09     687.00 us     360.00 us    1014.00 us              2     XATTROP
     99.72      79.36 us      50.00 us     741.00 us          19131       WRITE
 
    Duration: 35 seconds
   Data Read: 0 bytes
Data Written: 102400000 bytes
 
Interval 0 Stats:
   Block Size:               1024b+                2048b+                4096b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  300                   306                 18129 
 
   Block Size:               8192b+               16384b+               32768b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  372                    11                     2 
 
   Block Size:              65536b+              131072b+ 
 No. of Reads:                    0                     0 
No. of Writes:                    3                     8 
 %-latency   Avg-latency   Min-Latency   Max-Latency   No. of calls         Fop
 ---------   -----------   -----------   -----------   ------------        ----
      0.00       0.00 us       0.00 us       0.00 us              1     RELEASE
      0.00      40.00 us      40.00 us      40.00 us              1       FLUSH
      0.01      81.00 us      71.00 us      91.00 us              2    FINODELK
      0.02     234.00 us     234.00 us     234.00 us              1 REMOVEXATTR
      0.02     237.00 us     237.00 us     237.00 us              1       FSTAT
      0.02     300.00 us     300.00 us     300.00 us              1        OPEN
      0.03     109.50 us      93.00 us     143.00 us              4     INODELK
      0.03     235.00 us     222.00 us     248.00 us              2    FXATTROP
      0.03     512.00 us     512.00 us     512.00 us              1      LOOKUP
      0.04     549.00 us     549.00 us     549.00 us              1    TRUNCATE
      0.09     687.00 us     360.00 us    1014.00 us              2     XATTROP
     99.72      79.36 us      50.00 us     741.00 us          19131       WRITE
 
    Duration: 35 seconds
   Data Read: 0 bytes
Data Written: 102400000 bytes
 
Brick: 10.70.42.109:/bricks/brick1/nagv13
-----------------------------------------
Cumulative Stats:
   Block Size:               1024b+                2048b+                4096b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  300                   306                 18129 
 
   Block Size:               8192b+               16384b+               32768b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  372                    11                     2 
 
   Block Size:              65536b+              131072b+ 
 No. of Reads:                    0                     0 
No. of Writes:                    3                     8 
 %-latency   Avg-latency   Min-Latency   Max-Latency   No. of calls         Fop
 ---------   -----------   -----------   -----------   ------------        ----
      0.00       0.00 us       0.00 us       0.00 us              1     RELEASE
      0.00      85.00 us      85.00 us      85.00 us              1       FLUSH
      0.01      55.00 us      43.00 us      67.00 us              2    FINODELK
      0.01     206.00 us     206.00 us     206.00 us              1       FSTAT
      0.01     216.00 us     216.00 us     216.00 us              1 REMOVEXATTR
      0.01     274.00 us     274.00 us     274.00 us              1        OPEN
      0.02     469.00 us     469.00 us     469.00 us              1    TRUNCATE
      0.02     118.00 us      47.00 us     192.00 us              4     INODELK
      0.02     495.00 us     495.00 us     495.00 us              1      LOOKUP
      0.03     267.00 us     232.00 us     302.00 us              2    FXATTROP
      0.08     801.00 us     512.00 us    1090.00 us              2     XATTROP
     99.78     106.40 us      48.00 us   94439.00 us          19131       WRITE
 
    Duration: 35 seconds
   Data Read: 0 bytes
Data Written: 102400000 bytes
 
Interval 0 Stats:
   Block Size:               1024b+                2048b+                4096b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  300                   306                 18129 
 
   Block Size:               8192b+               16384b+               32768b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  372                    11                     2 
 
   Block Size:              65536b+              131072b+ 
 No. of Reads:                    0                     0 
No. of Writes:                    3                     8 
 %-latency   Avg-latency   Min-Latency   Max-Latency   No. of calls         Fop
 ---------   -----------   -----------   -----------   ------------        ----
      0.00       0.00 us       0.00 us       0.00 us              1     RELEASE
      0.00      85.00 us      85.00 us      85.00 us              1       FLUSH
      0.01      55.00 us      43.00 us      67.00 us              2    FINODELK
      0.01     206.00 us     206.00 us     206.00 us              1       FSTAT
      0.01     216.00 us     216.00 us     216.00 us              1 REMOVEXATTR
      0.01     274.00 us     274.00 us     274.00 us              1        OPEN
      0.02     469.00 us     469.00 us     469.00 us              1    TRUNCATE
      0.02     118.00 us      47.00 us     192.00 us              4     INODELK
      0.02     495.00 us     495.00 us     495.00 us              1      LOOKUP
      0.03     267.00 us     232.00 us     302.00 us              2    FXATTROP
      0.08     801.00 us     512.00 us    1090.00 us              2     XATTROP
     99.78     106.40 us      48.00 us   94439.00 us          19131       WRITE
 
    Duration: 35 seconds
   Data Read: 0 bytes
Data Written: 102400000 bytes
 
Brick: 10.70.43.52:/bricks/brick1/nagv13
----------------------------------------
Cumulative Stats:
   Block Size:               1024b+                2048b+                4096b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  300                   306                 18129 
 
   Block Size:               8192b+               16384b+               32768b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  372                    11                     2 
 
   Block Size:              65536b+              131072b+ 
 No. of Reads:                    0                     0 
No. of Writes:                    3                     8 
 %-latency   Avg-latency   Min-Latency   Max-Latency   No. of calls         Fop
 ---------   -----------   -----------   -----------   ------------        ----
      0.00       0.00 us       0.00 us       0.00 us              1     RELEASE
      0.00      37.00 us      37.00 us      37.00 us              1       FLUSH
      0.01      55.50 us      44.00 us      67.00 us              2    FINODELK
      0.01     199.00 us     199.00 us     199.00 us              1        OPEN
      0.01     213.00 us     213.00 us     213.00 us              1        STAT
      0.02     243.00 us     243.00 us     243.00 us              1 REMOVEXATTR
      0.02     311.00 us     311.00 us     311.00 us              1       FSTAT
      0.03     102.75 us      92.00 us     123.00 us              4     INODELK
      0.03     462.00 us     462.00 us     462.00 us              1    TRUNCATE
      0.03     464.00 us     464.00 us     464.00 us              1      LOOKUP
      0.04     297.00 us     247.00 us     347.00 us              2    FXATTROP
      0.09     670.50 us     407.00 us     934.00 us              2     XATTROP
     99.71      78.18 us      49.00 us    1110.00 us          19131       WRITE
 
    Duration: 35 seconds
   Data Read: 0 bytes
Data Written: 102400000 bytes
 
Interval 0 Stats:
   Block Size:               1024b+                2048b+                4096b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  300                   306                 18129 
 
   Block Size:               8192b+               16384b+               32768b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  372                    11                     2 
 
   Block Size:              65536b+              131072b+ 
 No. of Reads:                    0                     0 
No. of Writes:                    3                     8 
 %-latency   Avg-latency   Min-Latency   Max-Latency   No. of calls         Fop
 ---------   -----------   -----------   -----------   ------------        ----
      0.00       0.00 us       0.00 us       0.00 us              1     RELEASE
      0.00      37.00 us      37.00 us      37.00 us              1       FLUSH
      0.01      55.50 us      44.00 us      67.00 us              2    FINODELK
      0.01     199.00 us     199.00 us     199.00 us              1        OPEN
      0.01     213.00 us     213.00 us     213.00 us              1        STAT
      0.02     243.00 us     243.00 us     243.00 us              1 REMOVEXATTR
      0.02     311.00 us     311.00 us     311.00 us              1       FSTAT
      0.03     102.75 us      92.00 us     123.00 us              4     INODELK
      0.03     462.00 us     462.00 us     462.00 us              1    TRUNCATE
      0.03     464.00 us     464.00 us     464.00 us              1      LOOKUP
      0.04     297.00 us     247.00 us     347.00 us              2    FXATTROP
      0.09     670.50 us     407.00 us     934.00 us              2     XATTROP
     99.71      78.18 us      49.00 us    1110.00 us          19131       WRITE
 
    Duration: 35 seconds
   Data Read: 0 bytes
Data Written: 102400000 bytes






################################################################
before fix ie 3.8.4-54.12


v12:
 
[root@dhcp42-224 ~]# gluster v profile nagv13 info
Brick: 10.70.42.224:/bricks/brick1/nagv13
-----------------------------------------
Cumulative Stats:
   Block Size:               1024b+                2048b+                4096b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  246                   328                 18594 
 
   Block Size:               8192b+               16384b+               32768b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  110                     7                     1 
 
 %-latency   Avg-latency   Min-Latency   Max-Latency   No. of calls         Fop
 ---------   -----------   -----------   -----------   ------------        ----
      0.00       0.00 us       0.00 us       0.00 us              1     RELEASE
      0.00      54.00 us      54.00 us      54.00 us              1       FLUSH
      0.01     103.00 us     103.00 us     103.00 us              1        OPEN
      0.01     144.00 us     144.00 us     144.00 us              1 REMOVEXATTR
      0.01     145.00 us     145.00 us     145.00 us              1        STAT
      0.01     149.00 us     149.00 us     149.00 us              1       FSTAT
      0.01      42.75 us      40.00 us      45.00 us              4    FINODELK
      0.02     245.00 us     245.00 us     245.00 us              1    TRUNCATE
      0.02     331.00 us     331.00 us     331.00 us              1      LOOKUP
      0.02     167.00 us     164.00 us     170.00 us              2    FXATTROP
      0.03      62.62 us      34.00 us     110.00 us              8     INODELK
      0.06     463.00 us     197.00 us     729.00 us              2     XATTROP
     99.80      82.34 us      49.00 us    1064.00 us          19286       WRITE
 
    Duration: 19 seconds
   Data Read: 0 bytes
Data Written: 102400000 bytes
 
Interval 1 Stats:
   Block Size:               1024b+                2048b+                4096b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  246                   328                 18594 
 
   Block Size:               8192b+               16384b+               32768b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  110                     7                     1 
 
 %-latency   Avg-latency   Min-Latency   Max-Latency   No. of calls         Fop
 ---------   -----------   -----------   -----------   ------------        ----
      0.00       0.00 us       0.00 us       0.00 us              1     RELEASE
      0.00      54.00 us      54.00 us      54.00 us              1       FLUSH
      0.01     103.00 us     103.00 us     103.00 us              1        OPEN
      0.01     144.00 us     144.00 us     144.00 us              1 REMOVEXATTR
      0.01     145.00 us     145.00 us     145.00 us              1        STAT
      0.01     149.00 us     149.00 us     149.00 us              1       FSTAT
      0.01      42.75 us      40.00 us      45.00 us              4    FINODELK
      0.02     245.00 us     245.00 us     245.00 us              1    TRUNCATE
      0.02     331.00 us     331.00 us     331.00 us              1      LOOKUP
      0.02     167.00 us     164.00 us     170.00 us              2    FXATTROP
      0.03      62.62 us      34.00 us     110.00 us              8     INODELK
      0.06     463.00 us     197.00 us     729.00 us              2     XATTROP
     99.80      82.34 us      49.00 us    1064.00 us          19286       WRITE
 
    Duration: 17 seconds
   Data Read: 0 bytes
Data Written: 102400000 bytes
 
Brick: 10.70.43.52:/bricks/brick1/nagv13
----------------------------------------
Cumulative Stats:
   Block Size:               1024b+                2048b+                4096b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  246                   328                 18594 
 
   Block Size:               8192b+               16384b+               32768b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  110                     7                     1 
 
 %-latency   Avg-latency   Min-Latency   Max-Latency   No. of calls         Fop
 ---------   -----------   -----------   -----------   ------------        ----
      0.00       0.00 us       0.00 us       0.00 us              1     RELEASE
      0.00      52.00 us      52.00 us      52.00 us              1       FLUSH
      0.01     134.00 us     134.00 us     134.00 us              1        OPEN
      0.01     140.00 us     140.00 us     140.00 us              1 REMOVEXATTR
      0.01     171.00 us     171.00 us     171.00 us              1       FSTAT
      0.01      55.25 us      31.00 us      65.00 us              4    FINODELK
      0.02     249.00 us     249.00 us     249.00 us              1    TRUNCATE
      0.02     178.50 us     147.00 us     210.00 us              2    FXATTROP
      0.03     434.00 us     434.00 us     434.00 us              1      LOOKUP
      0.03      62.62 us      32.00 us      92.00 us              8     INODELK
      0.05     381.00 us     196.00 us     566.00 us              2     XATTROP
     99.80      79.17 us      51.00 us    1150.00 us          19286       WRITE
 
    Duration: 19 seconds
   Data Read: 0 bytes
Data Written: 102400000 bytes
 
Interval 1 Stats:
   Block Size:               1024b+                2048b+                4096b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  246                   328                 18594 
 
   Block Size:               8192b+               16384b+               32768b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  110                     7                     1 
 
 %-latency   Avg-latency   Min-Latency   Max-Latency   No. of calls         Fop
 ---------   -----------   -----------   -----------   ------------        ----
      0.00       0.00 us       0.00 us       0.00 us              1     RELEASE
      0.00      52.00 us      52.00 us      52.00 us              1       FLUSH
      0.01     134.00 us     134.00 us     134.00 us              1        OPEN
      0.01     140.00 us     140.00 us     140.00 us              1 REMOVEXATTR
      0.01     171.00 us     171.00 us     171.00 us              1       FSTAT
      0.01      55.25 us      31.00 us      65.00 us              4    FINODELK
      0.02     249.00 us     249.00 us     249.00 us              1    TRUNCATE
      0.02     178.50 us     147.00 us     210.00 us              2    FXATTROP
      0.03     434.00 us     434.00 us     434.00 us              1      LOOKUP
      0.03      62.62 us      32.00 us      92.00 us              8     INODELK
      0.05     381.00 us     196.00 us     566.00 us              2     XATTROP
     99.80      79.17 us      51.00 us    1150.00 us          19286       WRITE
 
    Duration: 17 seconds
   Data Read: 0 bytes
Data Written: 102400000 bytes
 
Brick: 10.70.42.109:/bricks/brick1/nagv13
-----------------------------------------
Cumulative Stats:
   Block Size:               1024b+                2048b+                4096b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  246                   328                 18594 
 
   Block Size:               8192b+               16384b+               32768b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  110                     7                     1 
 
 %-latency   Avg-latency   Min-Latency   Max-Latency   No. of calls         Fop
 ---------   -----------   -----------   -----------   ------------        ----
      0.00       0.00 us       0.00 us       0.00 us              1     RELEASE
      0.00      46.00 us      46.00 us      46.00 us              1       FLUSH
      0.01     102.00 us     102.00 us     102.00 us              1 REMOVEXATTR
      0.01     123.00 us     123.00 us     123.00 us              1        OPEN
      0.01     136.00 us     136.00 us     136.00 us              1       FSTAT
      0.01      41.50 us      32.00 us      55.00 us              4    FINODELK
      0.02     246.00 us     246.00 us     246.00 us              1    TRUNCATE
      0.02      40.88 us      34.00 us      60.00 us              8     INODELK
      0.02     189.50 us     141.00 us     238.00 us              2    FXATTROP
      0.03     470.00 us     470.00 us     470.00 us              1      LOOKUP
      0.05     408.00 us     190.00 us     626.00 us              2     XATTROP
     99.82      79.23 us      49.00 us     360.00 us          19286       WRITE
 
    Duration: 19 seconds
   Data Read: 0 bytes
Data Written: 102400000 bytes
 
Interval 1 Stats:
   Block Size:               1024b+                2048b+                4096b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  246                   328                 18594 
 
   Block Size:               8192b+               16384b+               32768b+ 
 No. of Reads:                    0                     0                     0 
No. of Writes:                  110                     7                     1 
 
 %-latency   Avg-latency   Min-Latency   Max-Latency   No. of calls         Fop
 ---------   -----------   -----------   -----------   ------------        ----
      0.00       0.00 us       0.00 us       0.00 us              1     RELEASE
      0.00      46.00 us      46.00 us      46.00 us              1       FLUSH
      0.01     102.00 us     102.00 us     102.00 us              1 REMOVEXATTR
      0.01     123.00 us     123.00 us     123.00 us              1        OPEN
      0.01     136.00 us     136.00 us     136.00 us              1       FSTAT
      0.01      41.50 us      32.00 us      55.00 us              4    FINODELK
      0.02     246.00 us     246.00 us     246.00 us              1    TRUNCATE
      0.02      40.88 us      34.00 us      60.00 us              8     INODELK
      0.02     189.50 us     141.00 us     238.00 us              2    FXATTROP
      0.03     470.00 us     470.00 us     470.00 us              1      LOOKUP
      0.05     408.00 us     190.00 us     626.00 us              2     XATTROP
     99.82      79.23 us      49.00 us     360.00 us          19286       WRITE
 
    Duration: 17 seconds
   Data Read: 0 bytes
Data Written: 102400000 bytes

Comment 9 errata-xmlrpc 2018-07-19 06:00:07 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2018:2222


Note You need to log in before you can comment on or make changes to this bug.