-
Notifications
You must be signed in to change notification settings - Fork 572
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
Make test
errors on fresh checkout
#3148
Comments
Note Starting with fresh installs of Ubuntu Server 22.04 and 24.04
Get latest of the code
Now ready to run
Note Starting with fresh installs of Ubuntu Desktop 22.04 and 24.04
|
That has got me further, thanks. It now fails on the xrpc server tests, I suspect because I am running the tests inside a VNC session, which is bumping the instance count by one...
However if I comment that test out it then starts failing on EADDRINUSE in the packages/bsky test
|
The EADDRINUSE seems to be intermittent, but the too many clients problem remains. |
Is there a reason why all these steps are necessary? Can the repo not include docker files to build a test environment container with the correct security tweaks in place? |
The real mystery to me is how the Github actions run the tests so reliably. The instructions above are meant to try to setup a local environment as closely as possible to what Github actions uses. One thing of note is that the Github actions run as 8 separate shards and also includes extra parametes. I've also tried this approach local but it doesn't seem to make much difference with respect to the intermittent failures.
But not only that - it appears the entire environment is torn down in between each shard. Which I have not tried local ... since it would require, as you suggest, an entire new docker layer (and then it would have docker within docker, because the tests already use docker). However, their tests do have a non-docker mode I haven't explored very much (as the Github actions run the docker based tests). I also see these intermittent errors when running the code in production. On a host with very little traffic, requests intermittently fail with Internal server error, but they succeed when retried the second time. To add to the complexity of trying to grasp all this, their official pds install instructions uses a docker file which seems to pull a special image they have prepared But going back to the real mystery, I don't see any special tweaks being applied during the Github actions. |
Do you not get postgresql rejecting the number of connections? |
I've seen postgresql rejecting number of connections, but only as a side effect of the timeout or other errors occurring first. |
I've been attempting to use pgbouncer to resolve it, but setup is a nightmare :( |
I think maxworkers is the key. Without it too much runs in parallel and various things fall over. You can also use this with debugger auto-attach and a breakpoint to debug a test. Of course for a single test you can also go into the right package's directory and run test from there:
|
Summary so far of things that help, but don't fully resolve. By not fully resolve, that means
|
Discussed in #3040
Originally posted by zacuke November 18, 2024
Hello, this test below fails every time I run
make test
. I've been trying quite a few things:But nothing seems to help. If I lower the 3000 value too much, then the string seems to be too short, and it properly makes a round trip without 400 error and the test fails for a different reason: it expects the server to reject the too-long string.
Line 1209 with the seemingly arbitrary 3000 parameter value was recently changed and the commit message itself seems to indicate node v20 support, but I get better results using v18 (although this Maximum call stack error happens either way)
So, what is everyone doing to get a succesful
make test
run?The text was updated successfully, but these errors were encountered: