ASSERT failure with sane build if DISTINCT and ORDER BY are present in a query 
that selects from a diagnostic table function.
-----------------------------------------------------------------------------------------------------------------------------

                 Key: DERBY-2805
                 URL: https://issues.apache.org/jira/browse/DERBY-2805
             Project: Derby
          Issue Type: Bug
          Components: SQL
    Affects Versions: 10.3.0.0
            Reporter: A B
            Assignee: A B
            Priority: Minor
             Fix For: 10.3.0.0


Attempts to execute the following query will lead to an ASSERT failure with 
sane jars:

ij> select distinct * from table(syscs_diag.space_table('T1')) X order by 3;

ERROR XJ001: Java exception: 'ASSERT FAILED markOrderingDependent() not 
expected to be called for org.apache.derby.impl.sql.compile.FromVTI: 
org.apache.derby.shared.common.sanity.AssertFailure'.

Stack trace is:

        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 ResultSetNode.markOrderingDependent(ResultSetNode.java:1881)
        at 
SingleChildResultSetNode.markOrderingDependent(SingleChildResultSetNode.java:578)
        at 
SingleChildResultSetNode.markOrderingDependent(SingleChildResultSetNode.java:578)
        at 
SingleChildResultSetNode.markOrderingDependent(SingleChildResultSetNode.java:578)
        at SelectNode.genProjectRestrict(SelectNode.java:1409)
        at SelectNode.modifyAccessPaths(SelectNode.java:1816)
        at 
SingleChildResultSetNode.modifyAccessPaths(SingleChildResultSetNode.java:439)
        at DMLStatementNode.optimizeStatement(DMLStatementNode.java:307)
        at CursorNode.optimizeStatement(CursorNode.java:515)

I was able to avoid this by adding an empty implementation of 
"markOrderingDependent" to the FromVTI class, so that's probably the fix that I 
will post (after looking a bit more closely at the code to see if this makes 
sense).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to