View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3438 [SymmetricDS] Bug major always 2018-02-21 06:42 2018-02-21 06:42
Reporter: zulus Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.33  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Oracle date is transformed to Postgresql date
Description: Oracle date field can (and often) contain time part, unfortunately SymmetricDS transform it to postgresql date field and "time" part is lost, also after sync-schema.
Tags: oracle, postgres
Steps To Reproduce: Create Oracle Table with "date" field.
Run symadmin sync-schema.
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3437 [SymmetricDS Pro] Improvement minor have not tried 2018-02-20 15:27 2018-02-20 16:00
Reporter: josh-a-hicks Platform:  
Assigned To: josh-a-hicks OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.0  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.5  
    Target Version: 3.9.5  
Summary: Create first data gap to begin with 1 instead of 0
Description: Create the default data gap to begin with a sym data row id of 1 instead of 0.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3436 [SymmetricDS Pro] Bug minor always 2018-02-20 12:13 2018-02-20 12:13
Reporter: kpatierno Platform:  
Assigned To: kpatierno OS:  
Priority: normal OS Version:  
Status: assigned Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version: 3.9.5  
Summary: The 'Auto Create Triggers' screen clears all selected tables if the user enters a search into 'filter results'
Description: The 'Auto Create Triggers' screen clears all selected tables if the user enters a search into 'filter results'
Tags:
Steps To Reproduce: - Open 'Auto Create Table Triggers
- Select any table(s) from the list.
- Now in the search box, type the name of another table and then select it.
- The first selected table(s) is no longer marked in the check box.
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3435 [SymmetricDS] Bug minor sometimes 2018-02-20 08:57 2018-02-20 09:00
Reporter: elong Platform:  
Assigned To: elong OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.7.0  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.5  
    Target Version: 3.9.5  
Summary: Error during sync triggers can result in dropping triggers
Description: The sync triggers routine checks for the existence of tables in the database that match the configuration. If the database returns an error (like an IO error) during the table lookup, the exception is consumed and returns an empty lookup. The routine thinks no table exists, so it drops the corresponding triggers.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3434 [SymmetricDS Pro] Bug minor have not tried 2018-02-19 16:34 2018-02-19 16:34
Reporter: kpatierno Platform:  
Assigned To: kpatierno OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.9.0  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version: 3.9.5  
Summary: When clicking auto create Table Triggers a java.lang.IllegalArgumentException: Comparison method violates its general contract
Description: Caused by: com.vaadin.event.ListenerMethod$MethodException: Invocation of method buttonClick in com.jumpmind.symmetric.console.ui.screen.configure.TableTriggerEditPanel$2 failed.
    at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:531)
    at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:211)
    at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:174)
    at com.vaadin.server.AbstractClientConnector.fireEvent(AbstractClientConnector.java:1033)
    at com.vaadin.ui.Button.fireClick(Button.java:370)
    at com.vaadin.ui.Button$1.click(Button.java:57)
    ... 48 more
Caused by: java.lang.IllegalArgumentException: Comparison method violates its general contract!
    at java.util.TimSort.mergeLo(TimSort.java:777)
    at java.util.TimSort.mergeAt(TimSort.java:514)
    at java.util.TimSort.mergeCollapse(TimSort.java:441)
    at java.util.TimSort.sort(TimSort.java:245)
    at java.util.Arrays.sort(Arrays.java:1512)
    at java.util.ArrayList.sort(ArrayList.java:1454)
    at java.util.Collections.sort(Collections.java:175)
    at com.jumpmind.symmetric.console.ui.a.b.f.<init>(TriggerRouterScreen.java:95)
    at com.jumpmind.symmetric.console.ui.a.b.g.p(WelcomeScreen.java:47)
    at com.jumpmind.symmetric.console.ui.a.b.d.<init>(QuickStartSetupWizard.java:176)
    at com.jumpmind.symmetric.console.ui.screen.configure.TableTriggerEditPanel$2$1.<init>(TableTriggerEditPanel.java:120)
    at com.jumpmind.symmetric.console.ui.screen.configure.TableTriggerEditPanel$2.buttonClick(TableTriggerEditPanel.java:120)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:510)
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3432 [SymmetricDS] Improvement minor N/A 2018-02-19 12:20 2018-02-19 13:00
Reporter: elong Platform:  
Assigned To: elong OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.0  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.5  
    Target Version: 3.9.5  
Summary: Change default start type of windows service to automatic (delayed)
Description: Change default start type of windows service to automatic (delayed), which means it will be one of the last services to start, giving services like databases a chance to start first. This is not supported on Windows XP and Windows Server 2003, so it should remain as automatic on those platforms.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3433 [SymmetricDS Pro] Improvement minor N/A 2018-02-19 12:23 2018-02-19 12:25
Reporter: elong Platform:  
Assigned To: elong OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.5  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.5  
    Target Version: 3.9.5  
Summary: Control center should re-read the sym_service.conf file before performing actions
Description: If the user is running SymmetricDS Control Center and they change the sym_service.conf file, it should re-read the file to pick up any changes.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3431 [SymmetricDS] Improvement minor N/A 2018-02-19 11:10 2018-02-19 12:00
Reporter: elong Platform:  
Assigned To: elong OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.0  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.5  
    Target Version: 3.9.5  
Summary: Recovery options for service wrapper
Description: Add option to restart Windows service when the wrapper process dies.

# First failure action (NONE, RESTART)
wrapper.ntservice.failure.action.type.1=RESTART

# Milliseconds to wait before performing the action
wrapper.ntservice.failure.action.delay.1=10000

# Second failure action (NONE, RESTART)
wrapper.ntservice.failure.action.type.2=NONE

# Milliseconds to wait before performing the action
wrapper.ntservice.failure.action.delay.2=0

# Subsequent failure action (NONE, RESTART)
wrapper.ntservice.failure.action.type.3=NONE

# Milliseconds to wait before performing the action
wrapper.ntservice.failure.action.delay.3=0

# Seconds after which to reset the failure count to zero
wrapper.ntservice.failure.reset.period=300
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3430 [SymmetricDS] Bug minor sometimes 2018-02-17 14:19 2018-02-17 16:51
Reporter: elong Platform:  
Assigned To: elong OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.0  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.5  
    Target Version: 3.9.5  
Summary: Service wrapper should verify and kill abandoned processes
Description: Some improvements to service wrapper:
- Remove PID files when service/wrapper/server are confirmed stopped
- Verify PIDs by checking their executable and command line
- Stop any abandoned processes when starting
- Make "running" state mean all of service/wrapper/server are running
- On "status" subcommand, show status for each of service/wrapper/server
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3408 [SymmetricDS] Improvement minor have not tried 2018-02-07 11:43 2018-02-16 16:28
Reporter: mmichalek Platform:  
Assigned To: maxwellpettit OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.4  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: Update jackson-databind version
Description: Update jackson-databind based on https://sourceforge.net/p/symmetricds/discussion/739237/thread/d7c825f5/?limit=25

Looks like 2.9.3 is available.
https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind/2.9.3
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3339 [SymmetricDS] Bug major always 2017-12-14 09:48 2018-02-16 16:27
Reporter: woehrl01 Platform:  
Assigned To: maxwellpettit OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.8.33  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version: 3.9.5  
Summary: Retrying batch gets ignored/OKed if stream.to.file.enabled = false
Description: If a batch fails at it gets retried, but on the client stream.to.file.enabled = false is set, the batch gets ignored as the protocoldatawriter doesn't have the original content. So the batch gets silently OKed even so an error occurred the first time.
Tags:
Steps To Reproduce: Have client with stream.to.file.enabled = false

send an SQL which fails.

The first time it fails, the second time the batch gets OKed.
Additional Information:
Attached Files:
Notes
(0001085)
chenson   
2017-12-14 10:35   
Can you test this in the 3.9 branch? I think it might be fixed there. We are hoping to release 3.9 tomorrow ...
(0001086)
woehrl01   
2017-12-14 11:33   
I haven't tried on the 3.9 but looked at the code there to possible port something, and haven't found any noticeable difference.

I can have a look for this in 3.9 tomorrow.

The following (pretty hackish) fixes the problem for me:

--- a/symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/DataLoaderService.java Fri Nov 24 11:37:19 2017 +0100
+++ b/symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/DataLoaderService.java Thu Dec 14 16:32:32 2017 +0100
@@ -1070,8 +1070,16 @@
                     dataService.deleteCapturedConfigChannelData();
                     outgoingBatchService.markAllConfigAsSentForNode(batch.getSourceNodeId());
                 }
+ boolean isRetry = (boolean)context.get("batchIsRetryFromPureTransport");
+ context.remove("batchIsRetryFromPureTransport");
                 IncomingBatch incomingBatch = new IncomingBatch(batch);
                 this.batchesProcessed.add(incomingBatch);
+ if(isRetry) {
+ incomingBatch.setStatus(Status.RS);
+ incomingBatchService.updateIncomingBatch(incomingBatch);
+ return false;
+ }
+
                 if (incomingBatchService.acquireIncomingBatch(incomingBatch)) {
                     this.currentBatch = incomingBatch;
                     context.put("currentBatch", this.currentBatch);
--- a/symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/reader/ProtocolDataReader.java Fri Nov 24 11:37:19 2017 +0100
+++ b/symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/reader/ProtocolDataReader.java Thu Dec 14 16:32:32 2017 +0100
@@ -208,6 +208,7 @@
                     Batch batch = new Batch(batchType, Long.parseLong(tokens[1]), channelId,
                             binaryEncoding, sourceNodeId, targetNodeId, false, dataCreateTime);
                     statistics.put(batch, new DataReaderStatistics());
+ context.put("batchIsRetryFromPureTransport", tokens[0].equals(CsvConstants.RETRY));
                     tokens = null;
                     return batch;
(0001087)
woehrl01   
2017-12-14 11:37   
this bug sounds similar to 3333 but that is only on the extract side.
(0001096)
woehrl01   
2018-01-05 05:52   
I just verified that this problem still exists in 3.9.2.

It still can be fixed via this workaround, the code just moved from DataLoaderService.java to ManageIncomingBatchListener.java

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3378 [SymmetricDS] Bug minor have not tried 2018-01-17 11:54 2018-02-16 16:27
Reporter: kstojanovska Platform:  
Assigned To: OS:  
Priority: low OS Version:  
Status: confirmed Product Version: 3.9.0  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version: 3.9.5  
Summary: SLF4J warnings using symadmin
Description: root@ntx-jeff78:/opt/symmetric-server-3.9.2/bin# ./symadmin
SLF4J: The following set of substitute loggers may have been accessed
SLF4J: during the initialization phase. Logging calls during this
SLF4J: phase were not honored. However, subsequent logging calls to these
SLF4J: loggers will work as normally expected.
SLF4J: See also http://www.slf4j.org/codes.html#substituteLogger
SLF4J: org.jumpmind.symmetric.AbstractSymmetricEngine
symadmin version 3.9.2
Perform administration tasks with SymmetricDS.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3404 [SymmetricDS] Bug minor have not tried 2018-02-02 15:03 2018-02-16 16:00
Reporter: mmichalek Platform:  
Assigned To: mmichalek OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.3  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: --jmx-disable command line option doesn't disable JMX.
Description: --jmx-disable command line option doesn't disable JMX.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3406 [SymmetricDS] Improvement minor have not tried 2018-02-05 16:48 2018-02-16 13:00
Reporter: mmichalek Platform:  
Assigned To: mmichalek OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.3  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: Improvements for Timeouts related to slow databases
Description: A user discovered a situation where an extremely slow database led to difficult to understand logging and timeouts. The goal here is to improve SymmetricDS' handling of very slow batch extract situations in particular.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3429 [SymmetricDS] Bug minor always 2018-02-16 11:38 2018-02-16 12:00
Reporter: elong Platform:  
Assigned To: elong OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.0  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: Compression of staging with initial load gets IllegalStateException
Description: Compression of staging with initial load gets IllegalStateException thrown and message of "Invalid batch data was received". It's not uncompressing the batches for loading.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3427 [SymmetricDS] Bug minor always 2018-02-15 15:00 2018-02-15 16:00
Reporter: josh-a-hicks Platform:  
Assigned To: josh-a-hicks OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.8.17  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: Node host channel stats sent count inflated
Description: If a batch is sent multiple times the sent count is increased in stats each time.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3423 [SymmetricDS] Bug minor have not tried 2018-02-14 11:55 2018-02-15 16:00
Reporter: josh-a-hicks Platform:  
Assigned To: josh-a-hicks OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.8.19  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: Node host stats not working
Description: The default implementation for host stats was removed and should be added back.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3422 [SymmetricDS] Task major always 2018-02-14 09:52 2018-02-14 17:12
Reporter: anthony.vitale@sonymusic.com Platform:  
Assigned To: OS:  
Priority: high OS Version:  
Status: new Product Version: 3.9.2  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Using sym_table_reload_request in 3.9.2 does not work as it did in version 3.7.2
Description: Hello

We have used Version 3.7.2 successfully for quite some time.

We Just Upgraded to version 3.9.2

In version 3.7.2 I used the sym_table_reload_request table quite alot to re-sync data from source to target when I found some imbalance in a table.

An Example of what I would do in 3.7.2 to as example reload a table called client_object_map which has a trigger_id of gras_trig_client_object_map

I Would Run this in the Source Database.

insert into sym_table_reload_request (target_node_id, source_node_id, trigger_id, router_id, reload_select, reload_delete_stmt, reload_enabled, create_time, last_update_time)
values ('001','000','gras_trig_client_object_map','gras_router',null,null,1,current_timestamp,current_timestamp);

Source_node_id = 000 is my Source DB.
target_node_id = 001 is my Target DB
Trigger_id = gras_trig_client_object_map which is my client_object_map table.
router_id = gras_router (this is an established Router.
reload_enabled = 1 would start the process.

And The Normal Action is I would insert it, and it would immediately begin to process (I would see it in the logs) and the Row within the sym_table_reload_request would be deleted and Life was Great.

Within 3.9.2 I see that the sym_table_reload_request has gone thru some changes.

So I tried this with the following Sql.

insert into sym_table_reload_request
(target_node_id, source_node_id, trigger_id, router_id, create_time, last_update_time)
values ('001','000','gras_trig_client_object_map','gras_router', current_timestamp, current_timestamp);


Yet This Time, The Row Remains within the sym_table_reload_request , and The processed bit immediately Goes to a 1

In The Log I see this within the log (Notate the Unable to resolve messages), And Yes within the Source DB the table client_object_map has the parents client_systems, request_entities and requests)

Yet, All 3 of them are in Sync between Source and Target, NOR have I asked to Reload them.

I See No added activity within the sym_data table except for activity related to the actual sym_table_reload_request itself which is going across on the config channel

And I do not see any activity to the Target DB related to inserts on the missing nor any data.

So I am Perplexed, This Worked Great in 3.7.2, Now I cannot seem to get it to work in 3.9.2.

Is this a Bug, Or an I doing it wrong.

Please let me know what you see related to what I write as Using the table_reload_request facility for a table is very important to me.

[amp-000] - RouterService - Found 1 table reload requests to process.
[amp-000] - DataService - Queueing up a load to node 001
[amp-000] - Database - Unable to resolve foreign keys for table client_object_map because the following dependent tables were not included [client_systemsrequest_entitiesrequests].
[amp-000] - Database - Unable to resolve foreign keys for table client_object_map because the following dependent tables were not included [client_systemsrequest_entitiesrequests].
[amp-000] - Database - Unable to resolve foreign keys for table client_object_map because the following dependent tables were not included [client_systemsrequest_entitiesrequests].
[amp-000] - DataService - Table reload request(s) for load id 4 have been processed.
[amp-000] - PurgeService - Purged all 0 incoming batch for node 001

Tags: table_reload_request
Steps To Reproduce: Please See Description.
Additional Information:
Attached Files: SymDS_Query_Sym_tables_for_reload_request.txt (19,686 bytes) 2018-02-14 17:12
http://www.symmetricds.org/issues/file_download.php?file_id=149&type=bug
Notes
(0001127)
elong   
2018-02-14 12:46   
Did it create a batch in the sym_outgoing_batch table?

select * from sym_outgoing_batch where load_id = 4

If it did, check the statistics on the batch, like data_row_count.
(0001129)
anthony.vitale@sonymusic.com   
2018-02-14 17:12   
Hi

I Checked, And it made me even more confused.

I Actually Tried using other tables (the tables that where within the unable to resolve fk messages which have no parent tables and still I see nothing occuring.

From the sym_outgoing_batch table where the load_id = the load_id of the reload table request All I see is within the text file which has the Sql and the results.

Within this you see that the tables have data (at least more then 1 row) and the trigger_id's are accurate.



Again what baffles me is that if in 3.7.2 (which I still run in other Replications) I ran this

 insert into sym_table_reload_request (target_node_id, source_node_id, trigger_id, router_id, reload_select, reload_delete_stmt, reload_enabled, create_time, last_update_time)
 values ('001','000','gras_trig_client_object_map','gras_router',null,null,1,current_timestamp,current_timestamp);

It works Great

But in 3.9.2 when I run this.

  insert into sym_table_reload_request
  (target_node_id, source_node_id, trigger_id, router_id, create_time, last_update_time)
  values ('001','000','gras_trig_client_object_map','gras_router', current_timestamp, current_timestamp);

I Get nothing.

I Hope All that is happening is that I just have to put the sym_table_reload_request in Differently Unless there is some configuration messed up.

Maybe It is in the way the reload channel is configured as I am pretty sure in 3.7.2 it would reload using the gras_channel like everything we run.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3425 [SymmetricDS] Improvement minor N/A 2018-02-14 13:51 2018-02-14 15:08
Reporter: elong Platform:  
Assigned To: elong OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.4  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: Adding and modifying variables used in initial load and configuration
Description: * Allow substring operation on variables, such as $(externalId:0:5) to get first 5 characters.
* Add extension point to add new variables for use


Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3420 [SymmetricDS] New Feature minor have not tried 2018-02-13 13:19 2018-02-14 15:08
Reporter: josh-a-hicks Platform:  
Assigned To: josh-a-hicks OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.4  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: Teradata bulk loader
Description: Support for Teradata Fast Load CSV technology through JDBC driver.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3416 [SymmetricDS] Improvement minor have not tried 2018-02-13 09:31 2018-02-14 15:08
Reporter: josh-a-hicks Platform:  
Assigned To: josh-a-hicks OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.0  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: Raima dialect support for global variables
Description: SymmetricDS triggers will now use global variables.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3405 [SymmetricDS] Improvement minor N/A 2018-02-03 09:05 2018-02-14 15:08
Reporter: elong Platform:  
Assigned To: elong OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.0  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: Default to strong crypto and fall back if not available
Description: * Try symmetric encryption in order of AES, DESede, DES until one is available
* Use SecureRandom and do not seed with non-random data
* Use upper/lower alpha, numeric, and symbols for node password
* Upgrade bouncy castle
* Use 2048-bit RSA key for TLS
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3400 [SymmetricDS] Improvement minor N/A 2018-02-01 20:12 2018-02-14 15:08
Reporter: elong Platform:  
Assigned To: elong OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.0  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: Additional information for snapshot file
Description: Additional information for snapshot file:
- number of file descriptors in use and max
- clustering info about hostname, instance.id, and server.id
- log the start and end of snapshot creation
- on mysql, output of "show processlist"
- prevent NPE on new node
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3398 [SymmetricDS] Bug minor have not tried 2018-01-31 19:25 2018-02-14 15:08
Reporter: chenson Platform:  
Assigned To: chenson OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.0  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: new sym_job table causes registration error on clients older than 3.8
Description: https://sourceforge.net/p/symmetricds/discussion/739235/thread/ca9227f2/?limit=25
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3395 [SymmetricDS] Improvement minor have not tried 2018-01-31 12:48 2018-02-14 15:08
Reporter: mmichalek Platform:  
Assigned To: mmichalek OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.3  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: Evaluate the use of the jsch dependency in SymmetricDS
Description: An open source user reported a medium security vulnerability in com.jcraft:jsch:0.1.48. Evaluate if this dependency is actually needed in runtime SymmetricDS.

Removing this dependency.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3394 [SymmetricDS] Bug minor always 2018-01-31 10:44 2018-02-14 15:08
Reporter: mmichalek Platform:  
Assigned To: mmichalek OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.3  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: Booleans fields fail on Sybase 15 using Sybase 12 query optimizer
Description: This issue was not reproducible on Sybase 15 or 16 out of the box, but was reported by a client running Sybase 15 which was configured to use the v12 query optimizer. Client was using the jConnect7.7.jar driver. The following exception caused heartbeats not to flow into Sybase, and was caused when a Boolean object came through the SybaseJdbcSqlTemplate.setDecimalValue method.

2018-01-31 09:27:54,989 ERROR [SybaseServer] [ManageIncomingBatchListener] [sybaseserver-dataloader-2] An error caused a batch to fail without attempting to load data for batch Server-9023 StackTraceKey.init [ArrayIndexOutOfBoundsException:3528875218]
java.lang.ArrayIndexOutOfBoundsException: 46
    at com.sybase.jdbc4.jdbc.ParamManager.fillParamFromRSMD(ParamManager.java:628)
    at com.sybase.jdbc4.jdbc.ParamManager.setParamMd(ParamManager.java:549)
    at com.sybase.jdbc4.tds.Tds.dynamicPrepare(Tds.java:1243)
    at com.sybase.jdbc4.jdbc.SybPreparedStatement.getParameterMetaData(SybPreparedStatement.java:3230)
    at com.sybase.jdbc4.jdbc.SybPreparedStatement.setParam(SybPreparedStatement.java:2740)
    at com.sybase.jdbc4.jdbc.SybPreparedStatement.setObject(SybPreparedStatement.java:1152)
    at com.sybase.jdbc4.jdbc.SybPreparedStatement.setObject(SybPreparedStatement.java:1222)
    at org.apache.commons.dbcp.DelegatingPreparedStatement.setObject(DelegatingPreparedStatement.java:166)
    at org.apache.commons.dbcp.DelegatingPreparedStatement.setObject(DelegatingPreparedStatement.java:166)
    at org.springframework.jdbc.core.StatementCreatorUtils.setValue(StatementCreatorUtils.java:388)
    at org.springframework.jdbc.core.StatementCreatorUtils.setParameterValueInternal(StatementCreatorUtils.java:241)
    at org.springframework.jdbc.core.StatementCreatorUtils.setParameterValue(StatementCreatorUtils.java:172)
    at org.jumpmind.db.sql.JdbcSqlTemplate.setDecimalValue(JdbcSqlTemplate.java:1030)
    at org.jumpmind.db.platform.sybase.SybaseJdbcSqlTemplate.setDecimalValue(SybaseJdbcSqlTemplate.java:153)
    at org.jumpmind.db.sql.JdbcSqlTemplate.setValues(JdbcSqlTemplate.java:1009)
    at org.jumpmind.db.sql.JdbcSqlTransaction$4.execute(JdbcSqlTransaction.java:331)
    at org.jumpmind.db.sql.JdbcSqlTransaction$4.execute(JdbcSqlTransaction.java:325)
    at org.jumpmind.db.sql.JdbcSqlTransaction.executeCallback(JdbcSqlTransaction.java:404)
    at org.jumpmind.db.sql.JdbcSqlTransaction.prepareAndExecute(JdbcSqlTransaction.java:325)
    at org.jumpmind.symmetric.service.impl.IncomingBatchService.insertIncomingBatch(IncomingBatchService.java:248)
    at org.jumpmind.symmetric.service.impl.IncomingBatchService.insertIncomingBatch(IncomingBatchService.java:277)
    at org.jumpmind.symmetric.service.impl.IncomingBatchService.acquireIncomingBatch(IncomingBatchService.java:192)
    at org.jumpmind.symmetric.service.impl.ManageIncomingBatchListener.beforeBatchStarted(ManageIncomingBatchListener.java:132)
    at org.jumpmind.symmetric.io.data.DataProcessor.process(DataProcessor.java:95)
    at org.jumpmind.symmetric.service.impl.DataLoaderService$LoadIntoDatabaseOnArrivalListener$1.call(DataLoaderService.java:1020)
    at org.jumpmind.symmetric.service.impl.DataLoaderService$LoadIntoDatabaseOnArrivalListener$1.call(DataLoaderService.java:982)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3392 [SymmetricDS] New Feature minor N/A 2018-01-29 13:14 2018-02-14 15:08
Reporter: elong Platform:  
Assigned To: elong OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.0  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: Resolve foreign key errors using target database metadata and request rows from source
Description: The auto.resolve.foreign.key.violation parameter currently allows resolving of foreign key errors when the source node receives the acknowledgement and sends a reload of the dependent rows. But in this scenario, the target node has foreign keys and the source node does not. The auto.resolve.foreign.key.violation.reverse parameter will find foreign key tables at the target node and send a script to the source node to send a reload of the rows.

See also 0003073.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3391 [SymmetricDS] Bug minor always 2018-01-25 08:42 2018-02-14 15:08
Reporter: kstojanovska Platform:  
Assigned To: kstojanovska OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.4  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: dbcompare command throws Null Pointer when no arguments passed. Should print help commands.
Description: dbcompare command throws Null Pointer when no arguments passed. Should print help commands.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3381 [SymmetricDS] Bug minor always 2018-01-19 09:56 2018-02-14 15:08
Reporter: jflambert Platform:  
Assigned To: kstojanovska OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.2  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: symadmin does not always return 1 on failure
Description: Providing an invalid subcommand or an invalid target node to symadmin returns 0 instead of 1

Ideally all failures would return non-zero so my automation scripts can pick them up.
Tags:
Steps To Reproduce: # invalid subcommand returns 0
./symadmin --engine staging reload-noode
....
ERROR: no subcommand 'reload-noode' was found.
For a list of subcommands, use symadmin --help
root@ntx-jeff78:/opt/symmetric-server-3.9.2/bin# echo $?
0

# invalid target node returns 0
./symadmin --engine staging reload-node productionn
....
Unknown node productionn
root@ntx-jeff78:/opt/symmetric-server-3.9.2/bin# echo $?
0
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3346 [SymmetricDS] Improvement minor have not tried 2017-12-29 09:17 2018-02-14 15:08
Reporter: kstojanovska Platform:  
Assigned To: kstojanovska OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.2  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.2  
    Target Version: 3.9.2  
Summary: Support Cluster Lock refresh for extract in background
Description: Support Cluster Lock refresh for extract in background
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3345 [SymmetricDS] Bug minor have not tried 2017-12-28 14:01 2018-02-14 15:08
Reporter: mmichalek Platform:  
Assigned To: mmichalek OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.2  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.2  
    Target Version: 3.9.2  
Summary: Fix boolean handling on ASE 16
Description: Unit reporting these errors with Sybase ASE 16:
2017-12-28 13:59:29,277 ERROR [client] [DataLoaderService] [Thread-25] Failed while parsing batch
java.lang.NumberFormatException
    at java.math.BigDecimal.<init>(BigDecimal.java:494)
    at java.math.BigDecimal.<init>(BigDecimal.java:383)
    at java.math.BigDecimal.<init>(BigDecimal.java:806)
    at org.jumpmind.db.platform.sybase.SybaseJdbcSqlTemplate.setDecimalValue(SybaseJdbcSqlTemplate.java:89)
    at org.jumpmind.db.sql.JdbcSqlTemplate.setValues(JdbcSqlTemplate.java:1009)
    at org.jumpmind.db.sql.JdbcSqlTransaction$4.execute(JdbcSqlTransaction.java:331)
    at org.jumpmind.db.sql.JdbcSqlTransaction$4.execute(JdbcSqlTransaction.java:1)
    at org.jumpmind.db.sql.JdbcSqlTransaction.executeCallback(JdbcSqlTransaction.java:404)
    at org.jumpmind.db.sql.JdbcSqlTransaction.prepareAndExecute(JdbcSqlTransaction.java:325)
    at org.jumpmind.symmetric.service.impl.IncomingBatchService.insertIncomingBatch(IncomingBatchService.java:248)
    at org.jumpmind.symmetric.service.impl.IncomingBatchService.insertIncomingBatch(IncomingBatchService.java:277)
    at org.jumpmind.symmetric.service.impl.IncomingBatchService.acquireIncomingBatch(IncomingBatchService.java:192)
    at org.jumpmind.symmetric.service.impl.DataLoaderService$ManageIncomingBatchListener.beforeBatchStarted(DataLoaderService.java:1125)
    at org.jumpmind.symmetric.io.data.DataProcessor.process(DataProcessor.java:95)
    at org.jumpmind.symmetric.service.impl.DataLoaderService$LoadIntoDatabaseOnArrivalListener$1.call(DataLoaderService.java:1018)
    at org.jumpmind.symmetric.service.impl.DataLoaderService$LoadIntoDatabaseOnArrivalListener$1.call(DataLoaderService.java:1)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3340 [SymmetricDS] Bug minor always 2017-12-20 10:02 2018-02-14 15:08
Reporter: woehrl01 Platform:  
Assigned To: mmichalek OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.2  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.2  
    Target Version: 3.9.2  
Summary: FileSyncExtractorService sets IG on non file batches
Description: If you have FileSyncExtractorService and do an initial load, it ignores nonrelated batches.

this happens if initial.load.extract.and.send.when.staged=true

The logoutput looks like that:

[central-0] - DataExtractorService - Done extracting 1 batches for request 19829
[central-0] - FileSyncExtractorService - Batch 2-104483 was empty after extract in background and will be ignored.
[central-0] - DataExtractorService - Extracting batches for request 19830. Starting at batch 104371. Ending at batch 104371
[central-0] - FileSyncExtractorService - Done extracting 1 batches for request 19942
[central-0] - FileSyncExtractorService - Extracting batches for request 19943. Starting at batch 104484. Ending at batch 104484
[central-0] - FileSyncExtractorService - Batch 2-104484 was empty after extract in background and will be ignored.
[central-0] - FileSyncExtractorService - Done extracting 1 batches for request 19943
[central-0] - FileSyncExtractorService - Extracting batches for request 19944. Starting at batch 104485. Ending at batch 104485
[central-0] - FileSyncExtractorService - Batch 2-104485 was empty after extract in background and will be ignored.
[central-0] - FileSyncExtractorService - Done extracting 1 batches for request 19944
[central-0] - FileSyncExtractorService - Extracting batches for request 19945. Starting at batch 104486. Ending at batch 104486
[central-0] - FileSyncExtractorService - Batch 2-104486 was empty after extract in background and will be ignored.
[central-0] - FileSyncExtractorService - Done extracting 1 batches for request 19945
[central-0] - FileSyncExtractorService - Extracting batches for request 19946. Starting at batch 104487. Ending at batch 104487
[central-0] - FileSyncExtractorService - Batch 2-104487 was empty after extract in background and will be ignored.
[central-0] - FileSyncExtractorService - Done extracting 1 batches for request 19946
[central-0] - FileSyncExtractorService - Extracting batches for request 19947. Starting at batch 104488. Ending at batch 104488
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0001090)
woehrl01   
2017-12-21 09:31   
I added a PR: https://github.com/JumpMind/symmetric-ds/pull/61
(0001091)
mmichalek   
2017-12-27 14:54   
Thank you woehrl01 for your PR. Looks like this issue got introduced by: https://www.symmetricds.org/issues/view.php?id=3162

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3334 [SymmetricDS] Bug minor have not tried 2017-12-12 10:31 2018-02-14 15:08
Reporter: kstojanovska Platform:  
Assigned To: kstojanovska OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.8.0  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.2  
    Target Version: 3.9.2  
Summary: Triggers get created on similarly named schemas (schemas with extension of each other) in Oracle database
Description: Triggers get created on similarly named schemas (schemas with extension of each other) in Oracle database. Example : schema1 & schema12
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3329 [SymmetricDS] Bug minor have not tried 2017-12-04 11:03 2018-02-14 15:08
Reporter: kpatierno Platform:  
Assigned To: kpatierno OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.8.32  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Unsuccessful upgrade from 3.7 to 3.8
Description: * https://sourceforge.net/p/symmetricds/discussion/739236/thread/7c860859/

Dear Sirs

We Currently Successfully Run SymmetricDS 3.7.2 between a PostgreSql Master to Sybase Target and it works very Well.

Recently my developers attempted to Upgrade to SymmetricDS 3.8.29 and it failed.

They Followed The Brief Instructions found in the Manual Under F.1 Full Upgrade.

However, I would like to understand if there are Any Steps in the Initial Startup of a Upgraded SymmetricDS.

They Did exactly the Steps 1 thru 7,

However when SymmetricDS Restarted (or was Started as we have normally Start it) We Ran into an issue because the version of Postgresql jdbc driver we used referred to a system level column that was removed in the Database System Table in Postgres v9, So we got all these Errors

[PostgreSqlDdlReader] [symmetric-engine-startup-0] Failed to read table: sym_node_identity. Error: ERROR: column t1.tgisconstraint does not exist

We figured out the issue, and upgraded the JDBC Driver and Re-Started again.

I can See in the Logs that SymmetricDS attempts to alter the Sym_ Tables and Drop Some ..etc.

However I saw These Messages

    2017-09-21 16:07:48,835 WARN [gras-001] [AseDdlBuilder] [symmetric-engine-startup-1] Data cannot be retained in table sym_node_communication because of the addition of the required column queue . The data is backed up in Table [name=sym_node_communication_; 12 columns], consider manually migrating the data back or dropping this temp table.
    2017-09-21 16:07:48,849 INFO [gras-001] [AseSymmetricDialect] [symmetric-engine-startup-1] There are SymmetricDS tables that needed altered
    2017-09-21 16:07:48,850 INFO [gras-001] [AseSymmetricDialect] [symmetric-engine-startup-1] DDL applied: SET quoted_identifier on
    2017-09-21 16:07:48,850 INFO [gras-001] [AseSymmetricDialect] [symmetric-engine-startup-1] DDL applied: SET quoted_identifier on
    2017-09-21 16:07:48,874 INFO [gras-001] [AseSymmetricDialect] [symmetric-engine-startup-1] DDL applied: IF EXISTS (SELECT 1 FROM dbo.sysobjects WHERE type = 'U' AND name = 'sym_node_')
    BEGIN
    DROP TABLE DAOA001.dbo.sym_node_ END
    2017-09-21 16:07:48,874 INFO [gras-001] [AseSymmetricDialect] [symmetric-engine-startup-1] DDL applied: SET quoted_identifier on
    2017-09-21 16:07:49,137 INFO [gras-001] [AseSymmetricDialect] [symmetric-engine-startup-1] DDL applied: CREATE TABLE DAOA001.dbo.sym_node_(
    node_id VARCHAR(50) NOT NULL,
    node_group_id VARCHAR(50) NOT NULL,
    external_id VARCHAR(50) NOT NULL,
    sync_enabled SMALLINT DEFAULT 0 NULL,
    sync_url VARCHAR(255) NULL,
    schema_version VARCHAR(50) NULL,
    symmetric_version VARCHAR(50) NULL,
    database_type VARCHAR(50) NULL,
    database_version VARCHAR(50) NULL,
    heartbeat_time DATETIME NULL,
    timezone_offset VARCHAR(6) NULL,
    batch_to_send_count NUMERIC(12,0) DEFAULT 0 NULL,
    batch_in_error_count NUMERIC(12,0) DEFAULT 0 NULL,
    created_at_node_id VARCHAR(50) NULL,
    deployment_type VARCHAR(50) NULL,
    PRIMARY KEY (node_id)
    )
    2017-09-21 16:07:49,140 INFO [gras-001] [AseSymmetricDialect] [symmetric-engine-startup-1] DDL applied: INSERT INTO DAOA001.dbo.sym_node_ (node_id,node_group_id,external_id,sync_enabled,sync_url,schema_version,symmetric_version,database_type,database_version,heartbeat_time,timezone_offset,batch_to_send_count,batch_in_error_count,created_at_node_id,deployment_type) SELECT node_id,node_group_id,external_id,sync_enabled,sync_url,schema_version,symmetric_version,database_type,database_version,heartbeat_time,timezone_offset,batch_to_send_count,batch_in_error_count,created_at_node_id,deployment_type FROM DAOA001.dbo.sym_node

And Symmds would not start and work

So We Restored the 3.7.2 Software, and I dropped all sym_ Tables in Source/Target and BAsically Restarted from Scratch the installation

We Want to Try this Again (with the Proper JDBC Driver)

However, I would like to know what the Appropriate steps for Restart should be in order to Upgrade the Software/Sym schema without having to lose my existing configuration.

Please let me know

Thank you
Anthony V
Tags:
Steps To Reproduce: SymmetricDS 3.7.2, PostgreSql ver3.9 server
SymmetricDS 3.7.2, Sybase client

Upgrade both to 3.8

Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3424 [SymmetricDS] Bug major always 2018-02-14 13:22 2018-02-14 13:23
Reporter: jflambert Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Unable to uninstall SymmetricDS PostgreSQL node when using dedicated schema
Description: symadmin uninstall fails when PostgreSQL node is on a dedicated schema (instead of public).
Tags: postgresql
Steps To Reproduce: Install SymmetricDS "staging" node to a dedicated sym_schema schema (as per official documentation). Here is staging.properties:

external.id=staging
engine.name=staging
group.id=staging
sync.url=http\://localhost\:31415/sync/staging
db.url=jdbc\:postgresql\://localhost/nserver?protocolVersion\=2&stringtype\=unspecified&socketTimeout\=300&tcpKeepAlive\=true
db.driver=org.postgresql.Driver
db.user=sym_user
auto.registration=true
registration.url=
db.init.sql=
db.validation.query=select 1
db.password=XXXXXXXXXxxx
db.connection.properties=


Confirm that table sym_parameter table does exist under sym_schema.

Attempt to uninstall SymmetricDS node, an exception will be raised.

root@newtrax78:/opt/symmetric-server-3.9.3/bin# ./symadmin --engine staging uninstall
SLF4J: The following set of substitute loggers may have been accessed
SLF4J: during the initialization phase. Logging calls during this
SLF4J: phase were not honored. However, subsequent logging calls to these
SLF4J: loggers will work as normally expected.
SLF4J: See also http://www.slf4j.org/codes.html#substituteLogger
SLF4J: org.jumpmind.symmetric.AbstractSymmetricEngine
Log output will be written to /var/log/newtrax/symmetric.log
[] - AbstractCommandLauncher - Option: name=engine, value={staging}
[staging] - AbstractSymmetricEngine - Initializing connection to database
[staging] - JdbcDatabasePlatformFactory - Detected database 'PostgreSQL', version '9', protocol 'postgresql'
[staging] - JdbcDatabasePlatformFactory - The IDatabasePlatform being used is org.jumpmind.db.platform.postgresql.PostgreSqlDatabasePlatform
[staging] - ParameterService - Could not read database parameters and they have not yet been initialized
[staging] - AbstractSymmetricEngine - Stopping SymmetricDS externalId=staging version=3.9.3 database=?
-------------------------------------------------------------------------------
An exception occurred. Please see the following for details:
-------------------------------------------------------------------------------
org.postgresql.util.PSQLException: ERROR: relation "sym_parameter" does not exist
  Position: 36
    at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2455)
    at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2155)
    at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:288)
    at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:430)
    at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:356)
    at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:168)
    at org.postgresql.jdbc.PgPreparedStatement.executeQuery(PgPreparedStatement.java:116)
    at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
    at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
    at org.jumpmind.db.sql.JdbcSqlReadCursor.<init>(JdbcSqlReadCursor.java:97)
 [wrapped] org.jumpmind.db.sql.SqlException: Failed to execute sql: select param_key, param_value from sym_parameter where external_id=? and node_group_id=?
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:300)
    at org.jumpmind.db.sql.JdbcSqlReadCursor.<init>(JdbcSqlReadCursor.java:120)
    at org.jumpmind.db.sql.JdbcSqlTemplate.queryForCursor(JdbcSqlTemplate.java:140)
    at org.jumpmind.db.sql.AbstractSqlTemplate.query(AbstractSqlTemplate.java:199)
    at org.jumpmind.db.sql.AbstractSqlTemplate.query(AbstractSqlTemplate.java:195)
    at org.jumpmind.db.sql.AbstractSqlTemplate.query(AbstractSqlTemplate.java:185)
    at org.jumpmind.db.sql.AbstractSqlTemplate.query(AbstractSqlTemplate.java:121)
    at org.jumpmind.symmetric.service.impl.ParameterService.readParametersFromDatabase(ParameterService.java:156)
    at org.jumpmind.symmetric.service.impl.ParameterService.getDatabaseParameters(ParameterService.java:198)
    at org.jumpmind.symmetric.service.impl.AbstractParameterService.rereadDatabaseParameters(AbstractParameterService.java:282)
    at org.jumpmind.symmetric.service.impl.ParameterService.rereadApplicationParameters(ParameterService.java:181)
    at org.jumpmind.symmetric.service.impl.AbstractParameterService.getParameters(AbstractParameterService.java:167)
    at org.jumpmind.symmetric.service.impl.AbstractParameterService.rereadParameters(AbstractParameterService.java:156)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.init(AbstractSymmetricEngine.java:320)
    at org.jumpmind.symmetric.ClientSymmetricEngine.init(ClientSymmetricEngine.java:202)
    at org.jumpmind.symmetric.ClientSymmetricEngine.<init>(ClientSymmetricEngine.java:148)
    at org.jumpmind.symmetric.ClientSymmetricEngine.<init>(ClientSymmetricEngine.java:152)
    at org.jumpmind.symmetric.AbstractCommandLauncher.getSymmetricEngine(AbstractCommandLauncher.java:389)
    at org.jumpmind.symmetric.AbstractCommandLauncher.getSymmetricEngine(AbstractCommandLauncher.java:381)
    at org.jumpmind.symmetric.SymmetricAdmin.uninstall(SymmetricAdmin.java:569)
    at org.jumpmind.symmetric.SymmetricAdmin.executeWithOptions(SymmetricAdmin.java:335)
    at org.jumpmind.symmetric.AbstractCommandLauncher.execute(AbstractCommandLauncher.java:194)
    at org.jumpmind.symmetric.SymmetricAdmin.main(SymmetricAdmin.java:144)
-------------------------------------------------------------------------------
Additional Information: May be related to issue 0003418

Adding "&currentSchema\=sym_schema" to db.url allows uninstall to proceed.
Attached Files:
Notes
(0001128)
jflambert   
2018-02-14 13:23   
Using 3.9.3

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3418 [SymmetricDS] Bug major always 2018-02-13 12:39 2018-02-14 11:50
Reporter: bahoover Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.9.2  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Syncing to named schema in Postgresql not working using a transform
Description: Syncing to a Postgresql named schema does not work correctly with a transformed table.

When using the default (public) schema, symmetric behaves as it should. However, when syncing to a named schema, symmetric creates the original table and syncs to it instead of syncing to the transformed table.
Tags:
Steps To Reproduce: 1. Start with clean install
   bin/symadmin --engine loggernet-001 uninstall
   bin/symadmin --engine lndb-000 uninstall
   bin/symadmin --engine lndb-000 create-sym-tables

2. create transform table in schema (change schema name depending on test):
   script in Additonal Info

3. Run below script to setup symmetricds

4. Start symmetricds

-----------------------------------------------------------------------
-- Script to setup symmetric (using public schema)
-----------------------------------------------------------------------

-- Clear out tables
delete from sym_transform_column ;
delete from sym_transform_table ;
delete from sym_trigger_router;
delete from sym_trigger;
delete from sym_router;
delete from sym_channel where channel_id in ('mux_tables', 'mts_tables');
delete from sym_node_group_link;
delete from sym_node_group;
delete from sym_node_host;
delete from sym_node_identity;
delete from sym_node_security;
delete from sym_node;

-- Define Nodes and setup security
insert into sym_node (node_id,node_group_id,external_id,sync_enabled,sync_url,schema_version,symmetric_version,database_type,database_version,heartbeat_time,timezone_offset,batch_to_send_count,batch_in_error_count,created_at_node_id)
 values ('000','lndb','000',1,null,null,null,null,null,current_timestamp,null,0,0,'000');
 
insert into sym_node (node_id,node_group_id,external_id,sync_enabled,sync_url,schema_version,symmetric_version,database_type,database_version,heartbeat_time,timezone_offset,batch_to_send_count,batch_in_error_count,created_at_node_id)
 values ('001','loggernet','001',1,null,null,null,null,null,current_timestamp,null,0,0,'000');

insert into sym_node_security (node_id,node_password,registration_enabled,registration_time,initial_load_enabled,initial_load_time,created_at_node_id)
 values ('000','f96606b78a54ed89e88d9aa9b48ea4e8',0,current_timestamp,0,current_timestamp,'000');
 
insert into sym_node_security (node_id,node_password,registration_enabled,registration_time,initial_load_enabled,initial_load_time,created_at_node_id)
 values ('001','f96606b78a54ed89e88d9aa9b48ea4e8',1,null,1,null,'000');

insert into sym_node_identity values ('000');

-- Groups and link
insert into sym_node_group (node_group_id, description) values ('lndb', 'Loggernet (CR1000) source database');
insert into sym_node_group (node_group_id, description) values ('loggernet', 'BioLogic raw data store');

insert into sym_node_group_link (source_node_group_id, target_node_group_id, data_event_action) values ('lndb', 'loggernet', 'P');

-- Routers
-- default router, send all captured data to target
insert into sym_router (router_id,source_node_group_id,target_node_group_id,router_type,create_time,last_update_time)
values('lndb_2_loggernet', 'lndb', 'loggernet', 'default', current_timestamp, current_timestamp);

insert into sym_router(router_id, source_node_group_id, target_node_group_id, router_type, create_time, last_update_time)
values('lndb_audit', 'lndb', 'audit', 'audit', current_timestamp, current_timestamp);

-- Channels
insert into sym_channel
(channel_id, processing_order, max_batch_size, enabled, description)
values('mux_tables', 1, 100000, 1, 'Mux tables');

-- Triggers
insert into sym_trigger(trigger_id,source_table_name,channel_id,sync_on_update_condition, last_update_time,create_time)
values('vc1_leveltemp_trigger','VC1_LevelTemp','mux_tables', 'new.TmStamp > ''2008-01-01'' and new.TmStamp <= now()',current_timestamp,current_timestamp);

-- trigger/router
insert into sym_trigger_router(trigger_id,router_id,initial_load_order, last_update_time,create_time)
values('vc1_leveltemp_trigger','lndb_2_loggernet', 100, current_timestamp, current_timestamp);

insert into sym_transform_table(transform_id, source_node_group_id, target_node_group_id, transform_point, source_table_name, target_table_name, delete_action, column_policy)
values('extract_vc1_leveltemp_xform', 'lndb', 'loggernet', 'EXTRACT', 'VC1_LevelTemp', 'mux_leveltemp', 'DEL_ROW', 'IMPLIED');

insert into sym_transform_column (transform_id, include_on, target_column_name, pk, transform_type, transform_expression, transform_order, last_update_time,last_update_by, create_time)
values ('extract_vc1_leveltemp_xform', '*', 'site', 1,'const', 'VC1', 1, current_timestamp, 'BAH',current_timestamp);

insert into sym_transform_column (transform_id, include_on, target_column_name, source_column_name, pk,transform_type, transform_expression, transform_order, last_update_time,last_update_by, create_time)
values ('extract_vc1_leveltemp_xform', '*', 'TmStamp', 'TmStamp', 1,'copy', '', 2, current_timestamp, 'BAH',current_timestamp);

insert into sym_transform_column (transform_id, include_on, target_column_name, source_column_name, pk,transform_type, transform_expression, transform_order, last_update_time,last_update_by, create_time)
values ('extract_vc1_leveltemp_xform', '*', 'RecNum', 'RecNum', 1,'copy', '', 3, current_timestamp, 'BAH', current_timestamp);

-----------------------------------------------------------------------
-- For named schema, use above script, except change inserts into sym_router and sym_transform_table
-----------------------------------------------------------------------
insert into sym_router (router_id,source_node_group_id,target_node_group_id,target_schema_name,router_type,create_time,last_update_time)
values('lndb_2_loggernet', 'lndb', 'loggernet', 'loggernet', 'default', current_timestamp, current_timestamp);

insert into sym_transform_table(transform_id, source_node_group_id, target_node_group_id, target_schema_name, transform_point, source_table_name, target_table_name, delete_action, column_policy)
values('extract_vc1_leveltemp_xform', 'lndb', 'loggernet', 'loggernet', 'EXTRACT', 'VC1_LevelTemp', 'mux_leveltemp', 'DEL_ROW', 'IMPLIED');


Additional Information: MySQL 5.6
Postgresql 9.5



-- Create transform table on postgresql
CREATE TABLE loggernet.mux_leveltemp
(
    id SERIAL,
    site character varying(3) COLLATE pg_catalog."default" NOT NULL,
    tmstamp timestamp without time zone NOT NULL,
    recnum bigint NOT NULL,
    teg_status integer,
    water_level real,
    water_temp real,
    air_temp real,
    in_volt real,
    tagcount integer,
    CONSTRAINT mux_leveltemp_pkey PRIMARY KEY (site, tmstamp, recnum)
)
WITH (
    OIDS = FALSE
)
TABLESPACE pg_default;

ALTER TABLE loggernet.mux_leveltemp
    OWNER to dmuser;

-- Source table
CREATE TABLE `VC1_LevelTemp` (
  `TmStamp` datetime(6) NOT NULL DEFAULT '0000-00-00 00:00:00.000000',
  `RecNum` bigint(20) NOT NULL DEFAULT '0',
  `TEG_status` int(11) DEFAULT NULL,
  `Water_level` float DEFAULT NULL,
  `Water_temp` float DEFAULT NULL,
  `Air_temp` float DEFAULT NULL,
  `In_Volt` float DEFAULT NULL,
  `TagCount` int(11) DEFAULT NULL,
  PRIMARY KEY (`TmStamp`,`RecNum`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

Attached Files: lndb-000.properties (3,203 bytes) 2018-02-13 12:39
http://www.symmetricds.org/issues/file_download.php?file_id=147&type=bug
loggernet-001.properties (3,165 bytes) 2018-02-13 12:39
http://www.symmetricds.org/issues/file_download.php?file_id=148&type=bug
Notes
(0001126)
elong   
2018-02-14 11:50   
Found some discussion on this here: https://sourceforge.net/p/symmetricds/discussion/739236/thread/ee8859cb/

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3421 [SymmetricDS] Improvement minor have not tried 2018-02-13 16:42 2018-02-13 16:42
Reporter: mmichalek Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.33  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Stranded sym_data_event purge query optimization
Description: The STRANDED_DATA_EVENT query of purge service has been observed running very slowly on Postgres and SQL Server. On some Postgres systems, this has caused the purge process to fail to complete.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3419 [SymmetricDS] Bug minor always 2018-02-13 13:13 2018-02-13 13:15
Reporter: sven Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.33  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: MS SQL -> SQLite, don't translate "NEXT VALUE FOR" default value
Description: I have a table in MS SQL Server that has a default value of NEXT VALUE FOR [column]. During the initial load process Symmetric tries to translate this into SQLite, which does not support this default value and therefore throws an error for the outgoing batch, halting progress.
Tags: mssql, sqlite
Steps To Reproduce: Table in SQL with a default value of NEXT VALUE FOR
Try to replicate to a SQLite database
Additional Information: 2018-02-13 12:54:48,626 ERROR [v3-mc-0000000] [AcknowledgeService] [qtp1006485584-14] The outgoing batch xxx-250 failed: [,1] [SQLITE_ERROR] SQL error or missing database (near "VALUE": syntax error)

relevant portion of batch file:
        <column name=\"col\" type=\"INTEGER\" size=\"10\" default=\"NEXT VALUE FOR [col]\">
            <platform-column name=\"mssql2008\" type=\"int\" size=\"10\" default=\"NEXT VALUE FOR [col]\"/>
        </column>
Attached Files:
Notes
(0001125)
sven   
2018-02-13 13:15   
I forgot to note that according to the database architecture listed in sym_node, Symmetric is correctly identifying the client DB as SQLite.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3375 [SymmetricDS] Bug major always 2018-01-17 04:27 2018-02-13 11:12
Reporter: albp Platform:  
Assigned To: josh-a-hicks OS:  
Priority: urgent OS Version:  
Status: assigned Product Version: 3.8.30  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Data Capture Can't Handle Large XMLTYPE Values
Description: XMLTYPE data exceeding a certain threshold in size (probably 32K) fails to insert, update or delete with "ORA-19011: Character string buffer too small" on Oracle.

The issue is caused by limitations with Oracle's REPLACE and TO_CLOB and XMLTYPEs found in SymmetricDS's trigger code.

As a workaround, XMLTYPE method getClobVal could be used e.g.

DECODE( dbms_lob.getlength( :new."XMLCOL".getclobval( ) ), NULL, TO_CLOB( '' ), '"' || REPLACE( REPLACE( :new."XMLCOL".getclobval( ), '\', '\\' ), '"', '\"' ) || '"' )

Although unconfirmed, I suspect you also have to wrap the string literals in TO_CLOB to ensure Oracle doesn't do an implicit type conversion to VARCHAR2.

DECODE( dbms_lob.getlength( :new.x.getclobval( ) ), NULL, TO_CLOB( '' ), TO_CLOB('"') || REPLACE( REPLACE( :new.x.getclobval( ), '\', '\\' ), '"', '\"' ) || TO_CLOB('"') )
Tags:
Steps To Reproduce: 1. Set triggers on a table with an XMLTYPE column to: -

* DO NOT - Stream Lobs and
* DO - Capture Lobs

2. Attempt to INSERT an XMLTYPE value that exceeds 32K.

The INSERT should fail with ORA-19011: Character string buffer too small.
Additional Information: Reproduced on both Oracle 11 and 12 however on Oracle 11, it's important the storage type of the XMLTYPE column is set to CLOB. If it's set to BINARY, you'll get a (spurious?) error ORA-03001: unimplemented feature.
Attached Files: OracleTriggerTemplate.java (25,676 bytes) 2018-02-09 00:37
http://www.symmetricds.org/issues/file_download.php?file_id=144&type=bug
OracleDmlStatement.java (3,919 bytes) 2018-02-09 00:37
http://www.symmetricds.org/issues/file_download.php?file_id=145&type=bug
OracleDdlReader.java (19,865 bytes) 2018-02-09 00:37
http://www.symmetricds.org/issues/file_download.php?file_id=146&type=bug
Notes
(0001124)
albp   
2018-02-09 00:37   
See attached workaround / potential solution to the problem.

I managed to get it working by altering 3 classes as follows noting, since reporting the issue, I found the initial load feature also failed with a similar issue: -

1. org.jumpmind.symmetric.db.oracle.OracleTriggerTemplate - added xmlColumnTemplate implementing the aforementioned getClobVal workaround.
2. org.jumpmind.db.platform.oracle.OracleDmlStatement - added XMLType support to appendColumnParameter and in getTypeCode, altered the mapping of XML(type) from Types.VARCHAR to Types.CLOB.
3. org.jumpmind.db.platform.oracle.OracleDdlReader - altered the mapping of XML(type) from Types.LONGVARCHAR to Types.SQLXML.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3415 [SymmetricDS] Bug major always 2018-02-13 06:20 2018-02-13 06:20
Reporter: Sunil Nair Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.9.3  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: ERROR: Type "year" does not exist
Description: Hi Experts,

I am new to symmetricDS and trying a demo replication scenario using postgresql 9.4 with two local db (corp and store). when the service is run, I am getting the below error

2018-02-13 16:27:57,072 ERROR [corp-000] [AcknowledgeService] [qtp2097514481-24] The outgoing batch 001-11 failed: ERROR: type "year" does not exist
  Position: 168
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3414 [SymmetricDS] Task minor N/A 2018-02-09 17:27 2018-02-09 17:27
Reporter: piali Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.9.3  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Integration of Apache Ignite with Symmetricds
Description: Hi,

[I had asked the same question in the forum but since I didn't get the response, so raising a ticket.]

Can you please let me know if I am correct to understand the below points?

Case-1) Source: Apache Ignite cache and Target - any DB :
 Initial loads, reverse initial loads, and table reloads can utilize the TABLE_RELOAD_REQUEST to request a load with a variety of options. TABLE_RELOAD_REQUEST requires trigger ID. And since apache ignite isn't trigger based, this scenario is not possible
 https://www.symmetricds.org/doc/3.9/html/user-guide.html#_load_data
 
 Case 2) Source: Any DB and Target - Apache Ignite Cache :
 Since SymmetricDS is trigger based and there are no triggers in Apache Ignite, data can only be loaded to an Apache Ignite instance from another DB.
It also implies that if there is any change in the source DB, it will not be captured in the apache ignite (target).
 https://www.symmetricds.org/doc/3.9/html/user-guide.html#_apache_ignite
Tags: Integration with Apache Ignite
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3412 [SymmetricDS] Improvement major always 2018-02-08 18:13 2018-02-08 18:13
Reporter: vibhorejairath Platform:  
Assigned To: OS:  
Priority: high OS Version:  
Status: new Product Version: 3.8.33  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: SymmetricDS needs sql script to insert REGISTRATION_REDIRECT entry whereas registration service must handle it.
Description: Hello Support Team,

We are using multi-tiered deployment at our various customers and to overcome the problem of manually inserting records in sym_registration_redirect table, we have customized RegistrationService.java to do it for us programmatically. Is it possible we can get this feature in the base product so that we can get rid of our customization and can do smooth upgradation without worrying about our customization.Also if you can provide the extension-point for RegistrationService then that will suffice our requirement as well.

Our multi-tiered deployment looks like this Central --> Store--> POS. Therefore in the below code we are checking if the groupId is Store then we call saveRegistraionRedirect to save it in the aforementioned table.

 // Start Registration Redirect Update
    public static final String REGISTER_SUFFIX = "00000";
    public static final String TIER_2_GROUP = "store";
    public static final String TIER_3_GROUP = "pos";

    protected String getRedirectionUrlFor(String externalId, String groupId) {
        String redirectUrl = null;
        String nodeStoreId = StringUtils.substring(externalId, 0, 5);

        if (StringUtils.equalsIgnoreCase(TIER_2_GROUP, groupId)) { // is store node
            String redirectId = nodeStoreId + REGISTER_SUFFIX;
            saveRegistrationRedirect(redirectId, externalId);
        } else if (StringUtils.equalsIgnoreCase(TIER_3_GROUP, groupId)) { // is pos node
            String redirectId = nodeStoreId + REGISTER_SUFFIX;
            redirectUrl = getRedirectionUrlFor(redirectId);

            if (StringUtils.isBlank(redirectUrl)) {
                log.warn("Store node for " + nodeStoreId + " must be registered and loaded before POS node "
                        + externalId);
            }
        }
        return redirectUrl;
    }
    // End Registration Redirect Update


I am attaching source file for your reference. Please look for getRedirectionUrlFor method in the attached file.

We also need a extension point to support substring on external_id . The reason for that is One Store can have multiple POS systems and in order to make the node ids unique for all POS terminal, we suffix StoreID with TerminalID. For eg Store ID = 09124 and Terminal ID =001. the externalId for POS node will become 09124001. However, in our database we store data based on storeId and hence we need to use substring method.
Tags: Upgrade
Steps To Reproduce: Create a multi-tiered deployment as described above and start the Central, Store and POS nodes.
Additional Information:
Attached Files: RegistrationService.java (38,403 bytes) 2018-02-08 18:13
http://www.symmetricds.org/issues/file_download.php?file_id=143&type=bug
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3401 [SymmetricDS] Bug major always 2018-02-01 22:22 2018-02-08 12:59
Reporter: vibhorejairath Platform:  
Assigned To: OS:  
Priority: high OS Version:  
Status: new Product Version: 3.8.33  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: SymmetricDS server is having difficulty with retrieving files from the engines directory defined by -Dsymmetric.engines.dir
Description: We have been using customized code to define external folder for symmetric.properties file. The customized code was directly written in one of the symmetric file TypedPropertiesFactory.java. When Chris from jumpmind visited our office, he recommended us to use -Dsymmetric.engines.dir instead of customizing the Symmetric code.

I tired that by defining the JAVA_OPTS in tomcat however now server is not getting started. Could you please see the attached log and advice.

Please see below the environment variable is setup in java command

/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/bin/java -Djava.util.logging.config.file=/Users/vjairath/devtools/apache-tomcat-7.0.75/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Dsymmetric.engines.dir=/opt/engage/ -Djdk.tls.ephemeralDHKeySize=2048 -agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n -Djava.endorsed.dirs=/Users/vjairath/devtools/apache-tomcat-7.0.75/endorsed -classpath /Users/vjairath/devtools/apache-tomcat-7.0.75/bin/bootstrap.jar:/Users/vjairath/devtools/apache-tomcat-7.0.75/bin/tomcat-juli.jar -Dcatalina.base=/Users/vjairath/devtools/apache-tomcat-7.0.75 -Dcatalina.home=/Users/vjairath/devtools/apache-tomcat-7.0.75 -Djava.io.tmpdir=/Users/vjairath/devtools/apache-tomcat-7.0.75/temp org.apache.catalina.startup.Bootstrap start
Tags:
Steps To Reproduce: Start the Symmetric engine by starting the tomcat server
Additional Information:
Attached Files: symmetric.log (76,324 bytes) 2018-02-01 22:22
http://www.symmetricds.org/issues/file_download.php?file_id=140&type=bug
symmetric-2.log (511,661 bytes) 2018-02-01 22:49
http://www.symmetricds.org/issues/file_download.php?file_id=141&type=bug
symmetric-3.log (76,744 bytes) 2018-02-06 13:57
http://www.symmetricds.org/issues/file_download.php?file_id=142&type=bug
Notes
(0001111)
vibhorejairath   
2018-02-05 10:26   
Dear Support Team,

Any updates on the ticket
(0001112)
maxwellpettit   
2018-02-05 11:43   
Hello,

There seems to be some sort of miscommunication here. The engines directory should contain a properties file for each node in your configuration. The symmetric.properties file is a separate file that controls global configuration parameters. It looks like you are trying to configure a custom engines directory, but what you have done is point this to the location of your symmetric.properties file. This is not a valid configuration because Symmetric will try to configure the symmetric.properties file as a node.

What I'm guessing that Chris meant was to instead put your configuration settings in each properties file for each node in the engines directory rather than the symmetric.properties file. Then, you could specify your engines directory using the -Dsymmetric.engines.dir property.

Does this make sense?

Thanks,
Max
(0001113)
vibhorejairath   
2018-02-05 15:30   
Thanks Max for replying on this issue and I think I got it what you are saying. The symmetric.properties is global configuration file and we should not be externalizing it. The node specific properties can be defined in the externalized folder via -Dysmmetric.engines.dir. This property file can have same properties name like the one in symmetric properties file.

For eg.. external.id, group.id, registration.url and so on... If this is not right.. can you send me an example file for my understanding.
(0001114)
maxwellpettit   
2018-02-05 15:45   
Correct, you can configure any desired parameters in each node's engines directory. Please take a look at the following documentation on node engines files for more details: https://www.symmetricds.org/doc/3.9/html/user-guide.html#_node_properties_file

The parameters you may use in these engines files are defined in the documentation as well:
https://www.symmetricds.org/doc/3.9/html/user-guide.html#_startup_parameters

https://www.symmetricds.org/doc/3.9/html/user-guide.html#_runtime_parameters

Thanks,
Max
(0001115)
vibhorejairath   
2018-02-05 17:47   
Thanks Max, this is really helpful. I am going to try this option tomorrow and will let you know the results
(0001116)
vibhorejairath   
2018-02-06 09:02   
Max,

This didn't work either. Let me explain what I am trying to achieve. We have two tier and three tier Synchronization where each nodes are running in its own container (tomcat). We have been using symmetric.properties to load basic configuration of each nodes by doing the customization described above. Since this customization is becoming costly to us as we cannot upgrade to new SymmetricDS version without looking at the customized class again therefore we decided to get rid of it. However, we are not successful so far.

Based on your suggestion, I let the symmetric.properties packaged in the server classpath and created node properties file in the external engine directory.

The symmetric.properties contained only basic properties such as
engine.name=central-server
group.id= server
external.id= central
sync.url= http://$(hostName):8080/SymmetricDS/sync/$(engineName)

the engine directory property file contains the same above properties along with Database configuration but this file is never read by SymmetricDS server and hence I am unable to bring webconsole with full configuration.

Kindly assist where I am going wrong. Perhaps a quick call would help us troubleshoot the issue quickly. Please suggest
(0001117)
maxwellpettit   
2018-02-06 10:31   
Hello,

I think there may still be a bit of a miscommunication. Each node should be represented by a single .properties file in the engines directory. The naming convention for this file is GROUP_ID-EXTERNAL_ID.properties where GROUP_ID is the node's group id and EXTERNAL_ID is the node's external id. From your provided example you should have a file in your engines directory named "server-central.properties" with the following properties set:

engine.name=server-central
group.id= server
external.id= central
sync.url= http://$(hostName):8080/SymmetricDS/sync/$(engineName)

Any additional properties you wish to set for this node should also be in this file. Then, you would set the location of the directory containing this file (and only this file or other node .properties files not including symmetric.properties) using the -Dsymmetric.engines.dir setting.

The symmetric.properties file should only be used to set parameters globally across all nodes on the server. So if you had more than one node on a server and wanted to set the same property, you could set the in the symmetric.properties file. Since you want to externalize your settings with the java property -Dsymmetric.engines.dir you should not be using the symmetric.properties file at all. You should most likely reset this file to the default and ignore it in your configuration setup.

This does not appear to be a bug in the software.

Thanks,
Max
(0001118)
vibhorejairath   
2018-02-06 13:46   
I am going to try but don't think so it will work. I had put the break point in AbstractCommadLauncher#getEngineDir method and the server never came to this breakpoint. So I am guessing i have something wrongly setup which I am unable to figure it out.
(0001119)
vibhorejairath   
2018-02-06 13:57   
So I created server-central.properties file in the engine directory as you mentioned in the last thread however now I back to square one with the original problem where my SymmetricDS is not even getting started. It's just reading the symmetric-default.properties and failing.

Please see the attached file
(0001120)
vibhorejairath   
2018-02-06 13:59   
Max,
Can we please have a call as I am stalling with this problem with almost 3 days
(0001122)
maxwellpettit   
2018-02-08 10:36   
Hello,

This issue has become more of a support issue rather than a software issue. To obtain support services (such as a call), this will have to be done through our support center. Please submit a ticket at support.jumpmind.com

Thanks,
Max
(0001123)
vibhorejairath   
2018-02-08 12:59   
Thanks Max, I will open a ticket with your support services

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3409 [SymmetricDS Pro] Bug minor always 2018-02-07 12:32 2018-02-07 12:32
Reporter: abrougher Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.9.0  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Cascade clause is not being exported in the SQL DDL when syncing table DDL.
Description: When syncing table DDL, the DDL generated does not include the cascade clause. See steps to reproduce below.
Tags:
Steps To Reproduce: To recreate on an H2 db...

--
-- Create example tables to export
--
CREATE TABLE PARENT (
    PARENT_ID VARCHAR(25) NOT NULL,
    PRIMARY KEY(PARENT_ID)
);
CREATE TABLE CHILD (
    ID SMALLINT AUTO_INCREMENT,
    PARENT_ID VARCHAR(25) NOT NULL,
    PRIMARY KEY(ID),
        CONSTRAINT FK_PARENT_CHILD FOREIGN KEY(PARENT_ID) REFERENCES PARENT(PARENT_ID) ON DELETE CASCADE
);

--
-- Table DDL generated by DDLUtils
--
CREATE TABLE CHILD(
    ID SMALLINT NOT NULL AUTO_INCREMENT,
    PARENT_ID VARCHAR(25) NOT NULL,
    PRIMARY KEY (ID)
);
ALTER TABLE CHILD
    ADD CONSTRAINT FK_PARENT_CHILD FOREIGN KEY (PARENT_ID) REFERENCES PARENT (PARENT_ID);

Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3389 [SymmetricDS] Improvement minor always 2018-01-21 16:27 2018-02-06 16:32
Reporter: snpe Platform:  
Assigned To: kstojanovska OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.9.2  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: dbcompare, timestamp and utf8
Description: We use symmetricds to replicate between MySQL and SQL Anywhere.

dbcompare returns a lot different rows.
I have noticed two issues:

1) when create comparison sql, symmetricds uses the order by as
ORDER BY <pk_column>
if PK column is text (varchar) that contains utf-8 characters, MySQL and SQL Anywhere will return different ordering
Solution: use the CONVERT function on MySQL and the CSCONVERT function on SQL Anywhere

2) SQL Anywhere saves timestamp values with milliseconds and MySQL (by default) without milliseconds
Solution: add options to round timestamp values similar as numbers
Tags:
Steps To Reproduce: We use commercial databases and not sure that can provide reproducible case.
Additional Information: I have fixed both issue with patched symmetricds 3.9.x and I'm willing to create a patch.
Attached Files:
Notes
(0001108)
kstojanovska   
2018-01-30 13:35   
Hi,

Could you provide the patch you used or do a pull request so we can review your approach in the code?
(0001109)
kstojanovska   
2018-01-30 13:46   
Which version of Sybase are you running? Could you provide us with sample create table statements and some sample data for both MySql and SqlAnywhere so that we can try to reproduce?
(0001110)
snpe   
2018-01-30 14:54   
I'm using SQL Anywhere 11 and MySQL 5.7.21. I will provide a pull request and test case soon.
(0001121)
kstojanovska   
2018-02-06 16:32   
(Last edited: 2018-02-06 16:32)
We have added an option to specify a date-time format which should fix problem 2 here.

Here is a link to the issue: https://www.symmetricds.org/issues/view.php?id=3407


View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3407 [SymmetricDS] Improvement minor have not tried 2018-02-06 16:30 2018-02-06 16:30
Reporter: kstojanovska Platform:  
Assigned To: kstojanovska OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.4  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: Add ability to specify a date time format for dbcompare
Description: Add ability to specify a date time format for dbcompare with command --date-time-format. Example: --date-time-format 'yyyy-MM-dd HH:mm:ss'
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3397 [SymmetricDS] Bug crash always 2018-01-31 16:19 2018-01-31 16:19
Reporter: anthony.vitale@sonymusic.com Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.9.2  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Using Postgresql 9.6.6 as a Source DB Fails SymmetricDS Upgrade to version 3.9.2 due to old postgresql jdbc driver
Description: This Version of the JDBC Driver has a Issue with PostgreSql verion 9.1 and above in that when it accesses the Postgresql Catalog table pg_trigger in order to look up Catalog Metadata AND it selects a non existant column pg_trigger.tgisconstraint which was dropped from PostgreSQL in Version 9.2 and Above.

I know of this issue specifically when I tried to do a SymmetricDS Upgrade as during the upgrade I assume the SymmetricDS Code is using JDBC Methods which fail with the error

t1.tgisconstraint does not exist.

This is Due to Postgresql Removing this column from the catalog with the release of Postgresql 9.2.4

As Such We replaced the postgresql-9.4-1212.jre7.jar found within the SymmetricDS released lib directory with the Current PostgreSQL JDBC Driver postgresql-42.1.4.jar which works with PGSQL 9.2 and above and no longer references t1.tgisconstraint within the JDBC Driver's methods.

So Please replace the PostgreSQL JDBC driver released with the SymmetricDS to be the Current Version postgresql-42.1.4.jar or whatever the most Current Postgresql JDBC Driver at the Time of Repair of this Issue.

I know that each installation can Supply there own JDBC Drivers, however it would be better to not supply Any JDBC Driver with the Symmetric Release instead of a JDBC Driver which causes Issues in Performing Upgrades.

Thanks
Anthony Vitale
Tags: postgresql, tgisconstraint, Upgrade
Steps To Reproduce: Use Symmds 9.4.2 to upgrade from any Prior Symmds Release using either the Source or Target node being Postgresql version 9.4 and above.
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3388 [SymmetricDS] Bug block always 2018-01-21 16:18 2018-01-24 05:59
Reporter: snpe Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.9.2  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: SQL Anywhere triggers issue
Description: SymmetricDS creates T-SQL triggers on SQLAnywhere - http://dcx.sybase.com/1200/en/dbreference/create-trigger-tsql-statement.html
These triggers have default ORDER 1 and always run BEFORE other database "after" triggers (other triggers have to have ORDER > 1 when using Symmetricds).
So, the changes created by other database triggers aren't replicated.

Solution: convert SQLAnywhere triggers to WATCOM SQL - http://dcx.sybase.com/1200/en/dbreference/create-trigger-statement.html
Tags:
Steps To Reproduce: - create a trigger in SQLAnywhere that change something. The changes within triggers will not be replicated.
Additional Information: I'm willing to update a patch since I have fixed it for us, but we have to use patched SymmetricDS on SQL Anywhere 11.
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3390 [SymmetricDS] Bug minor always 2018-01-23 15:11 2018-01-23 15:12
Reporter: kstojanovska Platform:  
Assigned To: kstojanovska OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.9.4  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.9.4  
    Target Version: 3.9.4  
Summary: DB2 on ZOS error during snapshot: dbexport throws IllegalArgumentException for --compatible db2zos
Description: DB2 on ZOS error during snapshot: dbexport throws IllegalArgumentException for --compatible db2zos
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3384 [SymmetricDS] Bug minor always 2018-01-19 13:26 2018-01-19 13:30
Reporter: jflambert Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Various warnings appear when executing symadmin send-schema
Description: Following the steps to replicate DDL as per: https://www.symmetricds.org/docs/how-to/sync-schema-ddl-changes

Many warnings appear on screen but otherwise the DDL replication seems successful.
Tags:
Steps To Reproduce: # sync triggers on staging
symadmin --engine staging sync-triggers

# send schema changes to production
./symadmin --engine staging send-schema --node production
[staging] - AbstractSymmetricEngine - Initializing connection to database
[staging] - JdbcDatabasePlatformFactory - Detected database 'PostgreSQL', version '9', protocol 'postgresql'
[staging] - JdbcDatabasePlatformFactory - The IDatabasePlatform being used is org.jumpmind.db.platform.postgresql.PostgreSqlDatabasePlatform
[staging] - PostgreSqlSymmetricDialect - The DbDialect being used is org.jumpmind.symmetric.db.postgresql.PostgreSqlSymmetricDialect
[staging] - ExtensionService - Found 0 extension points from the database that will be registered
[staging] - StagingManager - The staging directory was initialized at the following location: /opt/symmetric-server-3.9.2/tmp/staging
[staging] - ClusterService - This node picked a server id of ntx-jeff78
[staging] - ExtensionService - Found 0 extension points from the database that will be registered
[staging] - ClientExtensionService - Found 6 extension points from spring that will be registered
[staging] - Database - Unable to resolve foreign keys for table sym_conflict because the following dependent tables were not included [sym_node_group_link].
[staging] - Database - Unable to resolve foreign keys for table sym_file_trigger_router because the following dependent tables were not included [sym_file_triggersym_router].
[staging] - Database - Unable to resolve foreign keys for table sym_file_trigger_router because the following dependent tables were not included [sym_file_triggersym_router].
[staging] - Database - Unable to resolve foreign keys for table sym_grouplet_link because the following dependent tables were not included [sym_grouplet].
[staging] - Database - Unable to resolve foreign keys for table sym_node_group_link because the following dependent tables were not included [sym_node_groupsym_node_group].
[staging] - Database - Unable to resolve foreign keys for table sym_node_group_link because the following dependent tables were not included [sym_node_groupsym_node_group].
[staging] - Database - Unable to resolve foreign keys for table sym_node_identity because the following dependent tables were not included [sym_node].
[staging] - Database - Unable to resolve foreign keys for table sym_node_security because the following dependent tables were not included [sym_node].
[staging] - Database - Unable to resolve foreign keys for table sym_router because the following dependent tables were not included [sym_node_group_link].
[staging] - Database - Unable to resolve foreign keys for table sym_transform_table because the following dependent tables were not included [sym_node_group_link].
[staging] - Database - Unable to resolve foreign keys for table sym_trigger because the following dependent tables were not included [sym_channelsym_channel].
[staging] - Database - Unable to resolve foreign keys for table sym_trigger because the following dependent tables were not included [sym_channelsym_channel].
[staging] - Database - Unable to resolve foreign keys for table sym_trigger_router because the following dependent tables were not included [sym_routersym_trigger].
[staging] - Database - Unable to resolve foreign keys for table sym_trigger_router because the following dependent tables were not included [sym_routersym_trigger].
[staging] - Database - Unable to resolve foreign keys for table sym_trigger_router_grouplet because the following dependent tables were not included [sym_groupletsym_trigger_router].
[staging] - Database - Unable to resolve foreign keys for table sym_trigger_router_grouplet because the following dependent tables were not included [sym_groupletsym_trigger_router].
Additional Information: symmetric.log shows the same warnings as well as the tables being recreated with the new DDL (success)
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3382 [SymmetricDS] Bug major always 2018-01-19 11:29 2018-01-19 11:29
Reporter: andythuering Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.9.2  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: MV-Store DB corrupt after stopping SymmetricDS replication software
Description: Using the db replication software SymmetricDS with a MV-Store DB leads to DB corruption and crash of h2 after SymmetricDS is stopped. H2 Versions 1.4.195 and 1.4.196 are affected, older versions were not tested. Migration to PageStore is a workaround.
After starting h2 again reconnection e.g. via Shell works sometimes. On disconnect the following stack trace is shown:
sql> quit
SQL Exception: General error: "java.lang.IllegalStateException: This map is closed [1.4.196/4]" [50000-196]
org.h2.jdbc.JdbcSQLException: General error: "java.lang.IllegalStateException: This map is closed [1.4.196/4]" [50000-196]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
at org.h2.message.DbException.get(DbException.java:168)
at org.h2.message.DbException.convert(DbException.java:295)
at org.h2.server.TcpServerThread.sendError(TcpServerThread.java:220)
at org.h2.server.TcpServerThread.run(TcpServerThread.java:160)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.IllegalStateException: This map is closed [1.4.196/4]
at org.h2.mvstore.DataUtils.newIllegalStateException(DataUtils.java:765)
at org.h2.mvstore.MVMap.beforeWrite(MVMap.java:1044)
at org.h2.mvstore.MVMap.remove(MVMap.java:542)
at org.h2.store.LobStorageMap.removeLob(LobStorageMap.java:342)
at org.h2.store.LobStorageMap.removeLob(LobStorageMap.java:335)
at org.h2.value.ValueLobDb.remove(ValueLobDb.java:233)
at org.h2.engine.Session.removeTemporaryLobs(Session.java:702)
at org.h2.engine.Session.close(Session.java:848)
at org.h2.engine.Database.closeOpenFilesAndUnlock(Database.java:1412)
at org.h2.engine.Database.close(Database.java:1297)
at org.h2.engine.Database.removeSession(Database.java:1179)
at org.h2.engine.Session.close(Session.java:851)
at org.h2.server.TcpServerThread.closeSession(TcpServerThread.java:184)
at org.h2.server.TcpServerThread.process(TcpServerThread.java:290)
at org.h2.server.TcpServerThread.run(TcpServerThread.java:158)
... 1 more

at org.h2.engine.SessionRemote.done(SessionRemote.java:629)
at org.h2.engine.SessionRemote.close(SessionRemote.java:575)
at org.h2.jdbc.JdbcConnection.close(JdbcConnection.java:395)
at org.h2.tools.Shell.promptLoop(Shell.java:313)
at org.h2.tools.Shell.runTool(Shell.java:152)
at org.h2.tools.Shell.main(Shell.java:81)

After this a restart of h2 is needed to get a connection again to the database, connections are no more possible otherwise.
I suppose that SymmetricDS does not close the connections correctly, but this should not lead to a database corruption. The replicated table has some lob fields.
Tags:
Steps To Reproduce: Use h2 database version 1.4.195 or 1.4.196, create a database with the MV-storage engine. Establish a table replication with a table which contains lob fields (not sure if the cause has to to with lobs). Quit SymDS, try reconnecting with a db client to the database. H2 has crashed and a reconnection only works after a restart of h2. On quitting a connection always a "This map is closed" stacktrace occurs and a restart of h2 is needed. Is it possible that SymDS does not close the connections to the db properly on exit?
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3376 [SymmetricDS Pro] New Feature minor always 2018-01-17 04:54 2018-01-18 11:05
Reporter: gilles.riand Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.7.36  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Resuming replication in a Disaster/Recovery scenario
Description: Hello

Here my config :With Interbase XE

Very Node can create/update Datas so replication MultiMasters

Master
|--Store1
|--Store2
|--Store3

I'm woking on a Disaster/recovery scennario On the "Master" Database
* I Backup of every Node (Master, Store1, Store2, Store3) every night
* Master Disaster Database ==> So recovery backup from the night
==> I repush the data on the Master from other Nodes by "R" reload With Primary key
==> But because the SYM_DATA_EVENT and SYM_OUTGOING_BATCH are in late every New BATCH from the Master are not PULL to Nodes...

I found a solution : make a lot of heartbeat before staring real datas to do the Gap of Batchs

Do you have a other solution ?

Thank you







Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0001106)
gilles.riand   
2018-01-18 11:05   
Hello I think that I found a solution, the problem is in "SYM_INCOMING_BATCH"

incoming.batches.skip.duplicates=false
or
incoming.batches.record.ok.enabled=false

Hope that help someone.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3377 [SymmetricDS] Bug block always 2018-01-17 10:07 2018-01-17 10:07
Reporter: lmgaborit Platform:  
Assigned To: OS:  
Priority: immediate OS Version:  
Status: new Product Version: 3.9.2  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Android SQLite Register NullPointerException
Description: Hi,

When I want to register a node with SymmetricDS 3.9.2, I have this stacktrace in Logcat and this message : "Could not register".

It's the same issue with SymmetricDS 3.9.1 but it works with SymmetricDS 3.9.0.

Thanks,
Tags:
Steps To Reproduce:
Additional Information: 01-17 16:05:00.532 7542-7618/fr.eclasel.adp.mobile E/o*.j*.s*.s*.i*.ManageI*: An error caused a batch to fail without attempting to load data for batch 000--9999
                                                                              java.lang.NullPointerException: Attempt to invoke interface method 'org.jumpmind.db.sql.ISqlTemplate org.jumpmind.db.platform.IDatabasePlatform.getSqlTemplate()' on a null object reference
                                                                                  at org.jumpmind.symmetric.io.data.writer.DynamicDefaultDatabaseWriter.open(DynamicDefaultDatabaseWriter.java:113)
                                                                                  at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.open(NestedDataWriter.java:44)
                                                                                  at org.jumpmind.symmetric.model.ProcessInfoDataWriter.open(ProcessInfoDataWriter.java:47)
                                                                                  at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.open(NestedDataWriter.java:44)
                                                                                  at org.jumpmind.symmetric.io.data.DataProcessor.process(DataProcessor.java:104)
                                                                                  at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromTransport(DataLoaderService.java:605)
                                                                                  at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromPull(DataLoaderService.java:296)
                                                                                  at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromPull(DataLoaderService.java:253)
                                                                                  at org.jumpmind.symmetric.service.impl.RegistrationService.attemptToRegisterWithServer(RegistrationService.java:467)
                                                                                  at org.jumpmind.symmetric.service.impl.RegistrationService.registerWithServer(RegistrationService.java:443)
                                                                                  at org.jumpmind.symmetric.service.impl.PullService.pullData(PullService.java:89)
                                                                                  at org.jumpmind.symmetric.AbstractSymmetricEngine.pull(AbstractSymmetricEngine.java:901)
                                                                                  at org.jumpmind.symmetric.android.AndroidJobManager$Job.invoke(AndroidJobManager.java:176)
                                                                                  at org.jumpmind.symmetric.android.AndroidJobManager$Job.run(AndroidJobManager.java:127)
                                                                                  at java.util.Timer$TimerImpl.run(Timer.java:284)
01-17 16:05:00.535 7542-7618/fr.eclasel.adp.mobile E/o*.j*.s*.s*.i*.ManageI*: Failed to load batch 000--9999
                                                                              java.lang.NullPointerException: Attempt to invoke interface method 'org.jumpmind.db.sql.ISqlTemplate org.jumpmind.db.platform.IDatabasePlatform.getSqlTemplate()' on a null object reference
                                                                                  at org.jumpmind.symmetric.io.data.writer.DynamicDefaultDatabaseWriter.open(DynamicDefaultDatabaseWriter.java:113)
                                                                                  at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.open(NestedDataWriter.java:44)
                                                                                  at org.jumpmind.symmetric.model.ProcessInfoDataWriter.open(ProcessInfoDataWriter.java:47)
                                                                                  at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.open(NestedDataWriter.java:44)
                                                                                  at org.jumpmind.symmetric.io.data.DataProcessor.process(DataProcessor.java:104)
                                                                                  at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromTransport(DataLoaderService.java:605)
                                                                                  at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromPull(DataLoaderService.java:296)
                                                                                  at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromPull(DataLoaderService.java:253)
                                                                                  at org.jumpmind.symmetric.service.impl.RegistrationService.attemptToRegisterWithServer(RegistrationService.java:467)
                                                                                  at org.jumpmind.symmetric.service.impl.RegistrationService.registerWithServer(RegistrationService.java:443)
                                                                                  at org.jumpmind.symmetric.service.impl.PullService.pullData(PullService.java:89)
                                                                                  at org.jumpmind.symmetric.AbstractSymmetricEngine.pull(AbstractSymmetricEngine.java:901)
                                                                                  at org.jumpmind.symmetric.android.AndroidJobManager$Job.invoke(AndroidJobManager.java:176)
                                                                                  at org.jumpmind.symmetric.android.AndroidJobManager$Job.run(AndroidJobManager.java:127)
                                                                                  at java.util.Timer$TimerImpl.run(Timer.java:284)
01-17 16:05:00.552 7542-7618/fr.eclasel.adp.mobile E/o*.j*.s*.s*.i*.DataLoa*: Failed to process batch
                                                                              java.lang.NullPointerException: Attempt to invoke virtual method 'long org.jumpmind.util.Statistics.stopTimer(java.lang.String)' on a null object reference
                                                                                  at org.jumpmind.symmetric.io.data.writer.DefaultDatabaseWriter.rollback(DefaultDatabaseWriter.java:178)
                                                                                  at org.jumpmind.symmetric.io.data.writer.DynamicDefaultDatabaseWriter.rollback(DynamicDefaultDatabaseWriter.java:146)
                                                                                  at org.jumpmind.symmetric.io.data.writer.AbstractDatabaseWriter.end(AbstractDatabaseWriter.java:511)
                                                                                  at org.jumpmind.symmetric.io.data.writer.DefaultDatabaseWriter.end(DefaultDatabaseWriter.java:140)
                                                                                  at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.end(NestedDataWriter.java:72)
                                                                                  at org.jumpmind.symmetric.model.ProcessInfoDataWriter.end(ProcessInfoDataWriter.java:77)
                                                                                  at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.end(NestedDataWriter.java:72)
                                                                                  at org.jumpmind.symmetric.io.data.DataProcessor.process(DataProcessor.java:140)
                                                                                  at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromTransport(DataLoaderService.java:605)
                                                                                  at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromPull(DataLoaderService.java:296)
                                                                                  at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromPull(DataLoaderService.java:253)
                                                                                  at org.jumpmind.symmetric.service.impl.RegistrationService.attemptToRegisterWithServer(RegistrationService.java:467)
                                                                                  at org.jumpmind.symmetric.service.impl.RegistrationService.registerWithServer(RegistrationService.java:443)
                                                                                  at org.jumpmind.symmetric.service.impl.PullService.pullData(PullService.java:89)
                                                                                  at org.jumpmind.symmetric.AbstractSymmetricEngine.pull(AbstractSymmetricEngine.java:901)
                                                                                  at org.jumpmind.symmetric.android.AndroidJobManager$Job.invoke(AndroidJobManager.java:176)
                                                                                  at org.jumpmind.symmetric.android.AndroidJobManager$Job.run(AndroidJobManager.java:127)
                                                                                  at java.util.Timer$TimerImpl.run(Timer.java:284)
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3356 [SymmetricDS] Bug minor always 2018-01-05 09:34 2018-01-15 10:29
Reporter: woehrl01 Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.9.2  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: transport.max.bytes.to.sync not respected in 3.9
Description: After the upgrade to 3.9, the setting transport.max.bytes.to.sync isn't respected anymore. It know sends all the data until the max_batch_to_send limit for the channel is reached.

Output:
[central-0] - PullUriHandler - 807875 data and 1000 batches sent during pull request from mobil:node2:2
[central-0] - PullUriHandler - 181286 data and 347 batches sent during pull request from mobil:node2:2
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0001097)
woehrl01   
2018-01-08 03:48   
I provided a PR which fixes this behaviour: https://github.com/JumpMind/symmetric-ds/pull/62
(0001101)
kpatierno   
2018-01-10 11:04   
Hey Woehrl01

I have been reviewing your support ticket and have attempted to reproduce the error that you encountered but was unable to get the logging error messages that you did.

To test I did the following steps:
-Install and configured a new instance of SymmetricDS Pro 3.8.32
-Select a default configuration using the Demo setup
-Change the value for parameter transport.max.bytes.to.sync to 1000
-Change the ITEM channel's value for MAX_BATCH_TO_SEND to 2000
-DB Fill the ITEM table on CORP with 2000 rows
-Check log for output statistics to ensure that transport.max.bytes.to.sync was updated and is being referenced
**INFO [corp-000] [DataExtractorService] [corp-000-dataextractor-5] Reached the total byte threshold after 1 of 5 batches were extracted for node '002' (extracted 1273 bytes, the max is 1000). The remaining batches will be extracted on a subsequent sync.**
-Stop SymmetricDS Pro and upgrade to ver 3.9.2, restart
-DB Fill the ITEM table on CORP with 2000 rows
-Check log for output statistics to ensure that transport.max.bytes.to.sync was updated and is being referenced
**INFO [corp-000] [DataExtractorService] [corp-000-dataextractor-13] Reached the total byte threshold after 1 of 3 batches were extracted for node '001' (extracted 452992 bytes, the max is 1000). The remaining batches will be extracted on a subsequent sync.**

My log output appears to be the same after upgrade. Can you send me additional information on your setup? Do you have stream.to.file.enabled = true or any other parameters that are not set to their default values?
(0001102)
woehrl01   
2018-01-10 14:05   
Thank you for your feedback kpatierno!
Here are additional infos to reproduce:

Configuration:
stream.to.file.enabled=true
initial.load.use.extract.job.enabled=true
initial.load.extract.and.send.when.staged=true

I get that output if I do an initial load
(0001105)
rwfuller   
2018-01-15 10:29   
This issue is similar to what was seen here, https://sourceforge.net/p/symmetricds/discussion/739236/thread/22260ca7/, and appears to have been introduced in this issue, http://www.symmetricds.org/issues/view.php?id=2577

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3363 [SymmetricDS] Bug minor always 2018-01-11 10:36 2018-01-11 10:37
Reporter: woehrl01 Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.9.2  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: A file reload is produced if an unrelated table reload is requested
Description: If you insert a table reload request and have a file sync enabled, these files get an extraction, too.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0001104)
woehrl01   
2018-01-11 10:37   
I pushed a PR for this https://github.com/JumpMind/symmetric-ds/pull/65

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3362 [SymmetricDS Pro] Installation major always 2018-01-11 07:35 2018-01-11 07:36
Reporter: gilles.riand Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.9.2  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Impossible to Install SymmetricDS
Description: Impossible to Install SymmetricDS
Tags:
Steps To Reproduce: Just try to install SymmetricDS with InterbaseXE (x32) edition with Last Patch 5
Additional Information: in the Log File
(...)
2018-01-11 13:24:49,699 WARN [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL failed: CREATE TABLE "SYM_TRIGGER"(
    "TRIGGER_ID" VARCHAR(128) NOT NULL,
    "SOURCE_CATALOG_NAME" VARCHAR(255),
    "SOURCE_SCHEMA_NAME" VARCHAR(255),
    "SOURCE_TABLE_NAME" VARCHAR(255) NOT NULL,
    "CHANNEL_ID" VARCHAR(128) NOT NULL,
    "RELOAD_CHANNEL_ID" VARCHAR(128) DEFAULT 'reload' NOT NULL,
    "SYNC_ON_UPDATE" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_INSERT" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_DELETE" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_INCOMING_BATCH" SMALLINT DEFAULT 0 NOT NULL,
    "NAME_FOR_UPDATE_TRIGGER" VARCHAR(255),
    "NAME_FOR_INSERT_TRIGGER" VARCHAR(255),
    "NAME_FOR_DELETE_TRIGGER" VARCHAR(255),
    "SYNC_ON_UPDATE_CONDITION" VARCHAR(4096),
    "SYNC_ON_INSERT_CONDITION" VARCHAR(4096),
    "SYNC_ON_DELETE_CONDITION" VARCHAR(4096),
    "CUSTOM_BEFORE_UPDATE_TEXT" VARCHAR(4096),
    "CUSTOM_BEFORE_INSERT_TEXT" VARCHAR(4096),
    "CUSTOM_BEFORE_DELETE_TEXT" VARCHAR(4096),
    "CUSTOM_ON_UPDATE_TEXT" VARCHAR(4096),
    "CUSTOM_ON_INSERT_TEXT" VARCHAR(4096),
    "CUSTOM_ON_DELETE_TEXT" VARCHAR(4096),
    "EXTERNAL_SELECT" VARCHAR(4096),
    "TX_ID_EXPRESSION" VARCHAR(4096),
    "CHANNEL_EXPRESSION" VARCHAR(4096),
    "EXCLUDED_COLUMN_NAMES" VARCHAR(4096),
    "INCLUDED_COLUMN_NAMES" VARCHAR(4096),
    "SYNC_KEY_NAMES" VARCHAR(4096),
    "USE_STREAM_LOBS" SMALLINT DEFAULT 0 NOT NULL,
    "USE_CAPTURE_LOBS" SMALLINT DEFAULT 0 NOT NULL,
    "USE_CAPTURE_OLD_DATA" SMALLINT DEFAULT 1 NOT NULL,
    "USE_HANDLE_KEY_UPDATES" SMALLINT DEFAULT 1 NOT NULL,
    "STREAM_ROW" SMALLINT DEFAULT 0 NOT NULL,
    "CREATE_TIME" TIMESTAMP NOT NULL,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    "DESCRIPTION" VARCHAR(4096),
    PRIMARY KEY ("TRIGGER_ID")
)
2018-01-11 13:24:49,700 WARN [server] [JdbcSqlTemplate] [background-refresher-1] interbase.interclient.IBException: [interclient][interbase]unsuccessful metadata update
[interclient][interbase]new record size of 67602 bytes is too big
[interclient][interbase]TABLE SYM_TRIGGER. Failed to execute: CREATE TABLE "SYM_TRIGGER"(
    "TRIGGER_ID" VARCHAR(128) NOT NULL,
    "SOURCE_CATALOG_NAME" VARCHAR(255),
    "SOURCE_SCHEMA_NAME" VARCHAR(255),
    "SOURCE_TABLE_NAME" VARCHAR(255) NOT NULL,
    "CHANNEL_ID" VARCHAR(128) NOT NULL,
    "RELOAD_CHANNEL_ID" VARCHAR(128) DEFAULT 'reload' NOT NULL,
    "SYNC_ON_UPDATE" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_INSERT" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_DELETE" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_INCOMING_BATCH" SMALLINT DEFAULT 0 NOT NULL,
    "NAME_FOR_UPDATE_TRIGGER" VARCHAR(255),
    "NAME_FOR_INSERT_TRIGGER" VARCHAR(255),
    "NAME_FOR_DELETE_TRIGGER" VARCHAR(255),
    "SYNC_ON_UPDATE_CONDITION" VARCHAR(4096),
    "SYNC_ON_INSERT_CONDITION" VARCHAR(4096),
    "SYNC_ON_DELETE_CONDITION" VARCHAR(4096),
    "CUSTOM_BEFORE_UPDATE_TEXT" VARCHAR(4096),
    "CUSTOM_BEFORE_INSERT_TEXT" VARCHAR(4096),
    "CUSTOM_BEFORE_DELETE_TEXT" VARCHAR(4096),
    "CUSTOM_ON_UPDATE_TEXT" VARCHAR(4096),
    "CUSTOM_ON_INSERT_TEXT" VARCHAR(4096),
    "CUSTOM_ON_DELETE_TEXT" VARCHAR(4096),
    "EXTERNAL_SELECT" VARCHAR(4096),
    "TX_ID_EXPRESSION" VARCHAR(4096),
    "CHANNEL_EXPRESSION" VARCHAR(4096),
    "EXCLUDED_COLUMN_NAMES" VARCHAR(4096),
    "INCLUDED_COLUMN_NAMES" VARCHAR(4096),
    "SYNC_KEY_NAMES" VARCHAR(4096),
    "USE_STREAM_LOBS" SMALLINT DEFAULT 0 NOT NULL,
    "USE_CAPTURE_LOBS" SMALLINT DEFAULT 0 NOT NULL,
    "USE_CAPTURE_OLD_DATA" SMALLINT DEFAULT 1 NOT NULL,
    "USE_HANDLE_KEY_UPDATES" SMALLINT DEFAULT 1 NOT NULL,
    "STREAM_ROW" SMALLINT DEFAULT 0 NOT NULL,
    "CREATE_TIME" TIMESTAMP NOT NULL,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    "DESCRIPTION" VARCHAR(4096),
    PRIMARY KEY ("TRIGGER_ID")
)
2018-01-11 13:24:49,701 ERROR [server] [AbstractSymmetricEngine] [background-refresher-1] An error occurred while starting SymmetricDS StackTraceKey.init [SqlException:4262246999]
org.jumpmind.db.sql.SqlException: interbase.interclient.IBException: [interclient][interbase]unsuccessful metadata update
[interclient][interbase]new record size of 67602 bytes is too big
[interclient][interbase]TABLE SYM_TRIGGER
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:300)
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:291)
    at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:493)
    at org.jumpmind.db.sql.JdbcSqlTemplate.update(JdbcSqlTemplate.java:401)
Attached Files:
Notes
(0001103)
gilles.riand   
2018-01-11 07:36   
2018-01-11 13:24:09,793 INFO [gui] [JdbcDatabasePlatformFactory] [qtp323326911-17] Detected database 'InterBase', version '10', protocol 'interbase'
2018-01-11 13:24:09,810 INFO [gui] [JdbcDatabasePlatformFactory] [qtp323326911-17] The IDatabasePlatform being used is org.jumpmind.db.platform.interbase.InterbaseDatabasePlatform
2018-01-11 13:24:09,833 INFO [gui] [InterbaseSymmetricDialect] [qtp323326911-17] The DbDialect being used is org.jumpmind.symmetric.db.interbase.InterbaseSymmetricDialect
2018-01-11 13:24:15,853 INFO [SymmetricDS] [AbstractSymmetricEngine] [qtp323326911-18] Initializing connection to database
2018-01-11 13:24:15,871 INFO [SymmetricDS] [JdbcDatabasePlatformFactory] [qtp323326911-18] Detected database 'InterBase', version '10', protocol 'interbase'
2018-01-11 13:24:15,872 INFO [SymmetricDS] [JdbcDatabasePlatformFactory] [qtp323326911-18] The IDatabasePlatform being used is org.jumpmind.db.platform.interbase.InterbaseDatabasePlatform
2018-01-11 13:24:15,887 INFO [SymmetricDS] [InterbaseSymmetricDialect] [qtp323326911-18] The DbDialect being used is org.jumpmind.symmetric.db.interbase.InterbaseSymmetricDialect
2018-01-11 13:24:15,914 INFO [SymmetricDS] [StagingManager] [qtp323326911-18] The staging directory was initialized at the following location: tmp\SymmetricDS
2018-01-11 13:24:15,944 INFO [SymmetricDS] [ClusterService] [qtp323326911-18] This node picked a server id of RIAND
2018-01-11 13:24:15,981 INFO [SymmetricDS] [NodeService] [qtp323326911-18] Failed to load the node identity because: org.jumpmind.db.sql.SqlException Failed to execute sql: select c.node_id, c.node_group_id, c.external_id, c.sync_enabled, c.sync_url, c.schema_version, c.database_type, c.database_version, c.symmetric_version, c.created_at_node_id, c.heartbeat_time, c.timezone_offset, c.batch_to_send_count, c.batch_in_error_count, c.deployment_type, c.config_version from sym_node c inner join sym_node_identity i on c.node_id = i.node_id . Returning null
2018-01-11 13:24:16,318 INFO [SymmetricDS] [ClientExtensionService] [qtp323326911-18] Found 12 extension points from spring that will be registered
2018-01-11 13:24:48,317 INFO [server] [AbstractSymmetricEngine] [background-refresher-1] Initializing connection to database
2018-01-11 13:24:48,444 INFO [server] [JdbcDatabasePlatformFactory] [background-refresher-1] Detected database 'InterBase', version '10', protocol 'interbase'
2018-01-11 13:24:48,444 INFO [server] [JdbcDatabasePlatformFactory] [background-refresher-1] The IDatabasePlatform being used is org.jumpmind.db.platform.interbase.InterbaseDatabasePlatform
2018-01-11 13:24:48,457 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] The DbDialect being used is org.jumpmind.symmetric.db.interbase.InterbaseSymmetricDialect
2018-01-11 13:24:48,472 INFO [server] [StagingManager] [background-refresher-1] The staging directory was initialized at the following location: tmp\server
2018-01-11 13:24:48,475 INFO [server] [ClusterService] [background-refresher-1] This node picked a server id of RIAND
2018-01-11 13:24:48,477 INFO [server] [NodeService] [background-refresher-1] Failed to load the node identity because: org.jumpmind.db.sql.SqlException Failed to execute sql: select c.node_id, c.node_group_id, c.external_id, c.sync_enabled, c.sync_url, c.schema_version, c.database_type, c.database_version, c.symmetric_version, c.created_at_node_id, c.heartbeat_time, c.timezone_offset, c.batch_to_send_count, c.batch_in_error_count, c.deployment_type, c.config_version from sym_node c inner join sym_node_identity i on c.node_id = i.node_id . Returning null
2018-01-11 13:24:48,663 INFO [server] [ClientExtensionService] [background-refresher-1] Found 14 extension points from spring that will be registered
2018-01-11 13:24:48,675 INFO [server] [AbstractSymmetricEngine] [background-refresher-1] Initializing SymmetricDS database
2018-01-11 13:24:48,676 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] Checking if SymmetricDS tables need created or altered
2018-01-11 13:24:49,143 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] There are SymmetricDS tables that needed altered
2018-01-11 13:24:49,268 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_CHANNEL"(
    "CHANNEL_ID" VARCHAR(128) NOT NULL,
    "PROCESSING_ORDER" INTEGER DEFAULT 1 NOT NULL,
    "MAX_BATCH_SIZE" INTEGER DEFAULT 1000 NOT NULL,
    "MAX_BATCH_TO_SEND" INTEGER DEFAULT 60 NOT NULL,
    "MAX_DATA_TO_ROUTE" INTEGER DEFAULT 100000 NOT NULL,
    "EXTRACT_PERIOD_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "ENABLED" SMALLINT DEFAULT 1 NOT NULL,
    "USE_OLD_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
    "USE_ROW_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
    "USE_PK_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
    "RELOAD_FLAG" SMALLINT DEFAULT 0 NOT NULL,
    "FILE_SYNC_FLAG" SMALLINT DEFAULT 0 NOT NULL,
    "CONTAINS_BIG_LOB" SMALLINT DEFAULT 0 NOT NULL,
    "BATCH_ALGORITHM" VARCHAR(50) DEFAULT 'default' NOT NULL,
    "DATA_LOADER_TYPE" VARCHAR(50) DEFAULT 'default' NOT NULL,
    "DESCRIPTION" VARCHAR(255),
    "QUEUE" VARCHAR(25) DEFAULT 'default' NOT NULL,
    "MAX_NETWORK_KBPS" DECIMAL(10,3) DEFAULT 0.000 NOT NULL,
    "DATA_EVENT_ACTION" CHAR(1),
    "CREATE_TIME" TIMESTAMP,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP,
    PRIMARY KEY ("CHANNEL_ID")
)
2018-01-11 13:24:49,283 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_CONFLICT"(
    "CONFLICT_ID" VARCHAR(50) NOT NULL,
    "SOURCE_NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "TARGET_NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "TARGET_CHANNEL_ID" VARCHAR(128),
    "TARGET_CATALOG_NAME" VARCHAR(255),
    "TARGET_SCHEMA_NAME" VARCHAR(255),
    "TARGET_TABLE_NAME" VARCHAR(255),
    "DETECT_TYPE" VARCHAR(128) NOT NULL,
    "DETECT_EXPRESSION" VARCHAR(4096),
    "RESOLVE_TYPE" VARCHAR(128) NOT NULL,
    "PING_BACK" VARCHAR(128) NOT NULL,
    "RESOLVE_CHANGES_ONLY" SMALLINT DEFAULT 0,
    "RESOLVE_ROW_ONLY" SMALLINT DEFAULT 0,
    "CREATE_TIME" TIMESTAMP NOT NULL,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    PRIMARY KEY ("CONFLICT_ID")
)
2018-01-11 13:24:49,288 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_CONTEXT"(
    "NAME" VARCHAR(80) NOT NULL,
    "CONTEXT_VALUE" VARCHAR(4096),
    "CREATE_TIME" TIMESTAMP,
    "LAST_UPDATE_TIME" TIMESTAMP,
    PRIMARY KEY ("NAME")
)
2018-01-11 13:24:49,300 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_DATA"(
    "DATA_ID" NUMERIC(18,0) NOT NULL ,
    "TABLE_NAME" VARCHAR(255) NOT NULL,
    "EVENT_TYPE" CHAR(1) NOT NULL,
    "ROW_DATA" VARCHAR(4096),
    "PK_DATA" VARCHAR(4096),
    "OLD_DATA" VARCHAR(4096),
    "TRIGGER_HIST_ID" INTEGER NOT NULL,
    "CHANNEL_ID" VARCHAR(128),
    "TRANSACTION_ID" VARCHAR(255),
    "SOURCE_NODE_ID" VARCHAR(50),
    "EXTERNAL_DATA" VARCHAR(50),
    "NODE_LIST" VARCHAR(255),
    "CREATE_TIME" TIMESTAMP,
    PRIMARY KEY ("DATA_ID")
)
2018-01-11 13:24:49,310 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE INDEX "SYM_IDX_D_CHANNEL_ID" ON "SYM_DATA" ("DATA_ID", "CHANNEL_ID")
2018-01-11 13:24:49,310 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE GENERATOR "GEN_SYM_DATA_DATA_ID"
2018-01-11 13:24:49,319 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TRIGGER "TRG_SYM_DATA_DATA_ID" FOR "SYM_DATA" ACTIVE BEFORE INSERT POSITION 0 AS
BEGIN IF (NEW."DATA_ID" IS NULL) THEN NEW."DATA_ID" = GEN_ID("GEN_SYM_DATA_DATA_ID", 1); END
2018-01-11 13:24:49,324 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_DATA_EVENT"(
    "DATA_ID" NUMERIC(18,0) NOT NULL,
    "BATCH_ID" NUMERIC(18,0) NOT NULL,
    "ROUTER_ID" VARCHAR(50) NOT NULL,
    "CREATE_TIME" TIMESTAMP,
    PRIMARY KEY ("DATA_ID", "BATCH_ID", "ROUTER_ID")
)
2018-01-11 13:24:49,326 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE INDEX "SYM_IDX_DE_BATCHID" ON "SYM_DATA_EVENT" ("BATCH_ID")
2018-01-11 13:24:49,341 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_DATA_GAP"(
    "START_ID" NUMERIC(18,0) NOT NULL,
    "END_ID" NUMERIC(18,0) NOT NULL,
    "STATUS" CHAR(2),
    "CREATE_TIME" TIMESTAMP NOT NULL,
    "LAST_UPDATE_HOSTNAME" VARCHAR(255),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    PRIMARY KEY ("START_ID", "END_ID")
)
2018-01-11 13:24:49,342 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE INDEX "SYM_IDX_DG_STATUS" ON "SYM_DATA_GAP" ("STATUS")
2018-01-11 13:24:49,357 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_EXTENSION"(
    "EXTENSION_ID" VARCHAR(50) NOT NULL,
    "EXTENSION_TYPE" VARCHAR(10) NOT NULL,
    "INTERFACE_NAME" VARCHAR(255),
    "NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "ENABLED" SMALLINT DEFAULT 1 NOT NULL,
    "EXTENSION_ORDER" INTEGER DEFAULT 1 NOT NULL,
    "EXTENSION_TEXT" VARCHAR(4096),
    "CREATE_TIME" TIMESTAMP,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP,
    PRIMARY KEY ("EXTENSION_ID")
)
2018-01-11 13:24:49,364 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_EXTRACT_REQUEST"(
    "REQUEST_ID" NUMERIC(18,0) NOT NULL,
    "NODE_ID" VARCHAR(50) NOT NULL,
    "QUEUE" VARCHAR(128),
    "STATUS" CHAR(2),
    "START_BATCH_ID" NUMERIC(18,0) NOT NULL,
    "END_BATCH_ID" NUMERIC(18,0) NOT NULL,
    "TRIGGER_ID" VARCHAR(128) NOT NULL,
    "ROUTER_ID" VARCHAR(50) NOT NULL,
    "LAST_UPDATE_TIME" TIMESTAMP,
    "CREATE_TIME" TIMESTAMP,
    PRIMARY KEY ("REQUEST_ID")
)
2018-01-11 13:24:49,370 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_FILE_INCOMING"(
    "RELATIVE_DIR" VARCHAR(255) NOT NULL,
    "FILE_NAME" VARCHAR(128) NOT NULL,
    "LAST_EVENT_TYPE" CHAR(1) NOT NULL,
    "NODE_ID" VARCHAR(50) NOT NULL,
    "FILE_MODIFIED_TIME" NUMERIC(18,0),
    PRIMARY KEY ("RELATIVE_DIR", "FILE_NAME")
)
2018-01-11 13:24:49,378 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_FILE_SNAPSHOT"(
    "TRIGGER_ID" VARCHAR(128) NOT NULL,
    "ROUTER_ID" VARCHAR(50) NOT NULL,
    "RELATIVE_DIR" VARCHAR(255) NOT NULL,
    "FILE_NAME" VARCHAR(128) NOT NULL,
    "CHANNEL_ID" VARCHAR(128) DEFAULT 'filesync' NOT NULL,
    "RELOAD_CHANNEL_ID" VARCHAR(128) DEFAULT 'filesync_reload' NOT NULL,
    "LAST_EVENT_TYPE" CHAR(1) NOT NULL,
    "CRC32_CHECKSUM" NUMERIC(18,0),
    "FILE_SIZE" NUMERIC(18,0),
    "FILE_MODIFIED_TIME" NUMERIC(18,0),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    "LAST_UPDATE_BY" VARCHAR(50),
    "CREATE_TIME" TIMESTAMP NOT NULL,
    PRIMARY KEY ("TRIGGER_ID", "ROUTER_ID", "RELATIVE_DIR", "FILE_NAME")
)
2018-01-11 13:24:49,380 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE INDEX "SYM_IDX_F_SNPSHT_CHID" ON "SYM_FILE_SNAPSHOT" ("RELOAD_CHANNEL_ID")
2018-01-11 13:24:49,395 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_FILE_TRIGGER"(
    "TRIGGER_ID" VARCHAR(128) NOT NULL,
    "CHANNEL_ID" VARCHAR(128) DEFAULT 'filesync' NOT NULL,
    "RELOAD_CHANNEL_ID" VARCHAR(128) DEFAULT 'filesync_reload' NOT NULL,
    "BASE_DIR" VARCHAR(255) NOT NULL,
    "RECURSE" SMALLINT DEFAULT 1 NOT NULL,
    "INCLUDES_FILES" VARCHAR(255),
    "EXCLUDES_FILES" VARCHAR(255),
    "SYNC_ON_CREATE" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_MODIFIED" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_DELETE" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_CTL_FILE" SMALLINT DEFAULT 0 NOT NULL,
    "DELETE_AFTER_SYNC" SMALLINT DEFAULT 0 NOT NULL,
    "BEFORE_COPY_SCRIPT" VARCHAR(4096),
    "AFTER_COPY_SCRIPT" VARCHAR(4096),
    "CREATE_TIME" TIMESTAMP NOT NULL,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    "DESCRIPTION" VARCHAR(4096),
    PRIMARY KEY ("TRIGGER_ID")
)
2018-01-11 13:24:49,402 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_FILE_TRIGGER_ROUTER"(
    "TRIGGER_ID" VARCHAR(128) NOT NULL,
    "ROUTER_ID" VARCHAR(50) NOT NULL,
    "ENABLED" SMALLINT DEFAULT 1 NOT NULL,
    "INITIAL_LOAD_ENABLED" SMALLINT DEFAULT 1 NOT NULL,
    "TARGET_BASE_DIR" VARCHAR(255),
    "CONFLICT_STRATEGY" VARCHAR(128) DEFAULT 'source_wins' NOT NULL,
    "CREATE_TIME" TIMESTAMP NOT NULL,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    "DESCRIPTION" VARCHAR(4096),
    PRIMARY KEY ("TRIGGER_ID", "ROUTER_ID")
)
2018-01-11 13:24:49,408 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_GROUPLET"(
    "GROUPLET_ID" VARCHAR(50) NOT NULL,
    "GROUPLET_LINK_POLICY" CHAR(1) DEFAULT 'I' NOT NULL,
    "DESCRIPTION" VARCHAR(255),
    "CREATE_TIME" TIMESTAMP NOT NULL,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    PRIMARY KEY ("GROUPLET_ID")
)
2018-01-11 13:24:49,413 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_GROUPLET_LINK"(
    "GROUPLET_ID" VARCHAR(50) NOT NULL,
    "EXTERNAL_ID" VARCHAR(255) NOT NULL,
    "CREATE_TIME" TIMESTAMP NOT NULL,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    PRIMARY KEY ("GROUPLET_ID", "EXTERNAL_ID")
)
2018-01-11 13:24:49,436 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_INCOMING_BATCH"(
    "BATCH_ID" NUMERIC(18,0) NOT NULL,
    "NODE_ID" VARCHAR(50) NOT NULL,
    "CHANNEL_ID" VARCHAR(128),
    "STATUS" CHAR(2),
    "ERROR_FLAG" SMALLINT DEFAULT 0,
    "SQL_STATE" VARCHAR(10),
    "SQL_CODE" INTEGER DEFAULT 0 NOT NULL,
    "SQL_MESSAGE" VARCHAR(4096),
    "LAST_UPDATE_HOSTNAME" VARCHAR(255),
    "LAST_UPDATE_TIME" TIMESTAMP,
    "CREATE_TIME" TIMESTAMP,
    "SUMMARY" VARCHAR(255),
    "IGNORE_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "BYTE_COUNT" NUMERIC(18,0) DEFAULT 0 NOT NULL,
    "LOAD_FLAG" SMALLINT DEFAULT 0,
    "EXTRACT_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "SENT_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "LOAD_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "RELOAD_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "OTHER_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "DATA_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "EXTRACT_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "LOAD_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "DATA_INSERT_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "DATA_UPDATE_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "DATA_DELETE_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "EXTRACT_INSERT_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "EXTRACT_UPDATE_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "EXTRACT_DELETE_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "LOAD_INSERT_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "LOAD_UPDATE_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "LOAD_DELETE_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "NETWORK_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "FILTER_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "LOAD_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "ROUTER_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "EXTRACT_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "TRANSFORM_EXTRACT_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "TRANSFORM_LOAD_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "LOAD_ID" NUMERIC(18,0),
    "COMMON_FLAG" SMALLINT DEFAULT 0,
    "FALLBACK_INSERT_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "FALLBACK_UPDATE_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "IGNORE_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "MISSING_DELETE_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "SKIP_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "FAILED_ROW_NUMBER" INTEGER DEFAULT 0 NOT NULL,
    "FAILED_LINE_NUMBER" INTEGER DEFAULT 0 NOT NULL,
    "FAILED_DATA_ID" NUMERIC(18,0) DEFAULT 0 NOT NULL,
    PRIMARY KEY ("BATCH_ID", "NODE_ID")
)
2018-01-11 13:24:49,439 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE INDEX "SYM_IDX_IB_TIME_STATUS" ON "SYM_INCOMING_BATCH" ("CREATE_TIME", "STATUS")
2018-01-11 13:24:49,442 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE INDEX "SYM_IDX_IB_IN_ERROR" ON "SYM_INCOMING_BATCH" ("ERROR_FLAG")
2018-01-11 13:24:49,452 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_INCOMING_ERROR"(
    "BATCH_ID" NUMERIC(18,0) NOT NULL,
    "NODE_ID" VARCHAR(50) NOT NULL,
    "FAILED_ROW_NUMBER" NUMERIC(18,0) NOT NULL,
    "FAILED_LINE_NUMBER" NUMERIC(18,0) DEFAULT 0 NOT NULL,
    "TARGET_CATALOG_NAME" VARCHAR(255),
    "TARGET_SCHEMA_NAME" VARCHAR(255),
    "TARGET_TABLE_NAME" VARCHAR(255) NOT NULL,
    "EVENT_TYPE" CHAR(1) NOT NULL,
    "BINARY_ENCODING" VARCHAR(10) DEFAULT 'HEX' NOT NULL,
    "COLUMN_NAMES" VARCHAR(4096) NOT NULL,
    "PK_COLUMN_NAMES" VARCHAR(4096) NOT NULL,
    "ROW_DATA" VARCHAR(4096),
    "OLD_DATA" VARCHAR(4096),
    "CUR_DATA" VARCHAR(4096),
    "RESOLVE_DATA" VARCHAR(4096),
    "RESOLVE_IGNORE" SMALLINT DEFAULT 0,
    "CONFLICT_ID" VARCHAR(50),
    "CREATE_TIME" TIMESTAMP,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    PRIMARY KEY ("BATCH_ID", "NODE_ID", "FAILED_ROW_NUMBER")
)
2018-01-11 13:24:49,463 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_LOAD_FILTER"(
    "LOAD_FILTER_ID" VARCHAR(50) NOT NULL,
    "LOAD_FILTER_TYPE" VARCHAR(10) NOT NULL,
    "SOURCE_NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "TARGET_NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "TARGET_CATALOG_NAME" VARCHAR(255),
    "TARGET_SCHEMA_NAME" VARCHAR(255),
    "TARGET_TABLE_NAME" VARCHAR(255),
    "FILTER_ON_UPDATE" SMALLINT DEFAULT 1 NOT NULL,
    "FILTER_ON_INSERT" SMALLINT DEFAULT 1 NOT NULL,
    "FILTER_ON_DELETE" SMALLINT DEFAULT 1 NOT NULL,
    "BEFORE_WRITE_SCRIPT" VARCHAR(4096),
    "AFTER_WRITE_SCRIPT" VARCHAR(4096),
    "BATCH_COMPLETE_SCRIPT" VARCHAR(4096),
    "BATCH_COMMIT_SCRIPT" VARCHAR(4096),
    "BATCH_ROLLBACK_SCRIPT" VARCHAR(4096),
    "HANDLE_ERROR_SCRIPT" VARCHAR(4096),
    "CREATE_TIME" TIMESTAMP NOT NULL,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    "LOAD_FILTER_ORDER" INTEGER DEFAULT 1 NOT NULL,
    "FAIL_ON_ERROR" SMALLINT DEFAULT 0 NOT NULL,
    PRIMARY KEY ("LOAD_FILTER_ID")
)
2018-01-11 13:24:49,473 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_LOCK"(
    "LOCK_ACTION" VARCHAR(50) NOT NULL,
    "LOCK_TYPE" VARCHAR(50) NOT NULL,
    "LOCKING_SERVER_ID" VARCHAR(255),
    "LOCK_TIME" TIMESTAMP,
    "SHARED_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "SHARED_ENABLE" INTEGER DEFAULT 0 NOT NULL,
    "LAST_LOCK_TIME" TIMESTAMP,
    "LAST_LOCKING_SERVER_ID" VARCHAR(255),
    PRIMARY KEY ("LOCK_ACTION")
)
2018-01-11 13:24:49,481 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_NODE"(
    "NODE_ID" VARCHAR(50) NOT NULL,
    "NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "EXTERNAL_ID" VARCHAR(255) NOT NULL,
    "HEARTBEAT_TIME" TIMESTAMP,
    "TIMEZONE_OFFSET" VARCHAR(6),
    "SYNC_ENABLED" SMALLINT DEFAULT 0,
    "SYNC_URL" VARCHAR(255),
    "SCHEMA_VERSION" VARCHAR(50),
    "SYMMETRIC_VERSION" VARCHAR(50),
    "CONFIG_VERSION" VARCHAR(50),
    "DATABASE_TYPE" VARCHAR(50),
    "DATABASE_VERSION" VARCHAR(50),
    "BATCH_TO_SEND_COUNT" INTEGER DEFAULT 0,
    "BATCH_IN_ERROR_COUNT" INTEGER DEFAULT 0,
    "CREATED_AT_NODE_ID" VARCHAR(50),
    "DEPLOYMENT_TYPE" VARCHAR(50),
    "DEPLOYMENT_SUB_TYPE" VARCHAR(50),
    PRIMARY KEY ("NODE_ID")
)
2018-01-11 13:24:49,490 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_NODE_COMMUNICATION"(
    "NODE_ID" VARCHAR(50) NOT NULL,
    "QUEUE" VARCHAR(25) DEFAULT 'default' NOT NULL,
    "COMMUNICATION_TYPE" VARCHAR(10) NOT NULL,
    "LOCK_TIME" TIMESTAMP,
    "LOCKING_SERVER_ID" VARCHAR(255),
    "LAST_LOCK_TIME" TIMESTAMP,
    "LAST_LOCK_MILLIS" NUMERIC(18,0) DEFAULT 0,
    "SUCCESS_COUNT" NUMERIC(18,0) DEFAULT 0,
    "FAIL_COUNT" NUMERIC(18,0) DEFAULT 0,
    "SKIP_COUNT" NUMERIC(18,0) DEFAULT 0,
    "TOTAL_SUCCESS_COUNT" NUMERIC(18,0) DEFAULT 0,
    "TOTAL_FAIL_COUNT" NUMERIC(18,0) DEFAULT 0,
    "TOTAL_SUCCESS_MILLIS" NUMERIC(18,0) DEFAULT 0,
    "TOTAL_FAIL_MILLIS" NUMERIC(18,0) DEFAULT 0,
    "BATCH_TO_SEND_COUNT" NUMERIC(18,0) DEFAULT 0,
    "NODE_PRIORITY" INTEGER DEFAULT 0,
    PRIMARY KEY ("NODE_ID", "QUEUE", "COMMUNICATION_TYPE")
)
2018-01-11 13:24:49,496 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_NODE_CHANNEL_CTL"(
    "NODE_ID" VARCHAR(50) NOT NULL,
    "CHANNEL_ID" VARCHAR(128) NOT NULL,
    "SUSPEND_ENABLED" SMALLINT DEFAULT 0,
    "IGNORE_ENABLED" SMALLINT DEFAULT 0,
    "LAST_EXTRACT_TIME" TIMESTAMP,
    PRIMARY KEY ("NODE_ID", "CHANNEL_ID")
)
2018-01-11 13:24:49,501 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_NODE_GROUP"(
    "NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "DESCRIPTION" VARCHAR(255),
    "CREATE_TIME" TIMESTAMP,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP,
    PRIMARY KEY ("NODE_GROUP_ID")
)
2018-01-11 13:24:49,507 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_NODE_GROUP_CHANNEL_WND"(
    "NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "CHANNEL_ID" VARCHAR(128) NOT NULL,
    "START_TIME" TIMESTAMP NOT NULL,
    "END_TIME" TIMESTAMP NOT NULL,
    "ENABLED" SMALLINT DEFAULT 0 NOT NULL,
    PRIMARY KEY ("NODE_GROUP_ID", "CHANNEL_ID", "START_TIME", "END_TIME")
)
2018-01-11 13:24:49,514 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_NODE_GROUP_LINK"(
    "SOURCE_NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "TARGET_NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "DATA_EVENT_ACTION" CHAR(1) DEFAULT 'W' NOT NULL,
    "SYNC_CONFIG_ENABLED" SMALLINT DEFAULT 1 NOT NULL,
    "IS_REVERSIBLE" SMALLINT DEFAULT 0 NOT NULL,
    "CREATE_TIME" TIMESTAMP,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP,
    PRIMARY KEY ("SOURCE_NODE_GROUP_ID", "TARGET_NODE_GROUP_ID")
)
2018-01-11 13:24:49,524 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_NODE_HOST"(
    "NODE_ID" VARCHAR(50) NOT NULL,
    "HOST_NAME" VARCHAR(60) NOT NULL,
    "INSTANCE_ID" VARCHAR(60),
    "IP_ADDRESS" VARCHAR(50),
    "OS_USER" VARCHAR(50),
    "OS_NAME" VARCHAR(50),
    "OS_ARCH" VARCHAR(50),
    "OS_VERSION" VARCHAR(50),
    "AVAILABLE_PROCESSORS" INTEGER DEFAULT 0,
    "FREE_MEMORY_BYTES" NUMERIC(18,0) DEFAULT 0,
    "TOTAL_MEMORY_BYTES" NUMERIC(18,0) DEFAULT 0,
    "MAX_MEMORY_BYTES" NUMERIC(18,0) DEFAULT 0,
    "JAVA_VERSION" VARCHAR(50),
    "JAVA_VENDOR" VARCHAR(255),
    "JDBC_VERSION" VARCHAR(255),
    "SYMMETRIC_VERSION" VARCHAR(50),
    "TIMEZONE_OFFSET" VARCHAR(6),
    "HEARTBEAT_TIME" TIMESTAMP,
    "LAST_RESTART_TIME" TIMESTAMP NOT NULL,
    "CREATE_TIME" TIMESTAMP NOT NULL,
    PRIMARY KEY ("NODE_ID", "HOST_NAME")
)
2018-01-11 13:24:49,534 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_NODE_HOST_CHANNEL_STATS"(
    "NODE_ID" VARCHAR(50) NOT NULL,
    "HOST_NAME" VARCHAR(60) NOT NULL,
    "CHANNEL_ID" VARCHAR(128) NOT NULL,
    "START_TIME" TIMESTAMP NOT NULL,
    "END_TIME" TIMESTAMP NOT NULL,
    "DATA_ROUTED" NUMERIC(18,0) DEFAULT 0,
    "DATA_UNROUTED" NUMERIC(18,0) DEFAULT 0,
    "DATA_EVENT_INSERTED" NUMERIC(18,0) DEFAULT 0,
    "DATA_EXTRACTED" NUMERIC(18,0) DEFAULT 0,
    "DATA_BYTES_EXTRACTED" NUMERIC(18,0) DEFAULT 0,
    "DATA_EXTRACTED_ERRORS" NUMERIC(18,0) DEFAULT 0,
    "DATA_BYTES_SENT" NUMERIC(18,0) DEFAULT 0,
    "DATA_SENT" NUMERIC(18,0) DEFAULT 0,
    "DATA_SENT_ERRORS" NUMERIC(18,0) DEFAULT 0,
    "DATA_LOADED" NUMERIC(18,0) DEFAULT 0,
    "DATA_BYTES_LOADED" NUMERIC(18,0) DEFAULT 0,
    "DATA_LOADED_ERRORS" NUMERIC(18,0) DEFAULT 0,
    PRIMARY KEY ("NODE_ID", "HOST_NAME", "CHANNEL_ID", "START_TIME", "END_TIME")
)
2018-01-11 13:24:49,536 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE INDEX "SYM_IDX_ND_HST_CHNL_STS" ON "SYM_NODE_HOST_CHANNEL_STATS" ("NODE_ID", "START_TIME", "END_TIME")
2018-01-11 13:24:49,543 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_NODE_HOST_JOB_STATS"(
    "NODE_ID" VARCHAR(50) NOT NULL,
    "HOST_NAME" VARCHAR(60) NOT NULL,
    "JOB_NAME" VARCHAR(50) NOT NULL,
    "START_TIME" TIMESTAMP NOT NULL,
    "END_TIME" TIMESTAMP NOT NULL,
    "PROCESSED_COUNT" NUMERIC(18,0) DEFAULT 0,
    "TARGET_NODE_ID" VARCHAR(50),
    "TARGET_NODE_COUNT" INTEGER DEFAULT 0,
    PRIMARY KEY ("NODE_ID", "HOST_NAME", "JOB_NAME", "START_TIME", "END_TIME")
)
2018-01-11 13:24:49,545 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE INDEX "SYM_IDX_ND_HST_JOB" ON "SYM_NODE_HOST_JOB_STATS" ("NODE_ID", "START_TIME", "END_TIME")
2018-01-11 13:24:49,557 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_NODE_HOST_STATS"(
    "NODE_ID" VARCHAR(50) NOT NULL,
    "HOST_NAME" VARCHAR(60) NOT NULL,
    "START_TIME" TIMESTAMP NOT NULL,
    "END_TIME" TIMESTAMP NOT NULL,
    "RESTARTED" NUMERIC(18,0) DEFAULT 0 NOT NULL,
    "NODES_PULLED" NUMERIC(18,0) DEFAULT 0,
    "TOTAL_NODES_PULL_TIME" NUMERIC(18,0) DEFAULT 0,
    "NODES_PUSHED" NUMERIC(18,0) DEFAULT 0,
    "TOTAL_NODES_PUSH_TIME" NUMERIC(18,0) DEFAULT 0,
    "NODES_REJECTED" NUMERIC(18,0) DEFAULT 0,
    "NODES_REGISTERED" NUMERIC(18,0) DEFAULT 0,
    "NODES_LOADED" NUMERIC(18,0) DEFAULT 0,
    "NODES_DISABLED" NUMERIC(18,0) DEFAULT 0,
    "PURGED_DATA_ROWS" NUMERIC(18,0) DEFAULT 0,
    "PURGED_DATA_EVENT_ROWS" NUMERIC(18,0) DEFAULT 0,
    "PURGED_BATCH_OUTGOING_ROWS" NUMERIC(18,0) DEFAULT 0,
    "PURGED_BATCH_INCOMING_ROWS" NUMERIC(18,0) DEFAULT 0,
    "TRIGGERS_CREATED_COUNT" NUMERIC(18,0),
    "TRIGGERS_REBUILT_COUNT" NUMERIC(18,0),
    "TRIGGERS_REMOVED_COUNT" NUMERIC(18,0),
    PRIMARY KEY ("NODE_ID", "HOST_NAME", "START_TIME", "END_TIME")
)
2018-01-11 13:24:49,560 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE INDEX "SYM_IDX_ND_HST_STS" ON "SYM_NODE_HOST_STATS" ("NODE_ID", "START_TIME", "END_TIME")
2018-01-11 13:24:49,563 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_NODE_IDENTITY"(
    "NODE_ID" VARCHAR(50) NOT NULL,
    PRIMARY KEY ("NODE_ID")
)
2018-01-11 13:24:49,571 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_NODE_SECURITY"(
    "NODE_ID" VARCHAR(50) NOT NULL,
    "NODE_PASSWORD" VARCHAR(50) NOT NULL,
    "REGISTRATION_ENABLED" SMALLINT DEFAULT 0,
    "REGISTRATION_TIME" TIMESTAMP,
    "INITIAL_LOAD_ENABLED" SMALLINT DEFAULT 0,
    "INITIAL_LOAD_TIME" TIMESTAMP,
    "INITIAL_LOAD_ID" NUMERIC(18,0),
    "INITIAL_LOAD_CREATE_BY" VARCHAR(255),
    "REV_INITIAL_LOAD_ENABLED" SMALLINT DEFAULT 0,
    "REV_INITIAL_LOAD_TIME" TIMESTAMP,
    "REV_INITIAL_LOAD_ID" NUMERIC(18,0),
    "REV_INITIAL_LOAD_CREATE_BY" VARCHAR(255),
    "CREATED_AT_NODE_ID" VARCHAR(50),
    PRIMARY KEY ("NODE_ID")
)
2018-01-11 13:24:49,579 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_MONITOR"(
    "MONITOR_ID" VARCHAR(128) NOT NULL,
    "NODE_GROUP_ID" VARCHAR(50) DEFAULT 'ALL' NOT NULL,
    "EXTERNAL_ID" VARCHAR(255) DEFAULT 'ALL' NOT NULL,
    "TYPE" VARCHAR(50) NOT NULL,
    "EXPRESSION" VARCHAR(4096),
    "THRESHOLD" NUMERIC(18,0) DEFAULT 0 NOT NULL,
    "RUN_PERIOD" INTEGER DEFAULT 0 NOT NULL,
    "RUN_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "SEVERITY_LEVEL" INTEGER DEFAULT 0 NOT NULL,
    "ENABLED" SMALLINT DEFAULT 0 NOT NULL,
    "CREATE_TIME" TIMESTAMP,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP,
    PRIMARY KEY ("MONITOR_ID")
)
2018-01-11 13:24:49,588 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_MONITOR_EVENT"(
    "MONITOR_ID" VARCHAR(128) NOT NULL,
    "NODE_ID" VARCHAR(50) NOT NULL,
    "EVENT_TIME" TIMESTAMP NOT NULL,
    "HOST_NAME" VARCHAR(60),
    "TYPE" VARCHAR(50) NOT NULL,
    "THRESHOLD" NUMERIC(18,0) DEFAULT 0 NOT NULL,
    "EVENT_VALUE" NUMERIC(18,0) DEFAULT 0 NOT NULL,
    "EVENT_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "SEVERITY_LEVEL" INTEGER DEFAULT 0 NOT NULL,
    "IS_RESOLVED" SMALLINT DEFAULT 0 NOT NULL,
    "IS_NOTIFIED" SMALLINT DEFAULT 0 NOT NULL,
    "DETAILS" VARCHAR(4096),
    "LAST_UPDATE_TIME" TIMESTAMP,
    PRIMARY KEY ("MONITOR_ID", "NODE_ID", "EVENT_TIME")
)
2018-01-11 13:24:49,594 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_NOTIFICATION"(
    "NOTIFICATION_ID" VARCHAR(128) NOT NULL,
    "NODE_GROUP_ID" VARCHAR(50) DEFAULT 'ALL' NOT NULL,
    "EXTERNAL_ID" VARCHAR(255) DEFAULT 'ALL' NOT NULL,
    "SEVERITY_LEVEL" INTEGER DEFAULT 0 NOT NULL,
    "TYPE" VARCHAR(50) NOT NULL,
    "EXPRESSION" VARCHAR(4096),
    "ENABLED" SMALLINT DEFAULT 0 NOT NULL,
    "CREATE_TIME" TIMESTAMP,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP,
    PRIMARY KEY ("NOTIFICATION_ID")
)
2018-01-11 13:24:49,617 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_OUTGOING_BATCH"(
    "BATCH_ID" NUMERIC(18,0) NOT NULL,
    "NODE_ID" VARCHAR(50) NOT NULL,
    "CHANNEL_ID" VARCHAR(128),
    "STATUS" CHAR(2),
    "ERROR_FLAG" SMALLINT DEFAULT 0,
    "SQL_STATE" VARCHAR(10),
    "SQL_CODE" INTEGER DEFAULT 0 NOT NULL,
    "SQL_MESSAGE" VARCHAR(4096),
    "LAST_UPDATE_HOSTNAME" VARCHAR(255),
    "LAST_UPDATE_TIME" TIMESTAMP,
    "CREATE_TIME" TIMESTAMP,
    "SUMMARY" VARCHAR(255),
    "IGNORE_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "BYTE_COUNT" NUMERIC(18,0) DEFAULT 0 NOT NULL,
    "LOAD_FLAG" SMALLINT DEFAULT 0,
    "EXTRACT_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "SENT_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "LOAD_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "RELOAD_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "OTHER_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "DATA_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "EXTRACT_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "LOAD_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "DATA_INSERT_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "DATA_UPDATE_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "DATA_DELETE_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "EXTRACT_INSERT_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "EXTRACT_UPDATE_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "EXTRACT_DELETE_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "LOAD_INSERT_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "LOAD_UPDATE_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "LOAD_DELETE_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "NETWORK_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "FILTER_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "LOAD_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "ROUTER_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "EXTRACT_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "TRANSFORM_EXTRACT_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "TRANSFORM_LOAD_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "LOAD_ID" NUMERIC(18,0),
    "COMMON_FLAG" SMALLINT DEFAULT 0,
    "FALLBACK_INSERT_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "FALLBACK_UPDATE_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "IGNORE_ROW_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "MISSING_DELETE_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "SKIP_COUNT" INTEGER DEFAULT 0 NOT NULL,
    "TOTAL_EXTRACT_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "TOTAL_LOAD_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "EXTRACT_JOB_FLAG" SMALLINT DEFAULT 0,
    "EXTRACT_START_TIME" TIMESTAMP,
    "TRANSFER_START_TIME" TIMESTAMP,
    "LOAD_START_TIME" TIMESTAMP,
    "FAILED_DATA_ID" NUMERIC(18,0) DEFAULT 0 NOT NULL,
    "FAILED_LINE_NUMBER" NUMERIC(18,0) DEFAULT 0 NOT NULL,
    "CREATE_BY" VARCHAR(255),
    PRIMARY KEY ("BATCH_ID", "NODE_ID")
)
2018-01-11 13:24:49,621 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE INDEX "SYM_IDX_OB_NODE_STATUS" ON "SYM_OUTGOING_BATCH" ("NODE_ID", "STATUS")
2018-01-11 13:24:49,623 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE INDEX "SYM_IDX_OB_STATUS" ON "SYM_OUTGOING_BATCH" ("STATUS")
2018-01-11 13:24:49,626 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE INDEX "SYM_IDX_OB_IN_ERROR" ON "SYM_OUTGOING_BATCH" ("ERROR_FLAG")
2018-01-11 13:24:49,631 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_PARAMETER"(
    "EXTERNAL_ID" VARCHAR(255) NOT NULL,
    "NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "PARAM_KEY" VARCHAR(80) NOT NULL,
    "PARAM_VALUE" VARCHAR(4096),
    "CREATE_TIME" TIMESTAMP,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP,
    PRIMARY KEY ("EXTERNAL_ID", "NODE_GROUP_ID", "PARAM_KEY")
)
2018-01-11 13:24:49,635 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_REGISTRATION_REDIRECT"(
    "REGISTRANT_EXTERNAL_ID" VARCHAR(255) NOT NULL,
    "REGISTRATION_NODE_ID" VARCHAR(50) NOT NULL,
    PRIMARY KEY ("REGISTRANT_EXTERNAL_ID")
)
2018-01-11 13:24:49,642 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_REGISTRATION_REQUEST"(
    "NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "EXTERNAL_ID" VARCHAR(255) NOT NULL,
    "STATUS" CHAR(2) NOT NULL,
    "HOST_NAME" VARCHAR(60) NOT NULL,
    "IP_ADDRESS" VARCHAR(50) NOT NULL,
    "ATTEMPT_COUNT" INTEGER DEFAULT 0,
    "REGISTERED_NODE_ID" VARCHAR(50),
    "ERROR_MESSAGE" VARCHAR(4096),
    "CREATE_TIME" TIMESTAMP NOT NULL,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    PRIMARY KEY ("NODE_GROUP_ID", "EXTERNAL_ID", "CREATE_TIME")
)
2018-01-11 13:24:49,644 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE INDEX "SYM_IDX_REG_REQ_1" ON "SYM_REGISTRATION_REQUEST" ("NODE_GROUP_ID", "EXTERNAL_ID", "STATUS", "HOST_NAME", "IP_ADDRESS")
2018-01-11 13:24:49,646 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE INDEX "SYM_IDX_REG_REQ_2" ON "SYM_REGISTRATION_REQUEST" ("STATUS")
2018-01-11 13:24:49,654 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_ROUTER"(
    "ROUTER_ID" VARCHAR(50) NOT NULL,
    "TARGET_CATALOG_NAME" VARCHAR(255),
    "TARGET_SCHEMA_NAME" VARCHAR(255),
    "TARGET_TABLE_NAME" VARCHAR(255),
    "SOURCE_NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "TARGET_NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "ROUTER_TYPE" VARCHAR(50),
    "ROUTER_EXPRESSION" VARCHAR(4096),
    "SYNC_ON_UPDATE" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_INSERT" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_DELETE" SMALLINT DEFAULT 1 NOT NULL,
    "USE_SOURCE_CATALOG_SCHEMA" SMALLINT DEFAULT 1 NOT NULL,
    "CREATE_TIME" TIMESTAMP NOT NULL,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    "DESCRIPTION" VARCHAR(4096),
    PRIMARY KEY ("ROUTER_ID")
)
2018-01-11 13:24:49,661 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_SEQUENCE"(
    "SEQUENCE_NAME" VARCHAR(50) NOT NULL,
    "CURRENT_VALUE" NUMERIC(18,0) DEFAULT 0 NOT NULL,
    "INCREMENT_BY" INTEGER DEFAULT 1 NOT NULL,
    "MIN_VALUE" NUMERIC(18,0) DEFAULT 1 NOT NULL,
    "MAX_VALUE" NUMERIC(18,0) DEFAULT 9999999999 NOT NULL,
    "CYCLE_FLAG" SMALLINT DEFAULT 0,
    "CACHE_SIZE" INTEGER DEFAULT 0 NOT NULL,
    "CREATE_TIME" TIMESTAMP,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    PRIMARY KEY ("SEQUENCE_NAME")
)
2018-01-11 13:24:49,670 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_TABLE_RELOAD_REQUEST"(
    "TARGET_NODE_ID" VARCHAR(50) NOT NULL,
    "SOURCE_NODE_ID" VARCHAR(50) NOT NULL,
    "TRIGGER_ID" VARCHAR(128) NOT NULL,
    "ROUTER_ID" VARCHAR(50) NOT NULL,
    "CREATE_TIME" TIMESTAMP NOT NULL,
    "CREATE_TABLE" SMALLINT DEFAULT 0 NOT NULL,
    "DELETE_FIRST" SMALLINT DEFAULT 0 NOT NULL,
    "RELOAD_SELECT" VARCHAR(4096),
    "BEFORE_CUSTOM_SQL" VARCHAR(4096),
    "RELOAD_TIME" TIMESTAMP,
    "LOAD_ID" NUMERIC(18,0),
    "PROCESSED" SMALLINT DEFAULT 0 NOT NULL,
    "CHANNEL_ID" VARCHAR(128),
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    PRIMARY KEY ("TARGET_NODE_ID", "SOURCE_NODE_ID", "TRIGGER_ID", "ROUTER_ID", "CREATE_TIME")
)
2018-01-11 13:24:49,679 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_TRANSFORM_TABLE"(
    "TRANSFORM_ID" VARCHAR(50) NOT NULL,
    "SOURCE_NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "TARGET_NODE_GROUP_ID" VARCHAR(50) NOT NULL,
    "TRANSFORM_POINT" VARCHAR(10) NOT NULL,
    "SOURCE_CATALOG_NAME" VARCHAR(255),
    "SOURCE_SCHEMA_NAME" VARCHAR(255),
    "SOURCE_TABLE_NAME" VARCHAR(255) NOT NULL,
    "TARGET_CATALOG_NAME" VARCHAR(255),
    "TARGET_SCHEMA_NAME" VARCHAR(255),
    "TARGET_TABLE_NAME" VARCHAR(255),
    "UPDATE_FIRST" SMALLINT DEFAULT 0,
    "UPDATE_ACTION" VARCHAR(255) DEFAULT 'UPDATE_COL' NOT NULL,
    "DELETE_ACTION" VARCHAR(10) NOT NULL,
    "TRANSFORM_ORDER" INTEGER DEFAULT 1 NOT NULL,
    "COLUMN_POLICY" VARCHAR(10) DEFAULT 'SPECIFIED' NOT NULL,
    "CREATE_TIME" TIMESTAMP,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP,
    "DESCRIPTION" VARCHAR(4096),
    PRIMARY KEY ("TRANSFORM_ID", "SOURCE_NODE_GROUP_ID", "TARGET_NODE_GROUP_ID")
)
2018-01-11 13:24:49,687 INFO [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL applied: CREATE TABLE "SYM_TRANSFORM_COLUMN"(
    "TRANSFORM_ID" VARCHAR(50) NOT NULL,
    "INCLUDE_ON" CHAR(1) DEFAULT '*' NOT NULL,
    "TARGET_COLUMN_NAME" VARCHAR(128) NOT NULL,
    "SOURCE_COLUMN_NAME" VARCHAR(128),
    "PK" SMALLINT DEFAULT 0,
    "TRANSFORM_TYPE" VARCHAR(50) DEFAULT 'copy',
    "TRANSFORM_EXPRESSION" VARCHAR(4096),
    "TRANSFORM_ORDER" INTEGER DEFAULT 1 NOT NULL,
    "CREATE_TIME" TIMESTAMP,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP,
    "DESCRIPTION" VARCHAR(4096),
    PRIMARY KEY ("TRANSFORM_ID", "INCLUDE_ON", "TARGET_COLUMN_NAME")
)
2018-01-11 13:24:49,699 WARN [server] [InterbaseSymmetricDialect] [background-refresher-1] DDL failed: CREATE TABLE "SYM_TRIGGER"(
    "TRIGGER_ID" VARCHAR(128) NOT NULL,
    "SOURCE_CATALOG_NAME" VARCHAR(255),
    "SOURCE_SCHEMA_NAME" VARCHAR(255),
    "SOURCE_TABLE_NAME" VARCHAR(255) NOT NULL,
    "CHANNEL_ID" VARCHAR(128) NOT NULL,
    "RELOAD_CHANNEL_ID" VARCHAR(128) DEFAULT 'reload' NOT NULL,
    "SYNC_ON_UPDATE" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_INSERT" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_DELETE" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_INCOMING_BATCH" SMALLINT DEFAULT 0 NOT NULL,
    "NAME_FOR_UPDATE_TRIGGER" VARCHAR(255),
    "NAME_FOR_INSERT_TRIGGER" VARCHAR(255),
    "NAME_FOR_DELETE_TRIGGER" VARCHAR(255),
    "SYNC_ON_UPDATE_CONDITION" VARCHAR(4096),
    "SYNC_ON_INSERT_CONDITION" VARCHAR(4096),
    "SYNC_ON_DELETE_CONDITION" VARCHAR(4096),
    "CUSTOM_BEFORE_UPDATE_TEXT" VARCHAR(4096),
    "CUSTOM_BEFORE_INSERT_TEXT" VARCHAR(4096),
    "CUSTOM_BEFORE_DELETE_TEXT" VARCHAR(4096),
    "CUSTOM_ON_UPDATE_TEXT" VARCHAR(4096),
    "CUSTOM_ON_INSERT_TEXT" VARCHAR(4096),
    "CUSTOM_ON_DELETE_TEXT" VARCHAR(4096),
    "EXTERNAL_SELECT" VARCHAR(4096),
    "TX_ID_EXPRESSION" VARCHAR(4096),
    "CHANNEL_EXPRESSION" VARCHAR(4096),
    "EXCLUDED_COLUMN_NAMES" VARCHAR(4096),
    "INCLUDED_COLUMN_NAMES" VARCHAR(4096),
    "SYNC_KEY_NAMES" VARCHAR(4096),
    "USE_STREAM_LOBS" SMALLINT DEFAULT 0 NOT NULL,
    "USE_CAPTURE_LOBS" SMALLINT DEFAULT 0 NOT NULL,
    "USE_CAPTURE_OLD_DATA" SMALLINT DEFAULT 1 NOT NULL,
    "USE_HANDLE_KEY_UPDATES" SMALLINT DEFAULT 1 NOT NULL,
    "STREAM_ROW" SMALLINT DEFAULT 0 NOT NULL,
    "CREATE_TIME" TIMESTAMP NOT NULL,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    "DESCRIPTION" VARCHAR(4096),
    PRIMARY KEY ("TRIGGER_ID")
)
2018-01-11 13:24:49,700 WARN [server] [JdbcSqlTemplate] [background-refresher-1] interbase.interclient.IBException: [interclient][interbase]unsuccessful metadata update
[interclient][interbase]new record size of 67602 bytes is too big
[interclient][interbase]TABLE SYM_TRIGGER. Failed to execute: CREATE TABLE "SYM_TRIGGER"(
    "TRIGGER_ID" VARCHAR(128) NOT NULL,
    "SOURCE_CATALOG_NAME" VARCHAR(255),
    "SOURCE_SCHEMA_NAME" VARCHAR(255),
    "SOURCE_TABLE_NAME" VARCHAR(255) NOT NULL,
    "CHANNEL_ID" VARCHAR(128) NOT NULL,
    "RELOAD_CHANNEL_ID" VARCHAR(128) DEFAULT 'reload' NOT NULL,
    "SYNC_ON_UPDATE" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_INSERT" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_DELETE" SMALLINT DEFAULT 1 NOT NULL,
    "SYNC_ON_INCOMING_BATCH" SMALLINT DEFAULT 0 NOT NULL,
    "NAME_FOR_UPDATE_TRIGGER" VARCHAR(255),
    "NAME_FOR_INSERT_TRIGGER" VARCHAR(255),
    "NAME_FOR_DELETE_TRIGGER" VARCHAR(255),
    "SYNC_ON_UPDATE_CONDITION" VARCHAR(4096),
    "SYNC_ON_INSERT_CONDITION" VARCHAR(4096),
    "SYNC_ON_DELETE_CONDITION" VARCHAR(4096),
    "CUSTOM_BEFORE_UPDATE_TEXT" VARCHAR(4096),
    "CUSTOM_BEFORE_INSERT_TEXT" VARCHAR(4096),
    "CUSTOM_BEFORE_DELETE_TEXT" VARCHAR(4096),
    "CUSTOM_ON_UPDATE_TEXT" VARCHAR(4096),
    "CUSTOM_ON_INSERT_TEXT" VARCHAR(4096),
    "CUSTOM_ON_DELETE_TEXT" VARCHAR(4096),
    "EXTERNAL_SELECT" VARCHAR(4096),
    "TX_ID_EXPRESSION" VARCHAR(4096),
    "CHANNEL_EXPRESSION" VARCHAR(4096),
    "EXCLUDED_COLUMN_NAMES" VARCHAR(4096),
    "INCLUDED_COLUMN_NAMES" VARCHAR(4096),
    "SYNC_KEY_NAMES" VARCHAR(4096),
    "USE_STREAM_LOBS" SMALLINT DEFAULT 0 NOT NULL,
    "USE_CAPTURE_LOBS" SMALLINT DEFAULT 0 NOT NULL,
    "USE_CAPTURE_OLD_DATA" SMALLINT DEFAULT 1 NOT NULL,
    "USE_HANDLE_KEY_UPDATES" SMALLINT DEFAULT 1 NOT NULL,
    "STREAM_ROW" SMALLINT DEFAULT 0 NOT NULL,
    "CREATE_TIME" TIMESTAMP NOT NULL,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP NOT NULL,
    "DESCRIPTION" VARCHAR(4096),
    PRIMARY KEY ("TRIGGER_ID")
)
2018-01-11 13:24:49,701 ERROR [server] [AbstractSymmetricEngine] [background-refresher-1] An error occurred while starting SymmetricDS StackTraceKey.init [SqlException:4262246999]
org.jumpmind.db.sql.SqlException: interbase.interclient.IBException: [interclient][interbase]unsuccessful metadata update
[interclient][interbase]new record size of 67602 bytes is too big
[interclient][interbase]TABLE SYM_TRIGGER
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:300)
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:291)
    at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:493)
    at org.jumpmind.db.sql.JdbcSqlTemplate.update(JdbcSqlTemplate.java:401)
    at org.jumpmind.db.sql.SqlScript.execute(SqlScript.java:107)
    at org.jumpmind.symmetric.db.AbstractSymmetricDialect.createOrAlterTablesIfNecessary(AbstractSymmetricDialect.java:528)
    at org.jumpmind.symmetric.db.AbstractSymmetricDialect.initTablesAndDatabaseObjects(AbstractSymmetricDialect.java:159)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.setupDatabase(AbstractSymmetricEngine.java:495)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.setup(AbstractSymmetricEngine.java:469)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:637)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:628)
    at org.jumpmind.symmetric.ClientSymmetricEngine.start(ClientSymmetricEngine.java:258)
    at org.jumpmind.symmetric.web.SymmetricEngineHolder.install(SymmetricEngineHolder.java:412)
    at com.jumpmind.symmetric.console.ui.a.c.a.t(AbstractWizardScreen.java:149)
    at com.jumpmind.symmetric.console.ui.a.c.p$a.doWork(SummaryScreen.java:68)
    at com.jumpmind.symmetric.console.ui.common.InProgressDialog$2.onBackgroundDataRefresh(InProgressDialog.java:99)
    at com.jumpmind.symmetric.console.ui.a.a(BackgroundRefresherService.java:97)
    at com.jumpmind.symmetric.console.ui.a$3.run(BackgroundRefresherService.java:140)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(Unknown Source)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.sql.SQLException: interbase.interclient.IBException: [interclient][interbase]unsuccessful metadata update
[interclient][interbase]new record size of 67602 bytes is too big
[interclient][interbase]TABLE SYM_TRIGGER
    at interbase.interclient.Connection.remote_COMMIT(Unknown Source)
    at interbase.interclient.Connection.setAutoCommit(Unknown Source)
    at org.apache.commons.dbcp.DelegatingConnection.setAutoCommit(DelegatingConnection.java:371)
    at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.setAutoCommit(PoolingDataSource.java:328)
    at org.jumpmind.db.sql.JdbcSqlTemplate$6.execute(JdbcSqlTemplate.java:472)
    at org.jumpmind.db.sql.JdbcSqlTemplate$6.execute(JdbcSqlTemplate.java:401)
    at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:491)
    ... 22 more
2018-01-11 13:24:49,702 INFO [server] [AbstractSymmetricEngine] [background-refresher-1] Stopping SymmetricDS externalId=server version=3.9.2 database=InterBase
2018-01-11 13:24:49,702 INFO [server] [AbstractSymmetricEngine] [background-refresher-1]
2018-01-11 13:24:49,716 ERROR [server] [a] [background-refresher-1] Exception while refreshing class com.jumpmind.symmetric.console.ui.common.InProgressDialog$2 StackTraceKey.init [SqlException:29683552]
org.jumpmind.db.sql.SqlException: [interclient][interbase]Dynamic SQL Error
[interclient][interbase]SQL error code = -204
[interclient][interbase]Table unknown
[interclient][interbase]SYM_CONSOLE_USER
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:300)
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:291)
    at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:493)
    at org.jumpmind.db.sql.JdbcSqlTemplate.update(JdbcSqlTemplate.java:342)
    at org.jumpmind.db.sql.AbstractSqlTemplate.update(AbstractSqlTemplate.java:224)
    at com.jumpmind.symmetric.console.service.impl.ConsoleUserService.save(ConsoleUserService.java:112)
    at com.jumpmind.symmetric.console.ui.a.c.p.u(SummaryScreen.java:60)
    at com.jumpmind.symmetric.console.ui.a.c.a.t(AbstractWizardScreen.java:160)
    at com.jumpmind.symmetric.console.ui.a.c.p$a.doWork(SummaryScreen.java:68)
    at com.jumpmind.symmetric.console.ui.common.InProgressDialog$2.onBackgroundDataRefresh(InProgressDialog.java:99)
    at com.jumpmind.symmetric.console.ui.a.a(BackgroundRefresherService.java:97)
    at com.jumpmind.symmetric.console.ui.a$3.run(BackgroundRefresherService.java:140)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(Unknown Source)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.sql.SQLException: [interclient][interbase]Dynamic SQL Error
[interclient][interbase]SQL error code = -204
[interclient][interbase]Table unknown
[interclient][interbase]SYM_CONSOLE_USER
    at interbase.interclient.PreparedStatement.remote_PREPARE_STATEMENT(Unknown Source)
    at interbase.interclient.PreparedStatement.<init>(Unknown Source)
    at interbase.interclient.Connection.prepareStatement(Unknown Source)
    at interbase.interclient.Connection.prepareStatement(Unknown Source)
    at org.apache.commons.dbcp.DelegatingConnection.prepareStatement(DelegatingConnection.java:281)
    at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.prepareStatement(PoolingDataSource.java:313)
    at org.jumpmind.db.sql.JdbcSqlTemplate$5.execute(JdbcSqlTemplate.java:364)
    at org.jumpmind.db.sql.JdbcSqlTemplate$5.execute(JdbcSqlTemplate.java:342)
    at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:491)
    ... 16 more
2018-01-11 13:24:59,711 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey.init [SqlException:639049808]
org.jumpmind.db.sql.SqlException: Failed to execute sql: select monitor_id, node_id, event_time, "TYPE", event_value, event_count, threshold, severity_level, host_name, is_resolved, is_notified, details, last_update_time from sym_monitor_event where severity_level >= ? and is_resolved = ? order by event_time desc
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:300)
    at org.jumpmind.db.sql.JdbcSqlReadCursor.<init>(JdbcSqlReadCursor.java:120)
    at org.jumpmind.db.sql.JdbcSqlTemplate.queryForCursor(JdbcSqlTemplate.java:140)
    at org.jumpmind.db.sql.AbstractSqlTemplate.query(AbstractSqlTemplate.java:199)
    at org.jumpmind.db.sql.AbstractSqlTemplate.query(AbstractSqlTemplate.java:195)
    at org.jumpmind.db.sql.AbstractSqlTemplate.query(AbstractSqlTemplate.java:150)
    at org.jumpmind.symmetric.service.impl.MonitorService.getMonitorEventsFiltered(MonitorService.java:327)
    at com.jumpmind.symmetric.console.ui.b.a(MainWindow.java:1001)
    at com.jumpmind.symmetric.console.ui.b$a.a(MainWindow.java:1452)
    at com.jumpmind.symmetric.console.ui.b$a.onBackgroundDataRefresh(MainWindow.java:1448)
    at com.jumpmind.symmetric.console.ui.a.a(BackgroundRefresherService.java:97)
    at com.jumpmind.symmetric.console.ui.a$1.run(BackgroundRefresherService.java:81)
    at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask.runAndReset(Unknown Source)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown Source)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.sql.SQLException: interbase.interclient.IBException: [interclient][interbase]unsuccessful metadata update
[interclient][interbase]new record size of 67602 bytes is too big
[interclient][interbase]TABLE SYM_TRIGGER
    at interbase.interclient.Connection.remote_COMMIT(Unknown Source)
    at interbase.interclient.Connection$TransactionProperties.setIsolation(Unknown Source)
    at interbase.interclient.Connection$TransactionProperties.access$400(Unknown Source)
    at interbase.interclient.Connection.setTransactionIsolation(Unknown Source)
    at org.apache.commons.dbcp.DelegatingConnection.setTransactionIsolation(DelegatingConnection.java:380)
    at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.setTransactionIsolation(PoolingDataSource.java:343)
    at org.jumpmind.db.sql.JdbcSqlReadCursor.<init>(JdbcSqlReadCursor.java:81)
    ... 18 more
2018-01-11 13:25:09,716 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:25:19,722 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:25:29,726 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:25:39,731 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:25:49,736 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:25:59,741 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:26:09,746 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:26:19,751 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:26:29,757 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:26:39,762 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:26:49,768 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:26:59,774 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:27:09,780 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:27:19,785 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:27:29,791 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:27:39,795 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:27:49,801 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:27:59,806 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:28:09,810 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:28:19,815 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]
2018-01-11 13:28:29,821 ERROR [server] [a] [background-refresher-2] Exception while refreshing class com.jumpmind.symmetric.console.ui.b$a StackTraceKey [SqlException:639049808]

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3361 [SymmetricDS] Improvement minor have not tried 2018-01-10 03:49 2018-01-10 03:49
Reporter: woehrl01 Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Beanshell Version has CVE
Description: The current beanshell version has a CVE-2016-2510. See https://github.com/beanshell/beanshell
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3360 [SymmetricDS] Bug minor sometimes 2018-01-10 03:44 2018-01-10 03:44
Reporter: woehrl01 Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: If no sym table exists an initial start leads to an exception in StatisticManager
Description: If no sym table exists an initial start leads to an exception in StatisticManager as it tries to access those tables in incrementRestart()
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3354 [SymmetricDS] Bug major always 2018-01-05 07:57 2018-01-05 07:57
Reporter: pgsql Platform:  
Assigned To: OS:  
Priority: immediate OS Version:  
Status: new Product Version: 3.9.1  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Data is Not replicating in Community Edition
Description: I am doing MS-SQL to postgresql replication, for that I have configured symmetricds on both nodes but data is not replicating. I have given the steps in Steps to reproduce which I have performed. Also providing logs here:

Logs:
2018-01-05 17:40:41,738 INFO [store-001] [DataGapFastDetector] [store-001-job-1] Full gap analysis is running
2018-01-05 17:40:41,744 INFO [store-001] [DataGapFastDetector] [store-001-job-1] Querying data in gaps from database took 5 ms
2018-01-05 17:40:41,744 INFO [store-001] [DataGapFastDetector] [store-001-job-1] Full gap analysis is done after 6 ms
2018-01-05 17:40:41,868 INFO [store-001] [NodeCommunicationService] [store-001-job-3] pull will use 10 threads
2018-01-05 17:40:46,786 INFO [store-001] [RouterService] [store-001-job-8] The 'heartbeat' channel is NOT in common batch mode
2018-01-05 17:40:46,929 INFO [store-001] [RouterService] [store-001-job-8] Routed 1 data events in 176 ms
2018-01-05 17:41:05,638 INFO [store-001] [PullUriHandler] [qtp319977154-11] 1 data and 1 batches sent during pull request from corp:000:000
2018-01-05 17:41:15,903 INFO [store-001] [ConfigurationChangedDatabaseWriterFilter] [qtp319977154-15] About to syncTriggers because new configuration came through the data loader
2018-01-05 17:41:15,904 INFO [store-001] [TriggerRouterService] [qtp319977154-15] Synchronizing triggers
2018-01-05 17:41:16,987 INFO [store-001] [RouterService] [store-001-job-17] The 'config' channel is NOT in common batch mode
2018-01-05 17:41:17,248 INFO [store-001] [RouterService] [store-001-job-17] Routed 6 data events in 279 ms
2018-01-05 17:41:17,509 INFO [store-001] [TriggerRouterService] [qtp319977154-15] Done synchronizing triggers
2018-01-05 17:41:17,510 INFO [store-001] [DataLoaderService] [qtp319977154-15] 6 data and 2 batches loaded during push request from corp:000:000.
2018-01-05 17:55:43,131 INFO [store-001] [RouterService] [store-001-job-13] Routed 1 data events in 117 ms
2018-01-05 17:55:45,048 INFO [store-001] [PullUriHandler] [qtp319977154-15] 1 data and 1 batches sent during pull request from corp:000:000
2018-01-05 17:56:16,265 INFO [store-001] [DataLoaderService] [qtp319977154-14] 1 data and 1 batches loaded during push request from corp:000:000.
2018-01-05 17:56:18,180 INFO [store-001] [RouterService] [store-001-job-10] Routed 1 data events in 18 ms
2018-01-05 18:10:43,977 INFO [store-001] [RouterService] [store-001-job-4] Routed 1 data events in 88 ms
2018-01-05 18:10:45,353 INFO [store-001] [PullUriHandler] [qtp319977154-14] 1 data and 1 batches sent during pull request from corp:000:000
2018-01-05 18:11:15,939 INFO [store-001] [DataLoaderService] [qtp319977154-13] 1 data and 1 batches loaded during push request from corp:000:000.
2018-01-05 18:11:19,043 INFO [store-001] [RouterService] [store-001-job-16] Routed 1 data events in 34 ms

Kindly give me solution as soon as possible.
Tags:
Steps To Reproduce: Steps:

1. Firstly Download the SymmetricDS Community edition from www.jumpmind.com website. Unzip the file symmetric-server-3.9.1zip on both Master Node(MS-SQL server) and Slave Node(Postgresql server).

2. On master node Copy the corp-000.properties file from symmetric-server-3.9.1\samples path and paste this file to symmetric-server-3.9.1\engines path. Follow same procedure on target node but copy store-001.properties file.

3. Now do the changes in the parameter of the corp-000.properties and store-001.properties files.

In corp-000.properties
engine.name = corp-000
db.driver=net.sourceforge.jtds.jdbc.Driver
db.url=jdbc:jtds:sqlserver://hostip:port/databasename;useCursors=true;bufferMaxMemory=10240;lobBuffer=5242880
db.user=put the database user here
db.password=put the database password here
sync.url=http://hostip:31415/sync/corp-000
group.id=corp
external.id=000
In store-001.properties
engine.name=store-001
sync.url = http://hostip:31415/sync/store-001
db.driver=org.postgresql.Driver
db.url=jdbc:postgresql://hostip:port/databasename?protocolVersion=2&stringtyp e=unspecified
db.user=put the database user here
db.password=put the database password here
registration.url=http://masternodeip:31415/sync/corp-000
group.id=store
external.id=001
4. Create system tables on master node by running following command on master node:
symmetric-server-3.9.1/bin/symadmin --engine corp-000 create-sym-tables

5. Now Insert the values in the system tales:

         insert into SYM_NODE_GROUP
        (node_group_id)values(‘store’);

         insert into SYM_NODE_GROUP_LINK
        (source_node_group_id, target_node_group_id, data_event_action)values ('corp', 'store', 'P');
             
          Where P = Push

           insert into SYM_NODE_GROUP_LINK
(source_node_group_id, target_node_group_id, data_event_action)
      values ('store', 'corp', 'W');
    
          Where W = Wait for pull

          insert into SYM_ROUTER (router_id,
        source_node_group_id, target_node_group_id, create_time,
        last_update_time) values ('corp-2-store','corp', 'store',current_timestamp, current_timestamp);


        insert into SYM_CHANNEL (channel_id, processing_order, max_batch_size, max_batch_to_send,extract_period_millis, batch_algorithm, enabled, description)values ('patient_dtl', 10, 1000, 10, 0, 'default', 1, ‘Patient Details');

        insert into SYM_TRIGGER (trigger_id, source_table_name,
          channel_id, last_update_time, create_time)values ('patient_dtl', 'patient_dtl', 'patient_dtl', current_timestamp, current_timestamp);

        insert into SYM_TRIGGER_ROUTER(trigger_id, router_id, initial_load_order, create_time,last_update_time)values ('patient_dtl', 'corp-2-store', 1, current_timestamp,
current_timestamp);

The Setup and configuration is now completed.




6. We will now start both SymmetricDS nodes

On master node:
symmetric-server-3.9.1/bin/sym

On Slave Node:
symmetric-server-3.9.1/bin/
and run ./sym
This command on slave node system tables automatically. It begins polling the server node in order to register.


7. Registering a Node
Open registration for the slave node server by executing the below command on master node cmd:

symmetric-server-3.9.1/bin/symadmin –-engine corp-000 open-registration store 001

 The registration is now opened for a node group called “store” with an external identifier of “001”.

8. Sending an Initial Load
               Next, we will send an initial load of data to our store (that is, the slave node)

     Send an initial load of data to the client node server by executing following command on master node cmd:
          symmetric-server-3.9.1/bin/symadmin –-engine corp-000 reload-node 001
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3353 [SymmetricDS] Bug major always 2018-01-05 07:53 2018-01-05 07:53
Reporter: pgsql Platform:  
Assigned To: OS:  
Priority: urgent OS Version:  
Status: new Product Version: 3.9.1  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Data not replicating in community edition
Description: I am doing MS-SQL to postgresql replication, for that I have configured symmetricds on both nodes but data is not replicating. I have attached the steps which I have performed. Also attaching logs of master node. Kindly provide me solution on this asap.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files: Documentation of SymmetricDS Community Edition.docx (17,789 bytes) 2018-01-05 07:53
http://www.symmetricds.org/issues/file_download.php?file_id=139&type=bug
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3352 [SymmetricDS] Bug major always 2018-01-05 07:48 2018-01-05 07:48
Reporter: pgsql Platform:  
Assigned To: OS:  
Priority: immediate OS Version:  
Status: new Product Version: 3.9.1  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Replication not happening in Community Edition 3.9.1
Description: I am doing MS-SQL to Postgresql replication. I have configured the symmetricds on oth nodes. But still data is not replicating. I have performed below given steps and attaching logs of master node. Kindly give me solution on this asap.


1. Firstly Download the SymmetricDS Community edition from www.jumpmind.com website. Unzip the file symmetric-server-3.9.1zip on both Master Node(MS-SQL server) and Slave Node(Postgresql server).

2. On master node Copy the corp-000.properties file from symmetric-server-3.9.1\samples path and paste this file to symmetric-server-3.9.1\engines path. Follow same procedure on target node but copy store-001.properties file.

3. Now do the changes in the parameter of the corp-000.properties and store-001.properties files.

In corp-000.properties
engine.name = corp-000
db.driver=net.sourceforge.jtds.jdbc.Driver
db.url=jdbc:jtds:sqlserver://hostip:port/databasename;useCursors=true;bufferMaxMemory=10240;lobBuffer=5242880
db.user=put the database user here
db.password=put the database password here
sync.url=http://hostip:31415/sync/corp-000
group.id=corp
external.id=000
In store-001.properties
engine.name=store-001
sync.url = http://hostip:31415/sync/store-001
db.driver=org.postgresql.Driver
db.url=jdbc:postgresql://hostip:port/databasename?protocolVersion=2&stringtyp e=unspecified
db.user=put the database user here
db.password=put the database password here
registration.url=http://masternodeip:31415/sync/corp-000
group.id=store
external.id=001
4. Create system tables on master node by running following command on master node:
symmetric-server-3.9.1/bin/symadmin --engine corp-000 create-sym-tables

5. Now Insert the values in the system tales:

         insert into SYM_NODE_GROUP
        (node_group_id)values(‘store’);

         insert into SYM_NODE_GROUP_LINK
        (source_node_group_id, target_node_group_id, data_event_action)values ('corp', 'store', 'P');
             
          Where P = Push

           insert into SYM_NODE_GROUP_LINK
(source_node_group_id, target_node_group_id, data_event_action)
      values ('store', 'corp', 'W');
    
          Where W = Wait for pull

          insert into SYM_ROUTER (router_id,
        source_node_group_id, target_node_group_id, create_time,
        last_update_time) values ('corp-2-store','corp', 'store',current_timestamp, current_timestamp);


        insert into SYM_CHANNEL (channel_id, processing_order, max_batch_size, max_batch_to_send,extract_period_millis, batch_algorithm, enabled, description)values ('patient_dtl', 10, 1000, 10, 0, 'default', 1, ‘Patient Details');

        insert into SYM_TRIGGER (trigger_id, source_table_name,
          channel_id, last_update_time, create_time)values ('patient_dtl', 'patient_dtl', 'patient_dtl', current_timestamp, current_timestamp);

        insert into SYM_TRIGGER_ROUTER(trigger_id, router_id, initial_load_order, create_time,last_update_time)values ('patient_dtl', 'corp-2-store', 1, current_timestamp,
current_timestamp);

The Setup and configuration is now completed.




6. We will now start both SymmetricDS nodes

On master node:
symmetric-server-3.9.1/bin/sym

On Slave Node:
symmetric-server-3.9.1/bin/
and run ./sym
This command on slave node system tables automatically. It begins polling the server node in order to register.


7. Registering a Node
Open registration for the slave node server by executing the below command on master node cmd:

symmetric-server-3.9.1/bin/symadmin –-engine corp-000 open-registration store 001

 The registration is now opened for a node group called “store” with an external identifier of “001”.

8. Sending an Initial Load
               Next, we will send an initial load of data to our store (that is, the slave node)

     Send an initial load of data to the client node server by executing following command on master node cmd:
          symmetric-server-3.9.1/bin/symadmin –-engine corp-000 reload-node 001
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3351 [SymmetricDS] Bug major always 2018-01-05 07:46 2018-01-05 07:46
Reporter: pgsql Platform:  
Assigned To: OS:  
Priority: immediate OS Version:  
Status: new Product Version: 3.9.1  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: SymmetricDS Community Edition replication not happening
Description: I am doing MS-SQL to Postgresql replication. I have configured the symmetricds on oth nodes. But still data is not replicating. I have performed below given steps and attaching logs and screenshot of both nodes after running symmetricds. Kindly give me solution on this asap.

1. Firstly Download the SymmetricDS Community edition from www.jumpmind.com website. Unzip the file symmetric-server-3.9.1zip on both Master Node(MS-SQL server) and Slave Node(Postgresql server).

2. On master node Copy the corp-000.properties file from symmetric-server-3.9.1\samples path and paste this file to symmetric-server-3.9.1\engines path. Follow same procedure on target node but copy store-001.properties file.

3. Now do the changes in the parameter of the corp-000.properties and store-001.properties files.

In corp-000.properties
engine.name = corp-000
db.driver=net.sourceforge.jtds.jdbc.Driver
db.url=jdbc:jtds:sqlserver://hostip:port/databasename;useCursors=true;bufferMaxMemory=10240;lobBuffer=5242880
db.user=put the database user here
db.password=put the database password here
sync.url=http://hostip:31415/sync/corp-000
group.id=corp
external.id=000
In store-001.properties
engine.name=store-001
sync.url = http://hostip:31415/sync/store-001
db.driver=org.postgresql.Driver
db.url=jdbc:postgresql://hostip:port/databasename?protocolVersion=2&stringtyp e=unspecified
db.user=put the database user here
db.password=put the database password here
registration.url=http://masternodeip:31415/sync/corp-000
group.id=store
external.id=001
4. Create system tables on master node by running following command on master node:
symmetric-server-3.9.1/bin/symadmin --engine corp-000 create-sym-tables

5. Now Insert the values in the system tales:

         insert into SYM_NODE_GROUP
        (node_group_id)values(‘store’);

         insert into SYM_NODE_GROUP_LINK
        (source_node_group_id, target_node_group_id, data_event_action)values ('corp', 'store', 'P');
             
          Where P = Push

           insert into SYM_NODE_GROUP_LINK
(source_node_group_id, target_node_group_id, data_event_action)
      values ('store', 'corp', 'W');
    
          Where W = Wait for pull

          insert into SYM_ROUTER (router_id,
        source_node_group_id, target_node_group_id, create_time,
        last_update_time) values ('corp-2-store','corp', 'store',current_timestamp, current_timestamp);


        insert into SYM_CHANNEL (channel_id, processing_order, max_batch_size, max_batch_to_send,extract_period_millis, batch_algorithm, enabled, description)values ('patient_dtl', 10, 1000, 10, 0, 'default', 1, ‘Patient Details');

        insert into SYM_TRIGGER (trigger_id, source_table_name,
          channel_id, last_update_time, create_time)values ('patient_dtl', 'patient_dtl', 'patient_dtl', current_timestamp, current_timestamp);

        insert into SYM_TRIGGER_ROUTER(trigger_id, router_id, initial_load_order, create_time,last_update_time)values ('patient_dtl', 'corp-2-store', 1, current_timestamp,
current_timestamp);

The Setup and configuration is now completed.




6. We will now start both SymmetricDS nodes

On master node:
symmetric-server-3.9.1/bin/sym

On Slave Node:
symmetric-server-3.9.1/bin/
and run ./sym
This command on slave node system tables automatically. It begins polling the server node in order to register.


7. Registering a Node
Open registration for the slave node server by executing the below command on master node cmd:

symmetric-server-3.9.1/bin/symadmin –-engine corp-000 open-registration store 001

 The registration is now opened for a node group called “store” with an external identifier of “001”.

8. Sending an Initial Load
               Next, we will send an initial load of data to our store (that is, the slave node)

     Send an initial load of data to the client node server by executing following command on master node cmd:
          symmetric-server-3.9.1/bin/symadmin –-engine corp-000 reload-node 001
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3350 [SymmetricDS] Bug minor N/A 2018-01-05 07:40 2018-01-05 07:40
Reporter: pgsql Platform:  
Assigned To: OS:  
Priority: immediate OS Version:  
Status: new Product Version: 3.9.1  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Regarding SymmetricDS Community Edition
Description: I am doing MS-SQL to Postgresql replication by symmetricds community edition. I have configured the symmetricds on both nodes and performed the replication. The steps I have followed for replication are given below, after performing below steps still data is not replicating. I am also attaching logs and screenshot of both the nodes after running symmetricds. Kindly check anyone and please give me solution what is wrong in it. :

1. Firstly Download the SymmetricDS Community edition from www.jumpmind.com website. Unzip the file symmetric-server-3.9.1zip on both Master Node(MS-SQL server) and Slave Node(Postgresql server).

2. On master node Copy the corp-000.properties file from symmetric-server-3.9.1\samples path and paste this file to symmetric-server-3.9.1\engines path. Follow same procedure on target node but copy store-001.properties file.

3. Now do the changes in the parameter of the corp-000.properties and store-001.properties files.

In corp-000.properties
engine.name = corp-000
db.driver=net.sourceforge.jtds.jdbc.Driver
db.url=jdbc:jtds:sqlserver://hostip:port/databasename;useCursors=true;bufferMaxMemory=10240;lobBuffer=5242880
db.user=put the database user here
db.password=put the database password here
sync.url=http://hostip:31415/sync/corp-000
group.id=corp
external.id=000
In store-001.properties
engine.name=store-001
sync.url = http://hostip:31415/sync/store-001
db.driver=org.postgresql.Driver
db.url=jdbc:postgresql://hostip:port/databasename?protocolVersion=2&stringtyp e=unspecified
db.user=put the database user here
db.password=put the database password here
registration.url=http://masternodeip:31415/sync/corp-000
group.id=store
external.id=001
4. Create system tables on master node by running following command on master node:
symmetric-server-3.9.1/bin/symadmin --engine corp-000 create-sym-tables

5. Now Insert the values in the system tales:

         insert into SYM_NODE_GROUP
        (node_group_id)values(‘store’);

         insert into SYM_NODE_GROUP_LINK
        (source_node_group_id, target_node_group_id, data_event_action)values ('corp', 'store', 'P');
             
          Where P = Push

           insert into SYM_NODE_GROUP_LINK
(source_node_group_id, target_node_group_id, data_event_action)
      values ('store', 'corp', 'W');
    
          Where W = Wait for pull

          insert into SYM_ROUTER (router_id,
        source_node_group_id, target_node_group_id, create_time,
        last_update_time) values ('corp-2-store','corp', 'store',current_timestamp, current_timestamp);


        insert into SYM_CHANNEL (channel_id, processing_order, max_batch_size, max_batch_to_send,extract_period_millis, batch_algorithm, enabled, description)values ('patient_dtl', 10, 1000, 10, 0, 'default', 1, ‘Patient Details');

        insert into SYM_TRIGGER (trigger_id, source_table_name,
          channel_id, last_update_time, create_time)values ('patient_dtl', 'patient_dtl', 'patient_dtl', current_timestamp, current_timestamp);

        insert into SYM_TRIGGER_ROUTER(trigger_id, router_id, initial_load_order, create_time,last_update_time)values ('patient_dtl', 'corp-2-store', 1, current_timestamp,
current_timestamp);

The Setup and configuration is now completed.




6. We will now start both SymmetricDS nodes

On master node:
symmetric-server-3.9.1/bin/sym

On Slave Node:
symmetric-server-3.9.1/bin/
and run ./sym
This command on slave node system tables automatically. It begins polling the server node in order to register.


7. Registering a Node
Open registration for the slave node server by executing the below command on master node cmd:

symmetric-server-3.9.1/bin/symadmin –-engine corp-000 open-registration store 001

 The registration is now opened for a node group called “store” with an external identifier of “001”.

8. Sending an Initial Load
               Next, we will send an initial load of data to our store (that is, the slave node)

     Send an initial load of data to the client node server by executing following command on master node cmd:
          symmetric-server-3.9.1/bin/symadmin –-engine corp-000 reload-node 001
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3280 [SymmetricDS] Bug minor sometimes 2017-10-16 12:29 2018-01-02 18:14
Reporter: mmichalek Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.0  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version: 3.9.0  
Summary: SymmetricDS servers fail to start in cluster due to sym schema upgrade race condition
Description: When starting several clustered SymmetricDS servers simultaneously with an upgraded version of the software, several or all of the servers could fail to start due to DDL errors. A viable workaround is when upgrading, allow one server to start up cleanly (and therefore complete the schema upgrade) and then start the other servers in the cluster.

Startup examples include:

2017-10-03 22:05:45,389 WARN [SymmetricDS] [PostgreSqlSymmetricDialect] [symmetric-engine-startup-0] DDL failed: ALTER TABLE sym_node_group_link
    DROP CONSTRAINT sym_fk_lnk_2_grp_src
2017-10-03 22:05:45,390 WARN [SymmetricDS] [JdbcSqlTemplate] [symmetric-engine-startup-0] ERROR: constraint "sym_fk_lnk_2_grp_src" of relation "sym_node_group_link" does not exist. Failed to execute: ALTER TABLE sym_node_group_link
    DROP CONSTRAINT sym_fk_lnk_2_grp_src
2017-10-03 22:05:45,390 ERROR [SymmetricDS] [AbstractSymmetricEngine] [symmetric-engine-startup-0] An error occurred while starting SymmetricDS StackTraceKey.init [SqlException:2493147748]
org.jumpmind.db.sql.SqlException: ERROR: constraint "sym_fk_lnk_2_grp_src" of relation "sym_node_group_link" does not exist
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:300)
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:291)
    at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:493)
    at org.jumpmind.db.sql.JdbcSqlTemplate.update(JdbcSqlTemplate.java:401)
    at org.jumpmind.db.sql.SqlScript.execute(SqlScript.java:107)
    at org.jumpmind.symmetric.db.AbstractSymmetricDialect.createOrAlterTablesIfNecessary(AbstractSymmetricDialect.java:526)
    at org.jumpmind.symmetric.db.AbstractSymmetricDialect.initTablesAndDatabaseObjects(AbstractSymmetricDialect.java:157)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.setupDatabase(AbstractSymmetricEngine.java:449)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.setup(AbstractSymmetricEngine.java:423)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:580)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:571)
    at org.jumpmind.symmetric.ClientSymmetricEngine.start(ClientSymmetricEngine.java:244)
    at org.jumpmind.symmetric.web.SymmetricEngineHolder$EngineStarter.run(SymmetricEngineHolder.java:530)
Caused by: org.postgresql.util.PSQLException: ERROR: constraint "sym_fk_lnk_2_grp_src" of relation "sym_node_group_link" does not exist
    at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2476)
    at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2189)
    at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:300)
    at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:428)
    at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:354)
    at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:301)
    at org.postgresql.jdbc.PgStatement.executeCachedSql(PgStatement.java:287)
    at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:264)
    at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:260)
    at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
    at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
    at org.jumpmind.db.sql.JdbcSqlTemplate$6.execute(JdbcSqlTemplate.java:416)
    at org.jumpmind.db.sql.JdbcSqlTemplate$6.execute(JdbcSqlTemplate.java:401)
    at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:491)
    ... 10 more


2017-05-03 22:06:20,945 WARN [SymmetricDS] [JdbcSqlTemplate] [symmetric-engine-startup-0] ERROR: constraint "sym_fk_cf_2_grp_lnk" for relation "sym_conflict" already exists. Failed to execute: ALTER TABLE sym_conflict
    ADD CONSTRAINT sym_fk_cf_2_grp_lnk FOREIGN KEY (source_node_group_id, target_node_group_id) REFERENCES sym_node_group_link (source_node_group_id, target_node_group_id)
2017-10-03 22:06:20,946 ERROR [SymmetricDS] [AbstractSymmetricEngine] [symmetric-engine-startup-0] An error occurred while starting SymmetricDS StackTraceKey.init [SqlException:2197569610]
org.jumpmind.db.sql.SqlException: ERROR: constraint "sym_fk_cf_2_grp_lnk" for relation "sym_conflict" already exists
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:300)
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:291)
    at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:493)
    at org.jumpmind.db.sql.JdbcSqlTemplate.update(JdbcSqlTemplate.java:401)
    at org.jumpmind.db.sql.SqlScript.execute(SqlScript.java:107)
    at org.jumpmind.symmetric.db.AbstractSymmetricDialect.createOrAlterTablesIfNecessary(AbstractSymmetricDialect.java:526)
    at org.jumpmind.symmetric.db.AbstractSymmetricDialect.initTablesAndDatabaseObjects(AbstractSymmetricDialect.java:157)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.setupDatabase(AbstractSymmetricEngine.java:449)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.setup(AbstractSymmetricEngine.java:423)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:580)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:571)
    at org.jumpmind.symmetric.ClientSymmetricEngine.start(ClientSymmetricEngine.java:244)
    at org.jumpmind.symmetric.web.SymmetricEngineHolder$EngineStarter.run(SymmetricEngineHolder.java:530)
Caused by: org.postgresql.util.PSQLException: ERROR: constraint "sym_fk_cf_2_grp_lnk" for relation "sym_conflict" already exists
    at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2476)
    at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2189)
    at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:300)
    at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:428)
    at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:354)
    at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:301)
    at org.postgresql.jdbc.PgStatement.executeCachedSql(PgStatement.java:287)
    at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:264)
    at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:260)
    at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
    at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
    at org.jumpmind.db.sql.JdbcSqlTemplate$6.execute(JdbcSqlTemplate.java:416)
    at org.jumpmind.db.sql.JdbcSqlTemplate$6.execute(JdbcSqlTemplate.java:401)
    at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:491)
    ... 10 more


OR

2017-10-03 22:05:45,665 WARN [SymmetricDS] [JdbcSqlTemplate] [symmetric-engine-startup-0] ERROR: column "data_event_action" of relation "sym_channel" already exists. Failed to execute: ALTER TABLE public.sym_channel
         ADD COLUMN data_event_action CHAR(1)
2017-10-03 22:05:45,666 ERROR [SymmetricDS] [AbstractSymmetricEngine] [symmetric-engine-startup-0] An error occurred while starting SymmetricDS StackTraceKey.init [SqlException:4252188107]
org.jumpmind.db.sql.SqlException: ERROR: column "data_event_action" of relation "sym_channel" already exists
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:300)
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:291)
    at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:493)
    at org.jumpmind.db.sql.JdbcSqlTemplate.update(JdbcSqlTemplate.java:401)
    at org.jumpmind.db.sql.SqlScript.execute(SqlScript.java:107)
    at org.jumpmind.symmetric.db.AbstractSymmetricDialect.createOrAlterTablesIfNecessary(AbstractSymmetricDialect.java:526)
    at org.jumpmind.symmetric.db.AbstractSymmetricDialect.initTablesAndDatabaseObjects(AbstractSymmetricDialect.java:157)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.setupDatabase(AbstractSymmetricEngine.java:449)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.setup(AbstractSymmetricEngine.java:423)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:580)
    at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:571)
    at org.jumpmind.symmetric.ClientSymmetricEngine.start(ClientSymmetricEngine.java:244)
    at org.jumpmind.symmetric.web.SymmetricEngineHolder$EngineStarter.run(SymmetricEngineHolder.java:530)
Caused by: org.postgresql.util.PSQLException: ERROR: column "data_event_action" of relation "sym_channel" already exists
    at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2476)
    at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2189)
    at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:300)
    at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:428)
    at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:354)
    at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:301)
    at org.postgresql.jdbc.PgStatement.executeCachedSql(PgStatement.java:287)
    at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:264)
    at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:260)
    at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
    at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
    at org.jumpmind.db.sql.JdbcSqlTemplate$6.execute(JdbcSqlTemplate.java:416)
    at org.jumpmind.db.sql.JdbcSqlTemplate$6.execute(JdbcSqlTemplate.java:401)
    at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:491)
    ... 10 more
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3347 [SymmetricDS] Improvement major always 2018-01-02 05:37 2018-01-02 05:37
Reporter: Prerna Kumari Platform:  
Assigned To: OS:  
Priority: urgent OS Version:  
Status: new Product Version: 3.8.31  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: postgres jar not copied to symmetric ds war
Description: create-war mismatch on symmetric ds version 3.8.28 and 3.8.31/3.8.33
 When create war is done on 0000691:0000028 version then postgresql-9.4-1212.jre7.jar is getting copied to symmetric ds war. But , not getting done on 0000707:0000031/33.

Later as a work around copied postgres jar manually in symmetric-ds WEB-INF/lib after installation. But, SSL handshake exception coming.

[SGW-fc719bff-4ad1-4f15-ad2b-c5b5961d8d87] - DataLoaderService - Using registration URL of https://symmetrictest-iot.harman2.com:31415/symmetric-ds/sync/registration?nodeGroupId=SGW&externalId=fc719bff-4ad1-4f15-ad2b-c5b5961d8d87&syncURL=http%3A%2F%2F129.edcharman.com%3A31415%2Fsync%2FSGW-fc719bff-4ad1-4f15-ad2b-c5b5961d8d87&schemaVersion=%3F&databaseType=PostgreSQL&databaseVersion=9.6&symmetricVersion=3.8.33&hostName=129.edcharman.com&ipAddress=10.97.57.129
[SGW-fc719bff-4ad1-4f15-ad2b-c5b5961d8d87] - RegistrationService - Unexpected error during registration: Read timed out
java.net.SocketTimeoutException: Read timed out
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
        at java.net.SocketInputStream.read(SocketInputStream.java:171)
        at java.net.SocketInputStream.read(SocketInputStream.java:141)
        at sun.security.ssl.InputRecord.readFully(InputRecord.java:465)
        at sun.security.ssl.InputRecord.read(InputRecord.java:503)
        at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:983)
        at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1385)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1413)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1397)
        at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:559)
        at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1546)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1474)
        at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)
        at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)
159)
        at org.jumpmind.symmetric.transport.http.HttpIncomingTransport.openStream(HttpIncomingTransport.java:99)
        at org.jumpmind.symmetric.transport.http.HttpIncomingTransport.openReader(HttpIncomingTransport.java:125)
        at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromTransport(DataLoaderService.java:562)
        at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromPull(DataLoaderService.java:293)
        at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromPull(DataLoaderService.java:250)
        at org.jumpmind.symmetric.service.impl.RegistrationService.attemptToRegisterWithServer(RegistrationService.java:467)
        at org.jumpmind.symmetric.service.impl.RegistrationService.registerWithServer(RegistrationService.java:442)
        at org.jumpmind.symmetric.service.impl.PullService.pullData(PullService.java:85)
        at org.jumpmind.symmetric.job.PullJob.doJob(PullJob.java:54)
        at org.jumpmind.symmetric.job.AbstractJob.invoke(AbstractJob.java:177)
        at org.jumpmind.symmetric.job.AbstractJob.run(AbstractJob.java:221)
        at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
[SGW-fc719bff-4ad1-4f15-ad2b-c5b5961d8d87] - RegistrationService - Could not register. Sleeping for 12000ms before attempting again.

Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3344 [SymmetricDS] Bug minor always 2017-12-23 04:58 2017-12-23 04:58
Reporter: ivan.konev Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.9.1  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: start.refresh.cache.job=true leads to errors in cache refresh job - "query error" with query = 'null'
Description: Not affecting overall performance and ability to sync, periodic refresh cache job fails completely giving something like below. For any of used engines - mysql,mariadb,oracle,sqlite...
Tags:
Steps To Reproduce: start.cache.refresh.job=true
Additional Information: 2017-12-23 12:55:00,013 ERROR [mysqlmariadbnode] [RefreshCacheJob] [mysqlmariadbnode-job-11] Exception while executing job 'Refresh Cache' StackTraceKey.init [SqlException:265184862]
org.jumpmind.db.sql.SqlException: (conn=2312) You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'null' at line 1
        at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:300)
        at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:291)
        at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:493)
        at org.jumpmind.db.sql.JdbcSqlTemplate.queryForObject(JdbcSqlTemplate.java:156)
        at org.jumpmind.symmetric.service.impl.FileSyncService.refreshFromDatabase(FileSyncService.java:121)
        at org.jumpmind.symmetric.job.RefreshCacheJob.doJob(RefreshCacheJob.java:52)
        at org.jumpmind.symmetric.job.AbstractJob.invoke(AbstractJob.java:225)
        at org.jumpmind.symmetric.job.AbstractJob.run(AbstractJob.java:287)
        at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)
        at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.sql.SQLSyntaxErrorException: (conn=2312) You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'null' at line 1
        at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.get(ExceptionMapper.java:177)
        at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.getException(ExceptionMapper.java:110)
        at org.mariadb.jdbc.MariaDbStatement.executeExceptionEpilogue(MariaDbStatement.java:235)
        at org.mariadb.jdbc.MariaDbPreparedStatementClient.executeInternal(MariaDbPreparedStatementClient.java:224)
        at org.mariadb.jdbc.MariaDbPreparedStatementClient.execute(MariaDbPreparedStatementClient.java:159)
        at org.mariadb.jdbc.MariaDbPreparedStatementClient.executeQuery(MariaDbPreparedStatementClient.java:173)
        at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
        at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
        at org.jumpmind.db.sql.JdbcSqlTemplate$1.execute(JdbcSqlTemplate.java:168)
        at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:491)
        ... 14 more
Caused by: java.sql.SQLException: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'null' at line 1
Query is: null
        at org.mariadb.jdbc.internal.util.LogQueryTool.exceptionWithQuery(LogQueryTool.java:153)
        at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:248)
        at org.mariadb.jdbc.MariaDbPreparedStatementClient.executeInternal(MariaDbPreparedStatementClient.java:218)
        ... 20 more
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2861 [SymmetricDS] New Feature minor N/A 2016-10-14 04:28 2017-12-22 15:51
Reporter: maiku Platform:  
Assigned To: elong OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.8.6  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version: 3.9.2  
Summary: Client certificate authentication
Description: The client certificate and private key reside in keystore, but are not presented when remote endpoint requests TLS client authentication (ie connecting through an haproxy reverse proxy).
Tags:
Steps To Reproduce:
Additional Information:
Attached Files: symmetric-core-3.8.7.rar (973,203 bytes) 2016-11-03 03:26
http://www.symmetricds.org/issues/file_download.php?file_id=121&type=bug
TransportManagerFactoryPatch.diff (107 bytes) 2016-12-16 02:32
http://www.symmetricds.org/issues/file_download.php?file_id=122&type=bug
Notes
(0000897)
saleem   
2016-11-01 04:33   
We have a similar issue. Does SymmetricDS support using client certificates for authentication and authorisation?
(0000899)
saleem   
2016-11-03 03:26   
(Last edited: 2016-11-03 10:11)
Client certificate authentication worked successfully after removing the modifications from the commit related to the following URL:

https://github.com/JumpMind/symmetric-ds/commit/830189c1bdf60804764651fbd2e1bd496d26228d

A statement was added to the abstract constructor of the class AbstractCommandLauncher in this commit. This statement initialises a default SSL factory for allowing self-signed certificates. The statement does not check if the property for self-signed certificates is enabled before initialising the default SSL factory. This is changing the default behavior of SSL. The added statement is the following:

TransportManagerFactory.initHttps("all", true);

I have tried creating a new 'symmetric-core' JAR file that disables the following statements in the TransportManagerFactory class:

if (allowSelfSignedCerts)
{
   HttpsURLConnection.setDefaultSSLSocketFactory(createSelfSignedSocketFactory());
}

The statements were disabled by using a conjunction with the value 'false' in the condition of the 'if' clause. Client certificate verification worked successfully after passing the following parameters for configuring SSL trust and key stores in the 'sym_service.conf':

-Djavax.net.ssl.trustStore=security/cacerts
-Djavax.net.ssl.trustStorePassword=XXXX
-Djavax.net.ssl.trustStoreType=jks
-Djavax.net.ssl.keyStore=security/keystore
-Djavax.net.ssl.keyStorePassword=XXXX

I have uploaded a JAR file for the 'symmetric-core' archive with these modifications applied. This JAR file worked successfully for client certificate authentication using SymmetricDS version '3.8.7'. The file can be placed in the folder 'web\WEB-INF\lib' for testing.

(0000929)
maiku   
2016-12-14 06:17   
@saleem Wonder if you could provide a diff for your patch?
(0000930)
saleem   
2016-12-16 02:33   
I have uploaded a patch file named 'TransportManagerFactoryPatch.diff'. This patch is based on the source code for version '3.8.7'.
(0001076)
chenson   
2017-11-06 08:13   
See 2886. Should be possible by tweaking system parameters.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3343 [SymmetricDS Pro] Improvement minor N/A 2017-12-22 07:27 2017-12-22 07:27
Reporter: gilles.riand Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.7.36  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Level priority process SymmetricDS
Description: Hello

I would like to know if it's possible to increase the level priority of instance of Java who run the SymmetricDS.
I'm running in Service on windows, and the Instance is "Normal" Priority

Thank you
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3332 [SymmetricDS Pro] Bug minor N/A 2017-12-07 06:57 2017-12-18 06:24
Reporter: pgdba Platform:  
Assigned To: OS:  
Priority: urgent OS Version:  
Status: new Product Version: 3.7.38  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: The Dashbord of Master Node node not show properly
Description: We set up master to master profile replication for MS-SQL to Postgresql replication

The replicataion is done properly

Now we added new table to replicate but at master node Dashbord the "Manage","Configure" and "Explorer" tab
not show.(We try with logout from node and login again but it not show)

Please help us

refer snap shot for details
Tags:
Steps To Reproduce:
Additional Information:
Attached Files: SymmDS Dashboard Issue.png (87,133 bytes) 2017-12-07 06:57
http://www.symmetricds.org/issues/file_download.php?file_id=134&type=bug
png
Notes
(0001082)
pgdba   
2017-12-13 01:15   
Dear Team,

till now we facing the issue.

We can't figure out the issue because there is no error log generated regarding issue.
(0001083)
elong   
2017-12-13 08:31   
Is there an exception in the log file (logs/symmetric.log) when you login?
(0001084)
chenson   
2017-12-13 08:33   
Moved this to the SymmetricDS Pro project
(0001088)
pgdba   
2017-12-18 06:24   
Dear Sir,

There is no log generated in symmetric.log and wrapper.log.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3324 [SymmetricDS] Task minor have not tried 2017-11-28 13:10 2017-12-15 16:19
Reporter: mmichalek Platform:  
Assigned To: mmichalek OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.9.1  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version: 3.9.1  
Summary: Drop deprecated columns from schema
Description: Remove sym_node.heartbeat_time and sym_node.timezone_offset.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3158 [SymmetricDS] Task minor have not tried 2017-06-14 13:10 2017-12-12 12:39
Reporter: chenson Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.9.1  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version: 3.9.1  
Summary: Document the ACK as part of the batch protocol in the SymmetricDS Users Guide
Description: Document the ACK as part of the batch protocol in the SymmetricDS Users Guide
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3327 [SymmetricDS] Improvement minor have not tried 2017-12-04 09:03 2017-12-04 09:03
Reporter: mmichalek Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.9.0  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Support SQL Server geography type
Description: Currently, it appears that the "geometry" type works, but not the "geography" type.

**SETUP**

CREATE TABLE test (
    ID INT NOT NULL PRIMARY KEY
    , GEOGRAPHY geography
);

INSERT INTO test VALUES (
    001, geography::Parse('POINT(34.1790991 -84.1217773)'));

--or use the syntax

INSERT INTO test VALUES (
    002, 'POINT(44.1790991 -84.4412174563)');
--Sent Schema to target
--Setup triggers/routers
--Send load data

**ACTUAL ERROR**
2017-11-28 14:23:05,185 ERROR [corp] [AcknowledgeService] [qtp267760927-16] The outgoing batch 001-18 failed: [S1000,6522] A .NET Framework error occurred during execution of user-defined routine or aggregate "geography":
System.ArgumentException: 24204: The spatial reference identifier (SRID) is not valid. The specified SRID must match one of the supported SRIDs displayed in the sys.spatial_reference_systems catalog view.
System.ArgumentException:
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3326 [SymmetricDS] Bug block random 2017-12-01 04:18 2017-12-01 04:18
Reporter: besasml3 Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.28  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Batch is OK but data is missing in Mysql target database
Description: We are using SymDS in a bi-directional replication context with one corp node and many store nodes having exactly the same configuration.
Corp DB is Oracle 11 and stores DB are Mysql 5.6.
If the stores to corp replication works like a charm the corp to store does not all the time.
Most of time there is no problem.
Sometimes an INSERT batch (common) sent to all store nodes is flagged OK for all, but we notice that the data is missing in one (or several) node(s). No SQL or Network errors are reported.

Because we have foreign keys on the table, the channel replication stops for the node(s).
To resolve this we have to release foreign key checks in Mysql and update the missing data in corp DB and then the data is well replicated.
Please note that the data is well captured and the common batch is correctly defined for all store nodes. It is also correctly executed on the other nodes.

We notice this on a table with a Blob (use_stream_lobs and use_capture_old_data flags activated) but we don't know if it is the only one affected. The batch can contain one or several data event.
We haven't found any logic in this behaviour, the affected node and the missing data are totally random.
We don't know where is the issue (routing ? SQL transaction? acknowledgement management?) but the batch should not be flagged OK for the node.

Because this situation occurs several times a month, we think it should be investigated.
Is there a way to define the batches as not common? Could this resolve the issue?
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3322 [SymmetricDS] New Feature minor have not tried 2017-11-27 03:24 2017-11-27 03:24
Reporter: woehrl01 Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Improve reload performance by caching rarely changing tables
Description: Some tables can be huge, with lots of binary columns and they change rarely. The fetching of the data on a reload could lead to a big stress on the db server if it has to convert all the binary fields.

The following PR adds a feature to allow to define on the trigger_router level. If thus tables should be cached in the staging area. The first time it fetches the table, it loads it from the database and writes all the data at the same time to a new staging area. The second time it fetches the data purley from that cache.

If new data flows through the data router it clears those caches.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2980 [SymmetricDS] Improvement minor have not tried 2017-02-03 09:10 2017-11-17 08:17
Reporter: chenson Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: acknowledged Product Version: 3.9.1  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version: 3.9.1  
Summary: Support transactional sync triggers on platforms where ddl can be transactional
Description: Postgres supports DDL transactions.

This will allow triggers to be synchronized on a busy system without the chance for missing an update between the drop and create of a trigger.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3319 [SymmetricDS] Bug major always 2017-11-16 05:05 2017-11-16 05:05
Reporter: woehrl01 Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Stoping the engine on the main node via rest stops the whole system
Description: Stoping the engine on the main node via rest stops the whole system. As it writes into sym_parameter with

ALL ALL auto.start.engine false 2016-02-16 13:49:52.383 system 2017-11-16 10:58:55.800

if this is synced down to the nodes, you'll have to manually adjust all nodes.
Tags:
Steps To Reproduce: Call stop engine on the rest endpoint
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3315 [SymmetricDS] Bug major random 2017-11-14 16:15 2017-11-14 16:15
Reporter: woehrl01 Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Cache hash collision in ColumnsAccordingToTriggerHistory
Description: ColumnsAccordingToTriggerHistory sometimes has a cache collision, so we send the wrong table informations on extract.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3313 [SymmetricDS] New Feature minor have not tried 2017-11-13 15:59 2017-11-13 15:59
Reporter: woehrl01 Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Propagate default GUID from MSSQL to SQLITE
Description: Currently it is not possible to sync a default Guid Column to Sqlite. This PR adds that mapping.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3312 [SymmetricDS] Bug minor have not tried 2017-11-13 15:52 2017-11-13 15:52
Reporter: woehrl01 Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Compare tablename case insensitiv on SQLite on trigger creation
Description: This PR changes the comparison if trigger exists on table to case insensitiv, otherwise this could lead to the following error (which gets ignored) if the tablename is quoted (somehow)

[mobil-2] - TriggerRouterService - Cleaning up trigger hist row of 640 after fai
ling to create the associated trigger
[mobil-2] - TriggerRouterService - Failed to create triggers for GR_APPOINTMENT2
CUSTOMER
org.jumpmind.db.sql.SqlException: [SQLITE_ERROR] SQL error or missing database (
trigger SYM_ON_I_FOR_XXX_M2C_MBL already exists)
        at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate
.java:288)
        at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3311 [SymmetricDS] Improvement minor have not tried 2017-11-13 08:16 2017-11-13 08:16
Reporter: woehrl01 Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: MSSQL select varbinary from insert/deleted instead of origin table
Description: This PR changes the trigger so that on MSSQL the value of blob fields are selected from the inserted/deleted virtual table instead of selecting it from the origin table.

This only works if it is a `varbinary(max)` field, so we filter based on that.

This reduces the access to the origin table and thus improves the trigger performance.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3310 [SymmetricDS] Improvement minor have not tried 2017-11-13 07:23 2017-11-13 07:23
Reporter: woehrl01 Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Refactored auto.sync.config.at.startup and auto.sync.config.after.upgrade to be independent
Description: Currently `auto.sync.config.at.startup` only works in conjunction with `auto.sync.config.after.upgrade`.

And there is no way to force an update of the configuration without requiring a version upgrade.

This PR changes that behaviour so that `auto.sync.config.at.startup` always syncs the config at startup, While `auto.sync.config.after.upgrade` only syncs the config after an upgrade. So both parameter do now what they are named as.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3305 [SymmetricDS] Bug minor have not tried 2017-11-06 12:57 2017-11-10 08:37
Reporter: mmichalek Platform:  
Assigned To: mmichalek OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.8.0  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Removing a channel can cause errors during push/pull
Description: Given preconditions:
1) cluster.lock.enabled=true
2) Channels set up using queue names other than default.
3) Sync some data on a non-default queue so that rows get created in sym_node_communication.

Now, assign trigger back to the default channel, and remove the non-default channel. The rows pointing at the new queue will hang around in the sym_node_communication and cause errors like this during PUSH/PULL:

2017-11-06 12:47:39,579 ERROR [store-002] [NodeCommunicationService] [store-002-pull-product-5] Failed to execute PULL for node 000 and channel product
java.lang.NullPointerException
    at org.jumpmind.symmetric.service.impl.PullService.execute(PullService.java:117)
    at org.jumpmind.symmetric.service.impl.NodeCommunicationService$1.run(NodeCommunicationService.java:519)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
2017-11-06 12:47:39,582 ERROR [store-002] [NodeCommunicationService] [store-002-push-product-5] Failed to execute PUSH for node 000 and channel product
java.lang.NullPointerException
    at org.jumpmind.symmetric.service.impl.PushService.execute(PushService.java:145)
    at org.jumpmind.symmetric.service.impl.NodeCommunicationService$1.run(NodeCommunicationService.java:519)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0001078)
ivan.konev   
2017-11-10 07:14   
Strongly agreed. Got same issue.
(0001079)
ivan.konev   
2017-11-10 07:22   
Sure that can be cleaned out manually by purging tables/correcting table with triggers or just disable cluster.lock.enable if not using clustering, anyway clustering gives only failover functionality.
(0001080)
ivan.konev   
2017-11-10 08:37   
Additional - does not required removing a channel. Just change queue name back or to something else.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3309 [SymmetricDS] Bug block unable to reproduce 2017-11-10 04:11 2017-11-10 04:12
Reporter: sunil.mali Platform:  
Assigned To: OS:  
Priority: immediate OS Version:  
Status: new Product Version: 3.8.9  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: [main] - DataLoaderService - Failed while parsing batch java.lang.NullPointerException
Description: Hi,
I am getting this error

[main] - DataLoaderService - Failed while parsing batch
java.lang.NullPointerException
        at org.jumpmind.symmetric.io.data.writer.SimpleStagingDataWriter.writeLine(SimpleStagingDataWriter.java:218)
        at org.jumpmind.symmetric.io.data.writer.SimpleStagingDataWriter.process(SimpleStagingDataWriter.java:179)
        at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromTransport(DataLoaderService.java:500)
        at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromPush(DataLoaderService.java:384)
        at org.jumpmind.symmetric.web.PushUriHandler.push(PushUriHandler.java:83)
        at org.jumpmind.symmetric.web.PushUriHandler.handle(PushUriHandler.java:68)
        at org.jumpmind.symmetric.web.SymmetricServlet.service(SymmetricServlet.java:114)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
        at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:474)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
        at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:349)
        at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:783)
        at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
        at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:798)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1434)
        at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Thread.java:745)


Everything was working fine till 5th Nov 2017.
on 6th nov my m/c got shutdown abruptly. Since that time the data not getting pushed to main server from slave server.
PLease suggest steps or solution to solve this problem .

Thanks
Sunil Mali
Tags:
Steps To Reproduce:
Additional Information: M/c got shutdown abruptly. Windows 7 is the OS
Attached Files:
Notes
(0001077)
sunil.mali   
2017-11-10 04:12   
Database we are using is mysql

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3308 [SymmetricDS] Task major have not tried 2017-11-09 14:44 2017-11-09 14:44
Reporter: anthony.vitale@sonymusic.com Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.7.20  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Performing Full Upgrade of SymmetricDS Steps
Description: Dear Sirs

We Currently Successfully Run SymmetricDS 3.7.2 between a PostgreSql Master to Sybase Target and it works very Well.

Recently my developers attempted to Upgrade to SymmetricDS 3.8.29 and it failed.

They Followed The Brief Instructions found in the Manual Under F.1 Full Upgrade.

However, I would like to understand if there are Any Steps in the Initial Startup of a Upgraded SymmetricDS.

They Did exactly the Steps 1 thru 7,

However when SymmetricDS Restarted (or was Started as we have normally Start it) We Ran into an issue because the version of Postgresql jdbc driver we used referred to a system level column that was removed in the Database System Table in Postgres v9, So we got all these Errors

[PostgreSqlDdlReader] [symmetric-engine-startup-0] Failed to read table: sym_node_identity. Error: ERROR: column t1.tgisconstraint does not exist

We figured out the issue, and upgraded the JDBC Driver and Re-Started again.

 I can See in the Logs that SymmetricDS attempts to alter the Sym_ Tables and Drop Some ..etc.

However I saw These Messages

2017-09-21 16:07:48,835 WARN [gras-001] [AseDdlBuilder] [symmetric-engine-startup-1] Data cannot be retained in table sym_node_communication because of the addition of the required column queue . The data is backed up in Table [name=sym_node_communication_; 12 columns], consider manually migrating the data back or dropping this temp table.
2017-09-21 16:07:48,849 INFO [gras-001] [AseSymmetricDialect] [symmetric-engine-startup-1] There are SymmetricDS tables that needed altered
2017-09-21 16:07:48,850 INFO [gras-001] [AseSymmetricDialect] [symmetric-engine-startup-1] DDL applied: SET quoted_identifier on
2017-09-21 16:07:48,850 INFO [gras-001] [AseSymmetricDialect] [symmetric-engine-startup-1] DDL applied: SET quoted_identifier on
2017-09-21 16:07:48,874 INFO [gras-001] [AseSymmetricDialect] [symmetric-engine-startup-1] DDL applied: IF EXISTS (SELECT 1 FROM dbo.sysobjects WHERE type = 'U' AND name = 'sym_node_')
BEGIN
    DROP TABLE DAOA001.dbo.sym_node_ END
2017-09-21 16:07:48,874 INFO [gras-001] [AseSymmetricDialect] [symmetric-engine-startup-1] DDL applied: SET quoted_identifier on
2017-09-21 16:07:49,137 INFO [gras-001] [AseSymmetricDialect] [symmetric-engine-startup-1] DDL applied: CREATE TABLE DAOA001.dbo.sym_node_(
    node_id VARCHAR(50) NOT NULL,
    node_group_id VARCHAR(50) NOT NULL,
    external_id VARCHAR(50) NOT NULL,
    sync_enabled SMALLINT DEFAULT 0 NULL,
    sync_url VARCHAR(255) NULL,
    schema_version VARCHAR(50) NULL,
    symmetric_version VARCHAR(50) NULL,
    database_type VARCHAR(50) NULL,
    database_version VARCHAR(50) NULL,
    heartbeat_time DATETIME NULL,
    timezone_offset VARCHAR(6) NULL,
    batch_to_send_count NUMERIC(12,0) DEFAULT 0 NULL,
    batch_in_error_count NUMERIC(12,0) DEFAULT 0 NULL,
    created_at_node_id VARCHAR(50) NULL,
    deployment_type VARCHAR(50) NULL,
    PRIMARY KEY (node_id)
)
2017-09-21 16:07:49,140 INFO [gras-001] [AseSymmetricDialect] [symmetric-engine-startup-1] DDL applied: INSERT INTO DAOA001.dbo.sym_node_ (node_id,node_group_id,external_id,sync_enabled,sync_url,schema_version,symmetric_version,database_type,data
base_version,heartbeat_time,timezone_offset,batch_to_send_count,batch_in_error_count,created_at_node_id,deployment_type) SELECT node_id,node_group_id,external_id,sync_enabled,sync_url,schema_version,symmetric_version,database_type,database_versio
n,heartbeat_time,timezone_offset,batch_to_send_count,batch_in_error_count,created_at_node_id,deployment_type FROM DAOA001.dbo.sym_node


And Symmds would not start and work

So We Restored the 8.7.2 Software, and I dropped all sym_ Tables in Source/Target and BAsically Restarted from Scratch the installation

We Want to Try this Again (with the Proper JDBC Driver)

However, I would like to know what the Appropriate steps for Restart should be in order to Upgrade the Software/Sym schema without having to lose my existing configuration.


Please let me know

Thank you
Anthony
Tags:
Steps To Reproduce: Install any Inferior version of SymmetricDS and have it working operationally between 1 or more tables in a Source/Target Replication configuration

And then Perform the Steps listed within the Manual

When SymmetricDS is started after a major or minor software update, it will alter its database tables with any changes needed for that release.
F.1. Full Upgrade
For major releases and clean upgrades, copy old settings into a new installation using the following steps:

1.Stop the old SymmetricDS.
2.Backup the old SymmetricDS folder by renaming it.
3.Unzip the SymmetricDS distribution.
4.Copy old files from "engines" folder. (These files contain database connection information and engine settings.)
5.Copy old files from "conf" folder. (These files contain settings for ports, wrapper, and logging.) Check to see if any new changes need merged.
6.Copy old files from "security" folder. (These files contain keys for encryption.)
7.Restart SymmetricDS.

And Explain what needs to occur within the Database From a Restart Standpoint in order to maintain the Existing Configuration within the DAtabase (routers, channels, transform_tables, transform_columns, node_group_link, node_group, node, conflict) and have it Startup correctly in the Upgraded Version.

Thanks
Anthony V
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3307 [SymmetricDS Pro] Bug minor have not tried 2017-11-09 13:32 2017-11-09 13:32
Reporter: josh-a-hicks Platform:  
Assigned To: josh-a-hicks OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.8.32  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version: 3.8.32  
Summary: MSSQL Server quick config wizard will not show schemas from a different database properly
Description: The change event listener on the catalog drop down was only repopulating tables but not the schema drop down as well.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2970 [SymmetricDS] Bug major sometimes 2017-01-25 05:57 2017-11-05 20:57
Reporter: nuralimca Platform:  
Assigned To: maxwellpettit OS:  
Priority: high OS Version:  
Status: assigned Product Version: 3.7.33  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: db connection leaks after engine stop
Description: Dear All,

I have embedded Symmetric DS 3.7.33 into my webapp. I have Web UI which allows user to start and stop Symmetric DS Engine.

When user click on Stop button, I internally call below method on server side:
ISymmetricEngine.destroy()

Which first stop() and then destroy() the engine.

I found that after destroy() called if I check then there are few database connections are not closed (connection for database associated with given engine).

Overall, even after calling destroy() on engine, there are database connection leak.

I was expecting that once I call destroy() method all the database connection should be closed.

Please suggest if there is any other cleaner way to stop/destroy engine so that database connection leak is not happened or fix database connection leak issue with stop/destroy of engine.

Thanks,
Nurali
Tags:
Steps To Reproduce: 1. start source engine for source database with stream.to.file.enabled=true
2. start target engine for target database.
3. make sure there is active data copy going on, like keep huge initial load and on start of both engine data is continuously getting copied from source to target.
4. stop source engine and stop target engine.
5. try to delete target database.

For step 5, delete of target database is failing with error that there are active connections.
Additional Information:
Attached Files:
Notes
(0000960)
nuralimca   
2017-01-25 06:10   
Dear All,

*Issue Details:*
I have also analyzed the issue. The issue happens when there is continuous data copy happening between source and target engine. This issue generally easily reproduce for initial load with some good amount of data to be copied.

When I call ClientSymmetricEngine.destroy(), it internally call AbstractSymmetricEngine.stop() in which thread.interrupt() is called for processInfo.getThread().

It happens that ..

1. ClientSymmetricEngine.destroy() is called at first
2. AbstractSymmetricEngine.stop() will be call
3. thread.interrupt() will be called
4. destroy() will call ((BasicDataSource)dataSource).close()
5. thread will throw org.jumpmind.exception.IoException: This thread was interrupted

Here, thread which got interrupted at step 3 is push thread with thread name "tnt3_rt-0000-push-1".

So, it happens that the push thread got interrupted at step-3 and dataSource.close() called before the push thread actually complete and got interrupt. This somehow leads to connection leaks for source database.

*One way to Fix:*
In AbstractSymmetricEngine.stop() after interrupting the thread, we should wait to join the thread.

thread.interrupt()
thread.join()

Thanks,
Nurali

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3295 [SymmetricDS] Bug trivial always 2017-10-29 19:21 2017-10-29 19:21
Reporter: rlanewala Platform:  
Assigned To: OS:  
Priority: urgent OS Version:  
Status: new Product Version: 3.8.30  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Sync from MySql to MSSql initial load - table create fails on Decimal Precision
Description: When trying to setup and initial load data from MySql to SQL SERVER 2012. The initial load fails on creating table with error "Column or parameter 0000007: Specified column precision 40 is greater than the maximum precision of 38."

MySql Table:
Running alter sql:
SET quoted_identifier on;
SET quoted_identifier on;
CREATE TABLE "calcbillmonthtotal_savings"(
    "school" INT NOT NULL,
    "resource" VARCHAR(11) NOT NULL,
    "unit_of_measure" VARCHAR(5) NOT NULL,
    "month" DATETIME NOT NULL,
    "students" INT NOT NULL,
    "actual_cost" DECIMAL(34,4),
    "actual_usage" DECIMAL(40,4),
    "actual_peak_usage" DECIMAL(40,4),
    "actual_offpeak_usage" DECIMAL(40,4),
    "actual_usage_per_student" DECIMAL(42,12),
    "baseline_start" DATETIME NOT NULL,
    "baseline_end" DATETIME NOT NULL,
    "baseline_months" INT NOT NULL,
    "historic_cost_per_unit" DECIMAL(20,12) DEFAULT 0.000000000000 NOT NULL,
    "baseline_usage_per_student" DECIMAL(20,12),
    "historic_cost" DECIMAL(60,16) DEFAULT 0.0000000000000000 NOT NULL,
    "usage_saving" DECIMAL(53,12),
    "usage_saving_per_student" DECIMAL(43,12),
    "cost_saving" DECIMAL(65,24) DEFAULT 0.000000000000000000000000 NOT NULL,
    "cost_saving_per_student" DECIMAL(63,24) DEFAULT 0.000000000000000000000000 NOT NULL,
    "emission_saving" DECIMAL(63,18),
    PRIMARY KEY ("school", "resource", "unit_of_measure", "month", "students", "actual_cost", "actual_usage", "actual_peak_usage", "actual_offpeak_usage", "actual_usage_per_student", "baseline_start", "baseline_end", "baseline_months", "historic_cost_per_unit", "baseline_usage_per_student", "historic_cost", "usage_saving", "usage_saving_per_student", "cost_saving", "cost_saving_per_student", "emission_saving")
);


How to configure or setup Sync successfully?
Tags: mssql
Steps To Reproduce: * Setup an Server => Client sync from MySql to Sql Server 2012
* initiate a initial load.
* Fails when creating the table that has Decimal and precision greater than 38.

Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3290 [SymmetricDS Pro] Bug minor always 2017-10-27 10:47 2017-10-27 10:47
Reporter: gilles.riand Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.7.36  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: A lot of jetty directory in /tmp
Description: It's just a question : I have a lot of directory in SymmetricdDS\tmp

jetty-0.0.0.0-xxxx-web-_-any-xxxxxxxxx.dir

Ca I delete these olds directories without any problems ?

Thank you



Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3289 [SymmetricDS Pro] Bug minor have not tried 2017-10-27 09:05 2017-10-27 09:05
Reporter: mmichalek Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.0  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Groups are incorrectly filtered out on Add Node wizard
Description: When adding a new node using the wizard (Manage > Nodes > Add...) the list of available groups may be overfiltered if there isn't a group link both ways with the current node that you are adding the node from.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3276 [SymmetricDS Pro] Task feature N/A 2017-10-10 09:15 2017-10-18 12:45
Reporter: gilles.riand Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.7.36  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: After a Database crash on a Node : What's te best way to reconnect this node ?
Description: Hello everybody

I Would like to know if you have experience when a database crash and what have do to restart this Node with a copy of an other database node.

       -----------------SERVER --------------------------------------------------------------------
       | | |
STORE1 STORE2 STORE3


The Store1 CRASH with no repair/rebuild possible.
So a make a copy of the Master (SERVER) database and I push in STORE1
after I set my own generators ...

But with a symmetricds tables/generators ??? what we need to do ?
* DELETE some records ? DROP TABLES ?
* register Node ?

thank you for your replies










  



Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0001074)
elong   
2017-10-18 12:45   
It might be easiest to give it a engines/node.properties file, then run "bin/symadmin uninstall" to drop all the SYM objects. Then when you start SymmetricDS, it will come up like it's new, create its objects, and try to register with server. On the server side, you'll want to open registration again (flip the sym_node_security.registration_enabled or run "bin/sym_admin open-registration"). Also in server database, it's a good idea to run "delete from sym_incoming_batch where node_id = ?" so that you don't skip any batches.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3221 [SymmetricDS Pro] New Feature minor have not tried 2017-08-09 09:49 2017-09-25 08:55
Reporter: kstojanovska Platform:  
Assigned To: kstojanovska OS:  
Priority: normal OS Version:  
Status: assigned Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Support for SYM_NODE_GROUP_CHANNEL_WND and control
Description: Add gui support for SYM_NODE_GROUP_CHANNEL_WND
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3225 [SymmetricDS] Task major always 2017-08-16 10:34 2017-09-20 12:50
Reporter: neelam.thavare Platform:  
Assigned To: OS:  
Priority: immediate OS Version:  
Status: new Product Version: 3.8.26  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: SQL QuerySupport for Data Load Filter
Description: Hello,

I have two nodes; one store and one corp. Whenever a record is inserted in a Table1 of store node, I want to check that if record with some value "xyz" exists in Table5 of corp node. If it exists, then only the data in Table1 of store node should be synced to Table1 of corp node. After reading the documentation of Symmetric DS, I came across the Data Load Filters. It says that it only supports BSH scripts now and may support SQL later. So, I want to know if SQL support is available and if yes then what it (SQL Query) should return? and if not then how can I achieve this using BSH script?

Should I write a code to query Table5 and based on query output return true or false value? I am using SQL Server database.

Your help is valued.

Thank you in advance.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0001073)
elong   
2017-09-20 12:50   
You can query from a load filter or from transforms:

count = engine.getSqlTemplate().queryForInt("select count(*) from mytable where id = ?", new Object[] { "123" })

A load filter or load transform will query the target database. An extract transform will query the source database.

If this isn't a defect or feature request, let's close it. Questions and discussion take place on the forums here:

https://sourceforge.net/p/symmetricds/discussion/

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3251 [SymmetricDS] Bug minor always 2017-09-15 13:06 2017-09-15 13:06
Reporter: ivan.konev Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.24  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Mysql BIGINT UNSIGNED transform always processed as signed and giver error on larger thant 63 bits numbers.
Description: Setup - mysql 5.5-5.7, i'm trying to replicate table with BIGINT(32) UNSIGNED field. It gives error when field value exceeds BIGINT SIGNED value.

The outgoing batch 001-122539 failed: [22001,1264] Data truncation: Out of range value for column 'intval' at row 1
Tags: extract
Steps To Reproduce: 2 tables , 2 nodes. Table test replicated w/o any transforms using default values in trigger+trigger_router.

CREATE TABLE `test` (
    `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
    `intval` BIGINT(32) UNSIGNED NOT NULL DEFAULT '0',
    PRIMARY KEY (`id`)
)
COLLATE='utf8mb4_bin' ENGINE=InnoDB AUTO_INCREMENT=4;

Insert some data:

INSERT IGNORE INTO `test` (`id`, `intval`) VALUES
    (2, 1),
    (3, 8643130000000077777);

Try to update value to larget than SIGNED BIGINT, like 9643130000000077777 and it will fail replication with error above on DESTINATION node.

2017-09-15 20:01:39,666 ERROR [test-001] [DataLoaderService] [dataloader-home-000-1] Failed to load batch 000-122539 StackTraceKey [SqlException:1431669847]
2017-09-15 20:02:39,630 INFO [test-001] [IncomingBatchService] [dataloader-home-000-1] Retrying batch 000-122539
2017-09-15 20:02:39,633 INFO [test-001] [DefaultDatabaseWriter] [dataloader-home-000-1] Failed to process update event in batch 122539.
Failed sql was: update `monitor`.`test` set `intval` = ? where `id` = ?
Failed sql parameters: [9643130000000077777, 3]
Failed sql parameters types: [-5, 4]
Failed sql state and code: 22001 (1264)
Failed pk data was: "3"
Failed row data was: "3","9643130000000077777"
Failed old data was: "3","8643130000000077777"
 StackTraceKey [SqlException:1431669847]
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3242 [SymmetricDS Pro] Bug major always 2017-08-30 13:46 2017-08-30 13:46
Reporter: kpatierno Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.28  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Installing DS in a file path that contains whitespace stops symcc from running
Description: Installing any version of SNAPSHOT.jar into a directory with a file name that contains whitespace (i.e. 'sym ds', 'install here'...) makes it impossible to launch the SymmetricDS Pro Control Center.

*The install does work correctly. Symcc can be launched by manually renaming the directory without the whitespace.*
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3236 [SymmetricDS] Improvement minor have not tried 2017-08-25 14:31 2017-08-26 09:00
Reporter: gwilmer Platform:  
Assigned To: gwilmer OS:  
Priority: normal OS Version:  
Status: assigned Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Allow for an "all nodes" value in lookup table router
Description: The lookup table router currently routes rows based on an external id column in a lookup table. Currently the column must be the value of a specific node's external id. We should allow the user to specify a value that would mean "send to all nodes". I.E. if the external id on the lookup table was a specific external id, then route to that external id, if the external id on the lookup table is the configured "all nodes" value, then route to all nodes.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3231 [SymmetricDS] Bug minor have not tried 2017-08-21 15:17 2017-08-21 15:17
Reporter: josh-a-hicks Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: DB2 zOS triggers are using to_clob function which is not available
Description: Trigger template for string columns on DB2 zOS was referencing a to_clob function which is not available on this system.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3230 [SymmetricDS Pro] Improvement minor have not tried 2017-08-21 10:12 2017-08-21 10:12
Reporter: gwilmer Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: iSeries Metadata Retrieval Slow and Can Lockup UI if Browsed from Explorer
Description: iSeries Metadata Retrieval Slow and Can Lockup UI if Browsed from Explorer. Determine if we can speed up metadata retrieval by other means other than methods on the jdbc driver.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3185 [SymmetricDS] Bug block sometimes 2017-07-04 02:40 2017-07-19 12:19
Reporter: sunil.mali Platform:  
Assigned To: OS:  
Priority: immediate OS Version:  
Status: new Product Version: 3.8.9  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Some of the tables are not getting sync
Description: We have some transactional tables which we sync from store to corp, out of which few tables are not getting sync. Those tables were syncing 6 days back and suddenly it stopped syncing. So i have a situation where few transactional tables are synced but other tables are not synced since last 6 days. What can be done to resync those tables and to avoid such situation.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0001059)
sunil.mali   
2017-07-11 07:37   
Corp to Store in working fine, but store to corp data sync not working. Only few tables are getting updated. Do we have some flags in properties which is creating the problem ?
(0001067)
elong   
2017-07-19 12:19   
You'll need to troubleshoot to find where the problem is. Look in the log to see if the push job is running periodically. If you see it running and pushing data, like the heartbeat every 15 minutes, then push is working. Next, look in the sym_outgoing_batch table for batches with a status not OK. If there is a batch with status ER, then there should be a message in the log of what is in error. If all batches are OK, then you need to see if data is being captured in sym_data. Query sym_data where the table_name is equal to your table. If data is captured, then it could be a problem with routing. The log will show errors with routing. If there is no new data being captured, then the trigger is not installed on the table. Make sure you have configured a sym_trigger and sym_trigger_router. You can restart SymmetricDS and it will check that triggers are installed.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3202 [SymmetricDS Pro] Bug minor have not tried 2017-07-18 14:01 2017-07-18 14:01
Reporter: jwilmer Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.28  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Incoming Batch UI Bug
Description: On the Incoming Batch screen a batch with multiple tables shows incorrect columns in the more info popup tab.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3201 [SymmetricDS] Bug major sometimes 2017-07-14 01:52 2017-07-14 07:42
Reporter: megarajtm Platform:  
Assigned To: OS:  
Priority: high OS Version:  
Status: new Product Version: 3.7.33  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: File descriptors are not closed in staging area
Description: Hi

When I copy data from one database to another using symmetric DS, batches are loaded to a file system(Staging area).
  
So once the batches are copied to the target, the batches on the file system gets deleted but however the file descriptors are not closed. This leads to resource leakage and eventually the file system gets full and the creation of new batches fail with the below exception -

5000org.jumpmind.exception.IoException: java.io.IOException: No space left on device (path /usr/sap/ljs/temp/pw6_rt-0000/outgoing/5000/0000000019.create, working dir /usr/sap/ljs)
    at org.jumpmind.symmetric.io.data.writer.StagingDataWriter.print(StagingDataWriter.java:117)
    at org.jumpmind.symmetric.io.data.writer.AbstractProtocolDataWriter.println(AbstractProtocolDataWriter.java:252)
    at org.jumpmind.symmetric.io.data.writer.AbstractProtocolDataWriter.write(AbstractProtocolDataWriter.java:161)
    at org.jumpmind.symmetric.service.impl.DataExtractorService$MultiBatchStagingWriter.write(DataExtractorService.java:1294)
    at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.write(NestedDataWriter.java:64)
    at org.jumpmind.symmetric.model.ProcessInfoDataWriter.write(ProcessInfoDataWriter.java:65)
    at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.write(NestedDataWriter.java:64)
    at org.jumpmind.symmetric.io.data.writer.TransformWriter.write(TransformWriter.java:204)
    at org.jumpmind.symmetric.io.data.DataProcessor.forEachDataInTable(DataProcessor.java:200)
    at org.jumpmind.symmetric.io.data.DataProcessor.forEachTableInBatch(DataProcessor.java:170)
    at org.jumpmind.symmetric.io.data.DataProcessor.process(DataProcessor.java:116)
    at org.jumpmind.symmetric.service.impl.DataExtractorService.extractOutgoingBatch(DataExtractorService.java:761)
    at org.jumpmind.symmetric.service.impl.DataExtractorService.execute(DataExtractorService.java:1124)
    at org.jumpmind.symmetric.service.impl.NodeCommunicationService$2.run(NodeCommunicationService.java:396)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:807)
Caused by: java.io.IOException: No space left on device (path /usr/sap/ljs/temp/pw6_rt-0000/o

Regards,
Megaraj
Tags:
Steps To Reproduce: This issue happens sometimes when there are around 5k records to be copied.
Additional Information:
Attached Files:
Notes
(0001064)
chenson   
2017-07-14 07:41   
(Last edited: 2017-07-14 07:42)
Have you tested with the latest version?

Maybe this fixed your issue:
https://www.symmetricds.org/issues/view.php?id=3181

I have not heard of other reports of this on 3.7.


View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3175 [SymmetricDS Pro] Bug minor sometimes 2017-06-30 10:18 2017-07-12 13:52
Reporter: gilles.riand Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.26  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: SymmetricPRo version / With Interbase XE
Description: 2017-06-30 16:12:47,933 ERROR [server] [DatabaseInfoPanel] [qtp198761306-233] StackTraceKey.init [DriverNotCapableException:3593356605]
interbase.interclient.DriverNotCapableException: [interclient] Unsupported feature: Using a JDBC method which is not yet supported.
See API reference for exception interbase.interclient.DriverNotCapableException
    at interbase.interclient.DatabaseMetaData.getClientInfoProperties(Unknown Source)
    at org.apache.commons.dbcp.DelegatingDatabaseMetaData.getClientInfoProperties(DelegatingDatabaseMetaData.java:1171)
    at org.jumpmind.vaadin.ui.sqlexplorer.DatabaseInfoPanel.<init>(DatabaseInfoPanel.java:69)
    at org.jumpmind.vaadin.ui.sqlexplorer.SqlExplorer$8.valueChange(SqlExplorer.java:457)
    at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:508)
    at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:198)
    at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:161)
    at com.vaadin.server.AbstractClientConnector.fireEvent(AbstractClientConnector.java:1008)
    at com.vaadin.ui.AbstractField.fireValueChange(AbstractField.java:1159)
    at com.vaadin.ui.AbstractField.setValue(AbstractField.java:570)
    at com.vaadin.ui.AbstractSelect.setValue(AbstractSelect.java:727)
    at com.vaadin.ui.AbstractField.setValue(AbstractField.java:468)
    at com.vaadin.ui.AbstractSelect.setValue(AbstractSelect.java:694)
    at org.jumpmind.vaadin.ui.sqlexplorer.DbTree.refresh(DbTree.java:125)
    at org.jumpmind.vaadin.ui.sqlexplorer.SqlExplorer.refresh(SqlExplorer.java:663)
    at com.jumpmind.symmetric.console.ui.screen.e.onRefresh(ExploreScreen.java:60)
    at com.jumpmind.symmetric.console.ui.b$3.run(MainWindow.java:398)
    at com.jumpmind.symmetric.console.ui.b.goToView(MainWindow.java:410)
    at com.jumpmind.symmetric.console.ui.b$a.menuSelected(MainWindow.java:530)
    at com.vaadin.ui.MenuBar.changeVariables(MenuBar.java:199)
    at com.vaadin.server.communication.ServerRpcHandler.changeVariables(ServerRpcHandler.java:603)
    at com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:422)
    at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:273)
    at com.vaadin.server.communication.PushHandler$2.run(PushHandler.java:149)
    at com.vaadin.server.communication.PushHandler.callWithUi(PushHandler.java:243)
    at com.vaadin.server.communication.PushHandler.onMessage(PushHandler.java:503)
    at com.vaadin.server.communication.PushAtmosphereHandler.onMessage(PushAtmosphereHandler.java:88)
    at com.vaadin.server.communication.PushAtmosphereHandler.onRequest(PushAtmosphereHandler.java:78)
    at org.atmosphere.cpr.AsynchronousProcessor.action(AsynchronousProcessor.java:199)
    at org.atmosphere.cpr.AsynchronousProcessor.suspended(AsynchronousProcessor.java:107)
    at org.atmosphere.container.Jetty9AsyncSupportWithWebSocket.service(Jetty9AsyncSupportWithWebSocket.java:180)
    at org.atmosphere.cpr.AtmosphereFramework.doCometSupport(AtmosphereFramework.java:2075)
    at org.atmosphere.websocket.DefaultWebSocketProcessor.dispatch(DefaultWebSocketProcessor.java:571)
    at org.atmosphere.websocket.DefaultWebSocketProcessor$3.run(DefaultWebSocketProcessor.java:333)
    at org.atmosphere.util.VoidExecutorService.execute(VoidExecutorService.java:101)
    at org.atmosphere.websocket.DefaultWebSocketProcessor.dispatch(DefaultWebSocketProcessor.java:328)
    at org.atmosphere.websocket.DefaultWebSocketProcessor.invokeWebSocketProtocol(DefaultWebSocketProcessor.java:425)
    at org.atmosphere.container.Jetty9WebSocketHandler.onWebSocketText(Jetty9WebSocketHandler.java:92)
    at org.eclipse.jetty.websocket.common.events.JettyListenerEventDriver.onTextMessage(JettyListenerEventDriver.java:128)
    at org.eclipse.jetty.websocket.common.message.SimpleTextMessage.messageComplete(SimpleTextMessage.java:69)
    at org.eclipse.jetty.websocket.common.events.AbstractEventDriver.appendMessage(AbstractEventDriver.java:65)
    at org.eclipse.jetty.websocket.common.events.JettyListenerEventDriver.onTextFrame(JettyListenerEventDriver.java:122)
    at org.eclipse.jetty.websocket.common.events.AbstractEventDriver.incomingFrame(AbstractEventDriver.java:161)
    at org.eclipse.jetty.websocket.common.WebSocketSession.incomingFrame(WebSocketSession.java:309)
    at org.eclipse.jetty.websocket.common.extensions.ExtensionStack.incomingFrame(ExtensionStack.java:214)
    at org.eclipse.jetty.websocket.common.Parser.notifyFrame(Parser.java:220)
    at org.eclipse.jetty.websocket.common.Parser.parse(Parser.java:258)
    at org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection.readParse(AbstractWebSocketConnection.java:632)
    at org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection.onFillable(AbstractWebSocketConnection.java:480)
    at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
    at java.lang.Thread.run(Unknown Source)
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3171 [SymmetricDS] Bug major always 2017-06-29 12:28 2017-06-29 12:28
Reporter: rossenzahariev Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.26  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Trigger Rebuild: custom_before_insert_text is ignored when rebuilding triggers
Description: I am working on building a migration from MSSQL to MYSQL.
As mention here:
http://www.symmetricds.org/issues/view.php?id=2457
and here http://www.symmetricds.org/issues/view.php?id=2458

there is an issue with the identity being lost on inserts. To work around the issue it should be possible to create custom before and after insert-trigger SQL in order to restore the value, so that it is properly returned.

The fields in the sym_trigger are available.

But though I have set all triggers to have:


UPDATE gp_dev.dbo.sym_trigger SET custom_before_insert_text = 'DECLARE @BackupIdentitySeederFunc VARCHAR(1000); SET @BackupIdentitySeederFunc =''DECLARE @BackupIdentity TABLE(IdentityID INT IDENTITY(''+CAST(@@IDENTITY AS VARCHAR)+'', 1)) INSERT @BackupIdentity DEFAULT VALUES'';'

UPDATE gp_dev.dbo.sym_trigger SET custom_on_insert_text = 'EXEC(@BackupIdentitySeederFunc)'

And have rebuild the triggers, the triggers will not get created.

The server reports an issue:

2017-06-29 18:22:01,334 INFO [server] [MsSqlSymmetricDialect] [server-sync-triggers-2] Failed to create trigger: create trigger SYM_ON_I_FOR_T_DSTRBTRS_SRVR on "gp_dev"."dbo"."t_distributors" with execute as caller after insert as begin
declare @NCT int
set @NCT = @@OPTIONS & 512
set nocount on
declare @TransactionId varchar(1000)
if (@@TRANCOUNT > 0) begin
select @TransactionId = convert(VARCHAR(1000),transaction_id) from sys.dm_exec_requests where session_id=@@SPID and open_transaction_count > 0
end

if ("gp_dev".dbo.sym_triggers_disabled() = 0) begin
insert into "gp_dev"."dbo".sym_data
               (table_name, event_type, trigger_hist_id, row_data, channel_id, transaction_id, source_node_id, external_data, create_time)
select 't_distributors','I', 2015,
case when inserted."ID" is null then '' else ('"' + convert(varchar(40), inserted."ID",2) + '"') end+','+
case when inserted."address_1" is null then '' else '"' + replace(replace(convert(varchar(100),inserted."address_1") ,'\','\\'),'"','\"') + '"' end+','+
case when inserted."address_2" is null then '' else '"' + replace(replace(convert(varchar(100),inserted."address_2") ,'\','\\'),'"','\"') + '"' end+','+
case when inserted."city" is null then '' else '"' + replace(replace(convert(varchar(100),inserted."city") ,'\','\\'),'"','\"') + '"' end+','+
case when inserted."country" is null then '' else ('"' + convert(varchar(40), inserted."country",2) + '"') end+','+
case when inserted."company" is null then '' else '"' + replace(replace(convert(varchar(100),inserted."company") ,'\','\\'),'"','\"') + '"' end+','+
case when inserted."email" is null then '' else '"' + replace(replace(convert(varchar(100),inserted."email") ,'\','\\'),'"','\"') + '"' end+','+
case when inserted."firstname" is null then '' else '"' + replace(replace(convert(varchar(100),inserted."firstname") ,'\','\\'),'"','\"') + '"' end+','+
case when inserted."homepage" is null then '' else '"' + replace(replace(convert(varchar(100),inserted."homepage") ,'\','\\'),'"','\"') + '"' end+','+
case when inserted."lastname" is null then '' else '"' + replace(replace(convert(varchar(100),inserted."lastname") ,'\','\\'),'"','\"') + '"' end+','+
case when orig."notes" is null then '' else '"' + replace(replace(cast(orig."notes" as varchar(max)),'\','\\'),'"','\"') + '"' end+','+
case when orig."phone" is null then '' else '"' + replace(replace(cast(orig."phone" as varchar(max)),'\','\\'),'"','\"') + '"' end+','+
case when inserted."title" is null then '' else ('"' + convert(varchar(40), inserted."title",2) + '"') end+','+
case when inserted."zip" is null then '' else '"' + replace(replace(convert(varchar(50),inserted."zip") ,'\','\\'),'"','\"') + '"' end+','+
case when inserted."address_id" is null then '' else ('"' + convert(varchar(40), inserted."address_id",2) + '"') end+','+
case when inserted."currency_id" is null then '' else ('"' + convert(varchar(40), inserted."currency_id",2) + '"') end+','+
case when inserted."import_costs_share" is null then '' else ('"' + convert(varchar(40), inserted."import_costs_share",2) + '"') end+','+
case when inserted."responsible_person_id" is null then '' else ('"' + convert(varchar(40), inserted."responsible_person_id",2) + '"') end,
'default', @TransactionId, "gp_dev".dbo.sym_node_disabled(), null, current_timestamp

from inserted inner join "gp_dev"."dbo"."t_distributors" orig on orig."ID"=inserted."ID"

where 1=1
end
EXEC (@BackupIdentitySeederFunc)
if (@NCT = 0) set nocount off
end
---- go


It seems rebuilding is inserting the second part (EXEC...) but not the "before" part and so the creation of the trigger fails.

This is reproducible on all tables.

If unset the custom fields, the triggers are created properly, but obviously there is an issue with the ID returned.

Furthermore, it is not possible to set the "before" value from the WEB UI, which I am using.
Tags:
Steps To Reproduce: 1. Set the custom trigger fields:


UPDATE gp_dev.dbo.sym_trigger SET custom_before_insert_text = 'DECLARE @BackupIdentitySeederFunc VARCHAR(1000); SET @BackupIdentitySeederFunc =''DECLARE @BackupIdentity TABLE(IdentityID INT IDENTITY(''+CAST(@@IDENTITY AS VARCHAR)+'', 1)) INSERT @BackupIdentity DEFAULT VALUES'';'

UPDATE gp_dev.dbo.sym_trigger SET custom_on_insert_text = 'EXEC(@BackupIdentitySeederFunc)'


2. Rebuild the triggers via the WEB UI
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
1445 [SymmetricDS] Improvement minor have not tried 2013-10-17 09:58 2017-06-28 02:41
Reporter: chenson Platform:  
Assigned To: elong OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.6.0  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: improve performance of purge queries
Description: https://sourceforge.net/p/symmetricds/discussion/739236/thread/3747ece1/

erilong - Yes, that makes sense. I would even go one step further and explicitly join sym_data_event and sym_outgoing_batch.

delete from sym_data where data_id between :min_id and :max_id and create_time < : cutoff_time and data_id in ( select e. data_id from sym_data_event e where e.data_id between :min_id and :max_id ) and not exists ( select e.data_id from sym_data_event e inner join sym_outgoing_batch b on b.batch_id = e.batch_id where e.data_id between :min_id and :max_id and b.status != 'OK' and e.data_id = sym_data.data_id)
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0000724)
apuma   
2015-10-22 20:56   
It's important for user of firebird with big tables to purge
(0001046)
gilles.riand   
2017-05-04 10:24   
(Last edited: 2017-06-28 02:41)
I confirm with Interbase it's the same problem. > Not Exists or NOT IN is very slow


View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3119 [SymmetricDS] Bug minor always 2017-05-23 06:46 2017-06-27 02:58
Reporter: gilles.riand Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.7.36  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: [Interbase] Stopping Service SymmetricDS / break connections
Description: Connections to the database do not close properly

In the Interbase.log
"REPLIC3 (Server) Tue May 23 12:35:06 2017
    INET/inet_error: read errno = 10054 client host = REPLIC3 connection name = replic3 user name = REPLIC3$ server port number = 0"


Tags:
Steps To Reproduce: Install SymmetricDS, Install The Service. (With Interbase)

I think that it's possible to stop cleanly the connections. (With no Log in interbase.log)
Additional Information:
Attached Files:
Notes
(0001057)
gilles.riand   
2017-06-27 02:58   
I think it's the same Issue : https://www.symmetricds.org/issues/view.php?id=2970

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3157 [SymmetricDS] Improvement minor have not tried 2017-06-13 14:48 2017-06-19 14:51
Reporter: josh-a-hicks Platform:  
Assigned To: josh-a-hicks OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.8.26  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.8.26  
    Target Version: 3.8.26  
Summary: Allow bulk loaders to fall back to default loader when an error occurs
Description: If a bulk loader fails currently the issues need to be resolved or bulk loading needs to be turned off. Need the ability for an error in the bulk loading to retry the batch on a subsequent load using the default loader.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3154 [SymmetricDS] Bug minor have not tried 2017-06-12 13:58 2017-06-19 14:50
Reporter: kstojanovska Platform:  
Assigned To: kstojanovska OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.8.26  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.8.26  
    Target Version: 3.8.26  
Summary: Reopen registration sets created_at_node_id to be the selected node rather than registration server/managing node
Description: Reopen registration sets created_at_node_id to be the selected node rather than registration server/managing node
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2997 [SymmetricDS] Bug minor have not tried 2017-02-22 12:36 2017-06-09 09:36
Reporter: mmichalek Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.8.0  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: It's not possible to send a reload of just the files right now.
Description: It's not possible to send a reload of just the files right now.

Also, there's a secondary bug where all file file triggers are reloaded whenever a table reload request is processed.

Possibly there needs to be 2 new columns on sym_table_reload_request, file_trigger_id, file_router_id. These fields should also support ALL values, like the trigger_id, router_id do.

There are 2 workarounds to send the files now:
1) Insert a row in table_reload_request with trigger_id=ALL (or anything valid), router_id=ALL. The downside of this is that all data is also reloaded for the node along with the files.
2) Use sym_node_channel_ctl to disable routing to all nodes except the one you want to target, and touch the rows in sym_file_snapshot.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0001053)
chenson   
2017-06-06 09:38   
The initial load works with file.sync.fast.scan=true. Lets validate that and set that as the default if it works.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2450 [SymmetricDS] Improvement minor N/A 2015-11-19 16:03 2017-06-06 09:44
Reporter: elong Platform:  
Assigned To: mmichalek OS:  
Priority: normal OS Version:  
Status: acknowledged Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Preserve datetime precision, support for nanoseconds
Description: The datetime data types are currently synced with precision of milliseconds, but many platforms support microsecond and nanosecond precision. Add support for nanosecond precision, possibly using java.sql.Timestamp which supports nanos.

SQL-Server supports nanoseconds with DATETIME2, which can be one test case. Another test case is isPostgreSQL's timestamp(6) (microsecond precision). Also, syncing from one platform to another with different precision.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2044 [SymmetricDS] Bug minor always 2014-10-31 12:27 2017-06-06 09:42
Reporter: elong Platform: MySQL 5.0  
Assigned To: chenson OS:  
Priority: normal OS Version:  
Status: acknowledged Product Version: 3.6.0  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Startup failure with MySQL UTF8 database
Description: With MySQL database created with UTF-8 character set, the initialization of the database fails:

2014-10-31 12:04:34,444 WARN [receipt] [JdbcSqlTemplate] [qtp1039630400-145252] Specified key was too long; max key length is 1000 bytes. Failed to execute: CREATE TABLE `sym_file_incoming`(
    `relative_dir` VARCHAR(255) NOT NULL,
    `file_name` VARCHAR(128) NOT NULL,
    `last_event_type` CHAR(1) NOT NULL,
    `node_id` VARCHAR(50) NOT NULL,
    `file_modified_time` BIGINT,
    PRIMARY KEY (`relative_dir`, `file_name`)
)

Tags:
Steps To Reproduce: create database symdb character set utf8;
Additional Information:
Attached Files:
Notes
(0000691)
g_d_u_m   
2015-06-04 07:48   
(Last edited: 2015-06-04 10:15)
Same issue with Firebird2.5 database created with utf-8 character set:

[central-000] - Firebird21SymmetricDialect - DDL failed: CREATE TABLE "SYM_FILE_INCOMING"(
    "RELATIVE_DIR" VARCHAR(255) NOT NULL,
    "FILE_NAME" VARCHAR(128) NOT NULL,
    "LAST_EVENT_TYPE" CHAR(1) NOT NULL,
    "NODE_ID" VARCHAR(50) NOT NULL,
    "FILE_MODIFIED_TIME" BIGINT,
    PRIMARY KEY ("RELATIVE_DIR", "FILE_NAME")
)
[central-000] - JdbcSqlTemplate - GDS Exception. 335544351. unsuccessful metadata update
key size exceeds implementation restriction for index "RDB$PRIMARY253"
Reason: unsuccessful metadata update
key size exceeds implementation restriction for index "RDB$PRIMARY253". Failed to execute: CREATE TABLE "SYM_FILE_INCOMING"(
    "RELATIVE_DIR" VARCHAR(255) NOT NULL,
    "FILE_NAME" VARCHAR(128) NOT NULL,
    "LAST_EVENT_TYPE" CHAR(1) NOT NULL,
    "NODE_ID" VARCHAR(50) NOT NULL,
    "FILE_MODIFIED_TIME" BIGINT,
    PRIMARY KEY ("RELATIVE_DIR", "FILE_NAME")
)
[central-000] - AbstractSymmetricEngine - An error occurred while starting SymmetricDS
org.jumpmind.db.sql.SqlException: GDS Exception. 335544351. unsuccessful metadata update
key size exceeds implementation restriction for index "RDB$PRIMARY253"
Reason: unsuccessful metadata update
key size exceeds implementation restriction for index "RDB$PRIMARY253"
        at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:288)
        at org.jumpmind.db.platform.firebird.FirebirdJdbcSqlTemplate.translate(FirebirdJdbcSqlTemplate.java:59)

Environment: Windows 7 64bits, firebird 2.5.4 x64, symmetricds-server-3.7.19, jre-7u80-windows-x64

(0000694)
g_d_u_m   
2015-06-30 07:13   
This looks like an issue with the SYM_FILE_INCOMING primary key which is made of a VARCHAR(255) plus a VARCHAR(128).

Because each UTF8 character can use up to 4 bytes, this leads to a 1532-byte long key ((128+255)*4), which is beyond the limit (one quarter of the page size for Firebird).

Increasing the default pagesize from 4096 to 8192 or 16384 solves this issue, but then it fails later for another primary key which is even longer.
(0000910)
chenson   
2016-11-17 13:06   
Using prefix indexes work around this issue. As of 3.8 you can pre-run this script to get SymmetricDS working

CREATE TABLE `sym_file_incoming`(
    `relative_dir` VARCHAR(255) NOT NULL,
    `file_name` VARCHAR(128) NOT NULL,
    `last_event_type` CHAR(1) NOT NULL,
    `node_id` VARCHAR(50) NOT NULL,
    `file_modified_time` BIGINT,
    PRIMARY KEY (`relative_dir`(50), `file_name`(50))
);

CREATE TABLE `sym_file_snapshot`(
    `trigger_id` VARCHAR(128) NOT NULL,
    `router_id` VARCHAR(50) NOT NULL,
    `relative_dir` VARCHAR(255) NOT NULL,
    `file_name` VARCHAR(128) NOT NULL,
    `channel_id` VARCHAR(128) DEFAULT 'filesync' NOT NULL,
    `reload_channel_id` VARCHAR(128) DEFAULT 'filesync_reload' NOT NULL,
    `last_event_type` CHAR(1) NOT NULL,
    `crc32_checksum` BIGINT,
    `file_size` BIGINT,
    `file_modified_time` BIGINT,
    `last_update_time` DATETIME NOT NULL,
    `last_update_by` VARCHAR(50) NULL,
    `create_time` DATETIME NOT NULL,
    PRIMARY KEY (`trigger_id`, `router_id`, `relative_dir`(50), `file_name`(50)));


CREATE TABLE `sym_grouplet_link`(
    `grouplet_id` VARCHAR(50) NOT NULL,
    `external_id` VARCHAR(255) NOT NULL,
    `create_time` DATETIME NOT NULL,
    `last_update_by` VARCHAR(50) NULL,
    `last_update_time` DATETIME NOT NULL,
    PRIMARY KEY (`grouplet_id`, `external_id`(50))
);


CREATE TABLE `sym_parameter`(
    `external_id` VARCHAR(255) NOT NULL,
    `node_group_id` VARCHAR(50) NOT NULL,
    `param_key` VARCHAR(80) NOT NULL,
    `param_value` MEDIUMTEXT NULL,
    `create_time` DATETIME,
    `last_update_by` VARCHAR(50) NULL,
    `last_update_time` DATETIME,
    PRIMARY KEY (`external_id`(50), `node_group_id`, `param_key`(50))
);

CREATE TABLE `sym_registration_redirect`(
    `registrant_external_id` VARCHAR(255) NOT NULL,
    `registration_node_id` VARCHAR(50) NOT NULL,
    PRIMARY KEY (`registrant_external_id`(128))
);

CREATE TABLE `sym_registration_request`(
    `node_group_id` VARCHAR(50) NOT NULL,
    `external_id` VARCHAR(255) NOT NULL,
    `status` CHAR(2) NOT NULL,
    `host_name` VARCHAR(60) NOT NULL,
    `ip_address` VARCHAR(50) NOT NULL,
    `attempt_count` INTEGER DEFAULT 0,
    `registered_node_id` VARCHAR(50) NULL,
    `error_message` MEDIUMTEXT NULL,
    `create_time` DATETIME NOT NULL,
    `last_update_by` VARCHAR(50) NULL,
    `last_update_time` DATETIME NOT NULL,
    PRIMARY KEY (`node_group_id`, `external_id`(50), `create_time`)
);

CREATE INDEX `sym_idx_reg_req_1` ON `sym_registration_request` (`node_group_id`, `external_id`(50), `status`, `host_name`(50), `ip_address`(50));

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3135 [SymmetricDS] Bug major always 2017-06-02 06:07 2017-06-06 02:37
Reporter: jacobking Platform:  
Assigned To: OS:  
Priority: high OS Version:  
Status: new Product Version: 3.8.24  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: oracle type of MDSYS.SDO_GEOMETRY is not work
Description: I created a table WFS ,has a field type is MDSYS.SDO_GEOMETRY,but when i add data to table An unexpected error ocurred!here it is:

[Err] ORA-04063: package body "MDSYS.SDO_UTIL" has errors
ORA-06508: PL/SQL: could not find program unit being called: "MDSYS.SDO_UTIL"
ORA-06512: at "MDSYS.SDO_GEOMETRY", line 61
ORA-06512: at "SYM_BRANCH01.SYM_WKT2GEOM", line 1
Tags:
Steps To Reproduce: --CREATE TABLE
CREATE TABLE "SYM_MASTER"."WFS" (
"OID" NUMBER NULL ,
"GEOMETRY" "MDSYS"."SDO_GEOMETRY" NULL ,
"ADDR" VARCHAR2(255 BYTE) NULL
)
--Sample Symmetric Configuration

delete from sym_trigger_router;
delete from sym_trigger;
delete from sym_router;
delete from sym_channel where channel_id in ('dlgq_kfq');
delete from sym_node_group_link;
delete from sym_node_group;
delete from sym_node_host;
delete from sym_node_identity;
delete from sym_node_security;
delete from sym_node;


insert into sym_channel
(channel_id, processing_order, max_batch_size, enabled, description)
values('WFS', 1, 100000, 1, 'kfq data from register and back office');



insert into sym_node_group (node_group_id) values ('master');
insert into sym_node_group (node_group_id) values ('branch');

insert into sym_node_group_link (source_node_group_id, target_node_group_id, data_event_action) values ('master', 'branch', 'W');
insert into sym_node_group_link (source_node_group_id, target_node_group_id, data_event_action) values ('branch', 'master', 'P');




insert into sym_trigger
(trigger_id,source_table_name,channel_id,last_update_time,create_time)
values('WFS','WFS','WFS',current_timestamp,current_timestamp);

insert into sym_router(router_id,source_node_group_id,target_node_group_id,router_type,create_time,last_update_time)values('master_2_branch', 'master', 'branch', 'default',current_timestamp, current_timestamp);

insert into sym_router (router_id,source_node_group_id,target_node_group_id,router_type,create_time,last_update_time)values('branch_2_master', 'branch', 'master', 'default',current_timestamp, current_timestamp);


insert into sym_trigger_router
(trigger_id,router_id,initial_load_order,last_update_time,create_time)
values('WFS','branch_2_master', 100, current_timestamp, current_timestamp);

insert into sym_node (node_id,node_group_id,external_id,sync_enabled,sync_url,schema_version,symmetric_version,database_type,database_version,heartbeat_time,timezone_offset,batch_to_send_count,batch_in_error_count,created_at_node_id)
 values ('000','master','000',1,null,null,null,null,null,current_timestamp,null,0,0,'000');
insert into sym_node (node_id,node_group_id,external_id,sync_enabled,sync_url,schema_version,symmetric_version,database_type,database_version,heartbeat_time,timezone_offset,batch_to_send_count,batch_in_error_count,created_at_node_id)
 values ('001','branch','001',1,null,null,null,null,null,current_timestamp,null,0,0,'000');


insert into sym_node_security (node_id,node_password,registration_enabled,registration_time,initial_load_enabled,initial_load_time,created_at_node_id)
 values ('000','5d1c92bbacbe2edb9e1ca5dbb0e481',0,current_timestamp,0,current_timestamp,'000');
insert into sym_node_security (node_id,node_password,registration_enabled,registration_time,initial_load_enabled,initial_load_time,created_at_node_id)
 values ('001','5d1c92bbacbe2edb9e1ca5dbb0e481',1,null,1,null,'000');


insert into sym_node_identity values ('000');


--INIT DATA
INSERT INTO "SYM_MASTER"."WFS" VALUES ('1', MDSYS.SDO_GEOMETRY(2001, null, MDSYS.SDO_POINT_TYPE(113.735570, 22.985180, null), null, null), '5');
Additional Information: THE ERROR INFO

[SQL]INSERT INTO "WFS" VALUES ('1', MDSYS.SDO_GEOMETRY(2001, null, MDSYS.SDO_POINT_TYPE(113.735570, 22.985180, null), null, null), '5')
[Err] ORA-04063: package body "MDSYS.SDO_UTIL" has errors
ORA-06512: at "SYM_BRANCH01.SYM_ON_I_FOR__BRNCH", line 4
ORA-04088: error during execution of trigger 'SYM_BRANCH01.SYM_ON_I_FOR__BRNCH'
Attached Files:
Notes
(0001052)
jacobking   
2017-06-05 06:14   
my oracle version is 11g,while SDO_UTIL.TO_WKTGEOMETRY looks like is 12C's summary,is that the problem?can you support 11g?many thanks!

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3132 [SymmetricDS] Bug minor always 2017-05-31 11:19 2017-05-31 11:19
Reporter: lijaih Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.24  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Comma in table name
Description: When i try to create triggers in table with comma fails and start to create triggers for all tables in BD.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3130 [SymmetricDS] Improvement minor have not tried 2017-05-30 18:31 2017-05-30 19:00
Reporter: mmichalek Platform:  
Assigned To: mmichalek OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.8.0  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.8.25  
    Target Version: 3.8.0  
Summary: Guard against case mismatches in trigger id's and router id's when doing table reloads
Description: If a trigger id is configured with a different case in sym_trigger and sym_trigger_router, a null pointer exception occurs when attempting to reload that table. This change puts switches to a case insensitive map and also adds better error reporting if we can't locate the trigger router combo.

2017-05-30 14:07:31,214 ERROR [nodeId-NodeGroup] [RouterService] [sql31_dev-DEV_SQL31-job-19]
java.lang.NullPointerException
    at org.jumpmind.symmetric.service.impl.DataService.insertSqlEventsPriorToReload(DataService.java:635)
    at org.jumpmind.symmetric.service.impl.DataService.insertReloadEvents(DataService.java:435)
    at org.jumpmind.symmetric.service.impl.RouterService.processTableRequestLoads(RouterService.java:346)
    at org.jumpmind.symmetric.service.impl.RouterService.insertInitialLoadEvents(RouterService.java:300)
    at org.jumpmind.symmetric.service.impl.RouterService.routeData(RouterService.java:198)
    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.runAndReset(FutureTask.java:304)
    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:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:724)
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3128 [SymmetricDS Pro] Bug minor sometimes 2017-05-29 10:25 2017-05-29 17:20
Reporter: gilles.riand Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.7.36  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: ERROR in symmetric.log and wrapper.log but not in the Jummind webconsole (http://url:port/app)
Description: File : symmetric.log

2017-05-29 15:50:58,837 ERROR [gui] [AppUI] [qtp17319689-18] Unable to invoke method click in com.vaadin.shared.ui.button.ButtonServerRpc
com.vaadin.server.ServerRpcManager$RpcInvocationException: Unable to invoke method click in com.vaadin.shared.ui.button.ButtonServerRpc
    at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:170)
    at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:118)
    at com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:287)
    at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:180)
    at com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:93)
    at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:41)
    at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1406)
    at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:305)
    at com.jumpmind.symmetric.console.ui.AppServlet.service(AppServlet.java:37)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
    at org.jumpmind.symmetric.web.HttpMethodFilter.doFilter(HttpMethodFilter.java:62)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
    at org.eclipse.jetty.server.Server.handle(Server.java:499)
    at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
    at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
    at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.GeneratedMethodAccessor34.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:168)
    ... 30 more
Caused by: com.vaadin.event.ListenerMethod$MethodException: Invocation of method buttonClick in com.jumpmind.symmetric.console.ui.screen.c.b$9$1 failed.
    at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:528)
    at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:198)
    at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:161)
    at com.vaadin.server.AbstractClientConnector.fireEvent(AbstractClientConnector.java:979)
    at com.vaadin.ui.Button.fireClick(Button.java:393)
    at com.vaadin.ui.Button$1.click(Button.java:57)
    ... 34 more
Caused by: com.vaadin.event.ListenerMethod$MethodException: Invocation of method valueChange in com.jumpmind.symmetric.console.ui.screen.c.b failed.
    at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:528)
    at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:198)
    at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:161)
    at com.vaadin.server.AbstractClientConnector.fireEvent(AbstractClientConnector.java:979)
    at com.vaadin.ui.AbstractField.fireValueChange(AbstractField.java:1131)
    at com.vaadin.ui.AbstractField.setValue(AbstractField.java:542)
    at com.vaadin.ui.AbstractSelect.setValue(AbstractSelect.java:698)
    at com.vaadin.ui.AbstractSelect.setValue(AbstractSelect.java:671)
    at com.vaadin.ui.AbstractSelect.select(AbstractSelect.java:1510)
    at com.jumpmind.symmetric.console.ui.screen.c.b$9$1.buttonClick(IncomingBatchPanel.java:283)
    at sun.reflect.GeneratedMethodAccessor35.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:508)
    ... 39 more
Caused by: java.lang.NullPointerException
    at com.jumpmind.symmetric.console.ui.screen.c.b.a(IncomingBatchPanel.java:519)
    at com.jumpmind.symmetric.console.ui.screen.c.b.valueChange(IncomingBatchPanel.java:663)
    at sun.reflect.GeneratedMethodAccessor60.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:508)
    ... 52 more

File : wrapper.log
2017-05-29 12:44:43 [INFO ] [java ] mai 29, 2017 12:44:43 PM com.vaadin.server.communication.ServerRpcHandler parseInvocation
2017-05-29 12:44:43 [INFO ] [java ] AVERTISSEMENT: RPC call to com.vaadin.shared.ui.button.ButtonServerRpc.click received for connector 1050 but no such connector could be found. Resynchronizing client.
2017-05-29 12:55:34 [INFO ] [java ] mai 29, 2017 12:55:34 PM com.vaadin.server.communication.ServerRpcHandler parseInvocation
2017-05-29 12:55:34 [INFO ] [java ] AVERTISSEMENT: RPC call to com.vaadin.shared.ui.button.ButtonServerRpc.click received for connector 2242 but no such connector could be found. Resynchronizing client.
2017-05-29 15:50:55 [INFO ] [java ] mai 29, 2017 3:50:55 PM com.vaadin.server.communication.ServerRpcHandler parseInvocation
2017-05-29 15:50:55 [INFO ] [java ] AVERTISSEMENT: RPC call to com.vaadin.shared.ui.button.ButtonServerRpc.click received for connector 7931 but no such connector could be found. Resynchronizing client.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2983 [SymmetricDS] Improvement minor have not tried 2017-02-03 09:15 2017-05-24 14:55
Reporter: chenson Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: acknowledged Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Request: Improvements for file synchronization - support splitting large files across multiple syncs
Description: Request: Improvements for file synchronization - support splitting large files across multiple syncs
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2982 [SymmetricDS] Improvement minor have not tried 2017-02-03 09:15 2017-05-24 14:55
Reporter: chenson Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: acknowledged Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Request: Improvements for file synchronization - support limiting bandwidth
Description: Request: Improvements for file synchronization - support limiting bandwidth
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2981 [SymmetricDS] Improvement minor have not tried 2017-02-03 09:14 2017-05-24 14:55
Reporter: chenson Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: acknowledged Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Request: Improvements for file synchronization - support channel queues
Description: Request: Improvements for file synchronization - support channel queues
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
1268 [SymmetricDS] New Feature minor have not tried 2013-06-08 12:36 2017-05-24 14:55
Reporter: chenson Platform:  
Assigned To: mmichalek OS:  
Priority: normal OS Version:  
Status: assigned Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Add extract and load replication to SymmetricDS -snapshot replication
Description: Add extract and load replication to SymmetricDS
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3009 [SymmetricDS] Improvement minor always 2017-03-10 12:03 2017-05-24 14:51
Reporter: mmichalek Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: acknowledged Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Bring all caches under a common caching framework
Description: Analysis should be done to bring all caches in SymmetricDS under one single caching framework. It should be possible to centrally control individual caches on nodes both in terms of expiration schedule and a force clear of any cache or all caches on a node (through sending down beanshell for example).

If nothing else, AbstractDatabasePlatform.tableCache should be brought under this umbrella.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2972 [SymmetricDS] Improvement minor always 2017-01-26 08:47 2017-05-24 14:50
Reporter: josh-a-hicks Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: acknowledged Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Registration Improvements
Description: Registration has issues if specific topologies are created.

- Opening registration on a node after the link has been changed to a push will leave the node without a registration time and prevent any loads from working.
- Multiple source topologies are dependent on the order the nodes are registered in order for all sym_node and sym_node_security entries to be relayed to the appropriate nodes.

Overall registration needs to be more robust to support the wide variety of configurations.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3051 [SymmetricDS] Improvement minor have not tried 2017-04-13 14:49 2017-05-24 14:47
Reporter: chenson Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: If there isn't another node to sync data to and sync_on_incoming=1 and data is incoming, don't capture the data
Description: If there isn't another node to sync data to and sync_on_incoming=1 and data is incoming, don't capture the data
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0001004)
chenson   
2017-04-13 14:50   
Need to think about how a trigger will be recreated if a trigger router is added after the fact. Also might want to default sync_on_incoming=1

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3123 [SymmetricDS Pro] Bug major always 2017-05-23 14:37 2017-05-23 14:37
Reporter: gwilmer Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.7.32  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: License Key fails to synchronize to target node of DB2 on zSeries
Description: Log file will show the following error:

DB2 SQL Error: SQLCODE=-723, SQLSTATE=09000, SQLERRMC=AMD0007.SYM_ON_I_FOR_SYM_PRMTR_PRDDB2;-433;22001;"ALL","ALL","console., DRIVER=3.57.82

It looks to me like the license key row is loaded into sym_parameter on the db2 side, the symmetric trigger fires to capture that row into sym_data, and the corresponding write to sym_data fails because of the -433,22001 failure, which is that data being inserted is too large and will be truncated.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3116 [SymmetricDS] Improvement minor always 2017-05-19 06:24 2017-05-19 06:24
Reporter: mmichalek Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.0  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: dbcompare should support wild-carded triggers
Description: Currently dbcompare doesn't have logic to compare tables matched by the wildcard triggers. This issue is to add support generating the correct table list to compare based on the wild cards.

Report on the open source forums:
https://sourceforge.net/p/symmetricds/discussion/739236/thread/bd4406a1/?limit=25#5bf0
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3110 [SymmetricDS] Bug minor have not tried 2017-05-15 08:54 2017-05-15 08:55
Reporter: chenson Platform:  
Assigned To: maxwellpettit OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.8.24  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: If you set the time in the past on a machine hosting SymmetricDS, the heartbeat job doesn't run until you pass that time again
Description: If you set the time in the past on a machine hosting SymmetricDS, the heartbeat job doesn't run until you pass that time again
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3109 [SymmetricDS] Bug major have not tried 2017-05-15 00:59 2017-05-15 00:59
Reporter: marc Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.24  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: File replication routing job fails with error message
Description: Hello,

I have configured file sync to setup master master replication of a folder using symmetricds but I'm getting stuck.

I can confirm the records in the sym_file_snapshot table on the master have been created by the tracker job, with correct data in trigger_id and router_id fields, but then routing fails with the following log output

FileSyncDataRouter - Could not find a trigger router with a trigger_id of null and a router_id of null. The file snapshot will not be routed

Not so sure if this is a bug or if I missed something in the config but couldn't find what is wrong.

Tags:
Steps To Reproduce: Create a /dockercom folder on source and target

Insert symmetric conf :

insert into sym_file_trigger
(trigger_id,channel_id,base_dir,recurse,last_update_time,create_time)
values('dockercom','dockercom', '/dockercom', 0, current_timestamp,current_timestamp);

insert into sym_file_trigger
(trigger_id,channel_id,base_dir,recurse,last_update_time,create_time)
values('dockercom_slave','dockercom', '/dockercom', 0, current_timestamp,current_timestamp);

insert into sym_router
(router_id,source_node_group_id,target_node_group_id,router_type,create_time,last_update_time)
values('master_2_store_dockercom', 'master', 'store', 'default',current_timestamp, current_timestamp);

insert into sym_router
(router_id,source_node_group_id,target_node_group_id,router_type,create_time,last_update_time)
values('store_2_master_dockercom', 'store', 'master', 'default',current_timestamp, current_timestamp);

insert into sym_file_trigger_router
(trigger_id,router_id,last_update_time,create_time)
values('dockercom','master_2_store_dockercom', current_timestamp, current_timestamp);

insert into sym_file_trigger_router
(trigger_id,router_id,last_update_time,create_time)
values('dockercom_slave','store_2_master_dockercom', current_timestamp, current_timestamp);


Add some text files to the master /dockercom folder

Look at the master log
Additional Information: Content of the snapshot table

trigger_id, router_id, relative_dir, file_name, channel_id, reload_channel_id, last_event_type, crc32_checksum, file_size, file_modified_time, last_update_time, last_update_by, create_time
'dockercom', 'master_2_store_dockercom', '.', '.env', 'dockercom', 'filesync_reload', 'C', '3454198307', '47', '1494749769000', '2017-05-14 08:20:00', NULL, '2017-05-14 08:20:00'
'dockercom', 'master_2_store_dockercom', '.', 'docker-compose.run.yml', 'dockercom', 'filesync_reload', 'C', '1664581753', '2404', '1494749769000', '2017-05-14 08:20:00', NULL, '2017-05-14 08:20:00'
'dockercom', 'master_2_store_dockercom', '.', 'run_client_docker.sh', 'dockercom', 'filesync_reload', 'C', '1667299467', '2021', '1494749769000', '2017-05-14 08:20:00', NULL, '2017-05-14 08:20:00'
'dockercom', 'master_2_store_dockercom', '.', 'upgrade_latest', 'dockercom', 'filesync_reload', 'C', '0', '0', '1494746198000', '2017-05-14 08:20:00', NULL, '2017-05-14 08:20:00'
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3108 [SymmetricDS] Bug minor always 2017-05-15 00:51 2017-05-15 00:51
Reporter: marc Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.24  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: DbCompare - No source table found for table name demo_db1.*
Description: Hello,

I would like to make use of the comparedb utility to setup some monitoring of the replication but somehow the comparaison utility complete successfully without detecting the tables to compare as if it didn't understand the wildcard setting I used when configuring the trigger.

Could you confirm if wildcard should work with comparedb utility or if it is not implemented ?


marco@marco-newlap:~/docker/symmetric/symmetric-server-3.8.22/security$ docker exec demohouse_symdb_1 /symmetric/bin/dbcompare -s /symmetric/remote-master-000.properties -t /symmetric/engines/store-001.properties

Log output will be written to /symmetric/logs/symmetric.log
[] - AbstractCommandLauncher - Option: name=source, value={/symmetric/remote-master-000.properties}
[] - AbstractCommandLauncher - Option: name=target, value={/symmetric/engines/store-001.properties}
[master-000] - AbstractSymmetricEngine - Initializing connection to database
[master-000] - JdbcDatabasePlatformFactory - Detected database 'MySQL', version '5', protocol 'mysql'
[master-000] - JdbcDatabasePlatformFactory - The IDatabasePlatform being used is org.jumpmind.db.platform.mysql.MySqlDatabasePlatform
[master-000] - MySqlSymmetricDialect - The DbDialect being used is org.jumpmind.symmetric.db.mysql.MySqlSymmetricDialect
[master-000] - ExtensionService - Found 0 extension points from the database that will be registered
[master-000] - StagingManager - The staging directory was initialized at the following location: /symmetric/tmp/master-000
[master-000] - ClusterService - This node picked a server id of cc0a58d55ccc
[master-000] - ExtensionService - Found 0 extension points from the database that will be registered
[master-000] - ClientExtensionService - Found 6 extension points from spring that will be registered
[store-001] - AbstractSymmetricEngine - Initializing connection to database
[store-001] - JdbcDatabasePlatformFactory - Detected database 'MySQL', version '5', protocol 'mysql'
[store-001] - JdbcDatabasePlatformFactory - The IDatabasePlatform being used is org.jumpmind.db.platform.mysql.MySqlDatabasePlatform
[store-001] - MySqlSymmetricDialect - The DbDialect being used is org.jumpmind.symmetric.db.mysql.MySqlSymmetricDialect
[store-001] - ExtensionService - Found 0 extension points from the database that will be registered
[store-001] - StagingManager - The staging directory was initialized at the following location: /symmetric/tmp/store-001
[store-001] - ClusterService - This node picked a server id of cc0a58d55ccc
[store-001] - ExtensionService - Found 0 extension points from the database that will be registered
[store-001] - ClientExtensionService - Found 6 extension points from spring that will be registered
[store-001] - DbCompare - No source table found for table name demo_db1.*
[store-001] - DbCompare - No source table found for table name demo_db2.*
+-----------------------------+-----------------------------+------------+------------+------------+------------+------------+------------+
+Source Target Source Rows Target Rows Matched Different Missing Extra
+-----------------------------+-----------------------------+------------+------------+------------+------------+------------+------------+
+-----------------------------+-----------------------------+------------+------------+------------+------------+------------+------------+
[store-001] - DbCompare - dbcompare complete. Total Time: 1 second

Tags:
Steps To Reproduce: define triggers with wildcard such as the following in target and source dest

insert into sym_trigger
(trigger_id,source_catalog_name,source_table_name,channel_id,last_update_time,create_time)
values('tpv', 'demo_tpv', '*','tpv',current_timestamp,current_timestamp);


Launch a command such as /symmetric/bin/dbcompare -s /symmetric/remote-master-000.properties -t /symmetric/engines/store-001.properties

Additional Information: As a workaround I tried to switch off the sym-conf by adding --use-sym-config false to the command line but that resulted in the following error, but didn't find any doc when googling for includedTableNames so no idea what to do of this message :

-------------------------------------------------------------------------------
An exception occurred. Please see the following for details:
-------------------------------------------------------------------------------
java.lang.RuntimeException: includedTableNames not provided, includedTableNames must be provided when not comparing using SymmetricDS config.
    at org.jumpmind.symmetric.io.DbCompare.loadTablesFromArguments(DbCompare.java:472)
    at org.jumpmind.symmetric.io.DbCompare.getTablesToCompare(DbCompare.java:290)
    at org.jumpmind.symmetric.io.DbCompare.compare(DbCompare.java:86)
    at org.jumpmind.symmetric.DbCompareCommand.executeWithOptions(DbCompareCommand.java:117)
    at org.jumpmind.symmetric.AbstractCommandLauncher.execute(AbstractCommandLauncher.java:190)
    at org.jumpmind.symmetric.DbCompareCommand.main(DbCompareCommand.java:123)
-------------------------------------------------------------------------------
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3107 [SymmetricDS] Bug minor always 2017-05-15 00:32 2017-05-15 00:32
Reporter: marc Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.24  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Create table statement syntax error for tinyblob field
Description: Hello,

I'm trying to integrate a mysql db with symmetricds and I'm having the following issue when running the initial load a the target node.

[store-001] - JdbcSqlTemplate - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(255) NULL,
    PRIMARY KEY (`ID`)
)' at line 9. Failed to execute: CREATE TABLE `green_tpv_2`.`PEOPLE`(
    `ID` VARCHAR(255) NOT NULL,
    `NAME` VARCHAR(255) NOT NULL,
    `APPPASSWORD` VARCHAR(255) NULL,
    `CARD` VARCHAR(255) NULL,
    `ROLE` VARCHAR(255) NOT NULL,
    `VISIBLE` BIT NOT NULL,
    `IMAGE` MEDIUMBLOB NULL,
    `PREFERENCES` TINYBLOB(255) NULL,
    PRIMARY KEY (`ID`)
)
[store-001] - DefaultDatabaseWriter - Failed to alter table using the following xml: <?xml version="1.0"?>
<!DOCTYPE database SYSTEM "http://db.apache.org/torque/dtd/database">
<database name="dataextractor" catalog="green_tpv_2">
    <table name="PEOPLE">
        <column name="ID" primaryKey="true" required="true" type="VARCHAR" size="255">
            <platform-column name="mysql" type="VARCHAR" size="255"/>
        </column>
        <column name="NAME" required="true" type="VARCHAR" size="255">
            <platform-column name="mysql" type="VARCHAR" size="255"/>
        </column>
        <column name="APPPASSWORD" type="VARCHAR" size="255">
            <platform-column name="mysql" type="VARCHAR" size="255"/>
        </column>
        <column name="CARD" type="VARCHAR" size="255">
            <platform-column name="mysql" type="VARCHAR" size="255"/>
        </column>
        <column name="ROLE" required="true" type="VARCHAR" size="255">
            <platform-column name="mysql" type="VARCHAR" size="255"/>
        </column>
        <column name="VISIBLE" required="true" type="BIT" size="1">
            <platform-column name="mysql" type="BIT" size="1"/>
        </column>
        <column name="IMAGE" type="LONGVARBINARY" size="16777215">
            <platform-column name="mysql" type="MEDIUMBLOB" size="16777215"/>
        </column>
        <column name="PREFERENCES" type="BINARY" size="255">
            <platform-column name="mysql" type="TINYBLOB" size="255"/>
        </column>
        <unique name="PEOPLE_NAME_INX">
            <unique-column name="NAME"/>
        </unique>
        <index name="PEOPLE_CARD_INX">
            <index-column name="CARD"/>
        </index>
        <index name="PEOPLE_FK_1">
            <index-column name="ROLE"/>
        </index>
    </table>
</database>

It seems that the error is in the part : PREFERENCES TINYBLOB(255) NULL

The correct syntax should be without the field size : PREFERENCES TINYBLOB NULL

Note that it is working fine for the IMAGE field which is of type MEDIUMBLOB

Tags:
Steps To Reproduce: Attempt to do an initial load of a table containing tinyblob field, with mysql driver
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3098 [SymmetricDS] Bug minor sometimes 2017-05-09 04:56 2017-05-09 04:56
Reporter: gilles.riand Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.7.36  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Windows W10 service won't stop
Description: After installation and a few days of production.

The Service won't stop.
The message is "Error 19 : Error 1061: The Service cannot accept control messages at this time"
Tags:
Steps To Reproduce: I don't know if this because a Java Update is avalable. I do not do the update... But sometime (it's the second time) the Service SymmetricDS cannot stop.
> I reboot .... and after I can start, stop without this problem.

I think that it's a Java problem.
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3090 [SymmetricDS] Bug crash always 2017-05-04 06:16 2017-05-04 06:32
Reporter: cominform Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Quotation escape character causing data corruption
Description: After escape character has been invented to support quotations in the data (e.g. JSON), synced data has become corrupted by the C-Agent. This has happened, whenever the escape character was separated from the quotation at the end of a data chunk.

Beside of this we have encountered memory leaks and crashes, related to the usage of the Curl.

Please have a look at our latest commit.
Tags:
Steps To Reproduce:
Additional Information: https://github.com/cominform/symmetric-ds/tree/bugfix/cif-ios-stability-improvements-1
https://github.com/cominform/symmetric-ds/commit/bc14f85b8e62d119669ebd653c9712d93c6f49c1
Attached Files:
Notes
(0001045)
cominform   
2017-05-04 06:32   
Our data is big. It exceeds the chunk size. Even if the size would have been increased, there may be bigger data again than the increased chunk size.

Therefor we believe, that a whole data line must be reassembled from the incoming chunks, before e.g. escape character processing can start.

Now the most obvious solution was, to write it into a file. But someone may consider to think about a different and improved approach.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3029 [SymmetricDS] Improvement minor have not tried 2017-03-29 12:10 2017-05-03 12:04
Reporter: chenson Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Add a parameter that will force SymmetricDS to create nclobs in sym_data on Oracle.
Description: We already have a parameter that is specific to sql server called mssql.use.ntypes.for.sync. Maybe we should deprecate that and create a generic parameter instead?
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0001042)
chenson   
2017-05-03 12:04   
Refer to this forum discussion.

https://sourceforge.net/p/symmetricds/discussion/739236/thread/75d666fe/?limit=25#0e5b

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3082 [SymmetricDS] Bug minor always 2017-04-28 15:58 2017-04-28 15:58
Reporter: Lanem Platform:  
Assigned To: OS:  
Priority: high OS Version:  
Status: new Product Version: 3.8.21  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: SQLite to Entity framework when using SQLite DB from symmetricDS
Description: When Replicating the SQLite DB from a SQL DB using SymmetricDS the Guid columns get inserted as Varchar. This does not create an Error when looking at the SQLite database or when reading information out of the database.

However because they are Varchars in the SQLite database Entity framework cannot save the Guid back, unless the Guid instead of being of type VARCHAR is set to type UNIQUEIDENTIFIER all this does in the SQLite database is set it to be a blob. but the name of it as UNIQUEIDENTIFIER makes it so that Entity Framework works with it in both directions
Tags:
Steps To Reproduce: Create a SQL DB with some sort of GUID column
Replicate that DB to a SQLite database
Build your DB objects off of your SQL database (I am building with a T4 template that has the appropriate property type fixes for a SQL to SQLite transform EX. ntext to nvarchar, BigInt to Integer ect.)
Connect to that SQLite database with Entity Framework

and try to save any variable
Additional Information: The way I have gotten around this for the time being is by setting up a backend property of type String to handle the save part of the objects. This means that the front end property is the normal Guid type but instead converts the String value back and forth. This causes a problem however with using those Guid front end values in LINQ statements.

The simplest fix would be to set the Guid variables on the SQLite side as a UNIQUEIDENTIFIER but there is no way to change the column data type in symmetricDS
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3078 [SymmetricDS] Bug major always 2017-04-27 13:33 2017-04-27 13:33
Reporter: sid Platform:  
Assigned To: OS:  
Priority: high OS Version:  
Status: new Product Version: 3.8.21  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Unable to complete all the DDL scripts on DB2 10.5
Description: Trying to start SymmetricDS for the first time with one master node and after creating the tables and environment variables it fails on creating all DB objects

I am guessing there DB2 version could be the problem, since as per the docs SymmetricDS has been tested on DB 9.

OS: AIX
DB: DB2 v10.5

Error:
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_CONFLICT"
    ADD CONSTRAINT "SYM_FK_CF_2_GRP_LNK" FOREIGN KEY ("SOURCE_NODE_GROUP_ID", "T
ARGET_NODE_GROUP_ID") REFERENCES "SYM_NODE_GROUP_LINK" ("SOURCE_NODE_GROUP_ID",
"TARGET_NODE_GROUP_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_FILE_TRIGGE
R_ROUTER"
    ADD CONSTRAINT "SYM_FK_FTR_2_FTRG" FOREIGN KEY ("TRIGGER_ID") REFERENCES "SY
M_FILE_TRIGGER" ("TRIGGER_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_FILE_TRIGGE
R_ROUTER"
    ADD CONSTRAINT "SYM_FK_FTR_2_RTR" FOREIGN KEY ("ROUTER_ID") REFERENCES "SYM_
ROUTER" ("ROUTER_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_GROUPLET_LI
NK"
    ADD CONSTRAINT "SYM_FK_GPLTLNK_2_GPLT" FOREIGN KEY ("GROUPLET_ID") REFERENCE
S "SYM_GROUPLET" ("GROUPLET_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_NODE_GROUP_
LINK"
    ADD CONSTRAINT "SYM_FK_LNK_2_GRP_SRC" FOREIGN KEY ("SOURCE_NODE_GROUP_ID") R
EFERENCES "SYM_NODE_GROUP" ("NODE_GROUP_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_NODE_GROUP_
LINK"
    ADD CONSTRAINT "SYM_FK_LNK_2_GRP_TGT" FOREIGN KEY ("TARGET_NODE_GROUP_ID") R
EFERENCES "SYM_NODE_GROUP" ("NODE_GROUP_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_NODE_IDENTI
TY"
    ADD CONSTRAINT "SYM_FK_IDENT_2_NODE" FOREIGN KEY ("NODE_ID") REFERENCES "SYM
_NODE" ("NODE_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_NODE_SECURI
TY"
    ADD CONSTRAINT "SYM_FK_SEC_2_NODE" FOREIGN KEY ("NODE_ID") REFERENCES "SYM_N
ODE" ("NODE_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_ROUTER"
    ADD CONSTRAINT "SYM_FK_RT_2_GRP_LNK" FOREIGN KEY ("SOURCE_NODE_GROUP_ID", "T
ARGET_NODE_GROUP_ID") REFERENCES "SYM_NODE_GROUP_LINK" ("SOURCE_NODE_GROUP_ID",
"TARGET_NODE_GROUP_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_TRANSFORM_T
ABLE"
    ADD CONSTRAINT "SYM_FK_TT_2_GRP_LNK" FOREIGN KEY ("SOURCE_NODE_GROUP_ID", "T
ARGET_NODE_GROUP_ID") REFERENCES "SYM_NODE_GROUP_LINK" ("SOURCE_NODE_GROUP_ID",
"TARGET_NODE_GROUP_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_TRIGGER"
    ADD CONSTRAINT "SYM_FK_TRG_2_CHNL" FOREIGN KEY ("CHANNEL_ID") REFERENCES "SY
M_CHANNEL" ("CHANNEL_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_TRIGGER"
    ADD CONSTRAINT "SYM_FK_TRG_2_RLD_CHNL" FOREIGN KEY ("RELOAD_CHANNEL_ID") REF
ERENCES "SYM_CHANNEL" ("CHANNEL_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_TRIGGER_ROU
TER"
    ADD CONSTRAINT "SYM_FK_TR_2_TRG" FOREIGN KEY ("TRIGGER_ID") REFERENCES "SYM_
TRIGGER" ("TRIGGER_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_TRIGGER_ROU
TER"
    ADD CONSTRAINT "SYM_FK_TR_2_RTR" FOREIGN KEY ("ROUTER_ID") REFERENCES "SYM_R
OUTER" ("ROUTER_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_TRIGGER_ROU
TER_GROUPLET"
    ADD CONSTRAINT "SYM_FK_TRGPLT_2_GPLT" FOREIGN KEY ("GROUPLET_ID") REFERENCES
 "SYM_GROUPLET" ("GROUPLET_ID")
[adams-node] - Db2v9SymmetricDialect - DDL applied: ALTER TABLE "SYM_TRIGGER_ROU
TER_GROUPLET"
    ADD CONSTRAINT "SYM_FK_TRGPLT_2_TR" FOREIGN KEY ("TRIGGER_ID", "ROUTER_ID")
REFERENCES "SYM_TRIGGER_ROUTER" ("TRIGGER_ID", "ROUTER_ID")
[adams-node] - Db2v9SymmetricDialect - Done with auto update of SymmetricDS tabl
es
[adams-node] - Db2v9SymmetricDialect - Resetting auto increment columns for sym_
data
[adams-node] - Db2v9SymmetricDialect - Creating environment variables sym_sync_t
riggers_disabled and sym_sync_node_disabled
[adams-node] - AbstractSymmetricEngine - An error occurred while starting Symmet
ricDS
org.jumpmind.db.sql.SqlException: DB2 SQL Error: SQLCODE=-601, SQLSTATE=42710, S
QLERRMC=DEVELOPMENT.SYM_SYNC_NODE_DISABLED;VARIABLE, DRIVER=3.57.82
        at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate
.java:300)
        at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate
.java:291)
        at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:493)

        at org.jumpmind.db.sql.JdbcSqlTemplate.update(JdbcSqlTemplate.java:342)
        at org.jumpmind.db.sql.AbstractSqlTemplate.update(AbstractSqlTemplate.ja
va:224)
        at org.jumpmind.symmetric.db.db2.Db2SymmetricDialect.createRequiredDatab
aseObjects(Db2SymmetricDialect.java:92)
        at org.jumpmind.symmetric.db.db2.Db2v9SymmetricDialect.createRequiredDat
abaseObjects(Db2v9SymmetricDialect.java:71)
        at org.jumpmind.symmetric.db.AbstractSymmetricDialect.initTablesAndDatab
aseObjects(AbstractSymmetricDialect.java:157)
        at org.jumpmind.symmetric.AbstractSymmetricEngine.setupDatabase(Abstract
SymmetricEngine.java:449)
        at org.jumpmind.symmetric.AbstractSymmetricEngine.setup(AbstractSymmetri
cEngine.java:423)
        at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetri
cEngine.java:580)
        at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetri
cEngine.java:571)
        at org.jumpmind.symmetric.ClientSymmetricEngine.start(ClientSymmetricEng
ine.java:244)
        at org.jumpmind.symmetric.web.SymmetricEngineHolder$EngineStarter.run(Sy
mmetricEngineHolder.java:478)
Caused by: com.ibm.db2.jcc.am.io: DB2 SQL Error: SQLCODE=-601, SQLSTATE=42710, S
QLERRMC=DEVELOPMENT.SYM_SYNC_NODE_DISABLED;VARIABLE, DRIVER=3.57.82
        at com.ibm.db2.jcc.am.bd.a(bd.java:676)
        at com.ibm.db2.jcc.am.bd.a(bd.java:60)
        at com.ibm.db2.jcc.am.bd.a(bd.java:127)
        at com.ibm.db2.jcc.am.km.b(km.java:2164)
        at com.ibm.db2.jcc.am.km.c(km.java:2147)
        at com.ibm.db2.jcc.t4.db.k(db.java:354)
        at com.ibm.db2.jcc.t4.db.a(db.java:60)
        at com.ibm.db2.jcc.t4.t.a(t.java:50)
        at com.ibm.db2.jcc.t4.tb.b(tb.java:218)
        at com.ibm.db2.jcc.am.lm.ec(lm.java:2692)
        at com.ibm.db2.jcc.am.lm.b(lm.java:3552)
        at com.ibm.db2.jcc.am.lm.Yb(lm.java:2130)
        at com.ibm.db2.jcc.am.lm.execute(lm.java:2114)
        at org.apache.commons.dbcp.DelegatingPreparedStatement.execute(Delegatin
gPreparedStatement.java:172)
        at org.apache.commons.dbcp.DelegatingPreparedStatement.execute(Delegatin
gPreparedStatement.java:172)
        at org.jumpmind.db.sql.JdbcSqlTemplate$5.execute(JdbcSqlTemplate.java:37
4)
        at org.jumpmind.db.sql.JdbcSqlTemplate$5.execute(JdbcSqlTemplate.java:34
2)
        at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:491)

        ... 11 more
[adams-node] - AbstractSymmetricEngine - Stopping SymmetricDS externalId=000 ver
sion=3.8.21 database=DB2/AIX64
[adams-node] - AbstractSymmetricEngine - SymmetricDS: type=server, name=adams-no
de, version=3.8.21, groupId=adams-server, externalId=000, databaseName=DB2/AIX64
, databaseVersion=10.5, driverName=IBM DB2 JDBC Universal Driver Architecture, d
riverVersion=3.57.82

Tags:
Steps To Reproduce: 1. Create a sample master node engine file pointing it to a DB2 v10.5 on AIX (OS shouldn't be a problem here)
2. Run sym.bat
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2292 [SymmetricDS] Bug major always 2015-05-07 08:18 2017-04-20 13:19
Reporter: azarubkin Platform: Intel x64  
Assigned To: OS: Windows 7  
Priority: normal OS Version: SP1 x64  
Status: new Product Version: 3.7.14  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Cannot replicate the table with foreign key to non-replicated table
Description: I have a replicated table which has a column to a non-replicated table. This column is excluded from replication.
During the initial schema creation, the version 3.6.16 works, the version 3.7.14 doesn't, because it still tries to create foreign key on target node, which version 3.6.16 doesn't do.

I'm attaching a part of log file which shows the error.

Tags:
Steps To Reproduce: Create a table with a foreign key to another table, which is excluded from replication. My table is called 'cards', the column is called 'location' (it is foreign key to 'locations' table, which is not replicated):

INSERT [symmetricds].[sym_trigger] ([trigger_id], [source_catalog_name], [source_schema_name], [source_table_name], [channel_id], [sync_on_update], [sync_on_insert], [sync_on_delete], [sync_on_incoming_batch], [name_for_update_trigger], [name_for_insert_trigger], [name_for_delete_trigger], [sync_on_update_condition], [sync_on_insert_condition], [sync_on_delete_condition], [custom_on_update_text], [custom_on_insert_text], [custom_on_delete_text], [external_select], [tx_id_expression], [excluded_column_names], [sync_key_names], [use_stream_lobs], [use_capture_lobs], [use_capture_old_data], [use_handle_key_updates], [create_time], [last_update_by], [last_update_time], [reload_channel_id], [channel_expression])
VALUES (N'cards', NULL, N'dbo', N'cards', N'access_control', 1, 1, 1, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, N'location', NULL, 0, 0, 1, 0, CAST(0x0000A2AF010D2DF1 AS DateTime), NULL, CAST(0x0000A2B200BD83A0 AS DateTime), N'reload', NULL)

Now try to send schema to a new child node.
Additional Information: Main node runs on MS SQL 2005, child nodes run on SQLite.
Attached Files: excerpt.log (10,082 bytes) 2015-05-07 08:18
http://www.symmetricds.org/issues/file_download.php?file_id=81&type=bug
Notes
(0000761)
azarubkin   
2016-02-09 06:33   
It's possible now to set create.table.without.foreign.keys=true, but if foreign keys are still wanted, SymmetricDS should omit only those foreign keys, which are impossible to create due to missing columns.
(0000762)
azarubkin   
2016-02-11 06:59   
I've checked that SymmetricDS 3.6 sends table definition with foreign key on the missing column, but it is correctly ignored on the receiving side.

SymmetricDS 3.7 doesn't ignore foreign key definition if the column is missing, and throws the error. It's likely a bug and should be fixed.
(0001022)
maxwellpettit   
2017-04-20 13:19   
In version 3.6.16, SQLite foreign keys were not supported at all. In 3.7 support for foreign keys was added in addition to the create.table.without.foreign.keys parameter. Using this parameter will result in the same functionality as 3.6.16. As of now, this would be a new feature and is not currently a high priority.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3062 [SymmetricDS] Task minor have not tried 2017-04-19 13:36 2017-04-19 13:36
Reporter: chenson Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Document the type of binary encoding used for each database in the database specific notes
Description: Document the type of binary encoding used for each database in the database specific notes

Maybe add it to this table:
http://www.jumpmind.com/downloads/symmetricds/doc/3.8/html/user-guide.html#_database_notes
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3057 [SymmetricDS] Bug major always 2017-04-15 05:10 2017-04-15 05:14
Reporter: maneeshk Platform:  
Assigned To: OS:  
Priority: high OS Version:  
Status: new Product Version: 3.8.16  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Immediately after node registration, synchronization is not happening for some specific files
Description: We are running the SymmetricDS instances and all nodes in linux VMs at both source and destination. All the nodes are connected to MySQL databases instances running locally in respective linux VMs.

It is being observed that immediately after node registration, synchronization is not happening for some specific files.
Tags:
Steps To Reproduce: 1. Node group link: data_event_action='W'.
2. Channel: filesync.
3. Router: default.
4. File trigger: recurse is set, and include_files=*
5. File trigger router: initial_load_enabled is SET.
Additional Information: The file with name "all-wcprops" is giving issue whereas the other file with name "entries" present in the same directory is getting synchronized. The stat information about both the above mentioned file is as mentioned below.

[root@symds1 engines]# ls -l /mnt/feDir/App_WebReferences/NoidaCorporateWebService/.svn/all-wcprops
-r-xr-xr-x 1 root root 1021 Apr 15 2015 /mnt/feDir/App_WebReferences/NoidaCorporateWebService/.svn/all-wcprops
[root@symds1 engines]# stat /mnt/feDir/App_WebReferences/NoidaCorporateWebService/.svn/all-wcprops
  File: â
  Size: 1021 Blocks: 8 IO Block: 16384 regular file
Device: 24h/36d Inode: 1125899906842864 Links: 1
Access: (0555/-r-xr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2015-07-01 16:06:15.749692200 +0530
Modify: 2015-04-15 14:56:25.440039900 +0530
Change: 2016-12-13 18:08:35.598127000 +0530
 Birth: -
[root@symds1 engines]# ls -l /mnt/feDir/App_WebReferences/NoidaCorporateWebService/.svn/entries
-r-xr-xr-x 1 root root 1124 Apr 15 2015 /mnt/feDir/App_WebReferences/NoidaCorporateWebService/.svn/entries
[root@symds1 engines]# stat /mnt/feDir/App_WebReferences/NoidaCorporateWebService/.svn/entries
  File: â
  Size: 1124 Blocks: 8 IO Block: 16384 regular file
Device: 24h/36d Inode: 1125899906842865 Links: 1
Access: (0555/-r-xr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2015-07-01 16:06:15.765292200 +0530
Modify: 2015-04-15 14:56:25.424414900 +0530
Change: 2016-12-13 18:08:35.629327000 +0530
 Birth: -
[root@symds1 engines]#
Attached Files:
Notes
(0001007)
maneeshk   
2017-04-15 05:11   
Synchronization is not happening for these below mentioned five(5) files.

1. /mnt/feDir/App_WebReferences/NoidaCorporateWebService/.svn/all-wcprops
2. /mnt/feDir/fonts/.svn/all-wcprops
3. /mnt/feDir/html/App_LocalResources/.svn/all-wcprops
4. /mnt/feDir/resources/.svn/all-wcprops
5. /mnt/feDir/resources/.svn/text-base/PIE.htc.svn-base
(0001008)
maneeshk   
2017-04-15 05:14   
Sym log at source and destination are as given below.


symds1

2017-04-13 21:18:36,453 ERROR [puneFS1-001] [AcknowledgeService] [qtp25548982-20] The outgoing batch 002-8 failed: /mnt/feDir/App_WebReferences/NoidaCorporateWebService/.svn/all-wcprops (Permission denied)


symds2

2017-04-13 21:19:37,465 ERROR [noidaFS1-002] [FileSyncService] [noidafs1-002-file_pull-default-1] Failed to process file sync batch 8 StackTraceKey.init [FileNotFoundException:3030134314]
java.io.FileNotFoundException: /mnt/feDir/App_WebReferences/NoidaCorporateWebService/.svn/all-wcprops (Permission denied)
        at java.io.FileOutputStream.open0(Native Method)
        at java.io.FileOutputStream.open(FileOutputStream.java:270)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:162)
        at org.apache.commons.io.FileUtils.doCopyFile(FileUtils.java:1139)
        at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:1091)
        at sun.reflect.GeneratedMethodAccessor50.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at bsh.Reflect.invokeMethod(Reflect.java:134)
        at bsh.Reflect.invokeStaticMethod(Reflect.java:98)
        at bsh.Name.invokeMethod(Name.java:874)
        at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
        at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
        at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
        at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
        at bsh.BSHBlock.eval(BSHBlock.java:80)
        at bsh.BSHBlock.eval(BSHBlock.java:46)
        at bsh.BSHIfStatement.eval(BSHIfStatement.java:51)
        at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
        at bsh.BSHBlock.eval(BSHBlock.java:80)
        at bsh.BSHBlock.eval(BSHBlock.java:46)
        at bsh.BSHIfStatement.eval(BSHIfStatement.java:48)
        at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
        at bsh.BSHBlock.eval(BSHBlock.java:80)
        at bsh.BSHBlock.eval(BSHBlock.java:46)
        at bsh.BSHIfStatement.eval(BSHIfStatement.java:48)
        at bsh.Interpreter.eval(Interpreter.java:645)
        at bsh.Interpreter.eval(Interpreter.java:739)
        at bsh.Interpreter.eval(Interpreter.java:728)
        at org.jumpmind.symmetric.service.impl.FileSyncService.processZip(FileSyncService.java:914)
        at org.jumpmind.symmetric.service.impl.FileSyncService.pullFilesFromNode(FileSyncService.java:1023)
        at org.jumpmind.symmetric.service.impl.FileSyncService.execute(FileSyncService.java:769)
        at org.jumpmind.symmetric.service.impl.NodeCommunicationService$1.run(NodeCommunicationService.java:499)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
2017-04-13 21:19:38,131 INFO [noidaFS1-002] [FileSyncService] [noidafs1-002-file_pull-default-1] There was a failure while pulling files from 001. 100 files and 2 batches were processed

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3048 [SymmetricDS] Improvement feature have not tried 2017-04-13 11:43 2017-04-13 11:43
Reporter: gwilmer Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Allow configuration of a retry interval for failed outgoing batches
Description: Allow configuration of a retry interval for failed outgoing batches. In addition, possibly allow a decreasing interval. i.e. if a batch fails retry every x min until period y, then decrement the retry to every z min, etc. I.E. if a batch fails more than n times, should you continue to retry it at the same rate constantly.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2966 [SymmetricDS] Improvement minor always 2017-01-20 04:28 2017-03-27 09:04
Reporter: baylej Platform:  
Assigned To: maxwellpettit OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.8.14  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Compatibility with Log4j2
Description: It is currently not possible to use Log4j2 with SymmetricDS because the class org.apache.log4j.AppenderSkeleton is missing from the Log4j1 to Log4j2 bridge.

If log4j1 is excluded from the SymmetricDS in the pom file of my project, the following StackTrace is printed at install of the SymmetricDS webapp:

Exception in thread "symmetric-engine-startup-0" java.lang.NoClassDefFoundError: org/apache/log4j/AppenderSkeleton (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at java.lang.ClassLoader.defineClass1(Native Method) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:763) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:467) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:73) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:368) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:362) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at java.security.AccessController.doPrivileged(Native Method) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:361) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at org.jumpmind.symmetric.util.LogSummaryAppenderUtils.registerLogSummaryAppender(LogSummaryAppenderUtils.java:40) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at org.jumpmind.symmetric.ClientSymmetricEngine.init(ClientSymmetricEngine.java:170) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at org.jumpmind.symmetric.web.ServerSymmetricEngine.init(ServerSymmetricEngine.java:62) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at org.jumpmind.symmetric.ClientSymmetricEngine.<init>(ClientSymmetricEngine.java:139) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at org.jumpmind.symmetric.web.ServerSymmetricEngine.<init>(ServerSymmetricEngine.java:47) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at org.jumpmind.symmetric.web.SymmetricEngineHolder.create(SymmetricEngineHolder.java:241) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at org.jumpmind.symmetric.web.SymmetricEngineHolder$EngineStarter.run(SymmetricEngineHolder.java:461) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
Caused by: java.lang.ClassNotFoundException: org.apache.log4j.AppenderSkeleton (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) (SystemLogHandler.java:267 - symmetric-engine-startup-0)
    ... 19 more (SystemLogHandler.java:267 - symmetric-engine-startup-0)
Tags:
Steps To Reproduce:
Additional Information: See https://issues.apache.org/jira/browse/LOG4J2-587
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2979 [SymmetricDS] New Feature feature have not tried 2017-02-02 09:57 2017-03-27 09:00
Reporter: sknoepfler Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: acknowledged Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Support SAP HANA as target for replication
Description: SAP offers a free of charge HANA DB: http://www.sap.com/developer/topics/sap-hana-express.html
In conjunction with SymmetricDS this could be a very powerful toolset for a free of charge in-memory platform for operational analytics. Any hope that SymmetricDS will support SAP HANA as a target anytime soon?
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0000967)
sknoepfler   
2017-02-02 10:02   
http://help.sap.com/hana/SAP_HANA_SQL_and_System_Views_Reference_en.pdf
(0000989)
chenson   
2017-03-27 08:59   
We have played around with HANA in the past. We really are just waiting for someone to sponsor the effort to create a dialect.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
13 [SymmetricDS] New Feature feature always 2009-01-24 16:24 2017-03-24 16:04
Reporter: abrougher Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: assigned Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Replicate schema changes to remote nodes automatically
Description: SymmetricDS already supports setting up a schema automatically. It should also support automatically updating a schema as well.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0000510)
chenson   
2014-04-18 12:51   
Support multiple levels

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
3015 [SymmetricDS] Improvement major N/A 2017-03-14 11:41 2017-03-15 14:49
Reporter: pavan kumar Platform:  
Assigned To: chenson OS:  
Priority: low OS Version:  
Status: acknowledged Product Version: 3.8.17  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: SymmetricDS with KafkaConsumer.
Description: We are trying database replication using SymmetricDS with Kafka.
We followed below sample to read data from Oracle and push to Kafka.
Now we are trying for the code to read from Kafka and insert the records into Postgres.
Though we have written custom KafkaConsumer to do the same, we want to try the code using SymmetricDS API in below format.
It would be helpful if you can provide us the code for KafkaConsumer with SymmetricDS


insert into SYM_EXTENSION (EXTENSION_ID, EXTENSION_TYPE, INTERFACE_NAME, NODE_GROUP_ID, ENABLED, EXTENSION_ORDER, EXTENSION_TEXT, CREATE_TIME, LAST_UPDATE_BY, LAST_UPDATE_TIME) values ('KafkaDataWriter','java','org.jumpmind.symmetric.io.data.writer.IDatabaseWriterFilter','client',1,1,'
import java.io.File;
import java.util.HashMap;
import java.util.Map;

import org.apache.commons.io.FileUtils;
import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.ProducerRecord;
import org.apache.kafka.clients.producer.ProducerConfig;
import org.jumpmind.db.model.Table;
import org.jumpmind.symmetric.io.data.CsvData;
import org.jumpmind.symmetric.io.data.DataContext;
import org.jumpmind.symmetric.io.data.DataEventType;
import org.jumpmind.symmetric.io.data.writer.IDatabaseWriterFilter;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class KafkaWriterFilter implements IDatabaseWriterFilter {
    protected final String KAKFA_TEXT_CACHE = "KAKFA_TEXT_CACHE" + this.hashCode();

    private final Logger log = LoggerFactory.getLogger(getClass());

    public boolean beforeWrite(DataContext context, Table table, CsvData data) {
        if (table.getName().toUpperCase().startsWith("SYM_")) {
        return true;
        }
        else {
            log.info("Processing table " + table + " for Kafka");

            String[] rowData = data.getParsedData(CsvData.ROW_DATA);
            if (data.getDataEventType() == DataEventType.DELETE) {
                rowData = data.getParsedData(CsvData.OLD_DATA);
            }

            StringBuffer kafkaText = new StringBuffer();
            if (context.get(KAKFA_TEXT_CACHE) != null) {
                kafkaText = (StringBuffer) context.get(KAKFA_TEXT_CACHE);
            }

            boolean useJson = false;

            if (useJson) {
                kafkaText.append("{\"")
                    .append(table.getName())
                    .append("\": {")
                    .append("\"eventType\": \"" + data.getDataEventType() + "\",")
                    .append("\"data\": { ");
                for (int i = 0; i < table.getColumnNames().length; i++) {
                    kafkaText.append("\"" + table.getColumnNames()[i] + "\": \"" + rowData[i]);
                    if (i + 1 < table.getColumnNames().length) {
                        kafkaText.append("\",");
                    }
                }
                kafkaText.append(" } } }");
            }
            else {
                kafkaText.append("\nTABLE")
                    .append(",")
                    .append(table.getName())
                    .append(",")
                    .append("EVENT")
                    .append(",")
                    .append(data.getDataEventType())
                    .append(",");

                for (int i = 0; i < table.getColumnNames().length; i++) {
                    kafkaText.append(table.getColumnNames()[i])
                        .append(",")
                        .append(rowData[i]);
                    if (i + 1 < table.getColumnNames().length) {
                        kafkaText.append(",");
                    }
                }
            }
            context.put(KAKFA_TEXT_CACHE, kafkaText);
        }
        return false;
    }

    public void afterWrite(DataContext context, Table table, CsvData data) {
    }

    public boolean handlesMissingTable(DataContext context, Table table) {
        return true;
    }

    public void earlyCommit(DataContext context) {
    }

    public void batchComplete(DataContext context) {
        if (!context.getBatch().getChannelId().equals("heartbeat") && !context.getBatch().getChannelId().equals("config")) {
            String batchFileName = "batch-" + context.getBatch().getSourceNodeId() + "-" + context.getBatch().getBatchId();
            log.info("Processing batch " + batchFileName + " for Kafka");
            try {
                File batchesDir = new File("batches");
                if (!batchesDir.exists()) {
                    batchesDir.mkdir();
                }
                File batchFile = new File(batchesDir.getAbsoluteFile() + "/" + batchFileName);

                if (context.get(KAKFA_TEXT_CACHE) != null) {
                    String kafkaText = ((StringBuffer) context.get(KAKFA_TEXT_CACHE)).toString();
                    FileUtils.writeStringToFile(batchFile, KAKFA_TEXT_CACHE);
                    sendKafkaMessage(kafkaText);
                } else {
                    log.info("No text found to write to kafka queue");
                }
            }
            catch (Exception e) {
                log.warn("Unable to write batch to Kafka " + batchFileName, e);
                e.printStackTrace();
            }
        }
    }

    public void batchCommitted(DataContext context) {
    }

    public void batchRolledback(DataContext context) {
    }

    public void sendKafkaMessage(String kafkaText) {
        Map<String,Object> configs = new HashMap<String, Object>();

        configs.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "localhost:9092");
        configs.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer");
        configs.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer");
        configs.put(ProducerConfig.CLIENT_ID_CONFIG, "symmetricds-producer");

        KafkaProducer<String, String> producer = new KafkaProducer<String, String>(configs);

        producer.send(new ProducerRecord<String, String>("test", kafkaText));
        log.debug("Data to be sent to Kafka-" + kafkaText);

        producer.close();
    }
}

',{ts '2017-01-09 10:58:17.981'},'admin',{ts '2017-01-09 13:04:37.490'});
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2963 [SymmetricDS] New Feature minor have not tried 2017-01-17 17:01 2017-03-02 16:36
Reporter: mmichalek Platform:  
Assigned To: mmichalek OS:  
Priority: normal OS Version:  
Status: resolved Product Version: 3.8.14  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.8.14  
    Target Version: 3.8.14  
Summary: Support file sync in the C client
Description: Adding support for file sync in the C client.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2244 [SymmetricDS] Bug major always 2015-03-30 11:58 2017-01-22 10:38
Reporter: ratishkr Platform:  
Assigned To: OS:  
Priority: high OS Version:  
Status: new Product Version: 3.7.0  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Self- Referential Foreign Keys result in Contraint violation when loading data
Description: I have couple of tables that have self referential integrity contraints, like the usual scenario, where the manager of the employee is also an employee on the same table, and the manager ID column will have a Self referential key on the Employee Number column.

Since the data load can happen in any particular order, if the manager record gets loaded first and then the employee record gets in, there would not be any issues. But if the employee whose manager record is not inserted yet, goes in first, it would fail with constraint violation.


The self referential key must be added to the table either towards the end after the Data gets loaded, or should be disabled and then enabled back after loading data.
Tags:
Steps To Reproduce: Create a simple table: 'Employee Number', 'Employee Name', 'Manager Number'.

Make Employee Number as the primary key, and add a self referential foreign constraint on the Manager Number column referring the 'Employee Number' column.

Insert the following records:

<1, EMP_A, null>
<2, EMP_B, 1>
<3, EMP_C, 1>
<4, EMP_D, 2>

Now extract the records in XML format and try loading it to a new target in another database.

If the records in the export gets exported into the file in the exact order we did above, the load will not have any issues. To make it not work manually, you can change the order of the records in the XML file, such that the child gets load first before the parent employee record.
Additional Information:
Attached Files:
Notes
(0000957)
Zulla   
2017-01-22 04:44   
Can we get admins attention on this matter.
Is there a simple workaround this?
(0000958)
chenson   
2017-01-22 10:38   
There are properties to run sql scripts prior to and after and after an initial load. The are called initial.load.before.sql and initial.load.after.sql. You can disable fk and reenable them in these scripts.

Another approach would be to break up your employee initial load across two trigger routers with different initial load select criteria. In order to do that you would have to have a "dead" employee trigger (one that had sync_on_* all set to 0).

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2965 [SymmetricDS] New Feature major N/A 2017-01-18 11:20 2017-01-18 11:20
Reporter: luizmanoelbh Platform:  
Assigned To: OS:  
Priority: immediate OS Version:  
Status: new Product Version: 3.8.13  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Creating the REST call to verify that the password is compatible with the node in the node_security table.
Description: Creating the REST call to verify that the password is compatible with the node in the node_security table.

Another best-worked solution would be to create a method in the Android API that checks, before starting to create all the tables, whether the node is authorized to connect to the database.

I make the check by picking the node_password from the node_security table and if the password is different I call the engine.stop method, however it gives the interrupt error and this can lock the database on a second attempt with the correct password.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2955 [SymmetricDS] Bug minor have not tried 2017-01-09 08:09 2017-01-18 09:52
Reporter: malachi83 Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: SymmetricsDS Installation - Fails on start up.
Description: I am installing SymmetricsDS for the first time with the aim of syncing between IBM db2 9.7 FP 9 to postgresql 9.5.
I have followed the quick start demo guide using the data in the samples directory.
When i start the service it attempts to create the SYM tables and because I have already created the tables as part of one of the previous steps (../bin/symadmin --engine corp-000 create-sym-tables ) it fails.
If I drop the SYM tables and start the service again it starts up ok and creates the SYM tables. However when i stop and start the service it trys to create the tables again and fails.
The user which is configured in the properties file has access to the SYM tables. If logon to the database using db visualiser with the same user I can see all the SYM tables.
log output below any help or advice would be appreciated.
[startup] - SymmetricWebServer - About to start SymmetricDS web server on host:port default:31415
[startup] - / - Initializing Spring root WebApplicationContext
[corp-000] - AbstractSymmetricEngine - Initializing connection to database
[store-001] - AbstractSymmetricEngine - Initializing connection to database
[corp-000] - JdbcDatabasePlatformFactory - Detected database 'db2', version '9', protocol 'db2'
[corp-000] - JdbcDatabasePlatformFactory - The IDatabasePlatform being used is org.jumpmind.db.platform.db2.Db2DatabasePlatform
[store-001] - JdbcDatabasePlatformFactory - Detected database 'PostgreSQL', version '9', protocol 'postgresql'
[store-001] - JdbcDatabasePlatformFactory - The IDatabasePlatform being used is org.jumpmind.db.platform.postgresql.PostgreSqlDatabasePlatform
[corp-000] - Db2v9SymmetricDialect - The DbDialect being used is org.jumpmind.symmetric.db.db2.Db2v9SymmetricDialect
[corp-000] - StagingManager - The staging directory was initialized at the following location: /etc/symmetrics/symmetric-server-3.8.11/tmp/corp-000
[corp-000] - ClusterService - This node picked a server id of symmetricds-4-poc
[store-001] - PostgreSqlSymmetricDialect - The DbDialect being used is org.jumpmind.symmetric.db.postgresql.PostgreSqlSymmetricDialect
[store-001] - ExtensionService - Found 0 extension points from the database that will be registered
[store-001] - StagingManager - The staging directory was initialized at the following location: /etc/symmetrics/symmetric-server-3.8.11/tmp/store-001
[store-001] - ClusterService - This node picked a server id of symmetricds-4-poc
[startup] - / - Initializing Spring FrameworkServlet 'rest'
[startup] - SymmetricWebServer - Starting JMX HTTP console on port 31416
[startup] - SymmetricWebServer - Joining the web server main thread
HttpAdaptor version 3.0.1 started on port 31416
[store-001] - ExtensionService - Found 0 extension points from the database that will be registered
[store-001] - ClientExtensionService - Found 7 extension points from spring that will be registered
[store-001] - ExtensionService - Registering extension named 'databaseUpgradeListener' of type 'IDatabaseUpgradeListener'
[store-001] - ExtensionService - Registering extension named 'softwareUpgradeListener' of type 'ISoftwareUpgradeListener'
[store-001] - AbstractSymmetricEngine - Initializing SymmetricDS database
[store-001] - PostgreSqlSymmetricDialect - Checking if SymmetricDS tables need created or altered
[corp-000] - ClientExtensionService - Found 7 extension points from spring that will be registered
[corp-000] - ExtensionService - Registering extension named 'databaseUpgradeListener' of type 'IDatabaseUpgradeListener'
[corp-000] - ExtensionService - Registering extension named 'softwareUpgradeListener' of type 'ISoftwareUpgradeListener'
[corp-000] - AbstractSymmetricEngine - Initializing SymmetricDS database
[corp-000] - Db2v9SymmetricDialect - Checking if SymmetricDS tables need created or altered
[corp-000] - Db2v9SymmetricDialect - There are SymmetricDS tables that needed altered
[corp-000] - Db2v9SymmetricDialect - DDL failed: CREATE TABLE "SYM_CHANNEL"(
"CHANNEL_ID" VARCHAR(128) NOT NULL,
"PROCESSING_ORDER" INTEGER DEFAULT 1 NOT NULL,
"MAX_BATCH_SIZE" INTEGER DEFAULT 1000 NOT NULL,
"MAX_BATCH_TO_SEND" INTEGER DEFAULT 60 NOT NULL,
"MAX_DATA_TO_ROUTE" INTEGER DEFAULT 100000 NOT NULL,
"EXTRACT_PERIOD_MILLIS" INTEGER DEFAULT 0 NOT NULL,
"ENABLED" SMALLINT DEFAULT 1 NOT NULL,
"USE_OLD_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
"USE_ROW_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
"USE_PK_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
"RELOAD_FLAG" SMALLINT DEFAULT 0 NOT NULL,
"FILE_SYNC_FLAG" SMALLINT DEFAULT 0 NOT NULL,
"CONTAINS_BIG_LOB" SMALLINT DEFAULT 0 NOT NULL,
"BATCH_ALGORITHM" VARCHAR(50) DEFAULT 'default' NOT NULL,
"DATA_LOADER_TYPE" VARCHAR(50) DEFAULT 'default' NOT NULL,
"DESCRIPTION" VARCHAR(255),
"QUEUE" VARCHAR(25) DEFAULT 'default' NOT NULL,
"MAX_NETWORK_KBPS" DECIMAL(10,3) DEFAULT 0.000 NOT NULL,
"CREATE_TIME" TIMESTAMP,
"LAST_UPDATE_BY" VARCHAR(50),
"LAST_UPDATE_TIME" TIMESTAMP,
PRIMARY KEY ("CHANNEL_ID")
)
[corp-000] - JdbcSqlTemplate - DB2 SQL Error: SQLCODE=-601, SQLSTATE=42710, SQLERRMC=CAPEST.SYM_CHANNEL;TABLE, DRIVER=4.14.137. Failed to execute: CREATE TABLE "SYM_CHANNEL"(
"CHANNEL_ID" VARCHAR(128) NOT NULL,
"PROCESSING_ORDER" INTEGER DEFAULT 1 NOT NULL,
"MAX_BATCH_SIZE" INTEGER DEFAULT 1000 NOT NULL,
"MAX_BATCH_TO_SEND" INTEGER DEFAULT 60 NOT NULL,
"MAX_DATA_TO_ROUTE" INTEGER DEFAULT 100000 NOT NULL,
"EXTRACT_PERIOD_MILLIS" INTEGER DEFAULT 0 NOT NULL,
"ENABLED" SMALLINT DEFAULT 1 NOT NULL,
"USE_OLD_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
"USE_ROW_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
"USE_PK_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
"RELOAD_FLAG" SMALLINT DEFAULT 0 NOT NULL,
"FILE_SYNC_FLAG" SMALLINT DEFAULT 0 NOT NULL,
"CONTAINS_BIG_LOB" SMALLINT DEFAULT 0 NOT NULL,
"BATCH_ALGORITHM" VARCHAR(50) DEFAULT 'default' NOT NULL,
"DATA_LOADER_TYPE" VARCHAR(50) DEFAULT 'default' NOT NULL,
"DESCRIPTION" VARCHAR(255),
"QUEUE" VARCHAR(25) DEFAULT 'default' NOT NULL,
"MAX_NETWORK_KBPS" DECIMAL(10,3) DEFAULT 0.000 NOT NULL,
"CREATE_TIME" TIMESTAMP,
"LAST_UPDATE_BY" VARCHAR(50),
"LAST_UPDATE_TIME" TIMESTAMP,
PRIMARY KEY ("CHANNEL_ID")
)
[corp-000] - AbstractSymmetricEngine - An error occurred while starting SymmetricDS
org.jumpmind.db.sql.SqlException: DB2 SQL Error: SQLCODE=-601, SQLSTATE=42710, SQLERRMC=CAPEST.SYM_CHANNEL;TABLE, DRIVER=4.14.137
at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:303)
at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:294)
at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:493)
at org.jumpmind.db.sql.JdbcSqlTemplate.update(JdbcSqlTemplate.java:401)
at org.jumpmind.db.sql.SqlScript.execute(SqlScript.java:107)
at org.jumpmind.symmetric.db.AbstractSymmetricDialect.createOrAlterTablesIfNecessary(AbstractSymmetricDialect.java:474)
at org.jumpmind.symmetric.db.db2.Db2SymmetricDialect.createOrAlterTablesIfNecessary(Db2SymmetricDialect.java:48)
at org.jumpmind.symmetric.db.AbstractSymmetricDialect.initTablesAndDatabaseObjects(AbstractSymmetricDialect.java:155)
at org.jumpmind.symmetric.AbstractSymmetricEngine.setupDatabase(AbstractSymmetricEngine.java:449)
at org.jumpmind.symmetric.AbstractSymmetricEngine.setup(AbstractSymmetricEngine.java:423)
at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:580)
at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:571)
at org.jumpmind.symmetric.ClientSymmetricEngine.start(ClientSymmetricEngine.java:244)
at org.jumpmind.symmetric.web.SymmetricEngineHolder$EngineStarter.run(SymmetricEngineHolder.java:478)
Caused by: com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-601, SQLSTATE=42710, SQLERRMC=CAPEST.SYM_CHANNEL;TABLE, DRIVER=4.14.137
at com.ibm.db2.jcc.am.ed.a(ed.java:677)
at com.ibm.db2.jcc.am.ed.a(ed.java:60)
at com.ibm.db2.jcc.am.ed.a(ed.java:127)
at com.ibm.db2.jcc.am.oo.c(oo.java:2715)
at com.ibm.db2.jcc.am.oo.d(oo.java:2703)
at com.ibm.db2.jcc.am.oo.b(oo.java:2070)
at com.ibm.db2.jcc.t4.ab.i(ab.java:226)
at com.ibm.db2.jcc.t4.ab.c(ab.java:48)
at com.ibm.db2.jcc.t4.p.b(p.java:38)
at com.ibm.db2.jcc.t4.qb.h(qb.java:114)
at com.ibm.db2.jcc.am.oo.hb(oo.java:2065)
at com.ibm.db2.jcc.am.oo.a(oo.java:3237)
at com.ibm.db2.jcc.am.oo.e(oo.java:1073)
at com.ibm.db2.jcc.am.oo.execute(oo.java:1056)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
at org.jumpmind.db.sql.JdbcSqlTemplate$6.execute(JdbcSqlTemplate.java:416)
at org.jumpmind.db.sql.JdbcSqlTemplate$6.execute(JdbcSqlTemplate.java:401)
at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:491)
... 11 more
[corp-000] - AbstractSymmetricEngine - Stopping SymmetricDS externalId=000 version=3.8.11 database=DB2/LINUXX8664
[corp-000] - AbstractSymmetricEngine - SymmetricDS: type=server, name=corp-000, version=3.8.11, groupId=corp, externalId=000, databaseName=DB2/LINUXX8664, databaseVersion=9.7, driverName=IBM Data Server Driver for JDBC and SQLJ, driverVersion=4.14.137
Tags:
Steps To Reproduce: Install db2 9.7.9
Configure symmetrics using quick start demo guide loading sample data.
Start service
start up fails because SYM tables already exists.
Drop SYM tables
Start up is successful
stop then start service. Start up fails because SYM tables exist.
Additional Information:
Attached Files:
Notes
(0000956)
malachi83   
2017-01-18 09:52   
looking at the code It looks to be an issue with the meta data being returned.
adding logging on the meta values shows the below is be returned.
meta data values {TABLE_CAT=null, SELF_REF_COL_NAME=null, TABLE_NAME=null, TABLE_SCHEM=DB2INST1, TYPE_SC
HEM=null, TYPE_CAT=null, TABLE_TYPE=TABLE, REMARKS=null, REF_GENERATION=null, TYPE_NAME=null, NAME=SYM_TRIGGER_ROUTER_GROUPLET}
the table name is returned in the meta values under NAME instead of TABLE_NAME which is null
It then misses out a bit of code which create a table object.
The start up thinks no tables are created and then tries to create them.
Any help on this would be appreciated.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2950 [SymmetricDS] Bug block always 2016-12-27 00:50 2017-01-11 12:17
Reporter: monoranjang Platform:  
Assigned To: OS:  
Priority: immediate OS Version:  
Status: new Product Version: 3.8.9  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Failed to execute EXTRACT for node 1 and channel default StackTraceKey [SqlException:1239135777]
Description: I have a table with two CLOB datatype. Here is the configuration:
------------Channel Configuration----------
Channel Id*: MA_CREDENTIALS
Processing Order*: 1
Batch Algorithm*: Default
Max. Batch Size*: 1000
Max. Batch to Send*: 60
Max. Data to Route*: 100000
Max. KB/s*: 0
Data Loader Type*: Default
Queue Name*: default
Enabled: Checked
Reload Channel: Unchecked(Tried with checked also, same error)
File Sync Channel: Unchecked
Use Old Data to Route: Checked(Tried with checked also, same error)
Use Row Data to Route: Checked(Tried with checked also, same error)
Use Primary Key (PK) Data to Route: Checked(Tried with checked also, same error)
Tables Contain Big Lobs: Checked(Tried with checked also, same error)


------------------Trigger Configuration-------------
Trigger Id*: ms.ma_credentials
Source Catalog:
Source Schema: MS
Source Table*: MA_CREDENTIALS
Channel*: MA_CREDENTIALS
Sync on Insert: Checked
Sync on Update: Checked
Sync on Delete: Checked
Reload Channel Id*: reload
Sync on Insert Condition*: 1=1
Sync on Update Condition*: 1=1
Sync on Delete Condition*: 1=1
Custom Insert Trigger Text:
Custom Update Trigger Text:
Custom Delete Trigger Text:
Sync on Incoming: Unchecked
Stream Lobs: Checked
Capture Lobs: Checked
Capture Old Data: Checked
External Select: Checked
Excluded Column Names:
Included Column Names:
Sync Key Names:
Channel Expression:


---------------------Table Routing -----------------------
Trigger*: ms.ma_credentials
Router*: Server pushes for client MS
Initial Load Select:
Initial Load Delete
Initial Load Order*: 50
Initial Load Batch Count: 0
Enabled: Checked
Ping Back Enabled: Unchecked
Help


Tags:
Steps To Reproduce: Create Channel, Trigger & Router for a table with clob datatype. Do initial load of the table with create table option
Additional Information: 2016-12-25 18:32:47,875 ERROR [server] [NodeCommunicationService] [server-extract-default-10] Failed to execute EXTRACT for node 1 and channel default StackTraceKey [SqlException:1239135777]

2016-12-25 18:32:49,711 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:32:51,224 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:32:52,738 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:32:54,228 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:32:54,865 INFO [server] [FileSyncExtractorService] [server-file_extract-default-6] Extracting batches for request 55. Starting at batch 1288. Ending at batch 1288

2016-12-25 18:32:55,404 INFO [server] [DataExtractorService] [server-extract-default-11] Extracting batches for request 55. Starting at batch 1288. Ending at batch 1288

2016-12-25 18:32:55,907 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:32:56,986 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:32:57,572 INFO [server] [FileSyncExtractorService] [server-file_extract-default-6] Done extracting 1 batches for request 55

2016-12-25 18:32:58,101 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:32:59,440 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is marked as ready but it has been deleted. Rescheduling it for extraction

2016-12-25 18:33:00,302 ERROR [server] [NodeCommunicationService] [server-extract-default-11] Failed to execute EXTRACT for node 1 and channel default StackTraceKey [SqlException:1239135777]

2016-12-25 18:33:01,831 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:33:03,028 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:33:04,708 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:33:05,945 INFO [server] [FileSyncExtractorService] [server-file_extract-default-7] Extracting batches for request 55. Starting at batch 1288. Ending at batch 1288

2016-12-25 18:33:06,291 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:33:06,485 INFO [server] [DataExtractorService] [server-extract-default-12] Extracting batches for request 55. Starting at batch 1288. Ending at batch 1288

2016-12-25 18:33:07,491 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:33:08,435 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:33:08,652 INFO [server] [FileSyncExtractorService] [server-file_extract-default-7] Done extracting 1 batches for request 55

2016-12-25 18:33:09,652 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is marked as ready but it has been deleted. Rescheduling it for extraction

2016-12-25 18:33:10,040 ERROR [server] [NodeCommunicationService] [server-extract-default-12] Failed to execute EXTRACT for node 1 and channel default StackTraceKey [SqlException:1239135777]

2016-12-25 18:33:12,624 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:33:15,124 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:33:17,631 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:33:18,173 INFO [server] [FileSyncExtractorService] [server-file_extract-default-8] Extracting batches for request 55. Starting at batch 1288. Ending at batch 1288

2016-12-25 18:33:18,714 INFO [server] [DataExtractorService] [server-extract-default-13] Extracting batches for request 55. Starting at batch 1288. Ending at batch 1288

2016-12-25 18:33:19,330 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction

2016-12-25 18:33:20,879 INFO [server] [FileSyncExtractorService] [server-file_extract-default-8] Done extracting 1 batches for request 55
2016-12-25 18:33:20,884 INFO [server] [DataExtractorService] [server-data-extractor-1] Batch 1-1288 is not ready for delivery. It is currently scheduled for extraction
Attached Files:
Notes
(0000944)
monoranjang   
2016-12-27 01:13   
Note: SymmetricDS Server Node(inside office premise under firewall) is connected with a schema SYMDBTEST. It fetches data from a schema called MS(office premise). Client node is in AWS connected to schema SYMDBTEST at AWS-RDS. Trying to push data to schema MS in AWS-RDS.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2935 [SymmetricDS] Bug major always 2016-12-07 10:01 2016-12-07 11:48
Reporter: smotycka Platform:  
Assigned To: OS:  
Priority: high OS Version:  
Status: new Product Version: 3.8.8  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Error with GEOMETRY data type
Description: I try to replicate MSSQL tables with geometry data type to {MySQL,PostgreSQL}.

It ends with following error:

2016-12-07 15:44:56,459 INFO [corp-000] [MsSqlSymmetricDialect] [corp-000-sync-triggers-3] Failed to create trigger: create trigger SYM_ON_U_FOR_G_CCRNCRCRD_NXCT_CRP ...
....
2016-12-07 15:30:07,459 ERROR [corp-000] [TriggerRouterService] [corp-000-sync-triggers-3] Failed to create triggers for * StackTraceKey.init [SqlException:2558623764]
org.jumpmind.db.sql.SqlException: Invalid operator for data type. Operator equals equal to, type equals geometry.
Tags:
Steps To Reproduce:
Additional Information: output from log:

2016-12-07 15:44:56,459 INFO [corp-000] [MsSqlSymmetricDialect] [corp-000-sync-triggers-3] Failed to create trigger: create trigger SYM_ON_I_FOR_G_CCRNCRCRD_NXCT_CRP on "SM_testovacia"."dbo"."ig_occurencerecord_inexact" with execute as caller after insert as                                                                                                
   begin                                                                                                                                                                  
     declare @NCT int 
     set @NCT = @@OPTIONS & 512 
     set nocount on                                                                                                                                                       
     declare @TransactionId varchar(1000)                                                                                                                                 
     if (@@TRANCOUNT > 0) begin                                                                                                                                           
       select @TransactionId = convert(VARCHAR(1000),transaction_id) from sys.dm_exec_requests where session_id=@@SPID and open_transaction_count > 0                     
     end                                                                                                                                                                  
      
     if ("SM_testovacia".dbo.sym_triggers_disabled() = 0) begin                                                                                                                           
         insert into  "SM_testovacia"."dbo".sym_data 
            (table_name, event_type, trigger_hist_id, row_data, channel_id, transaction_id, source_node_id, external_data, create_time) 
          select 'ig_occurencerecord_inexact','I', 36, 
          case when inserted."SHAPE" is null then '' else '"' + replace(replace(convert(varchar(max),inserted."SHAPE".STAsText()) ,'\','\\'),'"','\"') + '"' end+','+
          case when orig."wkb" is null then '' else '"' + replace(replace("SM_testovacia".dbo.sym_base64_encode(CONVERT(VARBINARY(max), orig."wkb")),'\','\\'),'"','\"') + '"' end, 
                  'oe_transaction', @TransactionId,  "SM_testovacia".dbo.sym_node_disabled(), null, current_timestamp 
                                                                                                                                             
          from inserted inner join "SM_testovacia"."dbo"."ig_occurencerecord_inexact" orig on orig."SHAPE"=inserted."SHAPE" 
                                                                                                                                            
          where 1=1               
     end                                                                                                                                                                  
                                                                                                                                                  
     if (@NCT = 0) set nocount off                                                                                                                                        
   end                                                                                                                                                                    
---- go
2016-12-07 15:44:56,460 INFO [corp-000] [TriggerRouterService] [corp-000-sync-triggers-3] Cleaning up trigger hist row of 36 after failing to create the associated trigger
2016-12-07 15:44:56,462 ERROR [corp-000] [TriggerRouterService] [corp-000-sync-triggers-3] Failed to create triggers for * StackTraceKey.init [SqlException:2113078468]
org.jumpmind.db.sql.SqlException: Invalid operator for data type. Operator equals equal to, type equals geometry.
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:303)
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:294)
    at org.jumpmind.db.sql.JdbcSqlTransaction.executeCallback(JdbcSqlTransaction.java:391)
    at org.jumpmind.db.sql.JdbcSqlTransaction.execute(JdbcSqlTransaction.java:282)
    at org.jumpmind.symmetric.db.AbstractSymmetricDialect.createTrigger(AbstractSymmetricDialect.java:352)
    at org.jumpmind.symmetric.service.impl.TriggerRouterService.rebuildTriggerIfNecessary(TriggerRouterService.java:1775)
    at org.jumpmind.symmetric.service.impl.TriggerRouterService.updateOrCreateDatabaseTriggers(TriggerRouterService.java:1647)
    at org.jumpmind.symmetric.service.impl.TriggerRouterService.updateOrCreateDatabaseTrigger(TriggerRouterService.java:1529)
    at org.jumpmind.symmetric.service.impl.TriggerRouterService$2.run(TriggerRouterService.java:1515)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.sql.SQLException: Invalid operator for data type. Operator equals equal to, type equals geometry.
    at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:372)
    at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2894)
    at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2334)
    at net.sourceforge.jtds.jdbc.TdsCore.getMoreResults(TdsCore.java:643)
    at net.sourceforge.jtds.jdbc.JtdsStatement.processResults(JtdsStatement.java:614)
    at net.sourceforge.jtds.jdbc.JtdsStatement.executeSQL(JtdsStatement.java:573)
    at net.sourceforge.jtds.jdbc.JtdsStatement.executeImpl(JtdsStatement.java:810)
    at net.sourceforge.jtds.jdbc.JtdsStatement.execute(JtdsStatement.java:1290)
    at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
    at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
    at org.jumpmind.db.sql.JdbcSqlTransaction$3.execute(JdbcSqlTransaction.java:289)
    at org.jumpmind.db.sql.JdbcSqlTransaction$3.execute(JdbcSqlTransaction.java:282)
    at org.jumpmind.db.sql.JdbcSqlTransaction.executeCallback(JdbcSqlTransaction.java:389)
    ... 11 more
2016-12-07 15:44:56,481 INFO [corp-000] [TriggerRouterService] [symmetric-engine-startup-0] Done synchronizing triggers
Attached Files:
Notes
(0000926)
elong   
2016-12-07 11:48   
It might help to set sym_trigger.use_stream_lobs=1. But the bigger problem will probably be that you are missing a primary key on the table.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2932 [SymmetricDS] Improvement block always 2016-12-02 01:03 2016-12-05 03:05
Reporter: rpotam Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.10  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Db2 to Mysql Replication
Description: We are trying to replicate data between DB2 and Mysql by trying out the demo application.

when I keep the config (initial.load.create.first=false) in server.properties, I am getting the following error

[corp-000] - TriggerRouterService - Could not find any database tables matching 'item_selling_price' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_transform_table' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_parameter' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_file_trigger_router' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_table_reload_request' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_node_identity' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_grouplet_link' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_grouplet' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_file_snapshot' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_file_trigger' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_monitor_event' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_trigger_router' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_router' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'item' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_node_group_channel_wnd' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_notification' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_node' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_node_group' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_transform_column' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_load_filter' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_monitor' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_extension' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_node_security' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_trigger' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_node_group_link' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_channel' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_node_host' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_conflict' in the datasource that is configured
[corp-000] - TriggerRouterService - Could not find any database tables matching 'sym_trigger_router_grouplet' in the datasource that is configured


[store-001] - RegistrationService - Unexpected error during registration: Server returned HTTP response code: 500 for URL: http://localhost:31415/sync/corp-000/registration?nodeGroupId=store&externalId=001&syncURL=http%3A%2F%2Fde-mucpaasdb2in%3A31415%2Fsync%2Fstore-001&schemaVersion=%3F&databaseType=MySQL&databaseVersion=5.7&symmetricVersion=3.8.10&hostName=de-mucpaasdb2in&ipAddress=10.40.232.136
java.io.IOException: Server returned HTTP response code: 500 for URL: http://localhost:31415/sync/corp-000/registration?nodeGroupId=store&externalId=001&syncURL=http%3A%2F%2Fde-mucpaasdb2in%3A31415%2Fsync%2Fstore-001&schemaVersion=%3F&databaseType=MySQL&databaseVersion=5.7&symmetricVersion=3.8.10&hostName=de-mucpaasdb2in&ipAddress=10.40.232.136

when I keep the config (initial.load.create.first=true) in server.properties, I am getting the following error


[corp-000] - Db2v9SymmetricDialect - There are SymmetricDS tables that needed altered
[corp-000] - Db2v9SymmetricDialect - DDL failed: CREATE TABLE "SYM_CHANNEL"(
    "CHANNEL_ID" VARCHAR(128) NOT NULL,
    "PROCESSING_ORDER" INTEGER DEFAULT 1 NOT NULL,
    "MAX_BATCH_SIZE" INTEGER DEFAULT 1000 NOT NULL,
    "MAX_BATCH_TO_SEND" INTEGER DEFAULT 60 NOT NULL,
    "MAX_DATA_TO_ROUTE" INTEGER DEFAULT 100000 NOT NULL,
    "EXTRACT_PERIOD_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "ENABLED" SMALLINT DEFAULT 1 NOT NULL,
    "USE_OLD_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
    "USE_ROW_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
    "USE_PK_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
    "RELOAD_FLAG" SMALLINT DEFAULT 0 NOT NULL,
    "FILE_SYNC_FLAG" SMALLINT DEFAULT 0 NOT NULL,
    "CONTAINS_BIG_LOB" SMALLINT DEFAULT 0 NOT NULL,
    "BATCH_ALGORITHM" VARCHAR(50) DEFAULT 'default' NOT NULL,
    "DATA_LOADER_TYPE" VARCHAR(50) DEFAULT 'default' NOT NULL,
    "DESCRIPTION" VARCHAR(255),
    "QUEUE" VARCHAR(25) DEFAULT 'default' NOT NULL,
    "MAX_NETWORK_KBPS" DECIMAL(10,3) DEFAULT 0.000 NOT NULL,
    "CREATE_TIME" TIMESTAMP,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP,
    PRIMARY KEY ("CHANNEL_ID")
)
[corp-000] - JdbcSqlTemplate - DB2 SQL Error: SQLCODE=-601, SQLSTATE=42710, SQLERRMC=PAAS_CA.SYM_CHANNEL;TABLE, DRIVER=4.21.29. Failed to execute: CREATE TABLE "SYM_CHANNEL"(
    "CHANNEL_ID" VARCHAR(128) NOT NULL,
    "PROCESSING_ORDER" INTEGER DEFAULT 1 NOT NULL,
    "MAX_BATCH_SIZE" INTEGER DEFAULT 1000 NOT NULL,
    "MAX_BATCH_TO_SEND" INTEGER DEFAULT 60 NOT NULL,
    "MAX_DATA_TO_ROUTE" INTEGER DEFAULT 100000 NOT NULL,
    "EXTRACT_PERIOD_MILLIS" INTEGER DEFAULT 0 NOT NULL,
    "ENABLED" SMALLINT DEFAULT 1 NOT NULL,
    "USE_OLD_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
    "USE_ROW_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
    "USE_PK_DATA_TO_ROUTE" SMALLINT DEFAULT 1 NOT NULL,
    "RELOAD_FLAG" SMALLINT DEFAULT 0 NOT NULL,
    "FILE_SYNC_FLAG" SMALLINT DEFAULT 0 NOT NULL,
    "CONTAINS_BIG_LOB" SMALLINT DEFAULT 0 NOT NULL,
    "BATCH_ALGORITHM" VARCHAR(50) DEFAULT 'default' NOT NULL,
    "DATA_LOADER_TYPE" VARCHAR(50) DEFAULT 'default' NOT NULL,
    "DESCRIPTION" VARCHAR(255),
    "QUEUE" VARCHAR(25) DEFAULT 'default' NOT NULL,
    "MAX_NETWORK_KBPS" DECIMAL(10,3) DEFAULT 0.000 NOT NULL,
    "CREATE_TIME" TIMESTAMP,
    "LAST_UPDATE_BY" VARCHAR(50),
    "LAST_UPDATE_TIME" TIMESTAMP,
    PRIMARY KEY ("CHANNEL_ID")
)
[corp-000] - AbstractSymmetricEngine - An error occurred while starting SymmetricDS
org.jumpmind.db.sql.SqlException: DB2 SQL Error: SQLCODE=-601, SQLSTATE=42710, SQLERRMC=PAAS_CA.SYM_CHANNEL;TABLE, DRIVER=4.21.29
        at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:303)
        at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:294)
        at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:493)
        at org.jumpmind.db.sql.JdbcSqlTemplate.update(JdbcSqlTemplate.java:401)
        at org.jumpmind.db.sql.SqlScript.execute(SqlScript.java:107)
        at org.jumpmind.symmetric.db.AbstractSymmetricDialect.createOrAlterTablesIfNecessary(AbstractSymmetricDialect.java:474)
        at org.jumpmind.symmetric.db.db2.Db2SymmetricDialect.createOrAlterTablesIfNecessary(Db2SymmetricDialect.java:48)
        at org.jumpmind.symmetric.db.AbstractSymmetricDialect.initTablesAndDatabaseObjects(AbstractSymmetricDialect.java:155)
        at org.jumpmind.symmetric.AbstractSymmetricEngine.setupDatabase(AbstractSymmetricEngine.java:449)
        at org.jumpmind.symmetric.AbstractSymmetricEngine.setup(AbstractSymmetricEngine.java:423)
        at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:580)
        at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:571)
        at org.jumpmind.symmetric.ClientSymmetricEngine.start(ClientSymmetricEngine.java:244)
        at org.jumpmind.symmetric.web.SymmetricEngineHolder$EngineStarter.run(SymmetricEngineHolder.java:478)
Caused by: com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-601, SQLSTATE=42710, SQLERRMC=PAAS_CA.SYM_CHANNEL;TABLE, DRIVER=4.21.29
        at com.ibm.db2.jcc.am.kd.a(kd.java:810)
        at com.ibm.db2.jcc.am.kd.a(kd.java:66)
        at com.ibm.db2.jcc.am.kd.a(kd.java:140)
        at com.ibm.db2.jcc.am.sp.c(sp.java:2796)
        at com.ibm.db2.jcc.am.sp.d(sp.java:2784)
        at com.ibm.db2.jcc.am.sp.b(sp.java:2146)
        at com.ibm.db2.jcc.t4.bb.j(bb.java:233)
        at com.ibm.db2.jcc.t4.bb.c(bb.java:48)
        at com.ibm.db2.jcc.t4.p.b(p.java:38)
        at com.ibm.db2.jcc.t4.vb.h(vb.java:124)
        at com.ibm.db2.jcc.am.sp.jb(sp.java:2141)
        at com.ibm.db2.jcc.am.sp.a(sp.java:3336)
        at com.ibm.db2.jcc.am.sp.e(sp.java:1111)
        at com.ibm.db2.jcc.am.sp.execute(sp.java:1090)
        at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
        at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
        at org.jumpmind.db.sql.JdbcSqlTemplate$6.execute(JdbcSqlTemplate.java:416)
        at org.jumpmind.db.sql.JdbcSqlTemplate$6.execute(JdbcSqlTemplate.java:401)
        at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:491)
        ... 11 more
[corp-000] - AbstractSymmetricEngine - Stopping SymmetricDS externalId=000 version=3.8.10 database=DB2/LINUXX8664
[corp-000] - AbstractSymmetricEngine - SymmetricDS: type=server, name=corp-000, version=3.8.10, groupId=corp, externalId=000, databaseName=DB2/LINUXX8664, databaseVersion=10.5, driverName=IBM Data Server Driver for JDBC and SQLJ, driverVersion=4.21.29




Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0000924)
chenson   
2016-12-04 11:42   
That looks to me as if tables have been created, but symmetricds can't see them via metadata so it thinks it needs to create them again. Can you log onto the DB2 database with the credentials that SymmetricDS is using and see the tables?
(0000925)
rpotam   
2016-12-05 03:05   
I could able to view tables that are created by SymmetryDS, i.e with the credentials that I supplied.

What I suspect is that SymmetryDS is looking for tables in small-case, where as DB2 stores all objects in Upper-case. But I am not sure I just suspect that. But I couldn't think SymmetryDS would have not taken care of case-sensitivity, when they are implementing this to multiple databases.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2922 [SymmetricDS] Bug major always 2016-11-30 08:21 2016-12-01 09:45
Reporter: iberras Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.9  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Send-Schema command not working with HSQL
Description: Trying to update the schema with the send-schema command. When adding/removing/modifing a column, basically any modification, throws an error that a dependant object exists. There is no workarround for this and i have no other choice but to do a reload wich consumes a lot of time and bandwidth.

Stack trace:
I get this error:
org.jumpmind.db.sql.SqlException: object dependent exists: PUBLIC.SYM_ON_I_FOR_CTVTN_CSRVRDVLPMNT in statement [ALTER TABLE "PUBLIC"."PUBLIC"."ACTIVATION" DROP COLUMN "LASTCONNECTION"]
at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:303)
at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:294)
at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:494)
at org.jumpmind.db.sql.JdbcSqlTemplate.update(JdbcSqlTemplate.java:402)
at org.jumpmind.db.sql.SqlScript.execute(SqlScript.java:107)
at org.jumpmind.db.platform.AbstractDatabasePlatform.alterTables(AbstractDatabasePlatform.java:219)
at org.jumpmind.db.platform.AbstractDatabasePlatform.alterDatabase(AbstractDatabasePlatform.java:192)
at org.jumpmind.symmetric.io.data.writer.DefaultDatabaseWriter.create(DefaultDatabaseWriter.java:509)
at org.jumpmind.symmetric.io.data.writer.AbstractDatabaseWriter.write(AbstractDatabaseWriter.java:167)
at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.write(NestedDataWriter.java:64)
at org.jumpmind.symmetric.model.ProcessInfoDataWriter.write(ProcessInfoDataWriter.java:65)
at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.write(NestedDataWriter.java:64)
at org.jumpmind.symmetric.io.data.writer.TransformWriter.write(TransformWriter.java:207)
at org.jumpmind.symmetric.io.data.DataProcessor.forEachDataInTable(DataProcessor.java:200)
at org.jumpmind.symmetric.io.data.DataProcessor.forEachTableInBatch(DataProcessor.java:170)
at org.jumpmind.symmetric.io.data.DataProcessor.process(DataProcessor.java:116)
at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromTransport(DataLoaderService.java:526)
at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromPull(DataLoaderService.java:285)
at org.jumpmind.symmetric.service.impl.PullService.execute(PullService.java:126)
at org.jumpmind.symmetric.service.impl.NodeCommunicationService$1.run(NodeCommunicationService.java:479)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Tags:
Steps To Reproduce: It happens all the time.

Send schema command with Central DB: MySQL and Client DB: HSQL. Add one column in MySQL, reload triggers, and then send the schema to the client HSQL and the error appears.
Additional Information:
Attached Files:
Notes
(0000916)
elong   
2016-11-30 12:10   
When the alter comes through to load on the target node, we could temporarily drop any triggers on it, perform the alter, then re-sync the triggers.

In the meantime, a workaround is to manually drop the trigger before altering the table. You could send a BSH script that drops the trigger for that table, followed by sending the schema change, like this:

symadmin send-script -n 001 't = new java.util.HashSet(); t.add("mytable"); engine.getTriggerRouterService().dropTriggers(t);'

symadmin send-schema -n 001 mytable
(0000919)
iberras   
2016-11-30 16:36   
This was working before. I don't know what has changed. I think in 3.7.36 the send schema was working.

That is a workaround, but im working with all the tables sending the send-schema with no tables as a parameter. Is there a way to drop all the triggers at once? Do you think that you could fix this for the next release?
(0000920)
chenson   
2016-11-30 17:25   
Technically, I don't see how this would have every worked. We could add a feature to drop triggers prior to altering tables and then resyncing triggers afterwards. It isn't a super huge priority for us though ...
(0000921)
iberras   
2016-12-01 07:43   
Well then, I will implement a solution that drops all the triggers and then executes the send schema. I will keep an eye on the change log if you implement this in any new release. Thank you very much!
(0000922)
iberras   
2016-12-01 09:45   
For anybody that has the same problem, if you are in the client and what to update all the schema with HSQLDB, use the function node.getTriggerRouterService().dropTriggers();

After that, do the send-schema, and afterwards do the node.syncTriggers();

Hope it helps someone!

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2879 [SymmetricDS] Bug block always 2016-10-26 06:43 2016-11-30 12:01
Reporter: gatnick Platform:  
Assigned To: mmichalek OS:  
Priority: urgent OS Version:  
Status: assigned Product Version: 3.8.7  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: using a different target catalog and schema when transfering data from psql to mssql dosen't allow identity columns
Description: When transferring data from a psql database to a mssql database together with using a different catalog and schema (different database to the default). Identity columns will not transfer and instead will produce the following error "org.jumpmind.db.sql.SqlException: Cannot insert the value NULL into column"
Tags:
Steps To Reproduce:
Additional Information: I have looked around for a solution without success.
the following tables are configured to use both a target schema and target catalog:
sym_router
sym_transform_table
Attached Files:
Notes
(0000890)
elong   
2016-10-26 12:33   
There is probably something in the transform causing the error. Did you mark the primary key column in the transform and select the "identity" transform type?
(0000896)
gatnick   
2016-10-27 05:24   
Thank you for the response.

The column is not a primary key so is marked with a 0 in the 'pk' field in the sym_transform_column table. I did however try marking the 'pk' column with the value of 1 to see if this works but it did not.

The 'transform_type' column has the value of 'identity' in the sym_transform_column table.

If you would like any further information please let me know.

Thanks, Nick
(0000908)
mmichalek   
2016-11-16 16:11   
Hi Nick, I have not been able to reproduce the issue so far. Also, are you using a SERIAL column on postgres and identity on MSSQL? Would it be possible for you to provide a simple sample configuration that reproduces it (along with the DDL to create the tables)?

Thanks,
Mark
(0000911)
gatnick   
2016-11-21 05:55   
(Last edited: 2016-11-21 06:10)
Thanks for the response Mark.
The psql column is not SERIAL.

Below is most of the failing configuration: (please let me know if I’ve missed anything)

--MSSQL table set up
USE [WORLD]
GO

/****** Object: Table [dbo].[PlanetEnd] Script Date: 11/18/2016 12:04:39 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

SET ANSI_PADDING ON
GO

CREATE TABLE [dbo].[PlanetEnd](
    [PlanetEndURN] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,
    [TestRecord] [bit] NOT NULL,
    [ActivityID] [int] NOT NULL,
    [URN] [varchar](50) NOT NULL,
    [SegmentLetter] [varchar](10) NOT NULL,
    [Source] [varchar](50) NULL,
    [DateLoaded] [datetime] NOT NULL,
    [Status] [int] NOT NULL,
    [LastStatus] [int] NOT NULL,
    [PriorityAdjustment] [int] NULL,
 CONSTRAINT [PK_PlanetEnd] PRIMARY KEY CLUSTERED
(
    [TestRecord] ASC,
    [ActivityID] ASC,
    [URN] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO

SET ANSI_PADDING OFF
GO

ALTER TABLE [dbo].[PlanetEnd] ADD CONSTRAINT [DF_PlanetEnd_DateLoaded] DEFAULT (getdate()) FOR [DateLoaded]
GO

ALTER TABLE [dbo].[PlanetEnd] ADD CONSTRAINT [DF_PlanetEnd_Status] DEFAULT ((0)) FOR [Status]
GO

ALTER TABLE [dbo].[PlanetEnd] ADD CONSTRAINT [DF_PlanetEnd_LastStatus] DEFAULT ((0)) FOR [LastStatus]
GO

ALTER TABLE [dbo].[PlanetEnd] ADD DEFAULT ((0)) FOR [PriorityAdjustment]
GO

--psql table set up
SET statement_timeout = 0;
SET client_encoding = 'SQL_ASCII';
SET standard_conforming_strings = on;
SET check_function_bodies = false;
SET client_min_messages = warning;

SET search_path = public, pg_catalog;

SET default_tablespace = '';

SET default_with_oids = false;

CREATE TABLE planetend (
    testrecord boolean NOT NULL,
    activityid integer NOT NULL,
    urn character varying(50) NOT NULL,
    planetendurn integer,
    dateloaded timestamp without time zone NOT NULL,
    laststatus integer NOT NULL,
    segmentletter character varying(10) NOT NULL,
    priorityadjustment integer,
    status integer NOT NULL,
    source character varying(50)
);

ALTER TABLE public.planetend OWNER TO mint;


ALTER TABLE ONLY planetend
    ADD CONSTRAINT planetend_pkey PRIMARY KEY (testrecord, activityid, urn);

--psql is the master node, so here are the symmetricds table configurations
INSERT INTO sym_router ( router_id, source_node_group_id, target_node_group_id, router_type, router_expression, sync_on_update, sync_on_insert, sync_on_delete, create_time, last_update_time ,use_source_catalog_schema, target_schema_name, target_catalog_name) VALUES ( 'psql_to_mssql_planetend', 'sync-psql', 'sync-mssql', 'bsh', 'PLANETENDURN == null', 0, 1, 0, current_timestamp, current_timestamp, 0, 'dbo', 'world');
INSERT INTO sym_trigger ( trigger_id, source_table_name, channel_id, sync_on_update, sync_on_insert, sync_on_delete, create_time, last_update_time ) VALUES ( 'planetend_inbound', 'planetend', 'onitfhi-to-mi', 0, 1, 0, current_timestamp, current_timestamp );
INSERT INTO sym_trigger_router ( trigger_id, router_id, create_time, last_update_time ) VALUES ( 'planetend_inbound', 'psql_to_mssql_planetend', current_timestamp, current_timestamp);
INSERT INTO sym_transform_table ( transform_id, source_node_group_id, target_node_group_id, transform_point, source_table_name, target_table_name, column_policy, delete_action,target_catalog_name, target_schema_name ) VALUES ( 'planetend_inbound_insert', 'sync-psql', 'sync-mssql', 'LOAD', 'planetend', 'planetend', 'SPECIFIED', 'NONE' ,'WORLD','dbo');
INSERT INTO sym_transform_column( transform_id, include_on, target_column_name, source_column_name, transform_type, transform_expression, pk) VALUES ( 'planetend_inbound_insert', 'I', 'TestRecord', 'TestRecord', 'copy', null, 1 ), ( 'planetend_inbound_insert', 'I', 'ActivityID', 'ActivityID', 'copy', null , 1), ('planetend_inbound_insert', 'I', 'URN', 'URN', 'copy', null, 1 ), ( 'planetend_inbound_insert', 'I', 'PlanetEndURN', null, 'identity', null, 0 ), ('planetend_inbound_insert', 'I', 'SegmentLetter', 'SegmentLetter', 'copy', null, 0 ), ( 'planetend_inbound_insert', 'I', 'DateLoaded', null, 'variable', 'system_timestamp',0), ( 'planetend_inbound_insert', 'I', 'Status', null, 'const', '0', 0 ), ('planetend_inbound_insert', 'I', 'LastStatus', null, 'const', '0', 0 );
INSERT INTO sym_node (node_id, node_group_id, external_id, sync_enabled, sync_url, schema_version, symmetric_version, database_type, database_version, heartbeat_time, timezone_offset, batch_to_send_count, batch_in_error_count, created_at_node_id, deployment_type) VALUES ('sync-mssql', 'sync-mssql', 'sync-mssql', 1, 'http://10.10.2.150:31410/sync/sync-mssql', '?', '3.8.6', 'Microsoft SQL Server', '10.50', '2016-10-26 09:53:30.145', '+01:00', 0, 0, 'sync-psql', NULL);
INSERT INTO sym_node (node_id, node_group_id, external_id, sync_enabled, sync_url, schema_version, symmetric_version, database_type, database_version, heartbeat_time, timezone_offset, batch_to_send_count, batch_in_error_count, created_at_node_id, deployment_type) VALUES ('sync-psql', 'sync-psql', 'sync-psql', 1, 'http://10.10.2.150:31420/sync/sync-psql', '?', '3.8.7', 'PostgreSQL', '9.1', '2016-10-26 11:10:43.661', '+01:00', -1, -1, NULL, 'server');

INSERT INTO sym_node_host (node_id, host_name, ip_address, os_user, os_name, os_arch, os_version, available_processors, free_memory_bytes, total_memory_bytes, max_memory_bytes, java_version, java_vendor, jdbc_version, symmetric_version, timezone_offset, heartbeat_time, last_restart_time, create_time) VALUES ('sync-psql', 'localhost', '10.10.2.150', 'root', 'Linux', 'amd64', '3.2.0-4-amd64', 8, 174165864, 241172480, 241172480, '1.7.0_111', 'Oracle Corporation', 'PostgreSQL 9.4 JDBC4 (build 1204)', '3.8.7', '+00:00', '2016-11-21 10:26:14', '2016-11-21 10:11:14.709', '2016-10-25 16:06:55.518859');
INSERT INTO sym_channel (channel_id, processing_order, max_batch_size, max_batch_to_send, max_data_to_route, extract_period_millis, enabled, use_old_data_to_route, use_row_data_to_route, use_pk_data_to_route, reload_flag, file_sync_flag, contains_big_lob, batch_algorithm, data_loader_type, description, queue, max_network_kbps, create_time, last_update_by, last_update_time) VALUES ('onitfhi-to-mi', 1, 100000, 60, 100000, 0, 1, 1, 1, 1, 0, 0, 0, 'default', 'default', 'onitfhi-to-mi', 'default', 0.000, NULL, NULL, NULL);

--once that is all set up if you do an psql insert like below you will encounter the error.
INSERT INTO planetend values (false,1234, 4321,null,now(),0,'A',0,0,null) ;

If you need any more information please let me know.

Thanks, Nick

(0000915)
josh-a-hicks   
2016-11-30 12:01   
Nick,

Can you remove the identity transform for your PlanetEndURN column. By default SDS will recognize an identity column on the target and turn identity insert on so that your value will be used rather then having the database generate one.

Thanks
Josh

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2918 [SymmetricDS Pro] Bug minor sometimes 2016-11-24 09:17 2016-11-24 09:17
Reporter: monoranjang Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.9  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: IO Error: Socket read timed out
Description: 2016-11-24 14:10:00,114 INFO [gui] [PullJob] [qtp238157928-18] The job.pull job has been cancelled
2016-11-24 14:10:00,114 INFO [gui] [PullJob] [qtp238157928-18] Starting job.pull on periodic schedule: every 5000ms with the first run at Thu Nov 24 14:10:07 UTC 2016
2016-11-24 14:10:10,072 ERROR [server] [RouterJob] [server-job-11] StackTraceKey [SqlException:2135036551]
2016-11-24 14:10:13,336 INFO [server] [DataGapFastDetector] [server-job-8] Full gap analysis is running
2016-11-24 14:10:13,343 INFO [server] [DataGapFastDetector] [server-job-8] Querying data in gaps from database took 7 ms
2016-11-24 14:11:13,388 ERROR [server] [RouterJob] [server-job-8] StackTraceKey.init [SqlException:2997995603]
org.jumpmind.db.sql.SqlException: IO Error: Socket read timed out
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:303)
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:294)
    at org.jumpmind.db.sql.JdbcSqlTransaction.executeCallback(JdbcSqlTransaction.java:391)
    at org.jumpmind.db.sql.JdbcSqlTransaction.prepareAndExecute(JdbcSqlTransaction.java:310)
    at org.jumpmind.symmetric.service.impl.DataService.deleteDataGap(DataService.java:1894)
    at org.jumpmind.symmetric.route.DataGapFastDetector.deleteDataGaps(DataGapFastDetector.java:377)
    at org.jumpmind.symmetric.route.DataGapFastDetector.saveDataGaps(DataGapFastDetector.java:351)
    at org.jumpmind.symmetric.route.DataGapFastDetector.afterRouting(DataGapFastDetector.java:279)
    at org.jumpmind.symmetric.route.DataGapFastDetector.beforeRouting(DataGapFastDetector.java:124)
    at org.jumpmind.symmetric.service.impl.RouterService.routeData(RouterService.java:200)
    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:511)
    at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.sql.SQLException: IO Error: Socket read timed out
    at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:1058)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1329)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3584)
    at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3685)
    at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1088)
    at org.apache.commons.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:172)
    at org.apache.commons.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:172)
    at org.jumpmind.db.sql.JdbcSqlTransaction$4.execute(JdbcSqlTransaction.java:319)
    at org.jumpmind.db.sql.JdbcSqlTransaction$4.execute(JdbcSqlTransaction.java:310)
    at org.jumpmind.db.sql.JdbcSqlTransaction.executeCallback(JdbcSqlTransaction.java:389)
    ... 18 more
Caused by: oracle.net.ns.NetException: Socket read timed out
    at oracle.net.ns.Packet.receive(Packet.java:339)
    at oracle.net.ns.DataPacket.receive(DataPacket.java:106)
    at oracle.net.ns.NetInputStream.getNextPacket(NetInputStream.java:315)
    at oracle.net.ns.NetInputStream.read(NetInputStream.java:260)
    at oracle.net.ns.NetInputStream.read(NetInputStream.java:185)
    at oracle.net.ns.NetInputStream.read(NetInputStream.java:102)
    at oracle.jdbc.driver.T4CSocketInputStreamWrapper.readNextPacket(T4CSocketInputStreamWrapper.java:124)
    at oracle.jdbc.driver.T4CSocketInputStreamWrapper.read(T4CSocketInputStreamWrapper.java:80)
    at oracle.jdbc.driver.T4CMAREngine.unmarshalUB1(T4CMAREngine.java:1137)
    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:290)
    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:192)
    at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531)
    at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:207)
    at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:1037)
    ... 27 more
2016-11-24 14:11:18,392 INFO [server] [DataGapFastDetector] [server-job-12] Full gap analysis is running
2016-11-24 14:11:18,399 INFO [server] [DataGapFastDetector] [server-job-12] Querying data in gaps from database took 7 ms
2016-11-24 14:12:18,460 ERROR [server] [RouterJob] [server-job-12] StackTraceKey [SqlException:2997995603]
2016-11-24 14:12:23,464 INFO [server] [DataGapFastDetector] [server-job-9] Full gap analysis is running
Tags:
Steps To Reproduce: delete from sym_data
delete from sym_data_gap
delete from sym_data_event

insert record into source table
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2904 [SymmetricDS] Bug block always 2016-11-16 06:05 2016-11-16 12:22
Reporter: tparamanandam Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.8  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Excluding the Indexes getting replicated from server to clients.
Description: I am replicating a table which contains Indexes from MSSql Server to MYSQL server. I want to exclude the index in replication. I don't find an option to exclude indexes getting replicated from server to client.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0000907)
josh-a-hicks   
2016-11-16 12:22   
You could use dbexport command line to generate your create table scripts. There is an option to ignore indices

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2903 [SymmetricDS] Bug minor always 2016-11-15 16:19 2016-11-15 16:19
Reporter: woehrl01 Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.8.8  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: DataExtractorService is not incrementing DataBytesSent and DataSent
Description: After upgrading to 3.8, I found that the stats are missing values for DataBytesSent and DataSent, even so data is transmitted.

I think the issue as been introduces via this changeset:
https://github.com/JumpMind/symmetric-ds/commit/9644ef8e87ab7a35eefc650158e327dae12534f6#diff-4019c11ce359b9cc1b3599ed55c162cb

which doesn't call the statisticManager if mode == ExtractMode.FOR_SYM_CLIENT && writer != null which mostly is true on "normal" transfer.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2439 [SymmetricDS] Bug minor always 2015-11-05 14:23 2016-11-14 17:21
Reporter: rotten Platform: Ubuntu  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.7.26  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: PostgreSQL 9.5 Beta 1 no longer supports autocommit option
Description: When I try to run dbimport for a new PostgreSQL 9.5 (Beta 1) database I get this error:

org.postgresql.util.PSQLException: ERROR: unrecognized configuration parameter "autocommit"

It appears 9.5 has removed support for this configuration option.

http://www.postgresql.org/docs/9.5/static/release-9-5.html

"Remove server configuration parameter autocommit, which was already deprecated and non-operational (Tom Lane)"
Tags:
Steps To Reproduce: Stand up a 9.5 database and try to load a table using dbimport.
Additional Information: I haven't figured out a work-around yet.
Attached Files:
Notes
(0000728)
rotten   
2015-11-05 15:25   
Since I'm loading into PostgreSQL, I used the 'copy table from' command to do the import from the dbexport files.
(0000757)
moizhb   
2016-02-02 21:01   
(Last edited: 2016-02-02 21:02)
Now that postgresql-9.5 is in production, we upgraded it and I see symmetric cannot connect to the database. Here is the error:

`2016-02-03 01:45:13,622 ERROR [server-000] [AbstractSymmetricEngine] [symmetric-engine-startup-0] Could not get a connection to the database: Cannot create PoolableConnectionFactory (ERROR: unrecognized configuration parameter "autocommit"). Waiting for 10 seconds before trying to connect to the database again.`

Any workaround for time being is appreciated. Thanks.

(0000770)
woehrl01   
2016-03-22 16:10   
(Last edited: 2016-03-23 04:53)
You need to (self-)update the JDBC driver for postgresql:

https://github.com/pgjdbc/pgjdbc/blob/477851c1c0a402776cd162c88d377bd05661eab0/pgjdbc/src/main/java/org/postgresql/core/v2/ConnectionFactoryImpl.java#L485

remove "set autocommit = ON"

in seems there is currently no fix for this provided yet.

edit:

If you create a .jar from the corresponding .java file (only with that .java) you should be able to put that in the "patches" folder of your SymmetricDS installation, to get this working.

(0000904)
alex_val   
2016-11-14 10:47   
I confirm workaround above works, but this looks like to much of hassle. Postgresql 9.5 should work out of the box.
(0000905)
chenson   
2016-11-14 11:55   
You can remove protocolVersion=2 from the jdbc url. It was added because of this issue:

http://www.symmetricds.org/issues/view.php?id=1656

Maybe postgres 9.5 and higher have solved the plan issue.
(0000906)
davesharpe13   
2016-11-14 17:21   
To work around the "autocommit" error, the PostgreSQL JDBC driver shipped with SymmetricDS needs to be updated:
1. download the latest PostgreSQL JDBC driver from https://jdbc.postgresql.org/download.html. There are different drivers depending on the level of JDK (“java -version”).
2. put the downloaded jar file in the “../symmetric-server-3.8.8/patches” directory.

I tried the latest "postgresql-9.4.1212.jar and the SymmetricDS "tutorial" went through on PostgreSQL v9.5 databases.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2899 [SymmetricDS] Bug major sometimes 2016-11-14 00:50 2016-11-14 00:50
Reporter: nuralimca Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.7.33  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: MAINTENANCE TOKEN error from sybase pause data copy
Description: Hi,

I am using ..
Symmetric DS: 3.7.33
Source DB: Sybase ASE 15
Source JDBC Driver: jTDS 1.3
Target DB: Sybase ASE 16
Target JDBC Driver: JConnect 7.07

When data are getting copied from Source DB to Target DB, sometimes I got "MAINTENANCE TOKEN" error due to which data copy from source to target don't happen. After sometime (about 10 mins), the "MAINTENANCE TOKEN" issue goes off and data copy contiunues as usual by Symmteric DS.

** Error **
2016 11 04 03:34:34#+00#DEBUG#com.sap.it.setup.migrate2.core.db.DbDeltaCopyCompletedCheckSupplier##anonymous#AvatarMigrationThread-1#na#wb38a11ed#vnsdsload4#web#wb38a11ed#RouterService.unroutedDataCount:1|
2016 11 04 03:34:36#+00#ERROR#org.jumpmind.symmetric.service.impl.RouterService##anonymous#tnt1_rt-0000-job-8#na#wb38a11ed#vnsdsload4#web#wb38a11ed#org.jumpmind.db.sql.SqlException: Operand type clash: DECIMAL is incompatible with MAINTENANCE TOKEN
 
                at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:283)
                at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:274)
                at org.jumpmind.db.sql.JdbcSqlTransaction.flush(JdbcSqlTransaction.java:163)
                at org.jumpmind.symmetric.service.impl.DataService.insertDataEvents(DataService.java:978)
                at org.jumpmind.symmetric.service.impl.RouterService.routeDataForChannel(RouterService.java:512)
                at org.jumpmind.symmetric.service.impl.RouterService.routeDataForEachChannel(RouterService.java:336)
                at org.jumpmind.symmetric.service.impl.RouterService.routeData(RouterService.java:184)
                at org.jumpmind.symmetric.job.RouterJob.doJob(RouterJob.java:40)
                at org.jumpmind.symmetric.job.AbstractJob.invoke(AbstractJob.java:180)
                at org.jumpmind.symmetric.job.AbstractJob.run(AbstractJob.java:224)
                at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:53)
                at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
                at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
                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:1145)
                at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
                at java.lang.Thread.run(Thread.java:812)
Caused by: java.sql.BatchUpdateException: Operand type clash: DECIMAL is incompatible with MAINTENANCE TOKEN
 
                at net.sourceforge.jtds.jdbc.JtdsStatement.executeBatch(JtdsStatement.java:1069)
                at org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
                at org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
                at org.jumpmind.db.sql.JdbcSqlTransaction.flush(JdbcSqlTransaction.java:156)
                ... 15 common frames omitted
|


Some more details:

I have observed that above exception happened when below query is getting executed.
Query - insert into sym_data_event (data_id, batch_id, router_id, create_time) values(?, ?, ?, getdate())

As insert to sym_data_event keep failing, NO more new outgoing batches created and thus NO data copy happened during the time when "MAINTENANCE TOKEN" issue occurred.

Let me know in case need more details.

Cheers,
Nurali


Tags:
Steps To Reproduce: Issue comes up sometimes when data copy is happening from Source DB to Target DB.
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2889 [SymmetricDS Pro] Bug minor always 2016-11-04 02:56 2016-11-09 11:58
Reporter: mtamplier Platform:  
Assigned To: OS:  
Priority: normal OS Version:  
Status: new Product Version: 3.7.36  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: UTF-8 Georgian charset problem
Description: Hello,

We are using trial version and are going to purchase your product but we have a problem when we are synchronizing data. When data is Georgian charset after synchronizing we get ????? symbols. It is very important for us and if you can help to solve this problem then we definitely will purchase your product because we like your product in general very much.

Waiting for your support.

Regards,

Mate
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0000902)
josh-a-hicks   
2016-11-09 11:58   
Mate,

What type of databases are you syncing and what drivers are you using?

Thanks
Josh

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2880 [SymmetricDS] Improvement minor always 2016-10-26 08:30 2016-10-26 13:17
Reporter: luizmanoelbh Platform:  
Assigned To: OS:  
Priority: high OS Version:  
Status: new Product Version: 3.8.5  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Create a lightweight library for android
Description: There are some restrictions on the development of applications android (Apps with Over 64K Methods), therefore, when smaller the library is better. In this latest version, 3.8, after the deployment in a multidex application is alerted 632 errors resulting from library could.

In the previous version this number was around 400, anyway interesting would leave the lightest possible the library, thus facilitating the development and improving the Android applications.

I see this problem as serious for corporative applications.
Tags:
Steps To Reproduce:
Additional Information: Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(javax.activation.DataHandler$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(javax.activation.SecuritySupport$5) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(javax.activation.SecuritySupport$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(javax.activation.SecuritySupport$2) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(javax.activation.SecuritySupport$3) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(javax.activation.SecuritySupport$4) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.DefaultFolder$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.DefaultFolder$2) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$10) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$11) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$12) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$13) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$14) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$15) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$16) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$17) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$18) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$19) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$2) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$3) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$4) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$5) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$6) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$7) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPMessage$1FetchProfileCondition) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$8) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPFolder$9) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.IMAPStore$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.imap.protocol.IMAPSaslAuthenticator$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.smtp.SMTPSaslAuthenticator$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.util.MimeUtil$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.util.SocketFetcher$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(com.sun.mail.util.logging.LogManagerProperties$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(javax.mail.Session$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(javax.mail.Session$2) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(javax.mail.Session$3) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(javax.mail.Session$4) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(javax.mail.Session$5) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(javax.mail.Session$6) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(javax.mail.Session$7) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(javax.mail.internet.MimeUtility$1NullInputStream) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.BeanMap$8) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.BeanMap$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.BeanMap$10) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.BeanMap$11) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.BeanMap$3) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.BeanMap$4) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.BeanMap$5) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.BeanMap$6) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.BeanMap$7) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.BeanMap$9) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.BeanMap$2) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.BinaryHeap$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.BoundedFifoBuffer$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.DoubleOrderedMap$2$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.DoubleOrderedMap$3) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.DoubleOrderedMap$3$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.DoubleOrderedMap$4) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.DoubleOrderedMap$4$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.DoubleOrderedMap$5) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.DoubleOrderedMap$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.DoubleOrderedMap$1$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.DoubleOrderedMap$2) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.DoubleOrderedMap$5$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.DoubleOrderedMap$6) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.DoubleOrderedMap$6$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.ReferenceMap$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.ReferenceMap$2) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.ReferenceMap$3) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.SequencedHashMap$3) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.SequencedHashMap$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.SequencedHashMap$2) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.UnboundedFifoBuffer$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.buffer.BoundedFifoBuffer$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.buffer.PriorityBuffer$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.buffer.UnboundedFifoBuffer$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.map.ListOrderedMap$KeySetView$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
Error:(org.apache.commons.collections.map.ListOrderedMap$ValuesView$1) that doesn't come with an
Error:associated EnclosingMethod attribute. This class was probably produced by a
Error:compiler that did not target the modern .class file format. The recommended
Error:solution is to recompile the class from source, using an up-to-date compiler
Error:and without specifying any "-target" type options. The consequence of ignoring
Error:this warning is that reflective operations on this class will incorrectly
Error:indicate that it is *not* an inner class.
Attached Files: error.png (120,926 bytes) 2016-10-26 08:30
http://www.symmetricds.org/issues/file_download.php?file_id=120&type=bug
png
Notes
(0000889)
chenson   
2016-10-26 09:04   
Curious, have you thought about (or would be interested in) trying to integrate the native c client for SymmetricDS?
(0000891)
luizmanoelbh   
2016-10-26 13:17   
chenson, I dont develop in C, and all our application is in Java.

Another solution I have in mind would be, split the android library in modules and put this on Gradle, like GOOGLE PLAY SERVICES library. Thus the User can get the library as a whole or only the services that will use, i.e. location, maps.

In the case of SymmetricDS could exist for example with a Core of authentication and basic synchronization, one related to e-mail and others.
Making the library lighter and more specific for each one.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2857 [SymmetricDS] Bug block always 2016-10-12 05:21 2016-10-19 15:41
Reporter: gatokino Platform:  
Assigned To: josh-a-hicks OS:  
Priority: urgent OS Version:  
Status: resolved Product Version: 3.8.6  
Product Build: Resolution: fixed  
Projection: none      
ETA: none Fixed in Version: 3.8.7  
    Target Version:  
Summary: PostgresBulkDatabaseWriter is not preserving spaces
Description: When doing initial load if a character[] field is present and that field has spaces at the end the spaces are lost at target.
Tags:
Steps To Reproduce: sync a table with a character[2] containing 2 records having 'A ' and 'A'
the target table will have 'A', 'A'
Additional Information: problem comes from

PostgresBulkDatabaseWriter -> line 104

 String formattedData = CsvUtils.escapeCsvData(parsedData, '\n', '\'', CsvWriter.ESCAPE_MODE_DOUBLED);

which calls

 writer.writeRecord(data);

instead of

 writer.writeRecord(data, true);
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2864 [SymmetricDS] Improvement minor sometimes 2016-10-17 11:32 2016-10-17 11:32
Reporter: mmichalek Platform:  
Assigned To: mmichalek OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.8.0  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Raise an error if an MSSQL Update fails to get captured
Description: Suggest enabled the use_handle_key_updates sym_trigger flag in the error text. Right now the update silently fails and it's not clear why the update didn't sync.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2760 [SymmetricDS] Improvement minor N/A 2016-08-30 19:08 2016-10-06 19:34
Reporter: elong Platform:  
Assigned To: elong OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.8.0  
Product Build: Resolution: reopened  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Default the file.sync.fast.scan to true
Description: Default the file.sync.fast.scan parameter to true for better file sync performance on medium and large file systems.
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2849 [SymmetricDS] Bug major have not tried 2016-10-06 08:37 2016-10-06 08:37
Reporter: anouri Platform:  
Assigned To: OS:  
Priority: high OS Version:  
Status: new Product Version: 3.8.5  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Mysql Enum issue - Enum(2) --> enum('y','n')
Description: 021-data-loader-1] Running alter sql:
CREATE TABLE `data_dic`(
    `table_name` VARCHAR(40) NOT NULL,
    `field_name` VARCHAR(30) NOT NULL,
    `caption` VARCHAR(40) NULL,
    `min_size` INT DEFAULT 120,
    `field_order` SMALLINT,
    `field_type` ENUM(6) DEFAULT 'text' NULL,
    `popup_form` VARCHAR(25) NULL,
    `popup_field` VARCHAR(25) NULL,
    `check_values` VARCHAR(10) NULL,
    `combo_values` VARCHAR(150) NULL,
    `auto_inc` ENUM(2) DEFAULT 'n' NOT NULL,
    `enabled` ENUM(2) DEFAULT 'y' NULL,
    `only_select` ENUM(2) DEFAULT 'n' NOT NULL,
    `best_fit` ENUM(2) DEFAULT 'n' NOT NULL,
    `grid_sum` ENUM(5) DEFAULT 'na' NOT NULL,
    `required` ENUM(2) DEFAULT 'n' NOT NULL,
    `width` INT DEFAULT 0 NOT NULL,
    `add_date` CHAR(8) NULL,
    `visible` ENUM(2) DEFAULT 'y' NOT NULL,
    `in_table` ENUM(2) DEFAULT 'y' NOT NULL,
    `visible_pos` ENUM(2) DEFAULT 'y' NOT NULL,
    PRIMARY KEY (`table_name`, `field_name`)
);

Tags:
Steps To Reproduce: command: symadmin reload node 021
mariadb 10.0
Additional Information: ENUM(2) instead of enum('y','n')
Attached Files:
There are no notes attached to this issue.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2804 [SymmetricDS] Bug major always 2016-09-18 22:49 2016-10-06 02:05
Reporter: bsmithza@gmail.com Platform: PC  
Assigned To: OS: Windows Pro  
Priority: high OS Version: 10  
Status: new Product Version:  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Major windows 10 updates cause the symmetricDS windows service to uninstall
Description: Major windows 10 updates cause the symmetricDS windows service to uninstall upon reboot after the major windows update installation. The service was installed using "bin\sym_service.bat install" as administrator.
Tags:
Steps To Reproduce: 1) Ensure operating system is windows 10 prior to a major windows 10 updates such as the November 2015 update (version 1511) or the Anniversary Update (version 1607) released in August 2016.
2)Install SymmetricDS using bin\sym_service.bat install
3) Start the windows service and ensure it is running
4) Upgrade Windows 10 using update available at https://support.microsoft.com/en-us/help/12387/windows-10-update-history to either November 2015 update (version 1511) or the Anniversary Update (version 1607) released in August 2016.
Additional Information: It looks like Windows is uninstalling the service as it is considered incompatible due to not being installed using windows installer.
Attached Files:
Notes
(0000850)
bsmithza@gmail.com   
2016-09-20 03:05   
Symmetricds Product version is 3.8.1
(0000851)
ivan.konev   
2016-09-20 07:30   
It's WIN10 fault, isnt?
(0000852)
bsmithza@gmail.com   
2016-09-20 07:39   
Yes, but windows 10 major updates uninstall applications that are considered incompatible with windows 10 and the standard response from microsoft is to contact the application vendor for an updated installation.
(0000853)
elong   
2016-09-20 09:20   
What do we need to do to prevent being uninstalled? The Tanuki Java Service Wrapper and YAJSW would face the same problem, but I haven't found any information on how to prevent this yet. Is there some information we can put in the service so Windows will see it is compatible?
(0000855)
bsmithza@gmail.com   
2016-09-21 03:43   
I have been looking for this as well but can not yet establish what that might be. I have also found the same issue occurs when upgrading from windows 8.1 to 10, the symmetricds service will be uninstalled.
(0000874)
admin   
2016-09-30 10:28   
Re-opening. Was accidentally closed when performing the release.
(0000887)
bsmithza@gmail.com   
2016-10-06 02:05   
The resolution for this issue is to specify the full path to the Java executable, i.e. set HKLM\System\CurrentControlSet\Services\SymmetricDS\ImagePath
to start with "C:\ProgramData\Oracle\Java\javapath\java.exe" instead of "Java.exe". Windows 10 upgrade and updates uninstalls Symmetricds as it can't verify path.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2762 [SymmetricDS Pro] Bug minor random 2016-09-01 12:04 2016-10-02 12:46
Reporter: mmichalek Platform:  
Assigned To: OS:  
Priority: low OS Version:  
Status: new Product Version: 3.8.3  
Product Build: Resolution: open  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Exception During LogAlertPanel update
Description: Encountered the following exception while thread testing. Results in a an error popup on the UI.

2016-09-01 11:58:10,995 ERROR [gui] [AppUI] [ui-refresher-1] java.lang.IllegalArgumentException: Comparison method violates its general contract!
java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException: Comparison method violates its general contract!
    at java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.util.concurrent.FutureTask.get(FutureTask.java:188)
    at com.vaadin.server.VaadinSession$FutureAccess.get(VaadinSession.java:124)
    at com.vaadin.server.VaadinService.runPendingAccessTasks(VaadinService.java:1838)
    at com.vaadin.server.VaadinSession.unlock(VaadinSession.java:990)
    at com.vaadin.server.VaadinService.ensureAccessQueuePurged(VaadinService.java:1799)
    at com.vaadin.server.VaadinService.accessSession(VaadinService.java:1765)
    at com.vaadin.server.VaadinSession.access(VaadinSession.java:1380)
    at com.vaadin.ui.UI.access(UI.java:1444)
    at com.jumpmind.symmetric.console.ui.screen.DashboardScreen.onBackgroundRefresh(DashboardScreen.java:85)
    at com.jumpmind.symmetric.console.ui.BackgroundRefresherService$2.run(BackgroundRefresherService.java:66)
    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.runAndReset(FutureTask.java:304)
    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:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalArgumentException: Comparison method violates its general contract!
    at java.util.TimSort.mergeLo(TimSort.java:747)
    at java.util.TimSort.mergeAt(TimSort.java:483)
    at java.util.TimSort.mergeCollapse(TimSort.java:410)
    at java.util.TimSort.sort(TimSort.java:214)
    at java.util.TimSort.sort(TimSort.java:173)
    at java.util.Arrays.sort(Arrays.java:659)
    at java.util.Collections.sort(Collections.java:217)
    at org.jumpmind.util.LogSummaryAppender.getLogSummaries(LogSummaryAppender.java:104)
    at org.jumpmind.symmetric.util.LogSummaryAppenderUtils.getLogSummaries(LogSummaryAppenderUtils.java:71)
    at org.jumpmind.symmetric.util.LogSummaryAppenderUtils.getLogSummaryErrors(LogSummaryAppenderUtils.java:64)
    at com.jumpmind.symmetric.console.ui.screen.dashboard.LoggingAlertPanel.refresh(LoggingAlertPanel.java:111)
    at com.jumpmind.symmetric.console.ui.screen.DashboardScreen.onRefresh(DashboardScreen.java:98)
    at com.jumpmind.symmetric.console.ui.screen.DashboardScreen$1.run(DashboardScreen.java:88)
    at com.vaadin.ui.UI.accessSynchronously(UI.java:1381)
    at com.vaadin.ui.UI$3.run(UI.java:1447)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at com.vaadin.server.VaadinService.runPendingAccessTasks(VaadinService.java:1835)
    ... 15 more
Tags:
Steps To Reproduce:
Additional Information:
Attached Files:
Notes
(0000878)
admin   
2016-09-30 10:28   
Re-opening. Was accidentally closed when performing the release.

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2824 [SymmetricDS] Bug major always 2016-09-22 11:25 2016-09-30 11:19
Reporter: rwfuller Platform:  
Assigned To: josh-a-hicks OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.8.4  
Product Build: Resolution: reopened  
Projection: none      
ETA: none Fixed in Version:  
    Target Version:  
Summary: Sending table reload request from 3.8.4 Central to 3.5.22 client fails to insert record
Description: Central node is at version 3.8.4
Client node is at 3.5.22

Sending multiple table reload requests fails due to primary key issue. It appears SYM_TABLE_RELOAD_REQUEST.CREATE_TIME was added as a primary key at some point after 3.5.22. This is causing an issue when other requests exist in the table with this stacktrace.

2016-09-21 11:25:24,164 [symmetricds-pull-1] ERROR org.jumpmind.symmetric.service.impl.DataLoaderService.batchInError() 884 : Failed to load batch 000000-159699 because: Detected conflict while executing INSERT on SYM_TABLE_RELOAD_REQUEST. The primary key data was: {TARGET_NODE_ID=000000, SOURCE_NODE_ID=70770093, TRIGGER_ID=DEV-1-2605_ICD9, ROUTER_ID=DEV-1-2605_Central_Router, CREATE_TIME=2016-09-21 11:25:04.470000000}. Failed to fallback.
org.jumpmind.symmetric.io.data.writer.ConflictException: Detected conflict while executing INSERT on SYM_TABLE_RELOAD_REQUEST. The primary key data was: {TARGET_NODE_ID=000000, SOURCE_NODE_ID=70770093, TRIGGER_ID=DEV-1-2605_ICD9, ROUTER_ID=DEV-1-2605_Central_Router, CREATE_TIME=2016-09-21 11:25:04.470000000}. Failed to fallback.
    at org.jumpmind.symmetric.io.data.writer.DefaultDatabaseWriterConflictResolver.performFallbackToUpdate(DefaultDatabaseWriterConflictResolver.java:324)
    at org.jumpmind.symmetric.io.data.writer.DefaultTransformWriterConflictResolver.performFallbackToUpdate(DefaultTransformWriterConflictResolver.java:89)
    at org.jumpmind.symmetric.io.data.writer.DefaultDatabaseWriterConflictResolver.needsResolved(DefaultDatabaseWriterConflictResolver.java:68)
    at org.jumpmind.symmetric.io.data.writer.DatabaseWriter.write(DatabaseWriter.java:210)
    at org.jumpmind.symmetric.io.data.writer.DatabaseWriter.write(DatabaseWriter.java:167)
    at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.write(NestedDataWriter.java:64)
    at org.jumpmind.symmetric.model.ProcessInfoDataWriter.write(ProcessInfoDataWriter.java:65)
    at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.write(NestedDataWriter.java:64)
    at org.jumpmind.symmetric.io.data.writer.TransformWriter.write(TransformWriter.java:193)
    at org.jumpmind.symmetric.io.data.DataProcessor.forEachDataInTable(DataProcessor.java:194)
    at org.jumpmind.symmetric.io.data.DataProcessor.forEachTableInBatch(DataProcessor.java:164)
    at org.jumpmind.symmetric.io.data.DataProcessor.process(DataProcessor.java:114)
    at org.jumpmind.symmetric.service.impl.DataLoaderService$LoadIntoDatabaseOnArrivalListener.end(DataLoaderService.java:779)
    at org.jumpmind.symmetric.io.data.writer.StagingDataWriter.notifyEndBatch(StagingDataWriter.java:75)
    at org.jumpmind.symmetric.io.data.writer.AbstractProtocolDataWriter.end(AbstractProtocolDataWriter.java:226)
    at org.jumpmind.symmetric.io.data.DataProcessor.process(DataProcessor.java:124)
    at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromTransport(DataLoaderService.java:407)
    at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromPull(DataLoaderService.java:265)
    at org.jumpmind.symmetric.service.impl.PullService.execute(PullService.java:129)
    at org.jumpmind.symmetric.service.impl.NodeCommunicationService$2.run(NodeCommunicationService.java:307)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)

And this is the SQL which is used for the 3.5.22 client

insert into "SYM_TABLE_RELOAD_REQUEST" ("TARGET_NODE_ID", "SOURCE_NODE_ID", "TRIGGER_ID", "ROUTER_ID", "CREATE_TIME", "RELOAD_SELECT", "RELOAD_TIME", "LAST_UPDATE_BY", "LAST_UPDATE_TIME") values (?,?,?,?,?,?,?,?,?)

And this is the SqlException occurring

org.jumpmind.db.sql.UniqueKeyException: java.sql.SQLIntegrityConstraintViolationException: ORA-00001: unique constraint (SYMMETRIC_2605.SYS_C002043798) violated


Tags:
Steps To Reproduce: 1. Central is at 3.8.4
2. Client is at 3.5.22
3. Send table request from Central to Client
4. Multiple requests cause issue
Additional Information:
Attached Files:
Notes
(0000868)
josh-a-hicks   
2016-09-30 09:53   
It appears to be a truncation issue during insert and then when fallback fires it uses the full precision and can not find a match.

We are looking into the fix but in the meantime you should be able to create your reload requests with a precision only down to the seconds or set milliseconds to all 0.
(0000886)
rwfuller   
2016-09-30 11:19   
I will try that and let you know. So it does not appear to be the addition of CREATE_TIME as a primary key when older versions do not have that as a primary key?

View Issue Details
ID: Category: Severity: Reproducibility: Date Submitted: Last Update:
2726 [SymmetricDS] Improvement minor have not tried 2016-08-16 08:29 2016-09-30 10:30
Reporter: josh-a-hicks Platform:  
Assigned To: josh-a-hicks OS:  
Priority: normal OS Version:  
Status: assigned Product Version: 3.8.0  
Product Build: Resolution: open  
Projection: none