Skip to content

Commit 89e4974

Browse files
committed
Define MYSQL_TYPE_VECTOR in the C-ext when compiling with MySQL C API older than 9.0
Change-Id: I88d1d7cad47266577ebbe000564b6c6e7a10f610
1 parent 4459f87 commit 89e4974

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

mysql-connector-python/src/mysql_capi.c

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,11 @@ MySQL_connected(MySQL *self);
7373
#define VERSION_OFFSET_MAJOR 10000
7474
#define VERSION_OFFSET_MINOR 100
7575

76+
// Making sure MYSQL_TYPE_VECTOR is always defined
77+
#if MYSQL_VERSION_ID < 90000
78+
#define MYSQL_TYPE_VECTOR 242
79+
#endif
80+
7681
// Python FIDO messages callback
7782
static PyObject *fido_callback = NULL;
7883

@@ -2782,11 +2787,7 @@ MySQL_fetch_row(MySQL *self)
27822787
else if (field_type == MYSQL_TYPE_BIT) {
27832788
PyTuple_SET_ITEM(result_row, i, mytopy_bit(row[i], field_lengths[i]));
27842789
}
2785-
#if MYSQL_VERSION_ID >= 90000
2786-
else if (field_type == MYSQL_TYPE_BLOB || field_type == MYSQL_TYPE_VECTOR)
2787-
#else
2788-
else if (field_type == MYSQL_TYPE_BLOB)
2789-
#endif
2790+
else if (field_type == MYSQL_TYPE_BLOB || field_type == MYSQL_TYPE_VECTOR)
27902791
{
27912792
if ((field_flags & BLOB_FLAG) &&
27922793
(field_flags & BINARY_FLAG) && field_charsetnr == 63) {
@@ -3715,7 +3716,7 @@ MySQLPrepStmt_fetch_row(MySQLPrepStmt *self)
37153716
break;
37163717
/* MYSQL_TYPE_CHAR, MYSQL_TYPE_VARCHAR, MYSQL_TYPE_STRING, */
37173718
/* MYSQL_TYPE_VAR_STRING, MYSQL_TYPE_GEOMETRY, MYSQL_TYPE_BLOB */
3718-
/* MYSQL_TYPE_ENUM, MYSQL_TYPE_SET or MYSQL_TYPE_BIT */
3719+
/* MYSQL_TYPE_ENUM, MYSQL_TYPE_SET, MYSQL_TYPE_VECTOR or MYSQL_TYPE_BIT */
37193720
default:
37203721
if (field_flags & SET_FLAG) { /* MYSQL_TYPE_SET */
37213722
char *rest = NULL;

0 commit comments

Comments
 (0)