View Issue Details

IDProjectCategoryView StatusLast Update
0002805SymmetricDSBugpublic2016-09-29 21:01
ReporterwrygielAssigned Toelong 
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product Version3.8.0 
Target Version3.8.5Fixed in Version3.8.5 
Summary0002805: mysql_bulk may cause NullPointerException
DescriptionI believe it might an caused by a bad configuration on my part, however, despite many hours rummaging through documentation (and peeking at the code too), I couldn't find the cause.

I'm doing a one-way sync of a single table from Oracle to MariaDB (~10M rows). Oracle exports the data fast, and the data is loaded OK with the default data loader (but slow). If I try to make it faster with:

update symmetric.sym_channel set data_loader_type='mysql_bulk' where channel_id='reload';

I get this error on next reload:

java.lang.NullPointerException
        at org.jumpmind.symmetric.io.MySqlBulkDatabaseWriter.createStagingFile(MySqlBulkDatabaseWriter.java:298)
        at org.jumpmind.symmetric.io.MySqlBulkDatabaseWriter.start(MySqlBulkDatabaseWriter.java:93)
        at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.start(NestedDataWriter.java:60)
        at org.jumpmind.symmetric.model.ProcessInfoDataWriter.start(ProcessInfoDataWriter.java:58)
        at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.start(NestedDataWriter.java:60)
        at org.jumpmind.symmetric.io.data.writer.TransformWriter.start(TransformWriter.java:114)
        at org.jumpmind.symmetric.io.data.DataProcessor.forEachTableInBatch(DataProcessor.java:168)
        at org.jumpmind.symmetric.io.data.DataProcessor.process(DataProcessor.java:116)
        at org.jumpmind.symmetric.service.impl.DataLoaderService$LoadIntoDatabaseOnArrivalListener$1.call(DataLoaderService.java:929)
        at org.jumpmind.symmetric.service.impl.DataLoaderService$LoadIntoDatabaseOnArrivalListener$1.call(DataLoaderService.java:915)
        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)

I get the same error on any other table too, even the tiny ones.

Is it possible that there's some bug in the code, or did I do something wrong?
TagsNo tags attached.

Activities

elong

2016-09-20 19:05

developer   ~0000854

This is a reproducible bug. Working on a fix.

Related Changesets

SymmetricDS: 3.8 f573bd49

2016-09-20 19:05:34

admin

Details Diff
0002805: mysql_bulk may cause NullPointerException
0002805
mod - symmetric-client/src/main/java/org/jumpmind/symmetric/ext/MySqlBulkDataLoaderFactory.java Diff File

Issue History

Date Modified Username Field Change
2016-09-19 03:09 wrygiel New Issue
2016-09-20 19:05 elong Note Added: 0000854
2016-09-20 19:05 elong Assigned To => elong
2016-09-20 19:05 elong Status new => assigned
2016-09-20 19:05 elong Product Version 3.8.3 => 3.8.0
2016-09-20 19:05 elong Target Version => 3.8.5
2016-09-20 20:00 admin Changeset attached => SymmetricDS 3.8 f573bd49
2016-09-21 08:56 elong Status assigned => resolved
2016-09-21 08:56 elong Fixed in Version => 3.8.5
2016-09-21 08:56 elong Resolution open => fixed
2016-09-29 21:01 admin Status resolved => closed