otswriter/src/main/java/com/alibaba/datax/plugin/writer/otswriter/model/OTSBatchWriterRowTask.java [138:174]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
                    retryTimes++;
                    LOG.warn("Retry times : {}", retryTimes);
                    List<OTSLine> newLines = new ArrayList<OTSLine>();
                    for (LineAndError re : errors) {
                        LOG.warn("Because: {}", re.getError().getMessage());
                        if (RetryHelper.canRetry(re.getError().getCode())) {
                            newLines.add(re.getLine());
                        } else {
                            LOG.warn("Can not retry, record row to collector. {}", re.getError().getMessage());
                            CollectorUtil.collect(re.getLine().getRecords(), re.getError().getMessage());
                        }   
                    }
                    if (!newLines.isEmpty()) {
                        sendAll(newLines);
                    }
                } else {
                    LOG.warn("Retry times more than limitation. RetryTime : {}", retryTimes); 
                    CollectorUtil.collect(errors);
                }
            }
        } catch (TableStoreException e) {
            LOG.warn("Send data fail. {}", e.getMessage());
            if (isExceptionForSendOneByOne(e)) {
                if (lines.size() == 1) {
                    LOG.warn("Can not retry.", e); 
                    CollectorUtil.collect(e.getMessage(), lines);
                } else {
                    // 进入单行发送的分支
                    sendAllOneByOne(lines);
                }
            } else {
                LOG.error("Can not send lines to OTS for RuntimeException.", e);
                CollectorUtil.collect(e.getMessage(), lines);
            }
        } catch (Exception e) {
            LOG.error("Can not send lines to OTS for Exception.", e);
            CollectorUtil.collect(e.getMessage(), lines);
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



otswriter/src/main/java/com/alibaba/datax/plugin/writer/otswriter/model/OTSTimeseriesRowTask.java [117:153]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
                    retryTimes++;
                    LOG.warn("Retry times : {}", retryTimes);
                    List<OTSLine> newLines = new ArrayList<OTSLine>();
                    for (LineAndError re : errors) {
                        LOG.warn("Because: {}", re.getError().getMessage());
                        if (RetryHelper.canRetry(re.getError().getCode())) {
                            newLines.add(re.getLine());
                        } else {
                            LOG.warn("Can not retry, record row to collector. {}", re.getError().getMessage());
                            CollectorUtil.collect(re.getLine().getRecords(), re.getError().getMessage());
                        }
                    }
                    if (!newLines.isEmpty()) {
                        sendAll(newLines);
                    }
                } else {
                    LOG.warn("Retry times more than limitation. RetryTime : {}", retryTimes);
                    CollectorUtil.collect(errors);
                }
            }
        } catch (TableStoreException e) {
            LOG.warn("Send data fail. {}", e.getMessage());
            if (isExceptionForSendOneByOne(e)) {
                if (lines.size() == 1) {
                    LOG.warn("Can not retry.", e);
                    CollectorUtil.collect(e.getMessage(), lines);
                } else {
                    // 进入单行发送的分支
                    sendAllOneByOne(lines);
                }
            } else {
                LOG.error("Can not send lines to OTS for RuntimeException.", e);
                CollectorUtil.collect(e.getMessage(), lines);
            }
        } catch (Exception e) {
            LOG.error("Can not send lines to OTS for Exception.", e);
            CollectorUtil.collect(e.getMessage(), lines);
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



