b5428e53a5
This refactors the write buffer a bit for: - **Testing:** Add generic tests for the Kafka and the mocking implementation. The same interface can be used easily add new implementations (e.g. via Redis, filesystem, ...). - **Partition on Write:** The caller of the writer operation must now specify the partition/sequencer ID. The implicit partitioning of the Kafka writer would have lead to broken data since we must never spill entries w/ the same primary key over multiple partitions. At the moment we will only use partition 0 but we can easily implement better logic in the future. - **Improved Mocking:** The mocked implementation now simulates a system that feels more real. Especially the handling around multiple streams and "write while read" has been improved. This will be helpful for testing and for new features like seeking (during replay). A solid realistic mock also helps us to ensure that the tests using the mock do not rely on unrealistic behavior too much. |
||
---|---|---|
.. | ||
Dockerfile.ci | ||
Dockerfile.ci.dockerignore | ||
Dockerfile.ci.integration | ||
Dockerfile.ci.integration.dockerignore | ||
Dockerfile.iox | ||
Dockerfile.iox.dockerignore | ||
ci-kafka-docker-compose.yml | ||
integration_test.sh |