Hello everyone.
How do I set up a load balancing parallel cluster with SGS? I tried to launch the SwordWorld application on 2 instances of the server by directing the data root (com.sun.sgs.app.root property) to the same place. However, I am getting the following database error message exception when connecting to the server that was launched first:
===================================
WARNING: Database error message: PANIC: fatal region error detected; run recovery
java.lang.Exception: Stacktrace
at com.sun.sgs.impl.service.data.store.DataStoreImpl$LoggingErrorHandler.error(DataStoreImpl.java:403)
…
at com.sun.sgs.impl.service.data.store.DataStoreImpl$TxnInfo.(DataStoreImpl.java:306)
…
at com.sun.sgs.impl.service.data.DataServiceImpl.getServiceBinding(DataServiceImpl.java:349)
…
at java.lang.Thread.run(Thread.java:595)
11-Apr-2007 17:17:18 com.sun.sgs.impl.service.data.store.DataStoreImpl convertException
SEVERE: getBinding txn:TxnTrampoline[originalTxn:TransactionImpl[tid:3]], name:s.com.sun.sgs.app.listener throws
java.lang.Error: getBinding txn:TxnTrampoline[originalTxn:TransactionImpl[tid:3]], name:s.com.sun.sgs.app.listener failed: Database requires recovery – need to restart the server or create a new instance of DataStoreImpl: DB_RUNRECOVERY: Fatal error, run database recovery
at com.sun.sgs.impl.service.data.store.DataStoreImpl.convertException(DataStoreImpl.java:1240)
…
at com.sun.sgs.service.TransactionRunner.run(TransactionRunner.java:46)
…
at java.lang.Thread.run(Thread.java:595)
Caused by: com.sleepycat.db.RunRecoveryException: DB_RUNRECOVERY: Fatal error, run database recovery: DB_RUNRECOVERY: Fatal error, run database recovery
at com.sleepycat.db.internal.db_javaJNI.DbEnv_txn_begin(Native Method)
at com.sleepycat.db.internal.DbEnv.txn_begin(DbEnv.java:451)
… 11 more
11-Apr-2007 17:17:18 com.sun.sgs.impl.service.data.DataServiceImpl abort
WARNING: abort txn:TransactionImpl[tid:3] throws
java.lang.IllegalStateException: Transaction is not active
at com.sun.sgs.impl.service.data.store.DataStoreImpl.checkTxnNoJoin(DataStoreImpl.java:1202)
…
at java.lang.Thread.run(Thread.java:595)
11-Apr-2007 17:17:18 com.sun.sgs.impl.service.transaction.TransactionImpl abort
WARNING: abort TransactionImpl[tid:3] participant:DataServiceImpl[appName:“SwordWorld, store:DataStoreImpl[directory=“C:\Software\GameServer\sgs\tutorial\data\SwordWorld\dsdb”]”] failed
java.lang.IllegalStateException: Transaction is not active
at com.sun.sgs.impl.service.data.store.DataStoreImpl.checkTxnNoJoin(DataStoreImpl.java:1202)
…
Exception in thread “Thread-6” java.lang.Error: getBinding txn:TxnTrampoline[originalTxn:TransactionImpl[tid:3]], name:s.com.sun.sgs.app.listener failed: Database requires recovery – need to restart the server or create a new instance of DataStoreImpl: DB_RUNRECOVERY: Fatal error, run database recovery
at com.sun.sgs.impl.service.data.store.DataStoreImpl.convertException(DataStoreImpl.java:1240)
…
at java.lang.Thread.run(Thread.java:595)
Caused by: com.sleepycat.db.RunRecoveryException: DB_RUNRECOVERY: Fatal error, run database recovery: DB_RUNRECOVERY: Fatal error, run database recovery
at com.sleepycat.db.internal.db_javaJNI.DbEnv_txn_begin(Native Method)
at com.sleepycat.db.internal.DbEnv.txn_begin(DbEnv.java:451)
===================================
Please, advise what I am missing.
Thank you.