Yicong-Huang commented on issue #4525: URL: https://github.com/apache/texera/issues/4525#issuecomment-4321546053
Closed the experimental PR (#4527) with a write-up of what CI found. Quick summary: Removing the global `Tags.limit` is feasible but requires several prerequisite cleanups, each meaningful in its own right: 1. **Singleton `MockTexeraDB`** so concurrent specs don't race on the EmbeddedPostgres binary lock. 2. **`TRUNCATE` every `texera_db` table on each spec setup** (both singleton EP and the CI Postgres service) to stop `uid=1` / `wid=1` collisions across specs. 3. **A serialization mechanism that doesn't depend on `super.beforeAll`** — most DB-using specs override `beforeAll` without chaining. Overriding `Suite.run` works. 4. **Real per-JVM singletons across modules** — sbt's default no-fork puts every subproject's tests in one JVM with separate classloaders, so `object` singletons are per-classloader. Either `Test / fork := true` (with the right `forkOptions / workingDirectory` since otherwise relative paths like `sql/texera_ddl.sql` break), or a cross-classloader sync mechanism. 5. **Audit relative paths** — there are at least two conventions in test code (`sql/...` and `./common/workflow-operator`) that assume the cwd is the repo root. Each of these is a self-contained PR worth landing on its own; only after they're all in does the actual `Tags.limit` removal become a small one-line change. Leaving this issue open as the umbrella; the PR branch is preserved as a reference (`Yicong-Huang/texera:perf/try-remove-test-limit`). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
