Skip to main content

Vertica Spark Connector 0.2.2 - Invalid projection name, ERROR: Relation "tablename" does not exis

  • May 3, 2016
  • 2 replies
  • 16 views

song

Vertica v7.2.1

Spark version 1.5

Scala version 2.10.4

Vertica Spark Connector 0.2.2

 

The veritca "dba" user owns a few db schemas including public, production, integration, staging etc. It can read data from public schema. But I haven't been able to read any table from other schemas. It always hit one of the two errors: 

 

ERROR: Invalid projection name projection_name

 

ERROR: Relation "table_name" does not exist

 

The problem is similar to the bug reported before: https://community.dev.hpe.com/t5/Vertica-Forum/Vertica-Spark-Connector-0-2-0-Invalid-Projection-issue/td-p/235104. But this time it seems limit one user to one schema. Another veritca user 'user_a' who owns db schema 'db_a' can access that schema. 

 

Another problem is that it sometimes complains about a project that does NOT belong to the table, instead, belongs to another table with the same table name in a different schema. 

 

2 replies

EdwardM
Forum|alt.badge.img
  • Participating Frequently
  • May 4, 2016

Hi,

 

How do you specify the table name with a non-public schema? The proper way to do this should be as "schema_name.table_name" to the "table" parameter in options, i.e.,

 

val opt = Map("host" -> hostName , "table" -> "schema_name.table_name", "db"-> db , ...)

 

val df = sqlContext.read.format("com.vertica.spark.datasource.DefaultSource").options(opt).load()

 

Thanks,

Ed


song
  • Author
  • New Participant
  • May 4, 2016

That did it! Thank you for the quick response!

 

It would be great to update the documentation on it.