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-4284) All Columns become Nullable when Using left join
Date Thu, 03 Sep 2009 09:50:32 GMT

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

Knut Anders Hatlen updated DERBY-4284:

    Attachment: derby-4284-1d.diff

The 1d patch updates the comment in JoinNode.getMatchingColumn() and explains that it's a
workaround for the problem logged as DERBY-2916.

I now feel confident that the patch is ok, and plan to commit it shortly. The changes in SelectNode
and FromList look rather obvious, I think. The change in JoinNode didn't feel quite right,
but now that we have found that it's another manifestation of DERBY-2916, I think it is fine
to leave the workaround there and add a note to DERBY-2916 saying that it should be removed
once the underlying cause has been found and fixed.

Also, the proposed patch moves the workaround for DERBY-2916 from the test canons to the product
code, which I think is a slight improvement, even though the best solution would be to fix
the root cause of DERBY-2916.

> All Columns become Nullable when Using left join
> ------------------------------------------------
>                 Key: DERBY-4284
>                 URL: https://issues.apache.org/jira/browse/DERBY-4284
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC, SQL
>    Affects Versions:
>         Environment: Microsoft Windows XP SP3, Sun JDK 6 Update 14
>            Reporter: Chua Chee Seng
>            Assignee: Knut Anders Hatlen
>         Attachments: derby-4284-1a.diff, derby-4284-1b.diff, derby-4284-1b.stat, derby-4284-1c.diff,
derby-4284-1c.stat, derby-4284-1d.diff, Main.java
> Consider following:-
> create table person (
>   id varchar(20) not null,
>   name varchar(100) not null
> );
> create table car (
>   id varchar(20) not null,
>   person_id varchar(20) not null,
>   model varchar(100) not null,
>   plat_no varchar(100) not null
> );
> When select :-
> select
> p.name,
> c.model,
> c.plat_no
> from person p
> left join car c on (p.id = c.person_id);
> From the ResultSet, get the ResultSetMetaData and inspect each column's isNullable()
value, which is always = 1 (always nullable).  Expected : column 'p.name' isNullable = 0 (not
nullable), but I get 'p.name' isNullable = 1 (nullable)

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

View raw message