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

Ignore EIO error in unmount path #67097

Merged
merged 1 commit into from Aug 15, 2018

Conversation

@chakri-nelluri
Contributor

chakri-nelluri commented Aug 7, 2018

What this PR does / why we need it:
This PR ignores EIO in unmount path. XFS shuts down filesystem when the target is down and it returns EIO for the stat calls used in unmount path.

Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #66868

Special notes for your reviewer:
We already handle ESTALE & ENOTCONN errors in isCorruptedMnt Call. Adding EIO to that list covers the XFS shutdown case.

Also Flexvolume doesn't check for these errors in its current form. Updated Flexvolume code to handle it.

Fix an issue where filesystems are not unmounted when a backend is not reachable and returns EIO.
@k8s-ci-robot

This comment has been minimized.

Show comment
Hide comment
@k8s-ci-robot

k8s-ci-robot Aug 7, 2018

Contributor

Thanks for your pull request. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

📝 Please follow instructions at https://git.k8s.io/community/CLA.md#the-contributor-license-agreement to sign the CLA.

It may take a couple minutes for the CLA signature to be fully registered; after that, please reply here with a new comment and we'll verify. Thanks.


Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Contributor

k8s-ci-robot commented Aug 7, 2018

Thanks for your pull request. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

📝 Please follow instructions at https://git.k8s.io/community/CLA.md#the-contributor-license-agreement to sign the CLA.

It may take a couple minutes for the CLA signature to be fully registered; after that, please reply here with a new comment and we'll verify. Thanks.


Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@chakri-nelluri

This comment has been minimized.

Show comment
Hide comment
@chakri-nelluri

chakri-nelluri Aug 7, 2018

Contributor

@msau42 @saad-ali @verult @linyouchong PTAL when you get a chance.

Contributor

chakri-nelluri commented Aug 7, 2018

@msau42 @saad-ali @verult @linyouchong PTAL when you get a chance.

@chakri-nelluri

This comment has been minimized.

Show comment
Hide comment
@chakri-nelluri

chakri-nelluri Aug 7, 2018

Contributor

/test pull-kubernetes-e2e-gce-100-performance

Contributor

chakri-nelluri commented Aug 7, 2018

/test pull-kubernetes-e2e-gce-100-performance

@neolit123

This comment has been minimized.

Show comment
Hide comment
@neolit123

neolit123 Aug 7, 2018

Member

/sig storage

Member

neolit123 commented Aug 7, 2018

/sig storage

@chakri-nelluri

This comment has been minimized.

Show comment
Hide comment
@chakri-nelluri

chakri-nelluri Aug 8, 2018

Contributor

/test pull-kubernetes-e2e-gce-100-performance

Contributor

chakri-nelluri commented Aug 8, 2018

/test pull-kubernetes-e2e-gce-100-performance

@chakri-nelluri

This comment has been minimized.

Show comment
Hide comment
@chakri-nelluri

chakri-nelluri Aug 9, 2018

Contributor

@jingxu97 PTAL when you get a chance. Thanks.

Contributor

chakri-nelluri commented Aug 9, 2018

@jingxu97 PTAL when you get a chance. Thanks.

if pathErr != nil && !util.IsCorruptedMnt(pathErr) {
return fmt.Errorf("Error checking path: %v", pathErr)
}

This comment has been minimized.

@gnufied

gnufied Aug 13, 2018

Member

I have been thinking about - #67132 too and I am wondering if it is sensible to allow call to unmount to flex driver when ENOTCONN is raised. @nkkashyap why do you think it is sensible to allow unmount call even if volume is known to be corrupted?

@gnufied

gnufied Aug 13, 2018

Member

I have been thinking about - #67132 too and I am wondering if it is sensible to allow call to unmount to flex driver when ENOTCONN is raised. @nkkashyap why do you think it is sensible to allow unmount call even if volume is known to be corrupted?

This comment has been minimized.

@chakri-nelluri

chakri-nelluri Aug 14, 2018

Contributor

@gnufied for some filesystems this may be required. The unmount call from the flexvolume can always fail if it cannot unmount.

@chakri-nelluri

chakri-nelluri Aug 14, 2018

Contributor

@gnufied for some filesystems this may be required. The unmount call from the flexvolume can always fail if it cannot unmount.

@gnufied

This comment has been minimized.

Show comment
Hide comment
@gnufied

gnufied Aug 13, 2018

Member

Mostly looks good to me. Not sure if we can resolve #67132 within same PR (or if that is an issue at all).

Member

gnufied commented Aug 13, 2018

Mostly looks good to me. Not sure if we can resolve #67132 within same PR (or if that is an issue at all).

@gnufied

This comment has been minimized.

Show comment
Hide comment
@gnufied

gnufied Aug 13, 2018

Member

/assign

Member

gnufied commented Aug 13, 2018

/assign

@chakri-nelluri

This comment has been minimized.

Show comment
Hide comment
@chakri-nelluri

chakri-nelluri Aug 14, 2018

Contributor

@gnufied Please let me know if this looks good to get in. I want to merge it back to 1.10 & 1.11 releases.

Contributor

chakri-nelluri commented Aug 14, 2018

@gnufied Please let me know if this looks good to get in. I want to merge it back to 1.10 & 1.11 releases.

@gnufied

This comment has been minimized.

Show comment
Hide comment
@gnufied

gnufied Aug 14, 2018

Member

/lgtm

Member

gnufied commented Aug 14, 2018

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm label Aug 14, 2018

@k8s-ci-robot

This comment has been minimized.

Show comment
Hide comment
@k8s-ci-robot

k8s-ci-robot Aug 14, 2018

Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: chakri-nelluri, gnufied

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Contributor

k8s-ci-robot commented Aug 14, 2018

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: chakri-nelluri, gnufied

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@chakri-nelluri

This comment has been minimized.

Show comment
Hide comment
@chakri-nelluri

chakri-nelluri Aug 14, 2018

Contributor

/test pull-kubernetes-kubemark-e2e-gce-big

Contributor

chakri-nelluri commented Aug 14, 2018

/test pull-kubernetes-kubemark-e2e-gce-big

@k8s-merge-robot

This comment has been minimized.

Show comment
Hide comment
@k8s-merge-robot

k8s-merge-robot Aug 15, 2018

Contributor

/test all [submit-queue is verifying that this PR is safe to merge]

Contributor

k8s-merge-robot commented Aug 15, 2018

/test all [submit-queue is verifying that this PR is safe to merge]

@k8s-merge-robot

This comment has been minimized.

Show comment
Hide comment
@k8s-merge-robot

k8s-merge-robot Aug 15, 2018

Contributor

Automatic merge from submit-queue (batch tested with PRs 67396, 67097, 67395, 67365, 67099). If you want to cherry-pick this change to another branch, please follow the instructions here.

Contributor

k8s-merge-robot commented Aug 15, 2018

Automatic merge from submit-queue (batch tested with PRs 67396, 67097, 67395, 67365, 67099). If you want to cherry-pick this change to another branch, please follow the instructions here.

@k8s-merge-robot k8s-merge-robot merged commit 5aea00d into kubernetes:master Aug 15, 2018

7 of 18 checks passed

pull-kubernetes-bazel-build Job triggered.
Details
pull-kubernetes-bazel-test Job triggered.
Details
pull-kubernetes-e2e-gce Job triggered.
Details
pull-kubernetes-e2e-gce-100-performance Job triggered.
Details
pull-kubernetes-e2e-gce-device-plugin-gpu Job triggered.
Details
pull-kubernetes-e2e-kops-aws Job triggered.
Details
pull-kubernetes-integration Job triggered.
Details
pull-kubernetes-kubemark-e2e-gce-big Job triggered.
Details
pull-kubernetes-node-e2e Job triggered.
Details
pull-kubernetes-typecheck Job triggered.
Details
pull-kubernetes-verify Job triggered.
Details
Submit Queue Running github e2e tests a second time.
Details
cla/linuxfoundation chakri-nelluri authorized
Details
pull-kubernetes-cross Skipped
pull-kubernetes-e2e-gke Skipped
pull-kubernetes-e2e-kubeadm-gce Skipped
pull-kubernetes-local-e2e Skipped
pull-kubernetes-local-e2e-containerized Skipped
@k8s-ci-robot

This comment has been minimized.

Show comment
Hide comment
@k8s-ci-robot

k8s-ci-robot Aug 15, 2018

Contributor

@chakri-nelluri: The following test failed, say /retest to rerun them all:

Test name Commit Details Rerun command
pull-kubernetes-e2e-gce-100-performance 93a19fc link /test pull-kubernetes-e2e-gce-100-performance

Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Contributor

k8s-ci-robot commented Aug 15, 2018

@chakri-nelluri: The following test failed, say /retest to rerun them all:

Test name Commit Details Rerun command
pull-kubernetes-e2e-gce-100-performance 93a19fc link /test pull-kubernetes-e2e-gce-100-performance

Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@chakri-nelluri

This comment has been minimized.

Show comment
Hide comment
@chakri-nelluri

chakri-nelluri Aug 15, 2018

Contributor

/test pull-kubernetes-e2e-gce-100-performance

Contributor

chakri-nelluri commented Aug 15, 2018

/test pull-kubernetes-e2e-gce-100-performance

k8s-merge-robot added a commit that referenced this pull request Aug 16, 2018

Merge pull request #67443 from chakri-nelluri/automated-cherry-pick-of-
…#67097-upstream-release-1.10

Automatic merge from submit-queue.

Automated cherry pick of #67097: Ignore EIO error in unmount path

Cherry pick of #67097 on release-1.10.

#67097: Ignore EIO error in unmount path
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment