View Issue Details

IDProjectCategoryView StatusLast Update
0003003SymmetricDSImprovementpublic2017-04-06 09:44
ReportermmichalekAssigned Tomaxwellpettit 
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Product Version3.8.19 
Target Version3.8.19Fixed in Version3.8.19 
Summary0003003: Support JSON data types
DescriptionSome DBs support a JSON datatype which would be nice to support.

The forums report this already works on Postgres, but not MySQL:
https://sourceforge.net/p/symmetricds/discussion/739236/thread/723ba439/?limit=25#c12f

Here is the log failing on MySQL:

2017-02-28 11:58:14,358 ERROR [server] [TriggerRouterService] [server-job-9] Failed to create triggers for central.location_hier StackTraceKey.init [NotImplementedException:696751628]
org.apache.commons.lang.NotImplementedException: location_hier_attr is of type OTHER with JDBC type of JSON
     at org.jumpmind.symmetric.db.AbstractTriggerTemplate.fillOutColumnTemplate(AbstractTriggerTemplate.java:847)
     at org.jumpmind.symmetric.db.AbstractTriggerTemplate.buildColumnsString(AbstractTriggerTemplate.java:703)
     at org.jumpmind.symmetric.db.AbstractTriggerTemplate.replaceTemplateVariables(AbstractTriggerTemplate.java:459)
     at org.jumpmind.symmetric.db.AbstractTriggerTemplate.createTriggerDDL(AbstractTriggerTemplate.java:366)
     at org.jumpmind.symmetric.db.AbstractSymmetricDialect.createTrigger(AbstractSymmetricDialect.java:340)
     at org.jumpmind.symmetric.service.impl.TriggerRouterService.rebuildTriggerIfNecessary(TriggerRouterService.java:1778)
     at org.jumpmind.symmetric.service.impl.TriggerRouterService.updateOrCreateDatabaseTriggers(TriggerRouterService.java:1649)
     at org.jumpmind.symmetric.service.impl.TriggerRouterService.updateOrCreateDatabaseTrigger(TriggerRouterService.java:1531)
     at org.jumpmind.symmetric.service.impl.TriggerRouterService.syncTrigger(TriggerRouterService.java:1572)
     at org.jumpmind.symmetric.service.impl.TriggerRouterService.syncTrigger(TriggerRouterService.java:1545)
     at org.jumpmind.symmetric.route.ConfigurationChangedDataRouter.contextCommitted(ConfigurationChangedDataRouter.java:554)
     at org.jumpmind.symmetric.service.impl.RouterService.completeBatchesAndCommit(RouterService.java:740)
     at org.jumpmind.symmetric.service.impl.RouterService.routeDataForChannel(RouterService.java:674)
     at org.jumpmind.symmetric.service.impl.RouterService.routeDataForEachChannel(RouterService.java:429)
     at org.jumpmind.symmetric.service.impl.RouterService.routeData(RouterService.java:202)
     at org.jumpmind.symmetric.job.RouterJob.doJob(RouterJob.java:50)
     at org.jumpmind.symmetric.job.AbstractJob.invoke(AbstractJob.java:175)
     at org.jumpmind.symmetric.job.AbstractJob.run(AbstractJob.java:219)
     at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)
     at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
     at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351)
     at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178)
     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
     at java.lang.Thread.run(Thread.java:722)
TagsNo tags attached.

Activities

lifeofguenter

2017-03-09 01:30

reporter   ~0000973

JSON column types has been implemented since MySQL 5.7.8 (2015-08-03) and MySQL 5.7 itself has been GA since 2015-10-21, so it would be great if we could use the great product of symmetricds on current MySQL versions as well :)

avivkri

2017-03-15 09:51

reporter   ~0000975

Symmetricds not supporting JSON types came as a bump in the road, as we had just decided to use Symmetricds for database sync needs and we were half way through it. It would be good to have it supported.

Related Changesets

SymmetricDS: 3.8 d3caad02

2017-03-17 15:08:34

maxwellpettit

Details Diff
0003003: Support JSON data types
0003003
mod - symmetric-jdbc/src/main/java/org/jumpmind/db/platform/mysql/MySqlDdlReader.java Diff File

Issue History

Date Modified Username Field Change
2017-03-01 12:58 mmichalek New Issue
2017-03-09 01:30 lifeofguenter Note Added: 0000973
2017-03-15 09:51 avivkri Note Added: 0000975
2017-03-15 14:43 chenson Assigned To => maxwellpettit
2017-03-15 14:43 chenson Status new => assigned
2017-03-15 14:43 chenson Product Version 3.9.0 => 3.8.19
2017-03-15 14:43 chenson Target Version 3.9.0 => 3.8.19
2017-03-21 13:39 maxwellpettit Status assigned => resolved
2017-03-21 13:39 maxwellpettit Fixed in Version => 3.8.19
2017-03-21 13:39 maxwellpettit Resolution open => fixed
2017-03-21 14:00 maxwellpettit Changeset attached => SymmetricDS 3.8 d3caad02
2017-04-06 09:44 chenson Status resolved => closed