| Summary: | java.io.NotSerializableException: java.io.PrintWriter when SHOWPLAN is DEBUG in a clustered configuration | ||
|---|---|---|---|
| Product: | [JBoss] JBoss Enterprise SOA Platform 5 | Reporter: | Paul Nittel <pnittel> |
| Component: | EDS | Assignee: | Van Halbert <vhalbert> |
| Status: | CLOSED NEXTRELEASE | QA Contact: | |
| Severity: | high | Docs Contact: | |
| Priority: | high | ||
| Version: | unspecified | ||
| Target Milestone: | --- | ||
| Target Release: | 5.2.0 GA, 5.2.0.ER2 | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| URL: | http://jira.jboss.org/jira/browse/SOA-3233 | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: |
Fedora 14, SOA-P 5.1 with CP3 (test), production configuration, clustered with another Fedora system
|
|
| Last Closed: | 2011-10-10 16:48:47 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
Link: Added: This issue Cloned to SOA-3238 Link: Added: This issue Cloned to SOA-3239 Link: Added: This issue Cloned to SOA-3240 Link: Added: This issue Cloned to SOA-3241 Link: Added: This issue Cloned to SOA-3242 Link: Added: This issue Cloned to SOA-3243 Release Notes Docs Status: Added: Documented as Resolved Issue Writer: Added: dlesage Release Notes Text: Added: https://issues.jboss.org/browse/SOA-3233 If the user loaded and queried resultset caching when the production configuration was used with Teiid logging set to DEBUG and "set showplan debug" was active, a java.io.NotSerializableException would occur. (This did not happen when queries were sourced by the cache.) The code has been changed so that users will no longer encounter this error when they use these settings when querying the resultset cache. Closed! |
project_key: SOA While testing resultset caching, I found that when I queried (and loaded the cache) I received an exception. There is no exception when queries are sourced by the cache. I am using the production configuration, have Teiid logging set to DEBUG and, and "set showplan debug" prior to executing /*+ cache(ttl:10000) */ SELECT * from "PartsMatSourceOra"."PARTS" (Should do the same thing with any source model.) The exception is: 2011-08-02 15:42:50,713 ERROR [org.jboss.cache.marshall.CacheMarshaller300] (Worker14_QueryProcessorQueue74) Error while marshalling object: ReplicateCommand{cmds=PutKeyValueCommand{fqn=/Teiid/resultset/RESULTSET/CacheID-1190504654, dataVersion=null, globalTransaction=null, key=Cache Entry<NErBtH0HCuOP=user@teiid-security> params:null sql:/*+ cache(ttl:120000) */ SELECT * from "PartsMatSourceOra"."PARTS", value=org.teiid.dqp.internal.process.CachedResults@393dd5c4}} java.io.NotSerializableException: java.io.PrintWriter at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1164) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:330) at org.jboss.cache.marshall.CacheMarshaller200.marshallObject(CacheMarshaller200.java:460) at org.jboss.cache.marshall.CacheMarshaller300.marshallObject(CacheMarshaller300.java:47) at org.jboss.cache.marshall.CacheMarshaller200.marshallCommand(CacheMarshaller200.java:519) at org.jboss.cache.marshall.CacheMarshaller200.marshallObject(CacheMarshaller200.java:314) at org.jboss.cache.marshall.CacheMarshaller300.marshallObject(CacheMarshaller300.java:47) at org.jboss.cache.marshall.CacheMarshaller200.marshallCommand(CacheMarshaller200.java:519) at org.jboss.cache.marshall.CacheMarshaller200.marshallObject(CacheMarshaller200.java:314) at org.jboss.cache.marshall.CacheMarshaller300.marshallObject(CacheMarshaller300.java:47) at org.jboss.cache.marshall.CacheMarshaller200.objectToObjectStream(CacheMarshaller200.java:191) at org.jboss.cache.marshall.CacheMarshaller200.objectToObjectStream(CacheMarshaller200.java:131) at org.jboss.cache.marshall.VersionAwareMarshaller.objectToBuffer(VersionAwareMarshaller.java:183) at org.jboss.cache.marshall.VersionAwareMarshaller.objectToBuffer(VersionAwareMarshaller.java:52) at org.jboss.cache.marshall.CommandAwareRpcDispatcher$ReplicationTask.call(CommandAwareRpcDispatcher.java:383) at org.jboss.cache.marshall.CommandAwareRpcDispatcher$ReplicationTask.call(CommandAwareRpcDispatcher.java:355) at org.jboss.cache.util.concurrent.WithinThreadExecutor.submit(WithinThreadExecutor.java:82) at org.jboss.cache.marshall.CommandAwareRpcDispatcher.invokeRemoteCommands(CommandAwareRpcDispatcher.java:210) at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:744) at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:712) at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:717) at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:161) at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:135) at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:107) at org.jboss.cache.interceptors.ReplicationInterceptor.handleCrudMethod(ReplicationInterceptor.java:160) at org.jboss.cache.interceptors.ReplicationInterceptor.visitPutKeyValueCommand(ReplicationInterceptor.java:107) at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100) at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116) at org.jboss.cache.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:131) at org.jboss.cache.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:65) at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100) at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116) at org.jboss.cache.interceptors.TxInterceptor.attachGtxAndPassUpChain(TxInterceptor.java:301) at org.jboss.cache.interceptors.TxInterceptor.handleDefault(TxInterceptor.java:283) at org.jboss.cache.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:65) at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100) at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116) at org.jboss.cache.interceptors.CacheMgmtInterceptor.visitPutKeyValueCommand(CacheMgmtInterceptor.java:119) at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100) at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116) at org.jboss.cache.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:178) at org.jboss.cache.interceptors.InvocationContextInterceptor.visitPutKeyValueCommand(InvocationContextInterceptor.java:82) at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100) at org.jboss.cache.interceptors.InterceptorChain.invoke(InterceptorChain.java:287) at org.jboss.cache.invocation.CacheInvocationDelegate.put(CacheInvocationDelegate.java:555) at org.jboss.cache.invocation.NodeInvocationDelegate.put(NodeInvocationDelegate.java:377) at org.teiid.cache.jboss.ExpirationAwareCache.put(ExpirationAwareCache.java:51) at org.teiid.dqp.internal.process.SessionAwareCache.put(SessionAwareCache.java:177) at org.teiid.dqp.internal.process.RequestWorkItem$1.flushBatchDirect(RequestWorkItem.java:396) at org.teiid.query.processor.BatchCollector.flushBatch(BatchCollector.java:140) at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:117) at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:250) at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:184) at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:49) at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:188) at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:116) at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:290) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) 2011-08-02 15:42:50,714 ERROR [org.jboss.cache.marshall.CommandAwareRpcDispatcher] (Worker14_QueryProcessorQueue74) java.io.NotSerializableException: java.io.PrintWriter 2011-08-02 15:42:50,714 ERROR [org.teiid.PROCESSOR] (Worker14_QueryProcessorQueue74) Unexpected exception for request NErBtH0HCuOP.22 java.lang.RuntimeException: Failure to marshal argument(s) at org.jboss.cache.marshall.CommandAwareRpcDispatcher$ReplicationTask.call(CommandAwareRpcDispatcher.java:388) at org.jboss.cache.marshall.CommandAwareRpcDispatcher$ReplicationTask.call(CommandAwareRpcDispatcher.java:355) at org.jboss.cache.util.concurrent.WithinThreadExecutor.submit(WithinThreadExecutor.java:82) at org.jboss.cache.marshall.CommandAwareRpcDispatcher.invokeRemoteCommands(CommandAwareRpcDispatcher.java:210) at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:744) at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:712) at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:717) at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:161) at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:135) at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:107) at org.jboss.cache.interceptors.ReplicationInterceptor.handleCrudMethod(ReplicationInterceptor.java:160) at org.jboss.cache.interceptors.ReplicationInterceptor.visitPutKeyValueCommand(ReplicationInterceptor.java:107) at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100) at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116) at org.jboss.cache.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:131) at org.jboss.cache.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:65) at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100) at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116) at org.jboss.cache.interceptors.TxInterceptor.attachGtxAndPassUpChain(TxInterceptor.java:301) at org.jboss.cache.interceptors.TxInterceptor.handleDefault(TxInterceptor.java:283) at org.jboss.cache.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:65) at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100) at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116) at org.jboss.cache.interceptors.CacheMgmtInterceptor.visitPutKeyValueCommand(CacheMgmtInterceptor.java:119) at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100) at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116) at org.jboss.cache.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:178) at org.jboss.cache.interceptors.InvocationContextInterceptor.visitPutKeyValueCommand(InvocationContextInterceptor.java:82) at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100) at org.jboss.cache.interceptors.InterceptorChain.invoke(InterceptorChain.java:287) at org.jboss.cache.invocation.CacheInvocationDelegate.put(CacheInvocationDelegate.java:555) at org.jboss.cache.invocation.NodeInvocationDelegate.put(NodeInvocationDelegate.java:377) at org.teiid.cache.jboss.ExpirationAwareCache.put(ExpirationAwareCache.java:51) at org.teiid.dqp.internal.process.SessionAwareCache.put(SessionAwareCache.java:177) at org.teiid.dqp.internal.process.RequestWorkItem$1.flushBatchDirect(RequestWorkItem.java:396) at org.teiid.query.processor.BatchCollector.flushBatch(BatchCollector.java:140) at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:117) at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:250) at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:184) at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:49) at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:188) at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:116) at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:290) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) Caused by: java.io.NotSerializableException: java.io.PrintWriter at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1164) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:330) at org.jboss.cache.marshall.CacheMarshaller200.marshallObject(CacheMarshaller200.java:460) at org.jboss.cache.marshall.CacheMarshaller300.marshallObject(CacheMarshaller300.java:47) at org.jboss.cache.marshall.CacheMarshaller200.marshallCommand(CacheMarshaller200.java:519) at org.jboss.cache.marshall.CacheMarshaller200.marshallObject(CacheMarshaller200.java:314) at org.jboss.cache.marshall.CacheMarshaller300.marshallObject(CacheMarshaller300.java:47) at org.jboss.cache.marshall.CacheMarshaller200.marshallCommand(CacheMarshaller200.java:519) at org.jboss.cache.marshall.CacheMarshaller200.marshallObject(CacheMarshaller200.java:314) at org.jboss.cache.marshall.CacheMarshaller300.marshallObject(CacheMarshaller300.java:47) at org.jboss.cache.marshall.CacheMarshaller200.objectToObjectStream(CacheMarshaller200.java:191) at org.jboss.cache.marshall.CacheMarshaller200.objectToObjectStream(CacheMarshaller200.java:131) at org.jboss.cache.marshall.VersionAwareMarshaller.objectToBuffer(VersionAwareMarshaller.java:183) at org.jboss.cache.marshall.VersionAwareMarshaller.objectToBuffer(VersionAwareMarshaller.java:52) at org.jboss.cache.marshall.CommandAwareRpcDispatcher$ReplicationTask.call(CommandAwareRpcDispatcher.java:383) ... 45 more