cancel
Showing results for 
Search instead for 
Did you mean: 

The database server failed to shut down the dbmlsync server

Former Member
2,646

I am trying to set up a test where I can synchronize two remote databases simultaneously with the consolidated DB. So in my Java application, I use two threads and each of the thread would then execute the SQL statement, "SYNCHRONIZE PROFILE myprofile", which in turn will start the dbmlsync process.

The problem I've encountered is that when the second thread started, I'd always get the following error:

java.sql.SQLException: [Sybase][JDBC Driver][SQL Anywhere]The database server failed to shut down the dbmlsync server
    at sybase.jdbc4.sqlanywhere.IIStatement.execute(Native Method)
    at sybase.jdbc4.sqlanywhere.IStatement.execute(IStatement.java:327)
    at com.sap.mobilink.SyncDB.run(SyncPerformanceTest.java:34)
    at java.lang.Thread.run(Unknown Source)

If I run the sync sequentially, it works, but not when I try to start the sync simultaneously. Does anyone know why it's the case?

VolkerBarth
Contributor

...I can synchronize two remote databases simultaneously with the consolidated DB...

...I use two threads and each of the thread would then execute the SQL statement, "SYNCHRONIZE PROFILE myprofile"

Just to understand: So each thread does use a connection to a different database and will try to sync a profile for the according database?

Former Member
0 Kudos

That's correct. Both remote databases are installed on the same machine. And each thread starts a separate connection to the remote database. Each of these remote databases has its own sync profile.

Accepted Solutions (0)

Answers (1)

Answers (1)

Breck_Carter
Participant

Please show us all the SQL statements and options involved in this operation. I'm guessing that two separate dbmlsync processes are needed if you want to do two syncs in parallel, with different ports for communicating between your application and the dbmlsync processes; e.g., PORT 4433 and PORT [something-else]... the symptom seems to be saying some process is confused 🙂

Former Member
0 Kudos

Yes, that was it. I had to manually assign different port numbers to the different threads. Thanks!

VolkerBarth
Contributor
0 Kudos

Feel free to mark that answer as "accepted" - by clicking on the according "check" image on the left:)