tokoko commented on code in PR #4317:
URL: https://github.com/apache/arrow-adbc/pull/4317#discussion_r3431338012
##########
c/include/arrow-adbc/adbc.h:
##########
@@ -1516,6 +1518,23 @@ struct ADBC_EXPORT AdbcDriver {
AdbcStatusCode (*StatementExecuteMulti)(struct AdbcStatement*,
struct AdbcMultiResultSet*, struct
AdbcError*);
+ AdbcStatusCode (*ConnectionBeginIngestPartitions)(struct AdbcConnection*,
+ struct ArrowSchema*,
+ struct
AdbcSerializableHandle*,
+ struct AdbcError*);
+ AdbcStatusCode (*ConnectionWriteIngestPartition)(struct AdbcConnection*,
const uint8_t*,
+ size_t, struct
ArrowArrayStream*,
+ struct
AdbcSerializableHandle*,
+ struct AdbcError*);
+ AdbcStatusCode (*ConnectionCompleteIngestPartitions)(struct AdbcConnection*,
Review Comment:
@lidavidm I think we need to distinguish between 3 possible groups of status
codes of a Complete call:
- **success**: ADBC_STATUS_OK
- **retryable**: Complete failed, but a client should retry a complete call
w/o restaging the data or regenerating receipts. The example is delta/iceberg
concurrency conflict error.
- **terminal**: something else went wrong. start from scratch.
I couldn't really map retryable status to any existing status code. I'm
thinking of adding either `ADBC_STATUS_CONFLICT` or `ADBC_STATUS_RETRY`. wdyt?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]