feat(berlinmod): route the streaming parity matrix through MEOS via JMEOS 1.4 (stacks on #1)#14
Conversation
346999a to
5e64f44
Compare
c6f2016 to
6305403
Compare
There was a problem hiding this comment.
This binary file should not be in the repository, it should be added to the .gitignore The repository should have a Maven file with the proper dependencies needed instead Or have a build-jmeos.shscript instead which clones JMEOS and MobilityDB, compile libmeos.so and generates the jar usingmvn install:install-file`
There was a problem hiding this comment.
Done. Removed the committed JMEOS.jar and libmeos.so, added them (and the build work dir) to .gitignore, and added build-jmeos.sh at the repo root. It clones MobilityDB and JMEOS at pinned, immutable refs, builds libmeos.so (cmake -DMEOS=ON plus the type families the app uses), builds the jar, installs it into the local Maven repository via mvn install:install-file, and stages libmeos.so for the runtime. The pom now resolves JMEOS as an ordinary dependency (no system scope). Verified end to end: ./build-jmeos.sh then mvn test -> 11/11 green.
There was a problem hiding this comment.
There are dependencies on the PR #1148 from MobilityDB in the project
This dependency being from an unstable PR can be dangerous if the PR #1148 is ever modified or refused, then this project will have an invalid dependency and not be future proof
There was a problem hiding this comment.
Addressed. The build no longer references the open PR #1148 branch. build-jmeos.sh pins MobilityDB to the published, immutable tag ecosystem-pin-2026-06-05e, which already carries the set-set spatial-join surface, so a rebase, force-push or closure of #1148 cannot affect this project. Both pinned refs are overridable env vars at the top of the script, so bumping to a newer line is a one-line change.
There was a problem hiding this comment.
Correction + final state: the build now pins the deliverable PRs' immutable head SHAs, not an ecosystem-pin tag (my earlier reply pinned the pin tag — reverted, since the pin is a benchmark/evidence vehicle, not a dependency). build-jmeos.sh builds libmeos from MobilityDB #1148 (set-set join, now stacked on #1162 clean/geo; head fab7025b2) and the jar from JMEOS #25; both refs are overridable env vars to switch to upstream master/main once integrated. Pinning the real PRs also surfaced a genuine bug the pin had been masking — #1148's set-set aDisjoint was wrong on geodetic data until it was rebased onto #1162; fixed at source. ./build-jmeos.sh then mvn test → 11/11 green.
1ce3053 to
c2ed1dd
Compare
…MEOS 1.4 Route the BerlinMOD-9 × 3-form processors through MEOS (libmeos via the JMEOS 1.4 bridge) — edwithin_tgeo_geo, eintersects_tgeo_geo, geog_distance and the set-set join family — and add the MEOS DSL-tier wirings, the per-family facade smoke tests and the canonical BerlinMOD corpus loader. JMEOS and the native libmeos.so are built from source rather than committed to the repository. build-jmeos.sh clones MobilityDB and JMEOS at the deliverable PRs' immutable head commit SHAs, builds libmeos.so, builds the jar and installs it into the local Maven repository, so the pom resolves JMEOS as an ordinary dependency. It pins MobilityDB #1148 (set-set join, stacked on #1162 clean/geo) and JMEOS #25 (facade) as overridable env vars; both are switched to upstream master/main after those PRs are integrated.
c2ed1dd to
813643a
Compare
feat(berlinmod): streaming throughput benchmark on the canonical BerlinMOD corpus (stacks on #14)
Path-B consolidation — PR 2 of 3 (scaffold #1 · MEOS integration · benchmark).
Collapses the former MEOS stack (old #2–#10) into one topical commit on top of the reviewed scaffold #1. Routes the BerlinMOD-9 × 3-form processors through MEOS (libmeos via the JMEOS 1.4 bridge) —
edwithin_tgeo_geo,eintersects_tgeo_geo,geog_distance, and the set-set join family — and adds the MEOS DSL-tier wirings + per-family facade smoke tests + the canonical BerlinMOD corpus loader.JMEOS built from source (review fix)
The JMEOS jar and the native
libmeos.soare no longer committed to the repository.build-jmeos.shclones MobilityDB and JMEOS at pinned refs, buildslibmeos.so(cmake -DMEOS=ONplus the type families the app uses), builds the jar, installs it into the local Maven repository viamvn install:install-file, and stageslibmeos.sofor the runtime. The pom resolves JMEOS as an ordinary dependency (nosystemscope);jar/,lib/and the build work dir are git-ignored.Depends on the deliverable PRs, not a pin
The build pins the deliverable PRs' immutable head commit SHAs — MobilityDB #1148 (set-set spatial join, stacked on #1162
clean/geofor the geodetic-disjoint surface) and JMEOS #25 (theorg.mobilitydb.meosfacade). Both are overridable env vars at the top of the script; switch them to upstream master/main after those PRs are integrated. No ecosystem-pin tag is referenced — a pin is the benchmark/evidence vehicle, not a dependency (and it masks individual-PR gaps).Irregularities removed vs. the old stack
jar/JMEOS.jar+lib/libmeos.so.meos/MeosOps*.javagenerated files that no longer exist).BerlinMODCorpus.synthetic()corpus — the canonicalberlinmod_instants.csvis the only data source.MeosWiringsDemoTopologyout ofsrc/main(it used the test-scopedTopologyTestDriver) — same fix as the scaffold'sBerlinMODFullMatrixTest.Verification
./build-jmeos.shthenmvn test→ 11 tests, 0 failures (full matrix + MEOS family smokes + set-set join), against a JMEOS jar built from source at MobilityDB #1148 (fab7025b2, on #1162) + JMEOS #25. MEOS smokes run withreuseForks=falsefor a clean native lifecycle.