hi,

I need to be able to import table names with hypens but keep getting the
following error. Is there any way to specify a table alias to rename a
table replacing hypens with underscores?

sqoop import --connect jdbc:mysql://DATABASE_ENDPOINT --table
ci_84adea33-9194-4753-925f-529a87656048 --as-parquetfile --class-name
mydata1 --username USERNAME -P


16/08/02 20:11:22 INFO manager.SqlManager: Executing SQL statement:
SELECT t.* FROM `ci_84adea33-9194-4753-925f-529a87656048` AS t LIMIT 1
16/08/02 20:11:23 ERROR sqoop.Sqoop: Got exception running Sqoop:
org.apache.avro.SchemaParseException: Illegal character in:
ci_84adea33-9194-4753-925f-529a87656048
org.apache.avro.SchemaParseException: Illegal character in:
ci_84adea33-9194-4753-925f-529a87656048
    at org.apache.avro.Schema.validateName(Schema.java:1042)
    at org.apache.avro.Schema.access$200(Schema.java:78)
    at org.apache.avro.Schema$Name.<init>(Schema.java:431)
    at org.apache.avro.Schema.createRecord(Schema.java:144)
    at
org.apache.sqoop.orm.AvroSchemaGenerator.generate(AvroSchemaGenerator.java:83)
    at
org.apache.sqoop.mapreduce.DataDrivenImportJob.generateAvroSchema(DataDrivenImportJob.java:133)
    at
org.apache.sqoop.mapreduce.DataDrivenImportJob.configureMapper(DataDrivenImportJob.java:106)
    at
org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:260)
    at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:673)
    at
org.apache.sqoop.manager.MySQLManager.importTable(MySQLManager.java:118)
    at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:497)
    at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:605)
    at org.apache.sqoop.Sqoop.run(Sqoop.java:143)
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
    at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:179)
    at org.apache.sqoop.Sqoop.runTool(Sqoop.java:218)
    at org.apache.sqoop.Sqoop.runTool(Sqoop.java:227)
    at org.apache.sqoop.Sqoop.main(Sqoop.java:236)

Thanks,
Mark

Reply via email to