Problem: Starting SAP Mobile Server causes registration problems for Messaging Server.
2010-07-27 09:37:31.205 ERROR Mobilink Thread-146 [com.sybase.ml.sup.Logger] [-10002] Cache database server or ODBC error: ODBC: [Sybase][ODBC Driver][SQL Anywhere]Index 'ml_server UNIQUE (name)' for table 'ml_server' would not be unique (ODBC State = 23000, Native error code = -196) 2010-07-27 09:37:31.205 ERROR Mobilink Thread-146 [com.sybase.ml.sup.Logger] [-10294] Unable to register the MobiLink server with name '<serverName>'
Explanation: When SAP Mobile Server runs in a shared server farm, every member in the farm must have a unique registration through the cache database table ml_server. If SAP Mobile Server is not stopped gracefully, the row for the server is not removed from the ml_server table. This could happen if SAP Mobile Server is shut down abruptly while a mobile client is synchronizing. When SAP Mobile Server is restarted, the Messaging Server registration is not unique, and cannot be completed.
Manually remove the row corresponding to your server. An example row:
server_id,name,version,connection_info,instance_key,start_time,liveness 9,'ML Server name','100.0','http(host=<HostName>;port=2480)',0xad53f35e04086778623aa56f32728a313f1972b68b8363c86b501144af7b3206,'2010-07-27 14:54:10.298','2010-07-27 18:29:13.866'