summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier Bertrand <bertrandop@gmail.com>2018-06-18 17:54:30 +0200
committerOlivier Bertrand <bertrandop@gmail.com>2018-06-18 17:54:30 +0200
commitc69efab3963703688486287918dda105942d24e7 (patch)
treeca63e948705a73d90ef0af3f802836f7ae25a485
parent0138220ff64be8ec7a530e420ad111d7cc1632e1 (diff)
downloadmariadb-git-c69efab3963703688486287918dda105942d24e7.tar.gz
- Fix MDEV-16167 Cannot insert unsigned values into a VEC table
modified: storage/connect/filamvct.cpp modified: storage/connect/tabvct.cpp _ Typo modified: storage/connect/CMakeLists.txt
-rw-r--r--storage/connect/CMakeLists.txt17
-rwxr-xr-xstorage/connect/filamvct.cpp22
-rw-r--r--storage/connect/tabvct.cpp6
3 files changed, 16 insertions, 29 deletions
diff --git a/storage/connect/CMakeLists.txt b/storage/connect/CMakeLists.txt
index 58d9ab1f1c3..408f6d223a1 100644
--- a/storage/connect/CMakeLists.txt
+++ b/storage/connect/CMakeLists.txt
@@ -346,23 +346,6 @@ IF(WIN32)
DESTINATION ${INSTALL_PLUGINDIR} COMPONENT connect-engine)
ENDIF(WIN32)
-IF(NOT TARGET connect)
- RETURN()
-ENDIF()
-
-# Install some extra files that belong to connect engine
-IF(WIN32)
- # install ha_connect.lib
- GET_TARGET_PROPERTY(CONNECT_LOCATION connect LOCATION)
- STRING(REPLACE "dll" "lib" CONNECT_LIB ${CONNECT_LOCATION})
- IF(CMAKE_CONFIGURATION_TYPES)
- STRING(REPLACE "${CMAKE_CFG_INTDIR}" "\${CMAKE_INSTALL_CONFIG_NAME}"
- CONNECT_LIB ${CONNECT_LIB})
- ENDIF()
- INSTALL(FILES ${CONNECT_LIB}
- DESTINATION ${INSTALL_PLUGINDIR} COMPONENT connect-engine)
-ENDIF(WIN32)
-
IF(CONNECT_WITH_JDBC AND JAVA_FOUND AND JNI_FOUND)
# TODO: Find how to compile and install the java wrapper classes
# Find required libraries and include directories
diff --git a/storage/connect/filamvct.cpp b/storage/connect/filamvct.cpp
index 244acfdc5c8..a660461e9ee 100755
--- a/storage/connect/filamvct.cpp
+++ b/storage/connect/filamvct.cpp
@@ -515,7 +515,8 @@ bool VCTFAM::AllocateBuffer(PGLOBAL g)
for (; cp; cp = (PVCTCOL)cp->Next)
cp->Blk = AllocValBlock(g, NewBlock + Nrec * cp->Deplac,
cp->Buf_Type, Nrec, cp->Format.Length,
- cp->Format.Prec, chk);
+ cp->Format.Prec, chk, true,
+ cp->IsUnsigned());
return InitInsert(g); // Initialize inserting
} else {
@@ -549,7 +550,8 @@ bool VCTFAM::AllocateBuffer(PGLOBAL g)
for (; cp; cp = (PVCTCOL)cp->Next)
if (!cp->IsSpecial()) // Not a pseudo column
cp->Blk = AllocValBlock(g, NULL, cp->Buf_Type, Nrec,
- cp->Format.Length, cp->Format.Prec);
+ cp->Format.Length, cp->Format.Prec,
+ true, true, cp->IsUnsigned());
} //endif mode
@@ -1516,7 +1518,8 @@ bool VCMFAM::AllocateBuffer(PGLOBAL g)
for (cp = (PVCTCOL)Tdbp->GetColumns(); cp; cp = (PVCTCOL)cp->Next)
if (!cp->IsSpecial()) { // Not a pseudo column
cp->Blk = AllocValBlock(g, (void*)1, cp->Buf_Type, Nrec,
- cp->Format.Length, cp->Format.Prec);
+ cp->Format.Length, cp->Format.Prec,
+ true, true, cp->IsUnsigned());
cp->AddStatus(BUF_MAPPED);
} // endif IsSpecial
@@ -2067,7 +2070,7 @@ bool VECFAM::AllocateBuffer(PGLOBAL g)
for (cp = (PVCTCOL)tdbp->Columns; cp; cp = (PVCTCOL)cp->Next)
cp->Blk = AllocValBlock(g, To_Bufs[cp->Index - 1],
cp->Buf_Type, Nrec, cp->Format.Length,
- cp->Format.Prec, chk);
+ cp->Format.Prec, chk, true, cp->IsUnsigned());
return InitInsert(g);
} else {
@@ -2116,7 +2119,8 @@ bool VECFAM::AllocateBuffer(PGLOBAL g)
for (cp = (PVCTCOL)tdbp->Columns; cp; cp = (PVCTCOL)cp->Next)
if (!cp->IsSpecial()) // Not a pseudo column
cp->Blk = AllocValBlock(g, NULL, cp->Buf_Type, Nrec,
- cp->Format.Length, cp->Format.Prec);
+ cp->Format.Length, cp->Format.Prec,
+ true, true, cp->IsUnsigned());
} // endif mode
@@ -2887,7 +2891,8 @@ bool VMPFAM::AllocateBuffer(PGLOBAL g)
for (cp = (PVCTCOL)Tdbp->GetColumns(); cp; cp = (PVCTCOL)cp->Next)
if (!cp->IsSpecial()) { // Not a pseudo column
cp->Blk = AllocValBlock(g, (void*)1, cp->Buf_Type, Nrec,
- cp->Format.Length, cp->Format.Prec);
+ cp->Format.Length, cp->Format.Prec,
+ true, true, cp->IsUnsigned());
cp->AddStatus(BUF_MAPPED);
} // endif IsSpecial
@@ -3669,7 +3674,7 @@ bool BGVFAM::AllocateBuffer(PGLOBAL g)
for (; cp; cp = (PVCTCOL)cp->Next)
cp->Blk = AllocValBlock(g, NewBlock + Nrec * cp->Deplac,
cp->Buf_Type, Nrec, cp->Format.Length,
- cp->Format.Prec, chk);
+ cp->Format.Prec, chk, true, cp->IsUnsigned());
InitInsert(g); // Initialize inserting
@@ -3717,7 +3722,8 @@ bool BGVFAM::AllocateBuffer(PGLOBAL g)
for (; cp; cp = (PVCTCOL)cp->Next)
if (!cp->IsSpecial()) // Not a pseudo column
cp->Blk = AllocValBlock(g, NULL, cp->Buf_Type, Nrec,
- cp->Format.Length, cp->Format.Prec);
+ cp->Format.Length, cp->Format.Prec,
+ true, true, cp->IsUnsigned());
} //endif mode
diff --git a/storage/connect/tabvct.cpp b/storage/connect/tabvct.cpp
index 11b344ef652..40d020202ea 100644
--- a/storage/connect/tabvct.cpp
+++ b/storage/connect/tabvct.cpp
@@ -456,13 +456,11 @@ bool VCTCOL::SetBuffer(PGLOBAL g, PVAL value, bool ok, bool check)
if (tdbp->Txfp->GetAmType() == TYPE_AM_VMP && ok) {
Blk = AllocValBlock(g, (void*)1, Buf_Type, tdbp->Txfp->Nrec,
- Format.Length,
- Format.Prec, check);
+ Format.Length, Format.Prec, check, true, Unsigned);
Status |= BUF_MAPPED; // Will point into mapped file
} else
Blk = AllocValBlock(g, NULL, Buf_Type, tdbp->Txfp->Nrec,
- Format.Length,
- Format.Prec, check);
+ Format.Length, Format.Prec, check, true, Unsigned);
} // endif Mode
return false;