Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
## 1.11.0 [unreleased]

### Bug Fixes

1. [#425](https://github.com/InfluxCommunity/influxdb3-java/pull/425):
- Only throws `InfluxDBPartialWriteException` when:
- Error response status code is `400`.
- Error response format `{"error":"...","data":[{"error_message":"...","line_number":2,"original_line": "..."}]}` is returned with `data` must be an array.
- `accept_partial` is set to `true`.
- Write endpoint must be `api/v3/write_lp`.

### Breaking Changes

1. [#407](https://github.com/InfluxCommunity/influxdb3-java/pull/407): Upgrade minimum JDK requirement to version 17.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,49 +62,45 @@ public List<LineError> lineErrors() {
}

/**
* Represents one failed line from a partial write response.
*/
public static final class LineError {

private final Integer lineNumber;
private final String errorMessage;
private final String originalLine;

/**
* @param lineNumber line number in the write payload; may be null if not provided by server
* @param errorMessage line-level error message
* @param originalLine original line protocol row; may be null if not provided by server
* Represents one failed line from a partial write response.
*/
public LineError(@Nullable final Integer lineNumber,
@Nonnull final String errorMessage,
@Nullable final String originalLine) {
this.lineNumber = lineNumber;
this.errorMessage = errorMessage;
this.originalLine = originalLine;
}
public record LineError(Integer lineNumber, String errorMessage, String originalLine) {

Comment thread
NguyenHoangSon96 marked this conversation as resolved.
/**
* @return line number or null if server didn't provide it
*/
@Nullable
public Integer lineNumber() {
return lineNumber;
}
/**
* @param lineNumber line number in the write payload; may be null if not provided by server
* @param errorMessage line-level error message
* @param originalLine original line protocol row; may be null if not provided by server
*/
public LineError(@Nullable final Integer lineNumber,
@Nonnull final String errorMessage,
@Nullable final String originalLine) {
Comment thread
NguyenHoangSon96 marked this conversation as resolved.
this.lineNumber = lineNumber;
this.errorMessage = errorMessage;
this.originalLine = originalLine;
}

/**
* @return line-level error message
*/
@Nonnull
public String errorMessage() {
return errorMessage;
}
/**
* @return line number or null if server didn't provide it
*/
@Nullable
public Integer lineNumber() {
return lineNumber;
}

/**
* @return original line protocol row or null if server didn't provide it
*/
@Nullable
public String originalLine() {
return originalLine;
/**
* @return line-level error message
*/
@Nonnull
public String errorMessage() {
return errorMessage;
}

/**
* @return original line protocol row or null if server didn't provide it
*/
@Nullable
public String originalLine() {
return originalLine;
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -384,7 +384,7 @@ private <T> void writeData(@Nonnull final List<T> data, @Nonnull final WriteOpti
headers.putAll(options.headersSafe());

try {
restClient.request(path, HttpMethod.POST, body, queryParams, headers);
restClient.request(path, HttpMethod.POST, body, queryParams, headers, acceptPartial, useV2Api);
} catch (InfluxDBApiHttpException e) {
if (e.statusCode() == HttpResponseStatus.METHOD_NOT_ALLOWED.code()) {
if (useV2Api && "api/v2/write".equals(path)) {
Expand Down
Loading
Loading