You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "Ankit Singhal (JIRA)" <ji...@apache.org> on 2017/01/02 10:45:58 UTC

[jira] [Commented] (PHOENIX-3460) Phoenix Spark plugin cannot find table with a Namespace prefix

    [ https://issues.apache.org/jira/browse/PHOENIX-3460?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15792656#comment-15792656 ] 

Ankit Singhal commented on PHOENIX-3460:
----------------------------------------

Is the table name provided at the time of creation is without double quotes? if yes, then you should be running your queries having a table name without double quotes and a dot between schema and table. 
like this: - Select ENDPOINT_ID, CITY from ACME.ENDPOINT_STATUS Where city = 'ACME City'


If above is not the case, then can you share the dump of SYSTEM.CATALOG and SYSTEM:CATALOG table( by running scan from hbase shell). and confirm if you have reverted any namespace property.
{code}
org.apache.phoenix.schema.TableNotFoundException: ERROR 1012 (42M03): Table undefined. tableName=ACME:ENDPOINT_STATUS
	at org.apache.phoenix.schema.PMetaDataImpl.getTableRef(PMetaDataImpl.java:265)
	at org.apache.phoenix.jdbc.PhoenixConnection.getTable(PhoenixConnection.java:449)
	at org.apache.phoenix.util.PhoenixRuntime.getTable(PhoenixRuntime.java:407)
	at org.apache.phoenix.util.PhoenixRuntime.generateColumnInfo(PhoenixRuntime.java:433)
	at 
{code}

> Phoenix Spark plugin cannot find table with a Namespace prefix
> --------------------------------------------------------------
>
>                 Key: PHOENIX-3460
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-3460
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.8.0
>         Environment: HDP 2.5
>            Reporter: Xindian Long
>              Labels: phoenix, spark
>             Fix For: 4.7.0
>
>
> I am testing some code using Phoenix Spark plug in to read a Phoenix table with a namespace prefix in the table name (the table is created as a phoenix table not a hbase table), but it returns an TableNotFoundException.
> The table is obviously there because I can query it using plain phoenix sql through Squirrel. In addition, using spark sql to query it has no problem at all.
> I am running on the HDP 2.5 platform, with phoenix 4.7.0.2.5.0.0-1245
> The problem does not exist at all when I was running the same code on HDP 2.4 cluster, with phoenix 4.4.
> Neither does the problem occur when I query a table without a namespace prefix in the DB table name, on HDP 2.5
> The log is in the attached file: tableNoFound.txt
> My testing code is also attached.
> The weird thing is in the attached code, if I run testSpark alone it gives the above exception, but if I run the testJdbc first, and followed by testSpark, both of them work.
>  After changing to create table by using
> create table ACME.ENDPOINT_STATUS
> The phoenix-spark plug in seems working. I also find some weird behavior,
> If I do both the following
> create table ACME.ENDPOINT_STATUS ...
> create table "ACME:ENDPOINT_STATUS" ...
> Both table shows up in phoenix, the first one shows as Schema ACME, and table name ENDPOINT_STATUS, and the later on shows as scheme none, and table name ACME:ENDPOINT_STATUS.
> However, in HBASE, I only see one table ACME:ENDPOINT_STATUS. In addition, upserts in the table ACME.ENDPOINT_STATUS show up in the other table, so is the other way around.
>  



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