You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "ramkrishna.s.vasudevan (JIRA)" <ji...@apache.org> on 2014/05/26 10:04:02 UTC

[jira] [Resolved] (PHOENIX-989) problem setting column type of Array to null

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

ramkrishna.s.vasudevan resolved PHOENIX-989.
--------------------------------------------

       Resolution: Fixed
    Fix Version/s: 4.1
                   3.1

> problem setting column type of Array to null
> --------------------------------------------
>
>                 Key: PHOENIX-989
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-989
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 3.0-Release
>            Reporter: Jody Landreneau
>            Assignee: ramkrishna.s.vasudevan
>             Fix For: 3.1, 4.1
>
>         Attachments: HBASE-989.patch, HBASE-989_1.patch, Phoenix-989_1.patch
>
>
> Phoenix throws error when setting null for an array column type.
> Example:
> CREATE TABLE regions (
> region_name VARCHAR NOT NULL,
> nullable_field VARCHAR,
> zips VARCHAR[]
> CONSTRAINT pk PRIMARY KEY (region_name));
> I can
> UPSERT INTO regions(region_name, nullable_field)
> VALUES('SF Bay Area', null)
> but not
> UPSERT INTO regions(region_name, nullable_field, zips)
> VALUES('SF Bay Area', 'one', null)
> I have the same issue attempting to use jdbc, when I call the PreparedStatement's
> setNull(int parameterIndex, int sqlType) and I set the sqlType to ARRAY.
> Seems that the error I get is
> java.lang.NullPointerException
> at org.apache.phoenix.schema.PDataType$27.isCoercibleTo(PDataType.java:3455)
> at org.apache.phoenix.compile.UpsertCompiler$3.execute(UpsertCompiler.java:695)
> at org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:226)
> at org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStatement.java:185)
> at org.apache.phoenix.jdbc.PhoenixPreparedStatement.execute(PhoenixPreparedStatement.java:146)
> at org.apache.phoenix.jdbc.PhoenixPreparedStatement.execute(PhoenixPreparedStatement.java:151)
> The expectation is that I should be able to set array column types to null.



--
This message was sent by Atlassian JIRA
(v6.2#6252)