With multi word gloss, we need to connect gloss history to phrases rather than words. This PR addresses the data migration to make this happen.
Process
We will do this in two steps. It is simpler than #376 because nothing is reading these events yet.
Add new event schema, update history writes to also write to new schema, and write migration for existing events.
Update history writes to no longer write to the old schema, and remove the old schema from the database.
DB Structure
erDiagram
GlossEvent ||--o{ GlossEventType : ""
User }o--o{ GlossEvent : ""
Phrase }o--o{ GlossEvent : ""
GlossEvent {
int id PK
int phraseId FK
UUID userId FK
Date timestamp
int eventTypeId FK
JSON data
}
GlossEventType {
int id
string name "WordAdded | WordRemoved | GlossChanged | GlossImported | PhraseDeleted"
}
Description
With multi word gloss, we need to connect gloss history to phrases rather than words. This PR addresses the data migration to make this happen.
Process
We will do this in two steps. It is simpler than #376 because nothing is reading these events yet.
DB Structure
Event Data Schema