-
Notifications
You must be signed in to change notification settings - Fork 142
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New Journal Store Schema #315
Comments
maybe call it |
Good. I confess that I was trying to align as much as possible. Cassandra calls it |
Aren't SQL tables typically named in the singular? |
We also need to add columns for the metadata |
The new journal store table will have a few more fields:
ser_id
(Int)ser_manifest
(String)event_manifest
(String)event_payload
(String)writer_uuid
(String)timestamp
column (see #28383). Useful for metrics about read-side processors lagging. The timestamp will be addes as Long and defaulting to 0.We need to refactor the Journal DAO for that new format.
The current table is called
journal
. Instead of altering it, we will design a new table structure and call itjournal_messages
. New users can just start using it from version 4.0.0 onward. Existing users will need to run the migration procedure to copy their data fromjournal
tojournal_messages
.ByteArrayJournalSerializer
should be moved to the migration module as we will need it for running migrations (reading old data from thejournal
table).Next to the journal table, we need a
tags
table. There is a one-to-many relation between the two tables. One event can have zero or more tags.The Journal DAO must take this into account and execute inserts on both tables atomically.
Events by tag queries need to be refactored to consider the new
tags
table.The text was updated successfully, but these errors were encountered: