1
0
mirror of https://github.com/MariaDB/server.git synced 2025-11-27 05:41:41 +03:00

Fix info cardinality for catalog tables.

Was returning 0, which caused an assert error when retreiving records.
  modified:   storage/connect/connect.cc
  modified:   storage/connect/xtable.h

Add the create and insert possibility to zipped tables
  modified:   storage/connect/domdoc.cpp
  modified:   storage/connect/domdoc.h
  modified:   storage/connect/filamzip.cpp
  modified:   storage/connect/filamzip.h
  modified:   storage/connect/ha_connect.c
  modified:   storage/connect/plgdbutl.cpp
  modified:   storage/connect/plgxml.cpp
  modified:   storage/connect/plgxml.h
  modified:   storage/connect/tabdos.cpp
  modified:   storage/connect/tabdos.h
  modified:   storage/connect/tabfmt.cpp
  modified:   storage/connect/tabfmt.h
  modified:   storage/connect/tabjson.cpp
  modified:   storage/connect/tabxml.cpp
  modified:   storage/connect/tabzip.cpp
  modified:   storage/connect/tabzip.h

Fix skipping header record for mulentries zipped CSV tabled
  modified:   storage/connect/filamap.cpp

Accept M (memo) column type for DBF tables
Fix miscalculation of Blksize when LRECL was replaced by DBF LRECL
  modified:   storage/connect/filamdbf.cpp

Change the names of GZ compress classes (not to be confused with ZIP)
  modified:   storage/connect/filamgz.cpp
  modified:   storage/connect/filamgz.h

add trace in PlugSetPath
  modified:   storage/connect/plugutil.c

Add tests fir ZIP
  added:      storage/connect/mysql-test/connect/r/xml_zip.result
  added:      storage/connect/mysql-test/connect/r/zip.result
  added:      storage/connect/mysql-test/connect/std_data/bios.json
  added:      storage/connect/mysql-test/connect/std_data/xsample2.xml
  added:      storage/connect/mysql-test/connect/t/have_zip.inc
  added:      storage/connect/mysql-test/connect/t/xml_zip.test
  added:      storage/connect/mysql-test/connect/t/zip.test
This commit is contained in:
Olivier Bertrand
2017-01-16 15:13:40 +01:00
parent df21d45fdd
commit 707cd98592
31 changed files with 1731 additions and 178 deletions

View File

@@ -129,7 +129,7 @@ PQRYRES JSONColumns(PGLOBAL g, char *db, PTOS topt, bool info)
if (tdp->Pretty == 2) {
if (tdp->Zipped) {
#if defined(ZIP_SUPPORT)
tjsp = new(g) TDBJSON(tdp, new(g) ZIPFAM(tdp));
tjsp = new(g) TDBJSON(tdp, new(g) UNZFAM(tdp));
#else // !ZIP_SUPPORT
sprintf(g->Message, MSG(NO_FEAT_SUPPORT), "ZIP");
return NULL;
@@ -151,7 +151,7 @@ PQRYRES JSONColumns(PGLOBAL g, char *db, PTOS topt, bool info)
if (tdp->Zipped) {
#if defined(ZIP_SUPPORT)
tjnp = new(g)TDBJSN(tdp, new(g)ZIPFAM(tdp));
tjnp = new(g)TDBJSN(tdp, new(g)UNZFAM(tdp));
#else // !ZIP_SUPPORT
sprintf(g->Message, MSG(NO_FEAT_SUPPORT), "ZIP");
return NULL;
@@ -441,7 +441,14 @@ PTDB JSONDEF::GetTable(PGLOBAL g, MODE m)
if (Zipped) {
#if defined(ZIP_SUPPORT)
txfp = new(g) ZIPFAM(this);
if (m == MODE_READ || m == MODE_UPDATE) {
txfp = new(g) UNZFAM(this);
} else if (m == MODE_INSERT) {
txfp = new(g) ZIPFAM(this);
} else {
strcpy(g->Message, "UPDATE/DELETE not supported for ZIP");
return NULL;
} // endif's m
#else // !ZIP_SUPPORT
sprintf(g->Message, MSG(NO_FEAT_SUPPORT), "ZIP");
return NULL;
@@ -479,7 +486,15 @@ PTDB JSONDEF::GetTable(PGLOBAL g, MODE m)
} else {
if (Zipped) {
#if defined(ZIP_SUPPORT)
txfp = new(g)ZIPFAM(this);
if (m == MODE_READ || m == MODE_UPDATE) {
txfp = new(g) UNZFAM(this);
} else if (m == MODE_INSERT) {
strcpy(g->Message, "INSERT supported only for zipped JSON when pretty=0");
return NULL;
} else {
strcpy(g->Message, "UPDATE/DELETE not supported for ZIP");
return NULL;
} // endif's m
#else // !ZIP_SUPPORT
sprintf(g->Message, MSG(NO_FEAT_SUPPORT), "ZIP");
return NULL;