diff options
author | Olivier Bertrand <bertrandop@gmail.com> | 2014-10-21 17:29:51 +0200 |
---|---|---|
committer | Olivier Bertrand <bertrandop@gmail.com> | 2014-10-21 17:29:51 +0200 |
commit | 56e27713213e5b0f7be6b3ac01f06ee26584f38a (patch) | |
tree | 38df18a52a5bdff0df36a5bc0786745091bfe179 /storage/connect/connect.cc | |
parent | c65a9fb4c6a0c7aade6fa4c52641cfec3a88b377 (diff) | |
download | mariadb-git-56e27713213e5b0f7be6b3ac01f06ee26584f38a.tar.gz |
1) Handling string memory allocation with a new STRING class. This is only
the beginning. Defining the STRING class and begining to use it (MYSQL)
2) Change the xtrace, use_tempfile and exact_info connect variables from
GLOBAL to SESSION. Remaining GLOBAL variables have been made readonly.
3) Take care of LEX_STRING variables. The .str should not be regarded as
allways being 0 terminated. This is handled by the Strz functions that
make sure to return 0 terminated strings.
Bug fix:
- When inserting in MYSQL table with special column(s) a query such as:
insert into t2 values(0,4,'new04'),(0,5,'new05');
failed saying: column id (the special column) not found in t2.
It is now accepted but must be counted in values (these 0 are ignored)
- ROWID was returning row numbers based 0. Now it is from base 1.
modified:
storage/connect/array.cpp
storage/connect/blkfil.cpp
storage/connect/colblk.cpp
storage/connect/connect.cc
storage/connect/filamap.cpp
storage/connect/filamdbf.cpp
storage/connect/filamfix.cpp
storage/connect/filamtxt.cpp
storage/connect/filamvct.cpp
storage/connect/filamzip.cpp
storage/connect/filamzip.h
storage/connect/filter.cpp
storage/connect/global.h
storage/connect/ha_connect.cc
storage/connect/ha_connect.h
storage/connect/libdoc.cpp
storage/connect/mycat.cc
storage/connect/myconn.cpp
storage/connect/odbconn.cpp
storage/connect/plgdbutl.cpp
storage/connect/plugutil.c
storage/connect/reldef.cpp
storage/connect/tabcol.cpp
storage/connect/tabdos.cpp
storage/connect/tabfix.cpp
storage/connect/tabfmt.cpp
storage/connect/table.cpp
storage/connect/tabmul.cpp
storage/connect/tabmysql.cpp
storage/connect/tabmysql.h
storage/connect/taboccur.cpp
storage/connect/tabodbc.cpp
storage/connect/tabpivot.cpp
storage/connect/tabsys.cpp
storage/connect/tabtbl.cpp
storage/connect/tabutil.cpp
storage/connect/tabvct.cpp
storage/connect/tabwmi.cpp
storage/connect/tabwmi.h
storage/connect/tabxcl.cpp
storage/connect/tabxml.cpp
storage/connect/user_connect.cc
storage/connect/valblk.cpp
storage/connect/value.cpp
storage/connect/value.h
storage/connect/xindex.cpp
storage/connect/xobject.cpp
storage/connect/xobject.h
storage/connect/xtable.h
Diffstat (limited to 'storage/connect/connect.cc')
-rw-r--r-- | storage/connect/connect.cc | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/storage/connect/connect.cc b/storage/connect/connect.cc index 381e437f9ec..500873ce850 100644 --- a/storage/connect/connect.cc +++ b/storage/connect/connect.cc @@ -49,11 +49,6 @@ #define my_stricmp(a, b) my_strcasecmp(default_charset_info, (a), (b)) /***********************************************************************/ -/* DB static variables. */ -/***********************************************************************/ -extern "C" int trace; - -/***********************************************************************/ /* Routines called internally by semantic routines. */ /***********************************************************************/ void CntEndDB(PGLOBAL); @@ -289,7 +284,7 @@ bool CntOpenTable(PGLOBAL g, PTDB tdbp, MODE mode, char *c1, char *c2, // } else colp= tdbp->ColDB(g, p, 0); - if (!colp) { + if (!colp && !(mode == MODE_INSERT && tdbp->IsSpecial(p))) { sprintf(g->Message, "Column %s not found in %s", p, tdbp->GetName()); goto err; } // endif colp |