Skip to content

Commit

Permalink
#394: Described 'No suitable driver found', added a note that Hive 1.… (
Browse files Browse the repository at this point in the history
#395)

* #394: Described 'No suitable driver found', added a note that Hive 1.1.0 has problems with its driver.
Co-authored-by: Sebastian Bär <sebastian.baer@exasol.com>
  • Loading branch information
AnastasiiaSergienko committed Sep 30, 2020
1 parent 3d5b512 commit e050bc0
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 3 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ This is an open source project which is officially supported by Exasol. For any

Additional resources:

* [Unrecognized and Unsupported Data Types](doc/user-guide/unrecognized_and_unsupported_data_types.md)
* [Troubleshooting](doc/user-guide/troubleshooting.md)
* [Changelog](doc/changes/changelog.md)
* [Virtual Schema Privileges](https://docs.exasol.com/database_concepts/virtual_schema/virtual_schema_privilege.htm)

Expand Down
1 change: 1 addition & 0 deletions doc/changes/changes_4.0.4.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ Code name:
* #377: Improved Scalar Functions API documentation.
* #384: Turned embedded JSON into key-value encoding in Adapter Notes API examples.
* #386: Remove the documentation that was moved to the portal, added links instead.
* #394: Described 'No suitable driver found', added a note that Hive 1.1.0 has problems with its driver.

## Refactoring

Expand Down
5 changes: 5 additions & 0 deletions doc/dialects/hive.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,11 @@ CREATE VIRTUAL SCHEMA <virtual schema name>

## Troubleshooting

### Virtual Schema and Hive 1.1.0

It is not possible to create a Virtual Schema with Hive version 1.1.0, because the JDBC drivers for it do not support the method we use for retrieving the metadata.
The unsupported driver we have tested with: `jdbc-driver hive-jdbc-1.1.0-cdh5.16.2-standalone.jar`

### VARCHAR Columns Size Fixed at 255 Characters

Hive is operating on schemaless data. Virtual Schemas &mdash; as the name suggests &mdash; require a schema. In the case of string variables this creates the situation that the Hive JDBC driver cannot tell how long strings are when asked for schema data. To achieve this it would have to scan all data first, which is not an option.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# Unrecognized and Unsupported Data Types
# Troubleshooting

## Unrecognized and Unsupported Data Types

Not all data types present in a source database have a matching equivalent in Exasol. Also software updates on the source database can introduce new data type that the Virtual schema does not recognize.

Expand All @@ -8,4 +10,18 @@ There are a few important things you need to know about those data types.
2. You can't query columns of an unrecognized / unsupported data type. If the source table contains them, you have to *explicitly* exclude them from the query. You can for example not use the asterisk (`*`) on a table that contains one ore more of those columns. This will result in an error issued by the Virtual schema.
3. If you want to query all columns except unsupported, add `1` to the columns list. Otherwise you will see the same error as if you query with the asterisk (`*`).
For example, a table contains 3 columns: `bool_column` BOOLEAN, `timestamp_column` TIMESTAMP, `blob_column` BLOB. The column BLOB is not supported. If you want to query two other columns, use: `SELECT "bool_column", "timestamp_column", 1 FROM table_name;` .
4. You can't use functions that result in an unsupported / unknown data type.
4. You can't use functions that result in an unsupported / unknown data type.

## Exceptions and Errors

### No Suitable Driver Found

If you see this error message, you should check the JDBC driver you register in the EXAoperation.
If you are sure you have registered the driver correctly, but you still see the same error, check the driver:

* Open the JAR archive and make sure the file `META-INF/services/java.sql.Driver` exists.

* If the file exists, open it and make sure it contains the driver's main class reference.

* If the file does not exist or does not contain the correct main class reference, you can add it and re-upload the fixed JAR archive.
You should also report the problem to the developers of the driver.

0 comments on commit e050bc0

Please sign in to comment.