#4427 work around nfs glitch in ensuredir
Merged by mikem. Opened by mikem.
mikem/koji ensuredir-workaround  into  master

Download 4427.patch

In a multi-hub + nfs scenario, we've seen race situations where mkdir fails with EEXIST, but an immediate lstat does not find the directory. This workaround seems to help in testing. See #4417 for background

Fixes https://pagure.io/koji/issue/4417
(hopefully)

@julian8628

The script I used to replicate the race is attached to #4417
Note that replicating the issue will also require a setup with multiple hosts and an nfs mount (at least). Replication could also be sensitive to the running kernel and the nfs server.

I don't think we need to replicate the race in test infra in order to merge this. The main concern is to not break any existing ensuredir cases.

I'll look at deploying this... thanks.

This is deployed now... let me know if you see anything unexpected.

:thumbsup:

Metadata Update from @mikem:
- Pull-request tagged with: testing-basic

This is deployed now... let me know if you see anything unexpected.

@kevin it looks like the code on the hubs is still the previous debug PR (#4422 which doesn't fix the problem). This PR is a bit different.

Huh. I thought I pulled the right thing. ;( I guess not. Will check today...

Narrator: he did not. ;(

ok. I think I got it right this time and deployed it.

ok. I think I got it right this time and deployed it.

Looks good now.

No ensuredir errors since, but this was only happening a few times a day before. I'll keep an eye on it.

Metadata Update from @mfilip:
- Pull-request tagged with: testing-done

rebased onto 5619342ef3a34ca0d9c94e553f496e73c8fc712a

Commit ff1b2b2f fixes this pull-request

Pull-Request has been merged by mikem

Metadata