~maria-captains/maria/10.0

« back to all changes in this revision

Viewing changes to storage/connect/valblk.h

  • Committer: Olivier Bertrand
  • Date: 2014-02-03 15:14:13 UTC
  • mto: This revision was merged to the branch mainline in revision 3984.
  • Revision ID: bertrandop@gmail.com-20140203151413-ps3oglvhb4lksxxy
This is a major update of CONNECT that goes from version 1.1 to 1.2
===================================================================
- Implement a first support of the ALTER TABLE command. This fixes MDEV-5440
  but does much more than only that. See the details of how ALTER is supported
  in the new documentation and also in MDEV-5440 comment.
  This is done principally by implementing for CONNECT the virtual function
  check_if_supported_inplace_alter.
modified:
  storage/connect/connect.cc
  storage/connect/global.h
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h
  storage/connect/mysql-test/connect/r/bin.result
  storage/connect/mysql-test/connect/r/csv.result
  storage/connect/mysql-test/connect/r/dbf.result
  storage/connect/mysql-test/connect/r/dir.result
  storage/connect/mysql-test/connect/r/fix.result
  storage/connect/mysql-test/connect/r/index.result
  storage/connect/mysql-test/connect/r/ini.result
  storage/connect/mysql-test/connect/r/occur.result
  storage/connect/mysql-test/connect/r/pivot.result
  storage/connect/mysql-test/connect/r/vec.result
  storage/connect/mysql-test/connect/t/dbf.test
  storage/connect/plugutil.c
  storage/connect/user_connect.cc

- Fixes the tabname/table_name issue for XML tables. Implement
  multiple files XML tables.
modified:
  storage/connect/tabxml.cpp
  storage/connect/tabxml.h

- Set to varchar(256) the fields of catalog tables stored
  as STRBLK's (had length 0 --> CHAR(1))
  Add the GetCharString function to the VALBLK class
modified:
  storage/connect/ha_connect.cc
  storage/connect/valblk.cpp
  storage/connect/valblk.h
  storage/connect/value.cpp

- Translate CONNECT error messages to system_charset
  to avoid truncation on not ASCII characters.
modified:
  storage/connect/ha_connect.cc

- Update version number
modified:
  storage/connect/ha_connect.cc
  storage/connect/mysql-test/connect/r/xml.result

- Move the TDBASE::data_charset body from xtable.h to table.cpp.
  (dont' remember why)
modified:
  storage/connect/table.cpp
  storage/connect/xtable.h

- Other modifications are to enhance the support of OEM tables.
  In particular, they can now provide column definition in dicovery.
modified:
  storage/connect/colblk.h
  storage/connect/global.h
  storage/connect/ha_connect.cc
  storage/connect/mycat.cc
  storage/connect/plgcnx.h
  storage/connect/plgdbsem.h
  storage/connect/xtable.h

- Or to add or modify tracing.
modified:
  storage/connect/filamtxt.cpp
  storage/connect/ha_connect.cc
  storage/connect/plgdbutl.cpp
  storage/connect/tabfix.cpp
  storage/connect/tabmysql.cpp

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/*************** Valblk H Declares Source Code File (.H) ***************/
2
 
/*  Name: VALBLK.H    Version 2.0                                      */
 
2
/*  Name: VALBLK.H    Version 2.1                                      */
3
3
/*                                                                     */
4
 
/*  (C) Copyright to the author Olivier BERTRAND          2005-2013    */
 
4
/*  (C) Copyright to the author Olivier BERTRAND          2005-2014    */
5
5
/*                                                                     */
6
6
/*  This file contains the VALBLK and derived classes declares.        */
7
7
/***********************************************************************/
58
58
  virtual longlong GetBigintValue(int n) = 0;
59
59
  virtual ulonglong GetUBigintValue(int n) = 0;
60
60
  virtual double GetFloatValue(int n) = 0;
 
61
  virtual char  *GetCharString(char *p, int n) = 0;
61
62
  virtual void   ReAlloc(void *mp, int n) {Blkp = mp; Nval = n;}
62
63
  virtual void   Reset(int n) = 0;
63
64
  virtual bool   SetFormat(PGLOBAL g, PSZ fmt, int len, int year = 0);
133
134
  virtual longlong GetBigintValue(int n) {return (longlong)Typp[n];}
134
135
  virtual ulonglong GetUBigintValue(int n) {return (ulonglong)Typp[n];}
135
136
  virtual double GetFloatValue(int n) {return (double)Typp[n];}
 
137
  virtual char  *GetCharString(char *p, int n);
136
138
  virtual void   Reset(int n) {Typp[n] = 0;}
137
139
 
138
140
  // Methods
199
201
  virtual longlong GetBigintValue(int n);
200
202
  virtual ulonglong GetUBigintValue(int n);
201
203
  virtual double GetFloatValue(int n);
 
204
  virtual char  *GetCharString(char *p, int n);
202
205
  virtual void   Reset(int n);
203
206
  virtual void   SetPrec(int p) {Ci = (p != 0);}
204
207
  virtual bool   IsCi(void) {return Ci;}
252
255
  virtual longlong GetBigintValue(int n);
253
256
  virtual ulonglong GetUBigintValue(int n);
254
257
  virtual double GetFloatValue(int n) {return atof(Strp[n]);}
 
258
  virtual char  *GetCharString(char *p, int n) {return Strp[n];}
255
259
  virtual void   Reset(int n) {Strp[n] = NULL;}
256
260
 
257
261
  // Methods
286
290
  DATBLK(void *mp, int size);
287
291
 
288
292
  // Implementation
289
 
  virtual bool SetFormat(PGLOBAL g, PSZ fmt, int len, int year = 0);
 
293
  virtual bool  SetFormat(PGLOBAL g, PSZ fmt, int len, int year = 0);
 
294
  virtual char *GetCharString(char *p, int n);
290
295
 
291
296
  // Methods
292
 
  virtual void SetValue(PSZ sp, int n);
 
297
  virtual void  SetValue(PSZ sp, int n);
293
298
 
294
299
 protected:
295
300
  // Members