Import complex XML from multiple files in MariaDB Some row results are missing and replaced by the last file one. Thats because Nx and Sx column members are not reset when changing file. modified: storage/connect/tabxml.cpp modified: storage/connect/tabxml.h
This commit is contained in:
parent
85f2217cc8
commit
41acc81f4d
@ -813,12 +813,15 @@ bool TDBXML::Initialize(PGLOBAL g)
|
||||
if (Void)
|
||||
return false;
|
||||
|
||||
if (Columns && !Bufdone) {
|
||||
if (Columns) {
|
||||
// Allocate the buffers that will contain node values
|
||||
for (colp = (PXMLCOL)Columns; colp; colp = (PXMLCOL)colp->GetNext())
|
||||
if (!colp->IsSpecial()) // Not a pseudo column
|
||||
if (colp->AllocBuf(g, Mode == MODE_INSERT))
|
||||
return true;
|
||||
if (!colp->IsSpecial()) { // Not a pseudo column
|
||||
if (!Bufdone && colp->AllocBuf(g, Mode == MODE_INSERT))
|
||||
return true;
|
||||
|
||||
colp->Nx = colp->Sx = -1;
|
||||
} // endif Special
|
||||
|
||||
Bufdone = true;
|
||||
} // endif Bufdone
|
||||
|
@ -157,6 +157,7 @@ class DllExport TDBXML : public TDBASE {
|
||||
/* Class XMLCOL: XDB table access method column descriptor. */
|
||||
/***********************************************************************/
|
||||
class XMLCOL : public COLBLK {
|
||||
friend class TDBXML;
|
||||
public:
|
||||
// Constructors
|
||||
XMLCOL(PCOLDEF cdp, PTDB tdbp, PCOL cprec, int i, PCSZ am = "XML");
|
||||
|
Loading…
x
Reference in New Issue
Block a user