Vertica:输入记录 1 已被拒绝(找到的列太少)
Vertica: Input record 1 has been rejected (Too few columns found)
我正在尝试将文件从 Hadoop 复制到 Vertica table 并遇到错误。
问题是相同的副本有时通过有时失败,知道吗?
错误:
Caused by: java.sql.SQLException: [Vertica]VJDBC ERROR: COPY: Input record 1 has been rejected (Too few columns found)
at com.vertica.util.ServerErrorData.buildException(Unknown Source)
at com.vertica.dataengine.VResultSet.fetchChunk(Unknown Source)
at com.vertica.dataengine.VResultSet.initialize(Unknown Source)
at com.vertica.dataengine.VQueryExecutor.readExecuteResponse(Unknown Source)
at com.vertica.dataengine.VQueryExecutor.handleExecuteResponse(Unknown Source)
at com.vertica.dataengine.VQueryExecutor.execute(Unknown Source)
at com.vertica.jdbc.SStatement.executeNoParams(Unknown Source)
at com.vertica.jdbc.SStatement.execute(Unknown Source)
at org.springframework.jdbc.core.JdbcTemplateExecuteStatementCallback.doInStatement(JdbcTemplate.java:420)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:395)
... 27 more
Caused by: com.vertica.util.ServerException: [Vertica]VJDBC ERROR: COPY: Input record 1 has been rejected (Too few columns found)
... 37 more
查询:
COPY temp__FACT (ACCOUNT_ID,VISIT_ID,CAMPAIGN_SEQ,EVENT_SEQ)
SOURCE public.Hdfs(url='DATA-r-00000') DELIMITER AS ',' ENCLOSED BY '"'
REJECTMAX 1 ABORT ON ERROR DIRECT NO COMMIT;
COPY: Input record 1 has been rejected (Too few columns found)
检查列数是否正确。我建议使用拒绝文件或拒绝表。
因此,由于您检查了列数,请确保您的分隔符不在输入中。
我们发现问题:
Hadoop 中的一个节点是 "shaky" 因此每次 Vertica 访问该节点时文件都是空的。
停止此节点后问题解决。
我们发现了 2 个问题:
1. 节点是 "Shaky" 但仍然有 ping 因此系统 "Thinks" 它是活的
2. Vertica 无法从此节点读取文件,但没有在文件存在于
的其他节点上重试
我正在尝试将文件从 Hadoop 复制到 Vertica table 并遇到错误。 问题是相同的副本有时通过有时失败,知道吗?
错误:
Caused by: java.sql.SQLException: [Vertica]VJDBC ERROR: COPY: Input record 1 has been rejected (Too few columns found) at com.vertica.util.ServerErrorData.buildException(Unknown Source) at com.vertica.dataengine.VResultSet.fetchChunk(Unknown Source) at com.vertica.dataengine.VResultSet.initialize(Unknown Source) at com.vertica.dataengine.VQueryExecutor.readExecuteResponse(Unknown Source) at com.vertica.dataengine.VQueryExecutor.handleExecuteResponse(Unknown Source) at com.vertica.dataengine.VQueryExecutor.execute(Unknown Source) at com.vertica.jdbc.SStatement.executeNoParams(Unknown Source) at com.vertica.jdbc.SStatement.execute(Unknown Source) at org.springframework.jdbc.core.JdbcTemplateExecuteStatementCallback.doInStatement(JdbcTemplate.java:420) at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:395) ... 27 more Caused by: com.vertica.util.ServerException: [Vertica]VJDBC ERROR: COPY: Input record 1 has been rejected (Too few columns found) ... 37 more
查询:
COPY temp__FACT (ACCOUNT_ID,VISIT_ID,CAMPAIGN_SEQ,EVENT_SEQ)
SOURCE public.Hdfs(url='DATA-r-00000') DELIMITER AS ',' ENCLOSED BY '"'
REJECTMAX 1 ABORT ON ERROR DIRECT NO COMMIT;
COPY: Input record 1 has been rejected (Too few columns found)
检查列数是否正确。我建议使用拒绝文件或拒绝表。
因此,由于您检查了列数,请确保您的分隔符不在输入中。
我们发现问题:
Hadoop 中的一个节点是 "shaky" 因此每次 Vertica 访问该节点时文件都是空的。
停止此节点后问题解决。
我们发现了 2 个问题: 1. 节点是 "Shaky" 但仍然有 ping 因此系统 "Thinks" 它是活的 2. Vertica 无法从此节点读取文件,但没有在文件存在于
的其他节点上重试