codeconsole commented on PR #16208:
URL: https://github.com/apache/grails-core/pull/16208#issuecomment-5767360573
Addressed round 5 (@matrei) and round 4 (@jdaugherty); there is a reply on
each of the new threads and on the one left open.
**The CI failures.** mongod was crashing on the `op_observer.cpp` invariant
because `SchemaBasedMultiTenancySpec` dropped MongoDB's `config` database on
the container its fork shares. In SCHEMA mode every database is a tenant, and
its cleanup was `eachTenant { DB.drop() }`. The next retryable `findAndModify`
then had to recreate `config.image_collection` inside the write. The cleanup
now drops only its own two tenant databases (6fe37380ea). The details and the
container log are on @jdaugherty's thread. The spec dates from 2020; the new
specification classes on this branch only changed which specs share a fork.
**@matrei, round 5:**
1. The configuration metadata has both settings (5cafdb298e), and both
appear in the `spring-configuration-metadata.json` of the built plugin jar.
While in that file: `grails.mongodb.decimalType` is listed with a default of
`false`, while `AbstractMongoConnectionSourceSettings` defaults it to `true`.
That predates this PR, so I've left it.
2. The deferral while stopped is now a feature in
`BuildIndexesLifecycleSpec`. On the related detail: `buildIndex()` now decides
between the warning and the deferral on a `closed` flag that `close()` sets,
rather than on `running`, so a datastore that was stopped and then closed gets
the warning.
From the notes: `8.0.x` is merged (abc944e654), `start()` now waits for the
interrupted worker before deciding, and the spurious re-run is gone (the
pending-flag thread).
**@jdaugherty, round 4:** every item is fixed with a test except the URL
scrub, which I've argued on its thread. `sameKeyPattern` now compares in order
(9a88f6ecd1), and the rest is in d8adb08fcf.
**Run locally,** on the head merged with `8.0.x`, with `-PmaxTestParallel=4`
as CI uses and a watcher on `docker events` recording any mongod that exits
without being stopped:
- JDK 21, `:grails-data-mongodb-core:cleanTest
:grails-data-mongodb-core:check --no-build-cache --continue`, twice: 799 tests,
0 failures, 0 errors, 45 skipped each time, with `checkstyleMain` and
`codenarcMain` clean.
- JDK 25, `:grails-data-mongodb-core:cleanTest
:grails-data-mongodb-core:test`, twice: 799 tests, 0 failures, 0 errors, 45
skipped each time.
- No mongod exited abnormally in any of the four runs.
- `LocalMongoUnitSpec` passes both features;
`:grails-data-mongodb-docs:asciidoctor`, root `aggregateViolations` and `rat`
are clean.
--
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]