Created 01-15-2020 03:37 AM
Hello all,
Having an issue with sqooping from a Teradata database when using the Teradata method "--fast-export", example sqoop query is below
``` import
-Dhadoop.security.credential.provider.path=jceks:/PATH/TO/password/password.jcecks
-Dteradata.db.job.data.dictionary.usexviews=false
--connect
jdbc:teradata://DATABASE
--password-alias
password.alias
--username
USER
--connection-manager
org.apache.sqoop.teradata.TeradataConnManager
--fields-terminated-by
'\t'
--lines-terminated-by
'\n'
--null-non-string
''
--null-string
''
--num-mappers
8
--split-by
column3
--target-dir
/THE/TARGET/DIR
--query
SELECT column1,column2,column3 WHERE column3 > '2020-01-01 00:00:00' and column3 <= '2020-01-12 10:41:20' AND $CONDITIONS
--
--method
internal.fastexport ```
The error I am getting is
**Caused by: com.teradata.connector.common.exception.ConnectorException: java.sql.SQLException: [Teradata Database] [TeraJDBC ] [Error 3524] [SQLState 42000] The user does not have CREATE VIEW access to database DATABASE.**
I suspect fast export will implement a staging table/view to be temporarily created, and the job under the hood will be ingesting from the temp table. Is this a sqoop mechanism and is it possible to turn it off?
Alternatively is there a better way to do the same import.
I should note that sensitive information(server details) has been removed from the question and that the sqoop query runs fine when I do not use faster export
Thanks
Dan
Created 01-15-2020 03:44 PM
I know that split.by.partition does require CREATE VIEW privilege, see table below:
I believe that fastexport is new, and it might have the same requirement. However, I can't find official documentation to support it.
Maybe other community members can validate.
Cheers
Eric
Created 01-16-2020 02:34 AM
Hi Eric
Thanks for the response, did some digging off the back of your answer and I believe you are correct it is the split by that is causing the problem. Will test it and post the results here
Created 01-16-2020 03:00 PM