This is an automated email from the ASF dual-hosted git repository.

lidavidm pushed a commit to branch spec-1.2.0
in repository https://gitbox.apache.org/repos/asf/arrow-adbc.git


The following commit(s) were added to refs/heads/spec-1.2.0 by this push:
     new 0b5a9532d feat(format): add AdbcErrorGetVendorCode (#3873)
0b5a9532d is described below

commit 0b5a9532ddd1760d341bf6f771df9d5ad1cae5b2
Author: David Li <[email protected]>
AuthorDate: Wed Mar 11 15:05:35 2026 +0900

    feat(format): add AdbcErrorGetVendorCode (#3873)
    
    Closes #1576.
---
 c/include/arrow-adbc/adbc.h         | 9 +++++++++
 go/adbc/drivermgr/arrow-adbc/adbc.h | 9 +++++++++
 2 files changed, 18 insertions(+)

diff --git a/c/include/arrow-adbc/adbc.h b/c/include/arrow-adbc/adbc.h
index 3733daad1..4afd72be3 100644
--- a/c/include/arrow-adbc/adbc.h
+++ b/c/include/arrow-adbc/adbc.h
@@ -380,6 +380,13 @@ struct ADBC_EXPORT AdbcErrorDetail {
   size_t value_length;
 };
 
+/// \brief Get the vendor code for an error (since the vendor code field was
+///   repurposed), or 0 if not available/not set.
+///
+/// \since ADBC API revision 1.2.0
+ADBC_EXPORT
+int AdbcErrorGetVendorCode(const struct AdbcError* error);
+
 /// \brief Get the number of metadata values available in an error.
 ///
 /// \since ADBC API revision 1.1.0
@@ -1402,6 +1409,8 @@ struct ADBC_EXPORT AdbcDriver {
   ///
   /// @{
 
+  int (*AdbcErrorGetVendorCode)(const struct AdbcError*);
+
   AdbcStatusCode (*MultiResultSetNext)(struct AdbcMultiResultSet*,
                                        struct ArrowArrayStream*, int64_t*,
                                        struct AdbcError*);
diff --git a/go/adbc/drivermgr/arrow-adbc/adbc.h 
b/go/adbc/drivermgr/arrow-adbc/adbc.h
index 3733daad1..4afd72be3 100644
--- a/go/adbc/drivermgr/arrow-adbc/adbc.h
+++ b/go/adbc/drivermgr/arrow-adbc/adbc.h
@@ -380,6 +380,13 @@ struct ADBC_EXPORT AdbcErrorDetail {
   size_t value_length;
 };
 
+/// \brief Get the vendor code for an error (since the vendor code field was
+///   repurposed), or 0 if not available/not set.
+///
+/// \since ADBC API revision 1.2.0
+ADBC_EXPORT
+int AdbcErrorGetVendorCode(const struct AdbcError* error);
+
 /// \brief Get the number of metadata values available in an error.
 ///
 /// \since ADBC API revision 1.1.0
@@ -1402,6 +1409,8 @@ struct ADBC_EXPORT AdbcDriver {
   ///
   /// @{
 
+  int (*AdbcErrorGetVendorCode)(const struct AdbcError*);
+
   AdbcStatusCode (*MultiResultSetNext)(struct AdbcMultiResultSet*,
                                        struct ArrowArrayStream*, int64_t*,
                                        struct AdbcError*);

Reply via email to