in src/main/java/org/apache/doris/kafka/connector/writer/load/CopyLoad.java [177:209]
public void upLoadFile(String address, String value, String fileName) {
HttpPutBuilder putBuilder = new HttpPutBuilder();
putBuilder
.setUrl(address)
.addCommonHeader()
.setEntity(new ByteArrayEntity(value.getBytes(StandardCharsets.UTF_8)));
try {
BackoffAndRetryUtils.backoffAndRetry(
LoadOperation.UPLOAD_FILE,
() -> {
long start = System.currentTimeMillis();
try (CloseableHttpResponse response =
httpClient.execute(putBuilder.build())) {
final int statusCode = response.getStatusLine().getStatusCode();
if (statusCode != 200) {
String result =
response.getEntity() == null
? null
: EntityUtils.toString(response.getEntity());
LOG.error("upload file {} error, response {}", fileName, result);
throw new UploadException("upload file error: " + fileName);
}
LOG.info(
"upload file success cost {}ms",
System.currentTimeMillis() - start);
return true;
}
});
} catch (Exception e) {
String errMsg = "Failed to upload file, filename=" + fileName + ", address=" + address;
throw new UploadException(errMsg, e);
}
}