0016-00000834

问题描述

SelectObject请求的请求体XMLMaxSkippedRecordsAllowed参数取值有误。

问题原因

您发起了SelectObject请求,但是请求体XMLMaxSkippedRecordsAllowed节点取值非法。

问题示例

以下请求中MaxSkippedRecordsAllowed节点取值为abc,不是合法的正整数。

POST /oss-select/bigcsv_normal.csv?x-oss-process=csv%2Fselect HTTP/1.1
Date: Fri, 25 May 2018 22:11:39 GMT
Authorization: OSS qn6q**************:77Dv****************
Range: bytes=1024-2048
Host: host name
<?xml version="1.0"?>
<SelectRequest>
    <Expression>...</Expression>
    <InputSerialization>
        ......
    </InputSerialization>
    <OutputSerialization>
        ......
    </OutputSerialization>
    <Options>
    	<MaxSkippedRecordsAllowed>
      	abc
      </MaxSkippedRecordsAllowed>
    </Options>
</SelectRequest>

解决方案

确保请求XMLMaxSkippedRecordsAllowed节点取值正确,取值必须为大于等于0的整数,默认值为0。

该参数用于指定最大能容忍跳过的行数。当某一行数据因为不匹配SQL中期望的类型,或者某一列、多列数据缺失且SkipPartialDataRecordTrue时,则该行数据会被跳过。如果跳过的行数超过该参数的值,OSS会停止处理并报错。

如果某一行是非法CSV行,例如在某一列中间连续出现奇数个quote字符,则OSS会马上停止处理并报错。该错误很可能会影响对整个CSV文件的解析。该参数用于调整对非整齐数据的容忍度,但不应用于非法的CSV文件。

相关文档