Open danielcorin opened 8 years ago
Looking at the class responsible for listing columns at: https://github.com/airbnb/airpal/blob/master/src/main/java/com/airbnb/airpal/presto/metadata/ColumnCache.java#L141 It looks like it is expecting the "SHOW COLUMNS FROM $table" query to return isNullable and isPartition on 3rd and 4th columns, but running manually via presto jdbc this query is only returning column name, type and comment.
I tried editing those lines to get around that error but then encounter other dataType related errors (e.g. decimal support was just added to presto, and the type signature decimal(38,0) would cause an exception: java.lang.IllegalArgumentException: Bad characters in base type: decimal(38,0) with the com.facebook.presto.spi.type.TypeSignature.parseTypeSignature(String) logic).
And it doesn't appear to be a straightforward upgrade to latest prestoVersion (via -Dairpal.prestoVersion or build.gradle) as airpal's interface with presto-spi no longer works on newer presto versions, e.g. com.facebook.presto.client.Column now requires ClientTypeSignature in its constructor so https://github.com/airbnb/airpal/blob/master/src/main/java/com/airbnb/airpal/presto/metadata/ColumnCache.java#L140 will break without change.
do we have an update in this issue? im having the same trouble.. and would love to get the preview feature working.
Presto provides some predefined queries which can be used for getting list of tables ,columns etc. This information is available under presto release documentation.
Thanks Surendra
I think this is the same issue as #172
I'm seeing this same error with latest Airpal. I can run a simple query, but when I choose a table, the columns don't show and this error shows up (I'm using Presto 0.166) ERROR [2017-02-24 17:48:56,973] io.dropwizard.jersey.errors.LoggingExceptionMapper: Error handling a request: c6dd80734466a023 ! java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Boolean
I'm also experiencing a similar problem when installing a fresh instance from master.
I Have the same problem, got the same error io.dropwizard.jersey.errors.LoggingExceptionMapper: Error handling a request: a07a0ab8fd95dee5 ! java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Boolean ! at com.airbnb.airpal.presto.metadata.ColumnCache$4.apply(ColumnCache.java:143)
It would be great any one help to solve this issue.
Thanks Aruna
Use this repository instead. It has the fix. https://github.com/StunlockStudios/airpal/archive/master.zip
The github: https://github.com/StunlockStudios/airpal/
I installed Airpal using
./gradlew clean shadowJar
and have been running it usingMy
reference.yml
is:When I load Airpal at
<coordinator_url>:8081
, Airpal runs the following query against PrestoI can click on the text field to select a table and the available tables in the
hive.default
space are displayed. However, when I click a table, Airpal run the incorrect queries against Presto.For example, when I click
default.test_view
, Airpal runs the following three queries in this order (top down):Since the first two queries don't use
hive
as the catalog, they fail and Airpal can't get the data it needs to show the columns of the table or create a data preview. Below is the stack trace from Airpal but I suspect the problem stems from the incorrect queries.