parse-server icon indicating copy to clipboard operation
parse-server copied to clipboard

Flaky Tests Invalid server state: initialized

Open dplewis opened this issue 1 year ago β€’ 6 comments

New Issue Checklist

Issue Description

The test suite in this repo and in the JS SDK both have flaky tests. I believe this is due to the asyncronous nature of starting the server instance.

await ParseServer.startApp(newConfiguration);

I think the issue is after the promise resolves the server is still initializing. https://github.com/parse-community/parse-server/pull/8232

Parse.Query testing dontSelect query without conditions
  - Unhandled promise rejection: ParseError: 111 Invalid server state: initialized,ParseError: 111 Invalid server state: initialized,ParseError: 111 Invalid server state: initialized,ParseError: 111 Invalid server state: initialized,ParseError: 111 Invalid server state: initialized  

Steps to reproduce

I can't reproduce this locally

Actual Outcome

Tests fail

Expected Outcome

Test Pass

dplewis avatar Jun 07 '24 22:06 dplewis

Thanks for opening this issue!

  • πŸš€ You can help us to fix this issue faster by opening a pull request with a failing test. See our Contribution Guide for how to make a pull request, or read our New Contributor's Guide if this is your first time contributing.

So initialized is the state after calling the ParseServer constructor. As soon as you call start() on the instance, the state changes to starting. From what you describe it looks like start() has not been called at all, because starting is set synchronously after calling start(). So it may be related to the reconfigureServer logic; that promise may return early, rather than the server init itself. Which would be good, because that means it's only a testing issue, not a server issue.

mtrezza avatar Jun 11 '24 13:06 mtrezza

Closing via https://github.com/parse-community/Parse-SDK-JS/pull/2183

mtrezza avatar Jun 28 '24 01:06 mtrezza

Re-opened, I think we first need to upgrade the Parse JS SDK in Parse Server to see whether the Parse Server CI shows less flakiness.

mtrezza avatar Jun 28 '24 01:06 mtrezza

I agree, I still don’t know why this is happening. I would like to think I solved it on the JS SDK

IMG_0502

dplewis avatar Jun 28 '24 23:06 dplewis

Issue still occurs in recent PRs; I have never seen this before; is this a recently introduced issue?

mtrezza avatar Jun 30 '24 02:06 mtrezza

@mtrezza Looks like the server shutsdown and restarts randomly after a few hundred tests. If we turn off the randomized tests we should find a pattern.

dplewis avatar Jul 07 '24 13:07 dplewis

Okay, if you want to open a PR to temporarily disable random tests I'll go ahead and merge

mtrezza avatar Jul 07 '24 15:07 mtrezza

πŸŽ‰ This change has been released in version 7.2.0-beta.1

parseplatformorg avatar Jul 09 '24 00:07 parseplatformorg

πŸŽ‰ This change has been released in version 7.2.0

parseplatformorg avatar Jul 09 '24 01:07 parseplatformorg