db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Knut Anders Hatlen (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (DERBY-5153) Intermittent ASSERT FAILED Internal Error-- statistics not found in selectivityForConglomerate when running InterruptResilienceTest
Date Fri, 01 Apr 2011 10:08:05 GMT

     [ https://issues.apache.org/jira/browse/DERBY-5153?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Knut Anders Hatlen updated DERBY-5153:
--------------------------------------

    Attachment: test.diff

Uploading a patch that adds the repro as a JUnit test case in UpdateStatisticsTest. The test
case fails fairly consistently in my environment. It has failed in every run so far, either
in embedded mode or in client mode, but sometimes not in both modes.

The test case is disabled for now. To try it, remove the "disabled_" prefix from the name
of the test method.

Committed revision 1087636.

> Intermittent ASSERT FAILED Internal Error-- statistics not found in selectivityForConglomerate
when running InterruptResilienceTest
> -----------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-5153
>                 URL: https://issues.apache.org/jira/browse/DERBY-5153
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.8.0.0
>            Reporter: Dag H. Wanvik
>         Attachments: D5153.java, derby.log, test.diff
>
>
> Cf the enclosed derby.log:
> While executing this statement: "select * from mtTab where i=?", we see this stacktrace:
> org.apache.derby.shared.common.sanity.AssertFailure: ASSERT FAILED Internal Error-- statistics
not found in selectivityForConglomerate.
>  cd = ConglomerateDescriptor: conglomerateNumber = 1249 name = SQL110325154339720 uuid
= f04340b7-012e-ed78-50c3-00005e21fe7a indexable = true
> numKeys = 1
> 	at org.apache.derby.shared.common.sanity.SanityManager.THROWASSERT(SanityManager.java:162)
> 	at org.apache.derby.shared.common.sanity.SanityManager.THROWASSERT(SanityManager.java:147)
> 	at org.apache.derby.iapi.sql.dictionary.TableDescriptor.selectivityForConglomerate(TableDescriptor.java:1443)
> 	at org.apache.derby.impl.sql.compile.PredicateList.selectivity(PredicateList.java:3903)
> 	at org.apache.derby.impl.sql.compile.FromBaseTable.estimateCost(FromBaseTable.java:1295)
> 	at org.apache.derby.impl.sql.compile.OptimizerImpl.estimateTotalCost(OptimizerImpl.java:2626)
> 	at org.apache.derby.impl.sql.compile.OptimizerImpl.costBasedCostOptimizable(OptimizerImpl.java:2172)
> 	at org.apache.derby.impl.sql.compile.OptimizerImpl.costOptimizable(OptimizerImpl.java:1985)
> 	at org.apache.derby.impl.sql.compile.FromBaseTable.optimizeIt(FromBaseTable.java:526)
> 	at org.apache.derby.impl.sql.compile.ProjectRestrictNode.optimizeIt(ProjectRestrictNode.java:316)
> 	at org.apache.derby.impl.sql.compile.OptimizerImpl.costPermutation(OptimizerImpl.java:1939)
> 	at org.apache.derby.impl.sql.compile.SelectNode.optimize(SelectNode.java:1916)
> 	at org.apache.derby.impl.sql.compile.DMLStatementNode.optimizeStatement(DMLStatementNode.java:315)
> 	at org.apache.derby.impl.sql.compile.CursorNode.optimizeStatement(CursorNode.java:587)
> 	at org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:384)
> 	at org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:85)
> 	at org.apache.derby.impl.sql.GenericPreparedStatement.rePrepare(GenericPreparedStatement.java:229)
> 	at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(GenericPreparedStatement.java:409)
> 	at org.apache.derby.impl.sql.GenericPreparedStatement.execute(GenericPreparedStatement.java:317)
> 	at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(EmbedStatement.java:1242)
> 	at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(EmbedPreparedStatement.java:1686)
> 	at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeQuery(EmbedPreparedStatement.java:284)
> 	at org.apache.derbyTesting.functionTests.tests.store.InterruptResilienceTest$WorkerThread.run(InterruptResilienceTest.java:414)
> I saw this twice with the enclosed patch to InterruptResilienceTest (adds a test case
in preparation for DERBY-5152) - but the error occurs before we execute that fixture, so I
think the patch is irrelevant (a third and fourth execution failed to show the issue). I am
posting it here in case somebody can guess what could be wrong, I'll run more experiments
to see if I can reproduce it. Could it be related to our new index statistics daemon?

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message