You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by pa...@apache.org on 2022/08/19 12:49:34 UTC
[arrow-nanoarrow] branch main updated: Use NANOARROW_RETURN_NOT_OK(), remove unused schema view fields (#23)
This is an automated email from the ASF dual-hosted git repository.
paleolimbot pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow-nanoarrow.git
The following commit(s) were added to refs/heads/main by this push:
new b7be0c4 Use NANOARROW_RETURN_NOT_OK(), remove unused schema view fields (#23)
b7be0c4 is described below
commit b7be0c45e4277ed64a8bccb3c18803e3ec709da2
Author: Dewey Dunnington <de...@fishandwhistle.net>
AuthorDate: Fri Aug 19 09:49:31 2022 -0300
Use NANOARROW_RETURN_NOT_OK(), remove unused schema view fields (#23)
* use more NANOARROW_RETURN_NOT_OK
* remove buffer ids and n_buffers fields from schema view
---
src/nanoarrow/bitmap_inline.h | 19 +++-----
src/nanoarrow/buffer_inline.h | 11 ++---
src/nanoarrow/metadata.c | 41 ++++-------------
src/nanoarrow/nanoarrow.h | 15 ------
src/nanoarrow/schema.c | 25 ++++------
src/nanoarrow/schema_view.c | 50 +-------------------
src/nanoarrow/schema_view_test.cc | 96 ---------------------------------------
7 files changed, 27 insertions(+), 230 deletions(-)
diff --git a/src/nanoarrow/bitmap_inline.h b/src/nanoarrow/bitmap_inline.h
index 763da2a..6239ca7 100644
--- a/src/nanoarrow/bitmap_inline.h
+++ b/src/nanoarrow/bitmap_inline.h
@@ -23,6 +23,7 @@
#include "buffer_inline.h"
#include "typedefs_inline.h"
+#include "utils_inline.h"
#ifdef __cplusplus
extern "C" {
@@ -173,11 +174,8 @@ static inline ArrowErrorCode ArrowBitmapReserve(struct ArrowBitmap* bitmap,
return NANOARROW_OK;
}
- int result =
- ArrowBufferReserve(&bitmap->buffer, _ArrowBytesForBits(additional_size_bits));
- if (result != NANOARROW_OK) {
- return result;
- }
+ NANOARROW_RETURN_NOT_OK(
+ ArrowBufferReserve(&bitmap->buffer, _ArrowBytesForBits(additional_size_bits)));
bitmap->buffer.data[bitmap->buffer.capacity_bytes - 1] = 0;
return NANOARROW_OK;
@@ -191,10 +189,8 @@ static inline ArrowErrorCode ArrowBitmapResize(struct ArrowBitmap* bitmap,
}
int64_t new_capacity_bytes = _ArrowBytesForBits(new_capacity_bits);
- int result = ArrowBufferResize(&bitmap->buffer, new_capacity_bytes, shrink_to_fit);
- if (result != NANOARROW_OK) {
- return result;
- }
+ NANOARROW_RETURN_NOT_OK(
+ ArrowBufferResize(&bitmap->buffer, new_capacity_bytes, shrink_to_fit));
if (new_capacity_bits < bitmap->size_bits) {
bitmap->size_bits = new_capacity_bits;
@@ -205,10 +201,7 @@ static inline ArrowErrorCode ArrowBitmapResize(struct ArrowBitmap* bitmap,
static inline ArrowErrorCode ArrowBitmapAppend(struct ArrowBitmap* bitmap,
uint8_t bits_are_set, int64_t length) {
- int result = ArrowBitmapReserve(bitmap, length);
- if (result != NANOARROW_OK) {
- return result;
- }
+ NANOARROW_RETURN_NOT_OK(ArrowBitmapReserve(bitmap, length));
ArrowBitmapAppendUnsafe(bitmap, bits_are_set, length);
return NANOARROW_OK;
diff --git a/src/nanoarrow/buffer_inline.h b/src/nanoarrow/buffer_inline.h
index 9b5320c..f7ef2d8 100644
--- a/src/nanoarrow/buffer_inline.h
+++ b/src/nanoarrow/buffer_inline.h
@@ -23,6 +23,7 @@
#include <string.h>
#include "typedefs_inline.h"
+#include "utils_inline.h"
#ifdef __cplusplus
extern "C" {
@@ -120,10 +121,7 @@ static inline void ArrowBufferAppendUnsafe(struct ArrowBuffer* buffer, const voi
static inline ArrowErrorCode ArrowBufferAppend(struct ArrowBuffer* buffer,
const void* data, int64_t size_bytes) {
- int result = ArrowBufferReserve(buffer, size_bytes);
- if (result != NANOARROW_OK) {
- return result;
- }
+ NANOARROW_RETURN_NOT_OK(ArrowBufferReserve(buffer, size_bytes));
ArrowBufferAppendUnsafe(buffer, data, size_bytes);
return NANOARROW_OK;
@@ -181,10 +179,7 @@ static inline ArrowErrorCode ArrowBufferAppendFloat(struct ArrowBuffer* buffer,
static inline ArrowErrorCode ArrowBufferAppendFill(struct ArrowBuffer* buffer,
uint8_t value, int64_t size_bytes) {
- int result = ArrowBufferReserve(buffer, size_bytes);
- if (result != NANOARROW_OK) {
- return result;
- }
+ NANOARROW_RETURN_NOT_OK(ArrowBufferReserve(buffer, size_bytes));
memset(buffer->data + buffer->size_bytes, value, size_bytes);
buffer->size_bytes += size_bytes;
diff --git a/src/nanoarrow/metadata.c b/src/nanoarrow/metadata.c
index 2f24cbc..7cf452c 100644
--- a/src/nanoarrow/metadata.c
+++ b/src/nanoarrow/metadata.c
@@ -125,12 +125,7 @@ char ArrowMetadataHasKey(const char* metadata, struct ArrowStringView key) {
ArrowErrorCode ArrowMetadataBuilderInit(struct ArrowBuffer* buffer,
const char* metadata) {
ArrowBufferInit(buffer);
- int result = ArrowBufferAppend(buffer, metadata, ArrowMetadataSizeOf(metadata));
- if (result != NANOARROW_OK) {
- return result;
- }
-
- return NANOARROW_OK;
+ return ArrowBufferAppend(buffer, metadata, ArrowMetadataSizeOf(metadata));
}
static ArrowErrorCode ArrowMetadataBuilderAppendInternal(struct ArrowBuffer* buffer,
@@ -140,14 +135,8 @@ static ArrowErrorCode ArrowMetadataBuilderAppendInternal(struct ArrowBuffer* buf
return NANOARROW_OK;
}
- int result;
-
if (buffer->capacity_bytes == 0) {
- int32_t zero = 0;
- result = ArrowBufferAppend(buffer, &zero, sizeof(int32_t));
- if (result != NANOARROW_OK) {
- return result;
- }
+ NANOARROW_RETURN_NOT_OK(ArrowBufferAppendInt32(buffer, 0));
}
if (buffer->capacity_bytes < sizeof(int32_t)) {
@@ -159,11 +148,8 @@ static ArrowErrorCode ArrowMetadataBuilderAppendInternal(struct ArrowBuffer* buf
int32_t key_size = key->n_bytes;
int32_t value_size = value->n_bytes;
- result = ArrowBufferReserve(buffer,
- sizeof(int32_t) + key_size + sizeof(int32_t) + value_size);
- if (result != NANOARROW_OK) {
- return result;
- }
+ NANOARROW_RETURN_NOT_OK(ArrowBufferReserve(
+ buffer, sizeof(int32_t) + key_size + sizeof(int32_t) + value_size));
ArrowBufferAppendUnsafe(buffer, &key_size, sizeof(int32_t));
ArrowBufferAppendUnsafe(buffer, key->data, key_size);
@@ -181,11 +167,8 @@ static ArrowErrorCode ArrowMetadataBuilderSetInternal(struct ArrowBuffer* buffer
struct ArrowStringView* value) {
// Inspect the current value to see if we can avoid copying the buffer
struct ArrowStringView current_value = ArrowCharView(NULL);
- int result =
- ArrowMetadataGetValueInternal((const char*)buffer->data, key, ¤t_value);
- if (result != NANOARROW_OK) {
- return result;
- }
+ NANOARROW_RETURN_NOT_OK(
+ ArrowMetadataGetValueInternal((const char*)buffer->data, key, ¤t_value));
// The key should be removed but no key exists
if (value == NULL && current_value.data == NULL) {
@@ -200,19 +183,13 @@ static ArrowErrorCode ArrowMetadataBuilderSetInternal(struct ArrowBuffer* buffer
struct ArrowMetadataReader reader;
struct ArrowStringView existing_key;
struct ArrowStringView existing_value;
- result = ArrowMetadataReaderInit(&reader, (const char*)buffer->data);
- if (result != NANOARROW_OK) {
- return result;
- }
+ NANOARROW_RETURN_NOT_OK(ArrowMetadataReaderInit(&reader, (const char*)buffer->data));
struct ArrowBuffer new_buffer;
- result = ArrowMetadataBuilderInit(&new_buffer, NULL);
- if (result != NANOARROW_OK) {
- return result;
- }
+ NANOARROW_RETURN_NOT_OK(ArrowMetadataBuilderInit(&new_buffer, NULL));
while (reader.remaining_keys > 0) {
- result = ArrowMetadataReaderRead(&reader, &existing_key, &existing_value);
+ int result = ArrowMetadataReaderRead(&reader, &existing_key, &existing_value);
if (result != NANOARROW_OK) {
ArrowBufferReset(&new_buffer);
return result;
diff --git a/src/nanoarrow/nanoarrow.h b/src/nanoarrow/nanoarrow.h
index c417eaa..d3957d8 100644
--- a/src/nanoarrow/nanoarrow.h
+++ b/src/nanoarrow/nanoarrow.h
@@ -277,21 +277,6 @@ struct ArrowSchemaView {
/// extension_metadata.data will be non-NULL.
struct ArrowStringView extension_metadata;
- /// \brief The expected number of buffers in a paired ArrowArray
- int32_t n_buffers;
-
- /// \brief The index of the validity buffer or -1 if one does not exist
- int32_t validity_buffer_id;
-
- /// \brief The index of the offset buffer or -1 if one does not exist
- int32_t offset_buffer_id;
-
- /// \brief The index of the data buffer or -1 if one does not exist
- int32_t data_buffer_id;
-
- /// \brief The index of the type_ids buffer or -1 if one does not exist
- int32_t type_id_buffer_id;
-
/// \brief Format fixed size parameter
///
/// This value is set when parsing a fixed-size binary or fixed-size
diff --git a/src/nanoarrow/schema.c b/src/nanoarrow/schema.c
index c4220d9..9833c4e 100644
--- a/src/nanoarrow/schema.c
+++ b/src/nanoarrow/schema.c
@@ -164,10 +164,7 @@ ArrowErrorCode ArrowSchemaInit(struct ArrowSchema* schema, enum ArrowType data_t
ArrowErrorCode ArrowSchemaInitFixedSize(struct ArrowSchema* schema,
enum ArrowType data_type, int32_t fixed_size) {
- int result = ArrowSchemaInit(schema, NANOARROW_TYPE_UNINITIALIZED);
- if (result != NANOARROW_OK) {
- return result;
- }
+ NANOARROW_RETURN_NOT_OK(ArrowSchemaInit(schema, NANOARROW_TYPE_UNINITIALIZED));
if (fixed_size <= 0) {
schema->release(schema);
@@ -189,21 +186,19 @@ ArrowErrorCode ArrowSchemaInitFixedSize(struct ArrowSchema* schema,
}
buffer[n_chars] = '\0';
- result = ArrowSchemaSetFormat(schema, buffer);
+ int result = ArrowSchemaSetFormat(schema, buffer);
if (result != NANOARROW_OK) {
schema->release(schema);
+ return result;
}
- return result;
+ return NANOARROW_OK;
}
ArrowErrorCode ArrowSchemaInitDecimal(struct ArrowSchema* schema,
enum ArrowType data_type, int32_t decimal_precision,
int32_t decimal_scale) {
- int result = ArrowSchemaInit(schema, NANOARROW_TYPE_UNINITIALIZED);
- if (result != NANOARROW_OK) {
- return result;
- }
+ NANOARROW_RETURN_NOT_OK(ArrowSchemaInit(schema, NANOARROW_TYPE_UNINITIALIZED));
if (decimal_precision <= 0) {
schema->release(schema);
@@ -228,7 +223,7 @@ ArrowErrorCode ArrowSchemaInitDecimal(struct ArrowSchema* schema,
buffer[n_chars] = '\0';
- result = ArrowSchemaSetFormat(schema, buffer);
+ int result = ArrowSchemaSetFormat(schema, buffer);
if (result != NANOARROW_OK) {
schema->release(schema);
return result;
@@ -419,13 +414,9 @@ ArrowErrorCode ArrowSchemaAllocateDictionary(struct ArrowSchema* schema) {
}
int ArrowSchemaDeepCopy(struct ArrowSchema* schema, struct ArrowSchema* schema_out) {
- int result;
- result = ArrowSchemaInit(schema_out, NANOARROW_TYPE_NA);
- if (result != NANOARROW_OK) {
- return result;
- }
+ NANOARROW_RETURN_NOT_OK(ArrowSchemaInit(schema_out, NANOARROW_TYPE_NA));
- result = ArrowSchemaSetFormat(schema_out, schema->format);
+ int result = ArrowSchemaSetFormat(schema_out, schema->format);
if (result != NANOARROW_OK) {
schema_out->release(schema_out);
return result;
diff --git a/src/nanoarrow/schema_view.c b/src/nanoarrow/schema_view.c
index 21f8e23..691f737 100644
--- a/src/nanoarrow/schema_view.c
+++ b/src/nanoarrow/schema_view.c
@@ -24,20 +24,12 @@ static void ArrowSchemaViewSetPrimitive(struct ArrowSchemaView* schema_view,
enum ArrowType data_type) {
schema_view->data_type = data_type;
schema_view->storage_data_type = data_type;
- schema_view->n_buffers = 2;
- schema_view->validity_buffer_id = 0;
- schema_view->data_buffer_id = 1;
}
static ArrowErrorCode ArrowSchemaViewParse(struct ArrowSchemaView* schema_view,
const char* format,
const char** format_end_out,
struct ArrowError* error) {
- schema_view->validity_buffer_id = -1;
- schema_view->offset_buffer_id = -1;
- schema_view->offset_buffer_id = -1;
- schema_view->data_buffer_id = -1;
- schema_view->type_id_buffer_id = -1;
*format_end_out = format;
// needed for decimal parsing
@@ -48,7 +40,6 @@ static ArrowErrorCode ArrowSchemaViewParse(struct ArrowSchemaView* schema_view,
case 'n':
schema_view->data_type = NANOARROW_TYPE_NA;
schema_view->storage_data_type = NANOARROW_TYPE_NA;
- schema_view->n_buffers = 0;
*format_end_out = format + 1;
return NANOARROW_OK;
case 'b':
@@ -155,9 +146,6 @@ static ArrowErrorCode ArrowSchemaViewParse(struct ArrowSchemaView* schema_view,
return EINVAL;
}
- schema_view->n_buffers = 2;
- schema_view->validity_buffer_id = 0;
- schema_view->data_buffer_id = 1;
schema_view->fixed_size = strtol(format + 2, (char**)format_end_out, 10);
return NANOARROW_OK;
@@ -165,19 +153,11 @@ static ArrowErrorCode ArrowSchemaViewParse(struct ArrowSchemaView* schema_view,
case 'z':
schema_view->data_type = NANOARROW_TYPE_BINARY;
schema_view->storage_data_type = NANOARROW_TYPE_BINARY;
- schema_view->n_buffers = 3;
- schema_view->validity_buffer_id = 0;
- schema_view->offset_buffer_id = 1;
- schema_view->data_buffer_id = 2;
*format_end_out = format + 1;
return NANOARROW_OK;
case 'u':
schema_view->data_type = NANOARROW_TYPE_STRING;
schema_view->storage_data_type = NANOARROW_TYPE_STRING;
- schema_view->n_buffers = 3;
- schema_view->validity_buffer_id = 0;
- schema_view->offset_buffer_id = 1;
- schema_view->data_buffer_id = 2;
*format_end_out = format + 1;
return NANOARROW_OK;
@@ -185,19 +165,11 @@ static ArrowErrorCode ArrowSchemaViewParse(struct ArrowSchemaView* schema_view,
case 'Z':
schema_view->data_type = NANOARROW_TYPE_LARGE_BINARY;
schema_view->storage_data_type = NANOARROW_TYPE_LARGE_BINARY;
- schema_view->n_buffers = 3;
- schema_view->validity_buffer_id = 0;
- schema_view->offset_buffer_id = 1;
- schema_view->data_buffer_id = 2;
*format_end_out = format + 1;
return NANOARROW_OK;
case 'U':
schema_view->data_type = NANOARROW_TYPE_LARGE_STRING;
schema_view->storage_data_type = NANOARROW_TYPE_LARGE_STRING;
- schema_view->n_buffers = 3;
- schema_view->validity_buffer_id = 0;
- schema_view->offset_buffer_id = 1;
- schema_view->data_buffer_id = 2;
*format_end_out = format + 1;
return NANOARROW_OK;
@@ -208,9 +180,6 @@ static ArrowErrorCode ArrowSchemaViewParse(struct ArrowSchemaView* schema_view,
case 'l':
schema_view->storage_data_type = NANOARROW_TYPE_LIST;
schema_view->data_type = NANOARROW_TYPE_LIST;
- schema_view->n_buffers = 2;
- schema_view->validity_buffer_id = 0;
- schema_view->offset_buffer_id = 1;
*format_end_out = format + 2;
return NANOARROW_OK;
@@ -218,9 +187,6 @@ static ArrowErrorCode ArrowSchemaViewParse(struct ArrowSchemaView* schema_view,
case 'L':
schema_view->storage_data_type = NANOARROW_TYPE_LARGE_LIST;
schema_view->data_type = NANOARROW_TYPE_LARGE_LIST;
- schema_view->n_buffers = 2;
- schema_view->validity_buffer_id = 0;
- schema_view->offset_buffer_id = 1;
*format_end_out = format + 2;
return NANOARROW_OK;
@@ -233,22 +199,16 @@ static ArrowErrorCode ArrowSchemaViewParse(struct ArrowSchemaView* schema_view,
schema_view->storage_data_type = NANOARROW_TYPE_FIXED_SIZE_LIST;
schema_view->data_type = NANOARROW_TYPE_FIXED_SIZE_LIST;
- schema_view->n_buffers = 1;
- schema_view->validity_buffer_id = 0;
schema_view->fixed_size = strtol(format + 3, (char**)format_end_out, 10);
return NANOARROW_OK;
case 's':
schema_view->storage_data_type = NANOARROW_TYPE_STRUCT;
schema_view->data_type = NANOARROW_TYPE_STRUCT;
- schema_view->n_buffers = 1;
- schema_view->validity_buffer_id = 0;
*format_end_out = format + 2;
return NANOARROW_OK;
case 'm':
schema_view->storage_data_type = NANOARROW_TYPE_MAP;
schema_view->data_type = NANOARROW_TYPE_MAP;
- schema_view->n_buffers = 1;
- schema_view->validity_buffer_id = 0;
*format_end_out = format + 2;
return NANOARROW_OK;
@@ -258,15 +218,10 @@ static ArrowErrorCode ArrowSchemaViewParse(struct ArrowSchemaView* schema_view,
case 'd':
schema_view->storage_data_type = NANOARROW_TYPE_DENSE_UNION;
schema_view->data_type = NANOARROW_TYPE_DENSE_UNION;
- schema_view->n_buffers = 2;
- schema_view->type_id_buffer_id = 0;
- schema_view->offset_buffer_id = 1;
break;
case 's':
schema_view->storage_data_type = NANOARROW_TYPE_SPARSE_UNION;
schema_view->data_type = NANOARROW_TYPE_SPARSE_UNION;
- schema_view->n_buffers = 1;
- schema_view->type_id_buffer_id = 0;
break;
default:
ArrowErrorSet(error,
@@ -492,10 +447,7 @@ static ArrowErrorCode ArrowSchemaViewValidateUnion(struct ArrowSchemaView* schem
static ArrowErrorCode ArrowSchemaViewValidateMap(struct ArrowSchemaView* schema_view,
struct ArrowError* error) {
- int result = ArrowSchemaViewValidateNChildren(schema_view, 1, error);
- if (result != NANOARROW_OK) {
- return result;
- }
+ NANOARROW_RETURN_NOT_OK(ArrowSchemaViewValidateNChildren(schema_view, 1, error));
if (schema_view->schema->children[0]->n_children != 2) {
ArrowErrorSet(error, "Expected child of map type to have 2 children but found %d",
diff --git a/src/nanoarrow/schema_view_test.cc b/src/nanoarrow/schema_view_test.cc
index a5fa963..9af569e 100644
--- a/src/nanoarrow/schema_view_test.cc
+++ b/src/nanoarrow/schema_view_test.cc
@@ -69,9 +69,6 @@ void ExpectSimpleTypeOk(std::shared_ptr<DataType> arrow_t, enum ArrowType nanoar
ARROW_EXPECT_OK(ExportType(*arrow_t, &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, nanoarrow_t);
EXPECT_EQ(schema_view.storage_data_type, nanoarrow_t);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_VALIDITY);
@@ -92,7 +89,6 @@ TEST(SchemaViewTest, SchemaViewInitSimple) {
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_NA);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_NA);
- EXPECT_EQ(schema_view.n_buffers, 0);
EXPECT_EQ(schema_view.extension_name.data, nullptr);
EXPECT_EQ(schema_view.extension_metadata.data, nullptr);
schema.release(&schema);
@@ -132,9 +128,6 @@ TEST(SchemaViewTest, SchemaViewInitDecimal) {
ARROW_EXPECT_OK(ExportType(*decimal128(5, 6), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_DECIMAL128);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_DECIMAL128);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_VALIDITY);
@@ -150,9 +143,6 @@ TEST(SchemaViewTest, SchemaViewInitDecimal) {
ARROW_EXPECT_OK(ExportType(*decimal256(5, 6), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_DECIMAL256);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_DECIMAL256);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_VALIDITY);
@@ -219,9 +209,6 @@ TEST(SchemaViewTest, SchemaViewInitBinaryAndString) {
ARROW_EXPECT_OK(ExportType(*fixed_size_binary(123), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_FIXED_SIZE_BINARY);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_FIXED_SIZE_BINARY);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_VALIDITY);
@@ -235,10 +222,6 @@ TEST(SchemaViewTest, SchemaViewInitBinaryAndString) {
ARROW_EXPECT_OK(ExportType(*utf8(), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 3);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.offset_buffer_id, 1);
- EXPECT_EQ(schema_view.data_buffer_id, 2);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_STRING);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_STRING);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_VALIDITY);
@@ -251,10 +234,6 @@ TEST(SchemaViewTest, SchemaViewInitBinaryAndString) {
ARROW_EXPECT_OK(ExportType(*binary(), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 3);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.offset_buffer_id, 1);
- EXPECT_EQ(schema_view.data_buffer_id, 2);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_BINARY);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_BINARY);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_VALIDITY);
@@ -267,10 +246,6 @@ TEST(SchemaViewTest, SchemaViewInitBinaryAndString) {
ARROW_EXPECT_OK(ExportType(*large_binary(), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 3);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.offset_buffer_id, 1);
- EXPECT_EQ(schema_view.data_buffer_id, 2);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_LARGE_BINARY);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_LARGE_BINARY);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_VALIDITY);
@@ -283,10 +258,6 @@ TEST(SchemaViewTest, SchemaViewInitBinaryAndString) {
ARROW_EXPECT_OK(ExportType(*large_utf8(), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 3);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.offset_buffer_id, 1);
- EXPECT_EQ(schema_view.data_buffer_id, 2);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_LARGE_STRING);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_LARGE_STRING);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_VALIDITY);
@@ -334,18 +305,12 @@ TEST(SchemaViewTest, SchemaViewInitTimeDate) {
ARROW_EXPECT_OK(ExportType(*date32(), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_DATE32);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INT32);
schema.release(&schema);
ARROW_EXPECT_OK(ExportType(*date64(), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_DATE64);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INT64);
schema.release(&schema);
@@ -358,9 +323,6 @@ TEST(SchemaViewTest, SchemaViewInitTimeTime) {
ARROW_EXPECT_OK(ExportType(*time32(TimeUnit::SECOND), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_TIME32);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INT32);
EXPECT_EQ(schema_view.time_unit, NANOARROW_TIME_UNIT_SECOND);
@@ -368,9 +330,6 @@ TEST(SchemaViewTest, SchemaViewInitTimeTime) {
ARROW_EXPECT_OK(ExportType(*time32(TimeUnit::MILLI), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_TIME32);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INT32);
EXPECT_EQ(schema_view.time_unit, NANOARROW_TIME_UNIT_MILLI);
@@ -378,9 +337,6 @@ TEST(SchemaViewTest, SchemaViewInitTimeTime) {
ARROW_EXPECT_OK(ExportType(*time64(TimeUnit::MICRO), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_TIME64);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INT64);
EXPECT_EQ(schema_view.time_unit, NANOARROW_TIME_UNIT_MICRO);
@@ -388,9 +344,6 @@ TEST(SchemaViewTest, SchemaViewInitTimeTime) {
ARROW_EXPECT_OK(ExportType(*time64(TimeUnit::NANO), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_TIME64);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INT64);
EXPECT_EQ(schema_view.time_unit, NANOARROW_TIME_UNIT_NANO);
@@ -404,9 +357,6 @@ TEST(SchemaViewTest, SchemaViewInitTimeTimestamp) {
ARROW_EXPECT_OK(ExportType(*timestamp(TimeUnit::SECOND, "America/Halifax"), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_TIMESTAMP);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INT32);
EXPECT_EQ(schema_view.time_unit, NANOARROW_TIME_UNIT_SECOND);
@@ -414,9 +364,6 @@ TEST(SchemaViewTest, SchemaViewInitTimeTimestamp) {
ARROW_EXPECT_OK(ExportType(*timestamp(TimeUnit::MILLI, "America/Halifax"), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_TIMESTAMP);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INT32);
EXPECT_EQ(schema_view.time_unit, NANOARROW_TIME_UNIT_MILLI);
@@ -424,9 +371,6 @@ TEST(SchemaViewTest, SchemaViewInitTimeTimestamp) {
ARROW_EXPECT_OK(ExportType(*timestamp(TimeUnit::MICRO, "America/Halifax"), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_TIMESTAMP);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INT64);
EXPECT_EQ(schema_view.time_unit, NANOARROW_TIME_UNIT_MICRO);
@@ -434,9 +378,6 @@ TEST(SchemaViewTest, SchemaViewInitTimeTimestamp) {
ARROW_EXPECT_OK(ExportType(*timestamp(TimeUnit::NANO, "America/Halifax"), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_TIMESTAMP);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INT64);
EXPECT_EQ(schema_view.time_unit, NANOARROW_TIME_UNIT_NANO);
@@ -450,9 +391,6 @@ TEST(SchemaViewTest, SchemaViewInitTimeDuration) {
ARROW_EXPECT_OK(ExportType(*duration(TimeUnit::SECOND), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_DURATION);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INT32);
EXPECT_EQ(schema_view.time_unit, NANOARROW_TIME_UNIT_SECOND);
@@ -460,9 +398,6 @@ TEST(SchemaViewTest, SchemaViewInitTimeDuration) {
ARROW_EXPECT_OK(ExportType(*duration(TimeUnit::MILLI), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_DURATION);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INT32);
EXPECT_EQ(schema_view.time_unit, NANOARROW_TIME_UNIT_MILLI);
@@ -470,9 +405,6 @@ TEST(SchemaViewTest, SchemaViewInitTimeDuration) {
ARROW_EXPECT_OK(ExportType(*duration(TimeUnit::MICRO), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_DURATION);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INT64);
EXPECT_EQ(schema_view.time_unit, NANOARROW_TIME_UNIT_MICRO);
@@ -480,9 +412,6 @@ TEST(SchemaViewTest, SchemaViewInitTimeDuration) {
ARROW_EXPECT_OK(ExportType(*duration(TimeUnit::NANO), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_DURATION);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INT64);
EXPECT_EQ(schema_view.time_unit, NANOARROW_TIME_UNIT_NANO);
@@ -496,24 +425,18 @@ TEST(SchemaViewTest, SchemaViewInitTimeInterval) {
ARROW_EXPECT_OK(ExportType(*month_interval(), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_INTERVAL_MONTHS);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INTERVAL_MONTHS);
schema.release(&schema);
ARROW_EXPECT_OK(ExportType(*day_time_interval(), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_INTERVAL_DAY_TIME);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INTERVAL_DAY_TIME);
schema.release(&schema);
ARROW_EXPECT_OK(ExportType(*month_day_nano_interval(), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_INTERVAL_MONTH_DAY_NANO);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_INTERVAL_MONTH_DAY_NANO);
schema.release(&schema);
@@ -576,9 +499,6 @@ TEST(SchemaViewTest, SchemaViewInitNestedList) {
ARROW_EXPECT_OK(ExportType(*list(int32()), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.offset_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_LIST);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_LIST);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_VALIDITY);
@@ -591,9 +511,6 @@ TEST(SchemaViewTest, SchemaViewInitNestedList) {
ARROW_EXPECT_OK(ExportType(*large_list(int32()), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.offset_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_LARGE_LIST);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_LARGE_LIST);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_VALIDITY);
@@ -606,8 +523,6 @@ TEST(SchemaViewTest, SchemaViewInitNestedList) {
ARROW_EXPECT_OK(ExportType(*fixed_size_list(int32(), 123), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 1);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_FIXED_SIZE_LIST);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_FIXED_SIZE_LIST);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_VALIDITY);
@@ -652,8 +567,6 @@ TEST(SchemaViewTest, SchemaViewInitNestedStruct) {
ARROW_EXPECT_OK(ExportType(*struct_({field("col", int32())}), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 1);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_STRUCT);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_STRUCT);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_VALIDITY);
@@ -703,10 +616,6 @@ TEST(SchemaViewTest, SchemaViewInitNestedMap) {
ARROW_EXPECT_OK(ExportType(*map(int32(), int32()), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 1);
- EXPECT_EQ(schema_view.validity_buffer_id, 0);
- EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_MAP);
- EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_MAP);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_VALIDITY);
EXPECT_EQ(schema_view.layout.buffer_type[1], NANOARROW_BUFFER_TYPE_NONE);
EXPECT_EQ(schema_view.layout.buffer_type[2], NANOARROW_BUFFER_TYPE_NONE);
@@ -762,9 +671,6 @@ TEST(SchemaViewTest, SchemaViewInitNestedUnion) {
ARROW_EXPECT_OK(ExportType(*dense_union({field("col", int32())}), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 2);
- EXPECT_EQ(schema_view.type_id_buffer_id, 0);
- EXPECT_EQ(schema_view.offset_buffer_id, 1);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_DENSE_UNION);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_DENSE_UNION);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_TYPE_ID);
@@ -780,8 +686,6 @@ TEST(SchemaViewTest, SchemaViewInitNestedUnion) {
ARROW_EXPECT_OK(ExportType(*sparse_union({field("col", int32())}), &schema));
EXPECT_EQ(ArrowSchemaViewInit(&schema_view, &schema, &error), NANOARROW_OK);
- EXPECT_EQ(schema_view.n_buffers, 1);
- EXPECT_EQ(schema_view.type_id_buffer_id, 0);
EXPECT_EQ(schema_view.data_type, NANOARROW_TYPE_SPARSE_UNION);
EXPECT_EQ(schema_view.storage_data_type, NANOARROW_TYPE_SPARSE_UNION);
EXPECT_EQ(schema_view.layout.buffer_type[0], NANOARROW_BUFFER_TYPE_TYPE_ID);