caluga - java blog

category: morphium

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
read more

Morphium 6.3.0 — What's New?

Morphium 6.3.0 — What's New?

The largest release in the 6.x line so far. Its centre of gravity is not the client this time — it is PoppyDB and the in-memory driver underneath it, both of which went from "good enough to run your tests against" to something you can actually operate.

10.8.2026
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
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
read more

Morphium 6.2.5: The One-Document Batch That Cost 20 Seconds

Morphium 6.2.5 is out. A quiet patch release with one loud story: a hardcoded change stream `batchSize=1` that turned into 20-second latency spikes over a high-latency link — plus Atlas TXT seedlist support, Quarkus native-image pre-registration, and a batch of InMemoryDriver and aggregation fixes.

26.6.2026
read more

Morphium v6.x Update: 13 Releases at a Glance

13 releases, 417 commits: Morphium v6.x has evolved massively. MorphiumServer with replica set support and SSL, a finally stable connection pool, significantly faster InMemoryDriver, and self-healing ChangeStreams. Plus: Jackson removed as a dependency. An overview of everything important since v6.0.0.

23.2.2026
read more

Morphium version 6

Announcing Morphium 6.0: Modern Java ODM with Built-in Messaging

Today we're thrilled to announce Morphium 6.0, a major release of our feature-rich MongoDB Object Document Mapper for Java. This release brings full JDK 21 support, a comple...

22.9.2025
read more

Morphium version 5

Morphium, the java pojo objectmapper for mongodb, needed some rewrites and improvements. All details in this post.

15.11.2022
read more

Morphium V4.2.12 released

The latest Version of morphium (V4.2.12) was released a couple of days ago. As usual, the changes contain Bugfixes and improvements.

  • Tests were changed so that they run more smoothly in total, less side effects
  • Tests were simplified
  • B

13.8.2021
read more

Morphium V4.2.8 released

Morphium V4.2.8 was released including the following features:

  • FEATURE:basic support for Aggregation with the InMemoryDriver using Expr
  • FEATURE: Support for Expr in Qureries
  • FIX: imrpvoved Support for sharding
  • FIX: increased

15.6.2021
read more

Indices in Morphium

Morphium and Indices

Defining Indices

First of all, you usually do not need to care about Indices in Mongodb, just define it in your entity code:

´´´java @Entity public class MyEntity { @Id private MorphiumId id; @In

27.11.2020
read more

Morphium V4.2.0 released

We just released Morphium V4.2.0 including a lot of fixes and features:

  • Feature: new MongoDB Driver 4.1 is used and so we do support mongodb 4.4 now
  • Feature: direct support of all aggregation stages
  • Feature: Expr-Language
  • Feature: ...

12.9.2020
read more

Morphium 4.1.4 released

We released Morphium 4.1.4. This includes, as usual a bunch of improvements and fixes. Here is the changelog since V4.1.0:

V4.1.4:

  • Morphium is AutoClosable now - simplifies usage
  • Checking for a field existence in sub documents was cau...

10.8.2020
read more

Morphium V4.1.2

Release Morphium V4.1.2

We just released morphium V4.1.2 via maven central. The lots of changes do contain:

  • complete overhaul of messaging for increased stability, speed and less load on mongodb
  • new Feature Encrypted Fields:

´´

3.3.2020
read more

Morphium Messaging Options

Because I've now received this question a few times, here is a brief summary of morphine messaging and how to use it:

The first parameter in the constructor is always the morphium instance. This determines which Mongo is used and also some se

25.2.2020
read more

Morphium messaging vs messaging systems

Morphium can also be messaging ... wow ... right?

Why do you still need such a solution? how does it compare to others, such as RabbitMQ, MQSeries etc.? Those are the top dogs ... Why another solution?

I would like to list some differences her

21.2.2020
read more

fieldbased encryption in mongo using Morphium

There will be a new feature in the next version of Morphium: automatic encryption and decryption of data.

This ensures that the data is only stored in encrypted form in the database or is decrypted when it is read. This also works with sub-do

7.10.2019
read more

Morphium messaging JMS implementation

Morphium 4.0.6.2 was released this week and this version contains one feature, which I want to show here: Morphium Messaging via JMS!

Here a little proof of concept test from the source:

´´´java

public class BasicJMSTests extends M

20.8.2019
read more
load more