-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
Fix flaky mongo devservices on windows #26590
Conversation
one of these days, i'll actually see these failures on a PR and catch them before main breaks. "but that is not this day!" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you elaborate on what's going on here?
Because all these tests were passing before? Why do they suddenly fail? Or did we miss something before?
I fixed an issue to enable dev services on all named (and unnamed) mongodb client definitions. Seemed a simple enough fix but it's turned in a forest fire for no discernable reason. |
ok to merge then @gsmet? I'd really like these failures to stop but when the PRs keep getting all greens it creates an annoying cycle. :) |
Frankly, I'm unhappy about it. You added a dev service feature and significantly reduced our code coverage on Windows for MongoDB in general. I don't see how that's acceptable? We have dev services tests that are in a specific module. For instance: And you could disable dev services for the modules where we don't want it enabled via configuration (i.e. for all the other MongoDB modules). So I would say either you can get this sorted out in a reasonable timeline or I'm going to revert this set of patches until you are able to make things work without reducing our coverage and we could then merge the change again. Let me know what you prefer. You would be less pressured with the latter but you might not like it. |
I'm closing in on what I think is the issue. But reproducing it locally has proven difficult and even CI runs have all been green for me. But I think I have it properly isolated now (and I'm moving the devservice check off to its own IT). We'll see how CI treats but it hasn't been very helpful to me with this so fingers crossed. |
I share the desire of a deterministic, reproducible, and reliable CI. IMO Disabling tests and working the bug and later reenabling is a good strategy keep that up. In some cases I agree it's better just to revert the change, in particular if we know the change is causing side effects in other areas, or if we are close to tagging and the chances of having a solution in time are low. On the other hand, If it's a contained problem being worked on by a component/extension lead, I think it's totally reasonable to do the former approach, particularly if they are committed to resolving the underlying problem. They are most likely the best equipped to assess whether the problem is real or whether it's just flaky tests triggered by a timing change. I really think we should defer to Justin on how to best proceed here in recovering the situation. Correct me if I am wrong Justin, but I suspect you would gladly revert the change if you determined it was about to be shipped and break a bunch of people? |
This comment has been minimized.
This comment has been minimized.
@n1hility well, my problem is that it was never mentioned that it was a temporary fix. And I'm not sure it was designed to be. I have no problem to merge a temporary fix to fix CI. But it has to be clear. I won't accept the MongoDB tests to be fully disabled on Windows forever for the sake of adding a dev service feature. But I think I will have a look at it myself because it has been too long already. |
I'm having a look at this one. |
Let's wait for CI to pass but I think it should be as simple as: #26649 so that we don't start a Docker container for the default connection in the newly added tests (given the default connection is not defined, one is created when dev services are enabled). |
#26649 has been merged. Let's close this one. |
sigh i had this. |
Not sure what exactly you had but your PR introduced a lot more failures so it was nowhere near ready. Now, if you want to introduce a new module to test MongoDB dev services specifically as I originally suggested, it's very welcome but please:
|
I have those tests reenabled with updated configurations where necessary. there was one odd failure in an unexpected place that i'm tracking (with fix like the one you pushed, ironically). I said i was working on. Please respect my effort and give me the time you offered. At a minimum, stop closing PRs without consulting with the requester. |
CI is fixed so you have all the time you want. |
And no, there was not "one odd failure": the initial problem was not fixed, and there were a ton of other failures. See the report here: #26590 (comment) . So yes, I decided to get a quick fix in (it was just one line) given the initial issue was simple to fix and it was failing for ages now. What you were working on here was unclear so sorry if I missed your intention and you wanted to go further than simply fixing the original issue. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
i finally have the devservices test isolated and excluded and fixed the mongodb tests that had been relying on the default connection getting picked up by the mongodb test resources infra. |
I'll let Guillaume decide |
final call ... ? |
No description provided.