View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0003683 | SymmetricDS | Bug | public | 2018-08-21 11:51 | 2019-04-12 12:49 |
Reporter | ondra | Assigned To | |||
Priority | normal | ||||
Status | closed | Resolution | no change required | ||
Product Version | 3.9.11 | ||||
Summary | 0003683: initial.load.create.first=true can crash the application | ||||
Description | initial.load.create.first=true brings the app down if the corp and store engine are deployed for the first time in one server | ||||
Steps To Reproduce | I followed the steps tu run demo from the tutorial at https://www.symmetricds.org/doc/3.9/html/tutorials.html . I used the corp and store-001 configuration files. The only thing I changed was adding the auto.reload=true parameter in the corp-000.properties file and logically skipped the step of creating DB tables for the store instance. After starting the server I got these errors: [store-001] - ManageIncomingBatchListener - Failed to load batch 000-7 org.jumpmind.db.sql.SqlException: Could not find the target table 'item_selling_price' at org.jumpmind.symmetric.io.data.writer.AbstractDatabaseWriter.write(AbstractDatabaseWriter.java:251) at org.jumpmind.symmetric.io.data.writer.NestedDataWriter.write(NestedDataWriter.java:64) at org.jumpmind.symmetric.model.ProcessInfoDataWriter.write(ProcessInfoDataWriter.java:84) 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:210) at org.jumpmind.symmetric.io.data.DataProcessor.forEachTableInBatch(DataProcessor.java:177) at org.jumpmind.symmetric.io.data.DataProcessor.process(DataProcessor.java:123) at org.jumpmind.symmetric.service.impl.DataLoaderService$LoadIntoDatabaseOnArrivalListener$2.call(DataLoaderService.java:1036) at org.jumpmind.symmetric.service.impl.DataLoaderService$LoadIntoDatabaseOnArrivalListener$2.call(DataLoaderService.java:1013) at java.util.concurrent.FutureTask.run(FutureTask.java:266) 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) [store-001] - PullService - Could not communicate with node 'corp:000:000' at http://localhost:8080/sync/corp-000 because of unexpected error java.io.IOException: Ack was not sent successfully. statusCode=403 at org.jumpmind.symmetric.service.impl.AbstractService.sendAck(AbstractService.java:284) at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromPull(DataLoaderService.java:316) at org.jumpmind.symmetric.service.impl.PullService.execute(PullService.java:142) at org.jumpmind.symmetric.service.impl.NodeCommunicationService$1.run(NodeCommunicationService.java:519) 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) [store-001] - PullService - Could not communicate with node 'corp:000:000' at http://localhost:8080/sync/corp-000 because of unexpected error java.io.IOException: Server returned HTTP response code: 403 for URL: http://localhost:8080/sync/corp-000/pull?nodeId=001&securityToken=uCVpsYU2GZ6WwiVrJ4oyfLiArSyUDZ&hostName=HOME&ipAddress=192.168.0.104 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1944) at sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1939) at java.security.AccessController.doPrivileged(Native Method) at sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1938) at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1508) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492) at org.jumpmind.symmetric.transport.http.HttpTransportManager.getInputStreamFrom(HttpTransportManager.java:308) at org.jumpmind.symmetric.transport.http.HttpIncomingTransport.openStream(HttpIncomingTransport.java:118) at org.jumpmind.symmetric.transport.http.HttpIncomingTransport.openReader(HttpIncomingTransport.java:125) at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromTransport(DataLoaderService.java:569) at org.jumpmind.symmetric.service.impl.DataLoaderService.loadDataFromPull(DataLoaderService.java:296) at org.jumpmind.symmetric.service.impl.PullService.execute(PullService.java:142) at org.jumpmind.symmetric.service.impl.NodeCommunicationService$1.run(NodeCommunicationService.java:519) 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.io.IOException: Server returned HTTP response code: 403 for URL: http://localhost:8080/sync/corp-000/pull?nodeId=001&securityToken=uCVpsYU2GZ6WwiVrJ4oyfLiArSyUDZ&hostName=HOME&ipAddress=192.168.0.104 at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1894) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492) at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480) at org.jumpmind.symmetric.transport.http.HttpIncomingTransport.openConnectionCheckRedirects(HttpIncomingTransport.java:159) at org.jumpmind.symmetric.transport.http.HttpIncomingTransport.openStream(HttpIncomingTransport.java:99) ... 8 more | ||||
Additional Information | OS: Windows 10 JVM: jdk1.8.0_181 DB: Postgres 10.1 | ||||
Tags | No tags attached. | ||||
|
The parameter initial.load.create.first doesn't seem to affect the behaviour. The same problem occurred with initial.load.create.first=false and with pre-created DB tables for the store instance. Probably the auto.reload=true makes the problem. |
|
Did you follow section 1.1.3 to verify it created the tables? It sounds like the item_selling_price table did not get created on store-001. Check to see if it's a case sensitive issue. Follow 1.1.3 bin/dbsql --engine store-001 select * from "item_selling_price"; select * from "ITEM_SELLING_PRICE"; |
|
sql> select * from "item_selling_price"; Error: org.postgresql.util.PSQLException: ERROR: relation "item_selling_price" does not exist Position: 15 sql> select * from "ITEM_SELLING_PRICE"; Error: org.postgresql.util.PSQLException: ERROR: relation "ITEM_SELLING_PRICE" does not exist Position: 15 I am attaching the symmetric directory with my configuration. It only contains the engines directory and the samples directory with .bat files I am using to initialize the instance. |
|
I think I see the problem. I deleted the tmp directory and now it works. |
|
The 403 error being seen in the log is likely fixed via the fix for issue 3679. |
Date Modified | Username | Field | Change |
---|---|---|---|
2018-08-21 11:51 | ondra | New Issue | |
2018-08-21 11:51 | ondra | Tag Attached: postgres | |
2018-08-21 12:32 | ondra | Note Added: 0001224 | |
2018-08-21 12:43 | elong | Note Added: 0001225 | |
2018-08-21 14:17 | ondra | File Added: symmetric-server-3.9.12.zip | |
2018-08-21 14:17 | ondra | Note Added: 0001226 | |
2018-08-21 14:27 | ondra | Note Added: 0001227 | |
2018-09-13 18:28 | hanes | Relationship added | related to 0003679 |
2018-09-13 18:29 | hanes | Status | new => closed |
2018-09-13 18:29 | hanes | Resolution | open => no change required |
2018-09-13 18:29 | hanes | Note Added: 0001237 | |
2019-04-12 12:49 | admin | Tag Detached: postgres |