Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Modify and return iatt (especially size and block-count) in shard in {F}SETXATTR fop #1243

Closed
KritikaDhananjay opened this issue May 14, 2020 · 12 comments
Assignees
Labels
assigned This bug has at least one 'assignee'. It will not get 'stale' label. release 7 release 8 release 8 Type:Bug wontfix Managed by stale[bot]

Comments

@KritikaDhananjay
Copy link
Contributor

Description of problem:
{F}SETXATTR, in its fop signature does not really return iatt (pre or postbufs).
But posix translator unconditionally places the pre and post stats in its xattr-rsp dict and unwinds it.
Md-cache fetches these iatts to update its cache. However, this awareness that iatts are being sent in response is not built into shard. This results in md-cache caching the base shard size as the size of the entire file. Until cache-timeout, this incorrect size gets served leading to errors in the application.

The exact command to reproduce the issue:

The full output of the command that failed:

Expected results:
md-cache must receive the aggregated file size if it is sharded. This means, shard translator must replace ia_size and ia_blocks with the values fetched from trusted.glusterfs.shard.file-size xattr before unwinding the {F}SETXATTR fops.

Additional info:

- The output of the gluster volume info command:

Any volume with shard enabled.

- The operating system / glusterfs version:

@gluster-ant
Copy link
Collaborator

A patch https://review.gluster.org/24471 has been posted that references this issue.

features/shard: Aggregate size, block-count in iatt before unwinding setxattr

Posix translator returns pre and postbufs in the dict in {F}SETXATTR fops.
These iatts are further cached at layers like md-cache.
Shard translator, in its current state, simply returns these values without
updating the aggregated file size and block-count.

This patch fixes this problem.

Change-Id: I4da0eceb4235b91546df79270bcc0af8cd64e9ea
Fixes: #1243
Signed-off-by: Krutika Dhananjay kdhananj@redhat.com

@KritikaDhananjay
Copy link
Contributor Author

Reopening and reusing this issue to address the same problem in {F}REMOVEXATTR.

@gluster-ant
Copy link
Collaborator

A patch https://review.gluster.org/24480 has been posted that references this issue.

features/shard: Aggregate file size, block-count before unwinding in removexattr

Posix translator returns pre and postbufs in the dict in {F}REMOVEXATTR fops.
These iatts are further cached at layers like md-cache.
Shard translator, in its current state, simply returns these values without
updating the aggregated file size and block-count.

This patch fixes this problem.

Change-Id: I4b2dd41ede472c5829af80a67401ec5a6376d872
Fixes: #1243
Signed-off-by: Krutika Dhananjay kdhananj@redhat.com

@gluster-ant
Copy link
Collaborator

A patch https://review.gluster.org/24567 has been posted that references this issue.

features/shard: Aggregate size, block-count in iatt before unwinding setxattr

Posix translator returns pre and postbufs in the dict in {F}SETXATTR fops.
These iatts are further cached at layers like md-cache.
Shard translator, in its current state, simply returns these values without
updating the aggregated file size and block-count.

This patch fixes this problem.

Change-Id: I4da0eceb4235b91546df79270bcc0af8cd64e9ea
Fixes: #1243
Signed-off-by: Krutika Dhananjay kdhananj@redhat.com
(cherry picked from commit 29ec66c)

@gluster-ant
Copy link
Collaborator

A patch https://review.gluster.org/24568 has been posted that references this issue.

features/shard: Aggregate size, block-count in iatt before unwinding setxattr

Posix translator returns pre and postbufs in the dict in {F}SETXATTR fops.
These iatts are further cached at layers like md-cache.
Shard translator, in its current state, simply returns these values without
updating the aggregated file size and block-count.

This patch fixes this problem.

Change-Id: I4da0eceb4235b91546df79270bcc0af8cd64e9ea
Fixes: #1243
Signed-off-by: Krutika Dhananjay kdhananj@redhat.com
(cherry picked from commit 29ec66c)

gluster-ant pushed a commit that referenced this issue Jun 18, 2020
…setxattr

Posix translator returns pre and postbufs in the dict in {F}SETXATTR fops.
These iatts are further cached at layers like md-cache.
Shard translator, in its current state, simply returns these values without
updating the aggregated file size and block-count.

This patch fixes this problem.

Change-Id: I4da0eceb4235b91546df79270bcc0af8cd64e9ea
Fixes: #1243
Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
(cherry picked from commit 29ec66c)
@gluster-ant
Copy link
Collaborator

A patch https://review.gluster.org/24629 has been posted that references this issue.

features/shard: Aggregate file size, block-count before unwinding removexattr

Posix translator returns pre and postbufs in the dict in {F}REMOVEXATTR fops.
These iatts are further cached at layers like md-cache.
Shard translator, in its current state, simply returns these values without
updating the aggregated file size and block-count.

This patch fixes this problem.

Change-Id: I4b2dd41ede472c5829af80a67401ec5a6376d872
Fixes: #1243
Signed-off-by: Krutika Dhananjay kdhananj@redhat.com
(cherry picked from commit 3251952)

gluster-ant pushed a commit that referenced this issue Jun 29, 2020
…setxattr

Posix translator returns pre and postbufs in the dict in {F}SETXATTR fops.
These iatts are further cached at layers like md-cache.
Shard translator, in its current state, simply returns these values without
updating the aggregated file size and block-count.

This patch fixes this problem.

Change-Id: I4da0eceb4235b91546df79270bcc0af8cd64e9ea
Fixes: #1243
Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
(cherry picked from commit 29ec66c)
@gluster-ant
Copy link
Collaborator

A patch https://review.gluster.org/24653 has been posted that references this issue.

features/shard: Aggregate file size, block-count before unwinding removexattr

Posix translator returns pre and postbufs in the dict in {F}REMOVEXATTR fops.
These iatts are further cached at layers like md-cache.
Shard translator, in its current state, simply returns these values without
updating the aggregated file size and block-count.

This patch fixes this problem.

Change-Id: I4b2dd41ede472c5829af80a67401ec5a6376d872
Fixes: #1243
Signed-off-by: Krutika Dhananjay kdhananj@redhat.com
(cherry picked from commit 3251952)

@rkothiya rkothiya added the release 8 release 8 label Jun 30, 2020
gluster-ant pushed a commit that referenced this issue Jun 30, 2020
…ovexattr

Posix translator returns pre and postbufs in the dict in {F}REMOVEXATTR fops.
These iatts are further cached at layers like md-cache.
Shard translator, in its current state, simply returns these values without
updating the aggregated file size and block-count.

This patch fixes this problem.

Change-Id: I4b2dd41ede472c5829af80a67401ec5a6376d872
Fixes: #1243
Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
(cherry picked from commit 3251952)
gluster-ant pushed a commit that referenced this issue Jul 13, 2020
…ovexattr

Posix translator returns pre and postbufs in the dict in {F}REMOVEXATTR fops.
These iatts are further cached at layers like md-cache.
Shard translator, in its current state, simply returns these values without
updating the aggregated file size and block-count.

This patch fixes this problem.

Change-Id: I4b2dd41ede472c5829af80a67401ec5a6376d872
Fixes: #1243
Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
(cherry picked from commit 3251952)
@stale
Copy link

stale bot commented Jan 26, 2021

Thank you for your contributions.
Noticed that this issue is not having any activity in last ~6 months! We are marking this issue as stale because it has not had recent activity.
It will be closed in 2 weeks if no one responds with a comment here.

@stale stale bot added the wontfix Managed by stale[bot] label Jan 26, 2021
@mykaul
Copy link
Contributor

mykaul commented Jan 26, 2021

@VHariharmath-rh - you may want to look at this.

@stale stale bot removed the wontfix Managed by stale[bot] label Jan 26, 2021
@vh05
Copy link
Contributor

vh05 commented Jan 26, 2021

sure. I will take a look

@vh05 vh05 self-assigned this Jan 26, 2021
@amarts amarts added the assigned This bug has at least one 'assignee'. It will not get 'stale' label. label May 28, 2021
@stale
Copy link

stale bot commented Dec 26, 2021

Thank you for your contributions.
Noticed that this issue is not having any activity in last ~6 months! We are marking this issue as stale because it has not had recent activity.
It will be closed in 2 weeks if no one responds with a comment here.

@stale stale bot added the wontfix Managed by stale[bot] label Dec 26, 2021
@stale
Copy link

stale bot commented Jan 15, 2022

Closing this issue as there was no update since my last update on issue. If this is an issue which is still valid, feel free to open it.

@stale stale bot closed this as completed Jan 15, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
assigned This bug has at least one 'assignee'. It will not get 'stale' label. release 7 release 8 release 8 Type:Bug wontfix Managed by stale[bot]
Projects
None yet
Development

No branches or pull requests

7 participants