latest blog entries

Morphium 6.3.1 β€” and the Transparent Message Bus

We just released Morphium 6.3.1 - officially a bugfix release, in reality the harvest of 6.3.0's first two production weeks: server-side topic filters in the change stream, detection of mixed messaging implementations, and an in-memory driver that now behaves like mongod down to event ordering. And the occasion for the bigger story: why a message bus made of documents is transparent - with a peeker that reads along without consuming, and Morpheus as the cockpit for the running bus. Try that with Kafka πŸ˜‰

11.8.2026 morphium java morphium mongodb poppydb messaging release programming quarkus
read more

Using a wire proxy to do failover tests

Failover testing with `kill -9` is manual labor and never runs in CI β€” yet from a driver's perspective, failover bugs are pure wire phenomena. So we moved the faults onto the wire: one TCP proxy per replica set node that can freeze, reset, or cleanly close connections, plus `hello` rewriting so the driver never sees the real addresses. The harness promptly found real bugs β€” including a read that spent 26 seconds hammering a dead primary.

6.8.2026 morphium java morphium mongodb programming release poppydb
read more

Morphium 6.2.6: The Timeout That Multiplied Itself by 100

Morphium 6.2.6 is out β€” and it repairs something that should never have been broken in the first place: replicaset failover. A chain of bugs (chief among them a timeout that silently multiplied itself by 100) meant the driver practically never recovered after the primary died: writes hung, messaging stayed dead. After the fixes: full write throughput ~25 seconds after a kill -9, no lost messages. Also on board: a fix for `findOneAndUpdate` deleting documents instead of updating them on read-cache hits, a self-deadlock in the SingleMongoConnectDriver, and `$setOnInsert`/upsert support in the InMemoryDriver.

9.7.2026 morphium morphium java mongodb replicaset failover release
read more

Morphium 6.2.4 β€” When Messaging Dies Quietly

Morphium 6.2.4 is out. The reason behind it was a bug that took longer to find than to fix. In production, messaging suddenly stopped. The backlog grew. The log said nothing. Only the 10-second fallback poll kept the application half-alive. This is what we learned about producer/consumer architecture, silent `Error`s, and the hard 16 MB BSON limit, and the five layers of protection that came out of it.

8.5.2026 morphium java mongodb messaging change-stream debugging release
read more