Bug 1521119 - GlusterFS segmentation fault when deleting files from sharded tiered volume
Summary: GlusterFS segmentation fault when deleting files from sharded tiered volume
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: GlusterFS
Classification: Community
Component: tiering
Version: mainline
Hardware: x86_64
OS: Linux
unspecified
urgent
Target Milestone: ---
Assignee: bugs@gluster.org
QA Contact: bugs@gluster.org
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-12-05 20:25 UTC by vnosov
Modified: 2018-11-02 08:13 UTC (History)
4 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2018-11-02 08:13:11 UTC
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Embargoed:


Attachments (Terms of Use)
The volume glusterfs configuration (10.98 KB, text/plain)
2017-12-05 20:25 UTC, vnosov
no flags Details
GlusterFS core file (3.48 MB, application/x-gzip)
2017-12-05 20:27 UTC, vnosov
no flags Details
GlusterFS log files (387.37 KB, application/x-gzip)
2017-12-05 20:28 UTC, vnosov
no flags Details

Description vnosov 2017-12-05 20:25:18 UTC
Created attachment 1363338 [details]
The volume glusterfs configuration

Description of problem: Create tiered volume with 2099GB cold segment and 1GB hot segment. Enable sharding for the volume with features.shard-block-size: 16MB and cluster.tier-demote-frequency: 150. Enable CIFS export for the volume. Mount volume on Windows host. Write 100GB files to the volume. 3 files were written to the volume in the test. File deletion could be executed on the host or it could be executed on Linix system where the volume is provisioned and has SMB mount. In any case failure will be the same. In the test the volume was unmounted from the host and deletion was executed on SMB mount. After the deletion command was submitted GlusterFS hit segmentation fault.   


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


How reproducible:
100%


Steps to Reproduce:
1. See the attached text file.
2.
3.

Actual results:
One of GlusterFS processes hit segmentation fault.


Expected results:
The selected files have to be deleted as it is requested.


Additional info: see GlusterFS core file, see GlusterFS log files.

Comment 1 vnosov 2017-12-05 20:27:22 UTC
Created attachment 1363339 [details]
GlusterFS core file

Comment 2 vnosov 2017-12-05 20:28:26 UTC
Created attachment 1363340 [details]
GlusterFS log files

Comment 3 vnosov 2017-12-05 20:41:22 UTC
Sorry, it was FUSE mount on system where the volume is provisioned.

Comment 4 Jeff Byers 2018-01-16 23:56:43 UTC
This problem occurs as a side effect of the fix for:

    Bug 1282390 - Data Tiering:delete command rm -rf not deleting
    files the linkto file(hashed) which are under migration and
    possible spit-brain observed and possible disk wastage.
    
tier_unlink() is freeing the xdata out from under the shards
causing the dict_*() segfaults. It looks like dict_unref()
should only be called when the dict_set_dynstr_with_alloc(,
DHT_IATT_IN_XDATA_KEY) path is taken.

Comment 5 Shyamsundar 2018-10-23 14:53:48 UTC
Release 3.12 has been EOLd and this bug was still found to be in the NEW state, hence moving the version to mainline, to triage the same and take appropriate actions.

Comment 6 Amar Tumballi 2018-11-02 08:13:11 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.