qqeasonchen opened a new pull request, #5400:
URL: https://github.com/apache/eventmesh/pull/5400
Fixes #5399
### Changes
* New module `eventmesh-storage-plugin/eventmesh-storage-memory`:
* `MemoryMeshStoragePlugin` implements `MeshStoragePlugin` + all 7
`StorageCapabilities` sub-interfaces — a production-scope promotion of the
`InMemoryStoragePlugin` TCK self-test fixture from `eventmesh-storage-api`
src/test.
* SPI registration
`memory=org.apache.eventmesh.storage.memory.MemoryMeshStoragePlugin` — select
with `EVENTMESH_STORAGE_TYPE=memory` (`eventmesh.storage.type`).
* `MemoryMeshStoragePluginTCKTest` (TCK subclass declaring all 7
capabilities) + round-trip unit tests.
* `settings.gradle`: module registration (mirrors the Kafka plugin line).
* `docs/feature/storage-spi.md`: capability matrix gains a `Memory` column
(all 7 capabilities Y).
### Semantics
* State is process-local: per-topic synchronized append-only frame log
(offset = index), per-`(topic, partition)` committed-offset map, per-topic
assigned-partition set, pending-ACK map, per-lite-topic lists. Lost on shutdown
— documented in the class javadoc and the issue Non-Goals.
* Zero external dependencies (no broker) — intended for dev sandboxes and CI
smoke runs, complementing the K8s manifests from #5398 which previously
required a broker.
### Reviewer notes
* The implementation intentionally mirrors the proven TCK self-test fixture
rather than re-inventing state management.
* `build.gradle` mirrors the Kafka plugin minus
`kafka-clients`/`cloudevents` (frames are passed through as `EventMeshFrame`
without re-encoding).
--
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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]