3 Replies Latest reply on Jun 7, 2012 9:38 AM by rareddy

    Teiid Mat View Error [UTFDataFormatException]

    wenyao

      Hi,

       

      I encountered a problem with materialized views. I cannot do a simple select statement on any materialized views and MATVIEWS.loadStatus will always be loading status. This is the error from the log file.

      I am using 7.3 version. Hope that someone will help me to understand this error.

       

      2012-06-04 17:49:51,868 ERROR [org.teiid.PROCESSOR] (Worker4076_QueryProcessorQueue1671590) Unexpected exception for request E/soJZ8Avq5L.0

      [TeiidComponentException]Error reading 341375

      1 [UTFDataFormatException]

                at org.teiid.common.buffer.impl.BufferManagerImpl$ManagedBatchImpl.getBatch(BufferManagerImpl.java:299)

                at org.teiid.common.buffer.SPage.getValues(SPage.java:163)

                at org.teiid.common.buffer.TupleBrowser.nextTuple(TupleBrowser.java:209)

                at org.teiid.query.tempdata.TempTable$QueryTupleSource.nextTuple(TempTable.java:155)

                at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:154)

                at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:274)

                at org.teiid.query.processor.relational.SelectNode.nextBatchDirect(SelectNode.java:96)

                at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:274)

                at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:162)

                at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:274)

                at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:161)

                at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:150)

                at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:105)

                at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:115)

                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.UTFDataFormatException

                at java.io.ObjectInputStream$BlockDataInputStream.readUTFSpan(ObjectInputStream.java:3081)

                at java.io.ObjectInputStream$BlockDataInputStream.readUTFBody(ObjectInputStream.java:3006)

                at java.io.ObjectInputStream$BlockDataInputStream.readUTF(ObjectInputStream.java:2819)

                at java.io.ObjectInputStream.readString(ObjectInputStream.java:1598)

                at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1319)

                at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)

                at org.teiid.client.BatchSerializer$ColumnSerializer.readObject(BatchSerializer.java:153)

                at org.teiid.client.BatchSerializer$ColumnSerializer.readColumn(BatchSerializer.java:144)

                at org.teiid.client.BatchSerializer.readBatch(BatchSerializer.java:409)

                at org.teiid.common.buffer.TupleBatch.readExternal(TupleBatch.java:186)

                at org.teiid.common.buffer.impl.BufferManagerImpl$ManagedBatchImpl.getBatch(BufferManagerImpl.java:285)

                ... 22 more

        • 1. Re: Teiid Mat View Error [UTFDataFormatException]
          shawkins

          That error should only occur if hte buffer state is currupted.  Are there earlier exceptions in the log from when the mat view table is created?  I don't recall and can't find issues specifically along these lines for pre-7.6 releases.  You could also look at up grading to a later release, such as 7.5 (which will be similar to 7.3) or 7.7 (which has a newer buffer management facility) - http://sourceforge.net/projects/teiid/files/teiid/

           

          Steve

          • 2. Re: Teiid Mat View Error [UTFDataFormatException]
            wenyao

            Hi Steven,

             

            Unfortunately there isnt any exception prior to the error above. Do you have any idea what might cause the buffer to be corrupted?

            • 3. Re: Teiid Mat View Error [UTFDataFormatException]
              rareddy

              Wen,

               

              The exception shown above is deep bowls of the engine code. All the exception is saying is when the BufferManager is going back to disk to read the data the file is not in a readable state. Why it is in that state can only reveled by additional logs, guessing what it may be is difficult. Can you reproduce this error consistently, then I would like to see test case attached. Otherwise, my suggestion is same as Steve's to move to the newer version as it has much more efficient buffer manager. If you can reproduce in Teiid 7.7, we may be able to give you patch for the error.

               

              Thanks.

               

              Ramesh..