phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Taylor (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (PHOENIX-3421) Column name lookups fail when on an indexed table
Date Thu, 03 Nov 2016 22:08:58 GMT

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

James Taylor updated PHOENIX-3421:
----------------------------------
    Attachment: PHOENIX-3421_addendum1.patch

This keeps the old, deprecated methods as-is and introduces new methods for the new lookup,
encode, and decode:
{code}
    public static byte[] encodeColumnValues(Connection conn, String fullTableName, Object[]
values, List<Pair<String, String>> columns) throws SQLException

    public static Object[] decodeColumnValues(Connection conn, String fullTableName, byte[]
value, List<Pair<String, String>> columns) throws SQLException

    public static List<Pair<String, String>> getPkColsForSql(Connection conn,
QueryPlan plan) throws SQLException
{code}

Please review, [~samarthjain]

> Column name lookups fail when on an indexed table
> -------------------------------------------------
>
>                 Key: PHOENIX-3421
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-3421
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.8.0
>            Reporter: Cody Marcel
>            Assignee: James Taylor
>             Fix For: 4.9.0
>
>         Attachments: DebuggerWindow.png, PHOENIX-3421.patch, PHOENIX-3421_addendum1.patch
>
>
> Using an index the lookup for encoded values fails.
> This happens on tables when using an index.
> The conflict is essentially between the two methods below. The pkColsList create by getPkColsDataTypesForSql()
returns column names without a ":", but the encodeValues() method does a lookup on PTable
for the column and cannot find it.
> PhoenixRuntime.getPkColsDataTypesForSql(pkColsList, dataTypesList, queryPlan, connection,
true);
> PhoenixRuntime.encodeValues(connection, queryPlanTableName, objects , pkColsList);



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message