On 20-mrt-2007, at 7:55, Christopher Hartung wrote:
Hi there,
i've several questions/problems to administer our test-cluster-
environment.
First at all, i browsed the docs but i didn't find anything.
So here we are ;)
1. If a sql-statement is incorrect (Like in postgres using ""
instead of '') the cluster throws an exception in the log (which is
correct) but then the client program hang, so i've to kill the
client program hardly.
How can i resolv something like this?
I can confirm this issue, but like to add that the cllient/console
does not
actually hang, but is waiting for some sort ot timeout, which takes
exactly one minute. This is the org.continuent.hedera.* log at level
DEBUG:
=================
09:35:04,356 adapters Sending message 162430 to 2 members.
09:35:04,357 adapters Replying to Member(address=/10.0.30.50:10000,
uid=10.0.30.50:10000) for message 184663
09:35:04,359 adapters Replying to Member(address=/10.0.30.40:10000,
uid=10.0.30.40:10000) for message 162430
09:35:04,365 adapters PullPushAdapter: Error while reading from channel
org.continuent.appia.core.message.MessageException: Trying to read an
unknown object from message.
at org.continuent.appia.core.message.Message.popObject
(Message.java:1254)
at
org.continuent.hedera.channel.AppiaReliableGroupChannel.receive
(AppiaReliableGroupChannel.java:292)
at org.continuent.hedera.adapters.PullPushAdapter.run
(PullPushAdapter.java:166)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.ClassNotFoundException:
org.postgresql.util.PSQLException
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:
268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:
319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:242)
at java.io.ObjectInputStream.resolveClass
(ObjectInputStream.java:585)
at java.io.ObjectInputStream.readNonProxyDesc
(ObjectInputStream.java:1544)
at java.io.ObjectInputStream.readClassDesc
(ObjectInputStream.java:1466)
at java.io.ObjectInputStream.readOrdinaryObject
(ObjectInputStream.java:1699)
at java.io.ObjectInputStream.readObject0
(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.defaultReadFields
(ObjectInputStream.java:1908)
at java.io.ObjectInputStream.readSerialData
(ObjectInputStream.java:1832)
at java.io.ObjectInputStream.readOrdinaryObject
(ObjectInputStream.java:1719)
at java.io.ObjectInputStream.readObject0
(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.defaultReadFields
(ObjectInputStream.java:1908)
at java.io.ObjectInputStream.readSerialData
(ObjectInputStream.java:1832)
at java.io.ObjectInputStream.readOrdinaryObject
(ObjectInputStream.java:1719)
at java.io.ObjectInputStream.readObject0
(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.defaultReadFields
(ObjectInputStream.java:1908)
at java.io.ObjectInputStream.readSerialData
(ObjectInputStream.java:1832)
at java.io.ObjectInputStream.readOrdinaryObject
(ObjectInputStream.java:1719)
at java.io.ObjectInputStream.readObject0
(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.readObject
(ObjectInputStream.java:348)
at org.continuent.appia.core.message.Message.popObject
(Message.java:1250)
... 3 more
09:35:04,366 adapters Replying to Member(address=/10.0.30.50:10000,
uid=10.0.30.50:10000) for message 184664
09:35:04,368 adapters PullPushAdapter: Error while reading from channel
org.continuent.appia.core.message.MessageException: Trying to read an
unknown object from message.
at org.continuent.appia.core.message.Message.popObject
(Message.java:1254)
at
org.continuent.hedera.channel.AppiaReliableGroupChannel.receive
(AppiaReliableGroupChannel.java:292)
at org.continuent.hedera.adapters.PullPushAdapter.run
(PullPushAdapter.java:166)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.ClassNotFoundException:
org.postgresql.util.PSQLException
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:
268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:
319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:242)
at java.io.ObjectInputStream.resolveClass
(ObjectInputStream.java:585)
at java.io.ObjectInputStream.readNonProxyDesc
(ObjectInputStream.java:1544)
at java.io.ObjectInputStream.readClassDesc
(ObjectInputStream.java:1466)
at java.io.ObjectInputStream.readOrdinaryObject
(ObjectInputStream.java:1699)
at java.io.ObjectInputStream.readObject0
(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.defaultReadFields
(ObjectInputStream.java:1908)
at java.io.ObjectInputStream.readSerialData
(ObjectInputStream.java:1832)
at java.io.ObjectInputStream.readOrdinaryObject
(ObjectInputStream.java:1719)
at java.io.ObjectInputStream.readObject0
(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.defaultReadFields
(ObjectInputStream.java:1908)
at java.io.ObjectInputStream.readSerialData
(ObjectInputStream.java:1832)
at java.io.ObjectInputStream.readOrdinaryObject
(ObjectInputStream.java:1719)
at java.io.ObjectInputStream.readObject0
(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.defaultReadFields
(ObjectInputStream.java:1908)
at java.io.ObjectInputStream.readSerialData
(ObjectInputStream.java:1832)
at java.io.ObjectInputStream.readOrdinaryObject
(ObjectInputStream.java:1719)
at java.io.ObjectInputStream.readObject0
(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.readObject
(ObjectInputStream.java:348)
at org.continuent.appia.core.message.Message.popObject
(Message.java:1250)
... 3 more
09:35:04,374 adapters Replying to Member(address=/10.0.30.50:10000,
uid=10.0.30.50:10000) for message 184665
09:35:04,379 adapters Replying to Member(address=/10.0.30.50:10000,
uid=10.0.30.50:10000) for message 184666
=================
This is the DEBUG log of
org.continuent.sequoia.controller.virtualdatabase
and org.continuent.sequoia.controller.RequestManager:
=================
2007-03-20 09:35:04,356 DEBUG controller.virtualdatabase.unicorn
handleMessageSingleThreaded (class
org.continuent.sequoia.controller.virtualdatabase.protocol.DistributedCo
mmit): Commit transaction 562949
953537558
2007-03-20 09:35:04,356 DEBUG controller.RequestManager.unicorn
Broadcasting request select * from user_role where username =... to
all controllers (Member(address=/10.0.30.40:10000, uid=10.0.30.40:10000)
->[Member(address=/10.0.30.40:10000, uid=10.0.30.40:10000), Member
(address=/10.0.30.50:10000, uid=10.0.30.50:10000)])
2007-03-20 09:35:04,356 DEBUG controller.virtualdatabase.unicorn
handleMessageMultiThreaded (class
org.continuent.sequoia.controller.virtualdatabase.protocol.DistributedCo
mmit): Commit transaction 5629499
53537558
2007-03-20 09:35:04,357 DEBUG controller.RequestManager.unicorn
Commit transaction 562949953537558
2007-03-20 09:35:04,357 DEBUG controller.virtualdatabase.unicorn
handleMessageSingleThreaded (class
org.continuent.sequoia.controller.virtualdatabase.protocol.DistributedSt
atementExecuteQuery): S 126223 0
select * from user_role where username = "Julia"/
2007-03-20 09:35:04,357 DEBUG controller.virtualdatabase.unicorn
db01: Scheduling distributedRequest 126223 from Member(address=/
10.0.30.40:10000, uid=10.0.30.40:10000)
2007-03-20 09:35:04,358 DEBUG controller.virtualdatabase.unicorn
handleMessageMultiThreaded (class
org.continuent.sequoia.controller.virtualdatabase.protocol.DistributedSt
atementExecuteQuery): S 126223 0
select * from user_role where username = "Julia"/
2007-03-20 09:35:04,358 DEBUG controller.virtualdatabase.unicorn
db01: Executing distributedRequest 126223 from Member(address=/
10.0.30.40:10000, uid=10.0.30.40:10000)
2007-03-20 09:35:04,358 DEBUG controller.RequestManager.unicorn
Scheduling read Request (126223): select * from user_role where
username =...
2007-03-20 09:35:04,358 DEBUG controller.RequestManager.unicorn Load
balancing read request (126223): select * from user_role where
username =...
2007-03-20 09:35:04,359 WARN controller.RequestManager.unicorn
Failed to execute request select * from user_role where username =...
because of (read request 126223 failed:
Backend unicorn - BackendWorkerThread for backend 'db01' with RAIDb
level:1 failed (ERROR: column "Julia" does not exist)
)
2007-03-20 09:35:04,359 WARN controller.RequestManager.unicorn
SQLException while executing remote read request.
java.sql.SQLException: read request 126223 failed:
Backend unicorn - BackendWorkerThread for backend 'db01' with RAIDb
level:1 failed (ERROR: column "Julia" does not exist)
at
org.continuent.sequoia.common.exceptions.SQLExceptionFactory.getSQLExcep
tion(SQLExceptionFactory.java:88)
at
org.continuent.sequoia.controller.loadbalancer.raidb1.RAIDb1.checkTaskCo
mpletion(RAIDb1.java:936)
at
org.continuent.sequoia.controller.loadbalancer.raidb1.RAIDb1.execBroadca
stReadRequest(RAIDb1.java:223)
at
org.continuent.sequoia.controller.loadbalancer.raidb1.RAIDb1.statementEx
ecuteQuery(RAIDb1.java:158)
at
org.continuent.sequoia.controller.requestmanager.RequestManager.statemen
tExecuteQuery(RequestManager.java:592)
at
org.continuent.sequoia.controller.requestmanager.distributed.Distributed
RequestManager.execLocalStatementExecuteQuery
(DistributedRequestManager.java:1351)
at
org.continuent.sequoia.controller.virtualdatabase.protocol.DistributedSt
atementExecuteQuery.executeScheduledRequest
(DistributedStatementExecuteQuery.java:93)
at
org.continuent.sequoia.controller.virtualdatabase.protocol.DistributedRe
quest.handleMessageMultiThreaded(DistributedRequest.java:157)
at
org.continuent.sequoia.controller.virtualdatabase.DistributedVirtualData
base.handleMessageMultiThreaded(DistributedVirtualDatabase.java:335)
at
org.continuent.hedera.adapters.MulticastRequestAdapterThread.run
(MulticastRequestAdapterThread.java:102)
<SNIP>
2007-03-20 09:36:04,360 DEBUG controller.RequestManager.unicorn
Request select * from user_role where username =... completed.
2007-03-20 09:36:04,360 WARN controller.RequestManager.unicorn
Request 126223 failed on controller Member(address=/10.0.30.40:10000,
uid=10.0.30.40:10000) (org.continuent.hedera.adapters.TimeoutException
)
2007-03-20 09:36:04,360 WARN controller.RequestManager.unicorn
Request 126223 failed on controller Member(address=/10.0.30.50:10000,
uid=10.0.30.50:10000) (org.continuent.hedera.adapters.TimeoutException
)
2007-03-20 09:36:04,361 DEBUG controller.virtualdatabase.unicorn
handleMessageSingleThreaded (class
org.continuent.sequoia.controller.virtualdatabase.protocol.NotifyComplet
ion): Notify failure of request:
select * from user_role where username = "Julia"/
2007-03-20 09:36:04,361 DEBUG controller.virtualdatabase.unicorn
db01: Scheduling distributedRequest 126223 from Member(address=/
10.0.30.40:10000, uid=10.0.30.40:10000)
2007-03-20 09:36:04,361 DEBUG controller.virtualdatabase.unicorn
handleMessageMultiThreaded (class
org.continuent.sequoia.controller.virtualdatabase.protocol.NotifyComplet
ion): Notify failure of request:
select * from user_role where username = "Julia"/
2007-03-20 09:36:04,361 DEBUG controller.virtualdatabase.unicorn
db01: Executing distributedRequest 126223 from Member(address=/
10.0.30.40:10000, uid=10.0.30.40:10000)
2007-03-20 09:36:04,362 WARN controller.RequestManager.unicorn
Request select * from user_role where username =... failed (Internal
exception org.continuent.hedera.adapters.TimeoutException)
2007-03-20 09:36:04,362 WARN controller.virtualdatabase.unicorn
Request '126223' failed (Internal exception
org.continuent.hedera.adapters.TimeoutException)
=================
You can see that the query to both backends actually takes only
milliseconds,
but the reply to the client is not sent until after the
TimeoutException occurs.
Leander
_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia