I’ve just switched from InMemoryEventStorageEngine to JpaEventStorageEngine. Thanks to some very helpful input from Allard, everything is now working great!
However, for no good reason, other than curiosity, I have gone looking for my serialized events (the payloads) and I can’t find them in the database.
The database schema defines the following 4 tables:
In my current implementation I just have a few simple aggregates, no sagas and I haven’t pushed enough events to get a snapshot. So, the only table with any data is domain_event_entry, which is defined as follows:
CREATE TABLE domain_event_entry
global_index bigint NOT NULL,
event_identifier character varying(255) NOT NULL,
payload oid NOT NULL,
payload_revision character varying(255),
payload_type character varying(255) NOT NULL,
time_stamp character varying(255) NOT NULL,
aggregate_identifier character varying(255) NOT NULL,
sequence_number bigint NOT NULL,
type character varying(255),
CONSTRAINT domain_event_entry_pkey PRIMARY KEY (global_index),
CONSTRAINT uk8s1f994p4la2ipb13me2xqm1w UNIQUE (aggregate_identifier, sequence_number),
CONSTRAINT uk_fwe6lsa8bfo6hyas6ud3m8c7x UNIQUE (event_identifier)
Both the meta_data and payload columns are simply a number (an oid), so where’s the actual data?