db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kathey Marsden (JIRA)" <j...@apache.org>
Subject [jira] Assigned: (DERBY-3310) ASSERT in MergeSort.checkColumnTypes() disallow legal type conversions
Date Wed, 05 Mar 2008 18:45:41 GMT

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

Kathey Marsden reassigned DERBY-3310:
-------------------------------------

    Assignee:     (was: Kathey Marsden)

Unassigning myself from this issue for now while I focus on DERBY-3494 to reorganize the code.
I am not sure that that is necessary to resolve this issue.  Perhaps someone has a more straight
forward solution and can get this regression fixed for 10.4.

Status of the issue as I leave it is:

I submitted a patch derby-3310_try1_diff.txt that resolves the issue and passes regression
tests. That patch removes the change of the underlying expression of the NormalizeResultSetNode,
so that it does not affect the sort.  ResultSetNode  expects the type of the column to be
different from the expression in this case, so the patch seems to resolve the issue.  Dan
had some concerns with the patch however, since the Normalization code is not clear, we are
not sure if it is ok to remove the change of the expresion type.

Dan thought reorganizing the normalization code to avoid changing the underlying result set
would make things clearer (DERBY-3494), so I am looking at that now.


> ASSERT in MergeSort.checkColumnTypes() disallow legal type conversions
> ----------------------------------------------------------------------
>
>                 Key: DERBY-3310
>                 URL: https://issues.apache.org/jira/browse/DERBY-3310
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.4.0.0
>            Reporter: Dyre Tjeldvoll
>            Priority: Minor
>         Attachments: cast-repro.sql, derby-3310_remove_genNormalizeResultSetNode_diff.txt,
derby-3310_try1_diff.txt, derby3310_rsn_cleanup_1.txt
>
>
> The following code 
> CREATE TABLE U (SNAME VARCHAR(32000), TNAME VARCHAR(32000), C1 BIGINT);
> -- This triggers an ASSERT (because 2 is INTEGER and not BIGINT)
> INSERT INTO U(SNAME, TNAME, C1) SELECT DISTINCT SCHEMANAME, TABLENAME, 2
>  FROM SYS.SYSTABLES T JOIN SYS.SYSSCHEMAS S ON T.SCHEMAID = S.SCHEMAID;
> gives
> ERROR XJ001: Java exception: 'ASSERT FAILED col1.getClass() (class org.apache.derby.iapi.types.SQLInteger)
expected to be the same as col2.getClass() (class org.apache.derby.iapi.types.SQLLongint):
org.apache.derby.shared.common.sanity.AssertFailure'.

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


Mime
View raw message