Bug 1316517 - [Tier]: Creation of hardlink on tiered volume failed with EXISTS
Summary: [Tier]: Creation of hardlink on tiered volume failed with EXISTS
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: GlusterFS
Classification: Community
Component: tiering
Version: mainline
Hardware: x86_64
OS: Linux
unspecified
high
Target Milestone: ---
Assignee: Mohammed Rafi KC
QA Contact: bugs@gluster.org
URL:
Whiteboard: tier-fuse-nfs-samba
Depends On: 1305490
Blocks: 1268895
TreeView+ depends on / blocked
 
Reported: 2016-03-10 11:49 UTC by Mohammed Rafi KC
Modified: 2018-11-08 06:51 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of: 1305490
Environment:
Last Closed: 2018-11-08 06:51:06 UTC
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:


Attachments (Terms of Use)

Comment 1 Vijay Bellur 2016-03-10 11:52:47 UTC
REVIEW: http://review.gluster.org/13672 (tier: link file creation fails when file moved from hot to cold) posted (#1) for review on master by mohammed rafi  kc (rkavunga@redhat.com)

Comment 2 Mohammed Rafi KC 2016-03-10 14:01:41 UTC
Upstream patch : http://review.gluster.org/#/c/13672/

This patch will solve the race condition with linkfile creation

When the file is in hot tier and linkfile in cold tier


1) Hardlink created on cold tier for linkfile
2) if Link creation on hot tier success then send success to application
3) else if Link creation on hot tier fails
 4) Do a lookup on hot tier with source path.
 5) if source is present
    5.1 if (gfid differ)               // File can recreate with different gfid
        5.2.1 make link call success
    5.2 else if same gfid
        5.2.1 fail the link call
 6) else if source is not present       // Either migrated or deleted
    6.1 Do lookup on dst loc in cold tier
    6.2 if (dst is not present)
        6.2.1 Created link was deleted. Fail the link call
    6.3 else if dst is present
        6.3.1 if it is linkto file // source could have deleted
            6.3.1.1 if gfid is same
               6.3.1.1.1 delete the linkfile
               6.3.1.1.2 fail the link call
            6.3.1.2 else if gfid differ
               6.3.1.2.1 Fail the link call
        6.3.2 else if it is a regular file
            6.3.2.1 if gfid is same
               6.3.2.1.1 Success the link call.
            6.3.2.2 else if gfid is different
               6.3.2.2.1 Fail the link call.
                 
7) End

Comment 3 Vijay Bellur 2016-03-10 14:22:29 UTC
REVIEW: http://review.gluster.org/13672 (tier: link file creation fails when file moved from hot to cold) posted (#2) for review on master by mohammed rafi  kc (rkavunga@redhat.com)

Comment 4 Vijay Bellur 2016-03-10 17:10:13 UTC
REVIEW: http://review.gluster.org/13672 (tier: link file creation fails when file moved from hot to cold) posted (#3) for review on master by mohammed rafi  kc (rkavunga@redhat.com)

Comment 5 Vijay Bellur 2016-03-11 09:01:18 UTC
REVIEW: http://review.gluster.org/13672 (tier: link file creation fails when file moved from hot to cold) posted (#4) for review on master by mohammed rafi  kc (rkavunga@redhat.com)

Comment 6 Vijay Bellur 2016-03-14 10:02:52 UTC
REVIEW: http://review.gluster.org/13672 (tier: link file creation fails when file moved from hot to cold) posted (#5) for review on master by mohammed rafi  kc (rkavunga@redhat.com)

Comment 7 Mike McCune 2016-03-28 23:28:22 UTC
This bug was accidentally moved from POST to MODIFIED via an error in automation, please see mmccune@redhat.com with any questions

Comment 8 hari gowtham 2018-11-08 06:51:06 UTC
Patch https://review.gluster.org/#/c/glusterfs/+/21331/ removes tier
functionality from GlusterFS.

https://bugzilla.redhat.com/show_bug.cgi?id=1642807 is used as the tracking bug
for this. Recommendation is to convert your tier volume to regular volume
(either replicate, ec, or plain distribute) with "tier detach" command before
upgrade, and use backend features like dm-cache etc to utilize the caching from
backend to provide better performance and functionality.


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