View Issue Details

IDProjectCategoryView StatusLast Update
0004103SymmetricDSImprovementpublic2019-09-30 16:28
ReporterelongAssigned Toelong 
Prioritynormal 
Status resolvedResolutionfixed 
Product Version3.11.0 
Target Version3.11.0Fixed in Version3.11.0 
Summary0004103: Drop router_id column from sym_data_event to improve size and performance
DescriptionAlter sym_data_event to drop its primary key, drop router_id column, and add the primary key as (data_id, batch_id). By removing the router_id varchar(50) column, it will reduce the data size of the table. By changing the primary key, it will reduce the index size. Overall, it should see better performance for routing, extracting, and purging.

The router_id column on sym_data_event records which router created the row. During extraction, it uses the router configuration to change the target table name, catalog, and schema. Instead, we can use a map of routers that can be looked up by trigger history ID. Technically, the model allowed for two routers to put the same row into the same batch, but this change will prevent that configuration from working now -- instead, the user can configure transforms if they want the same source row to output multiple table names in the same batch.
TagsNo tags attached.

Activities

There are no notes attached to this issue.

Related Changesets

SymmetricDS: 3.11 0ec1d756

2019-09-27 16:49:16

admin

Details Diff
0004103: Drop router_id column from sym_data_event to improve size and
performance

0004103
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/model/DataEvent.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/route/ChannelRouterContext.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/service/IDataService.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/service/ITriggerRouterService.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/DataExtractorService.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/DataService.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/DataServiceSqlMap.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/RouterService.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/TriggerRouterService.java Diff File
mod - symmetric-core/src/main/resources/symmetric-schema.xml Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/CsvData.java Diff File

Issue History

Date Modified Username Field Change
2019-09-27 16:48 elong New Issue
2019-09-27 16:48 elong Status new => assigned
2019-09-27 16:48 elong Assigned To => elong
2019-09-27 17:00 admin Changeset attached => SymmetricDS 3.11 0ec1d756
2019-09-30 16:28 elong Status assigned => resolved
2019-09-30 16:28 elong Resolution open => fixed
2019-09-30 16:28 elong Fixed in Version => 3.11.0