Commit graph

64 commits

Author SHA1 Message Date
holyfoot/hf@mysql.com/hfmain.(none)
dc01dba255 Bug #32247 Test reports wrong value of "AUTO_INCREMENT" (on a partitioned InnoDB table).
ha_partition::update_create_info() just calls update_create_info
of a first partition, so only get the autoincrement maximum
of the first partition, so SHOW CREATE TABLE can show
small AUTO_INCREMENT parameters.
Fixed by implementing ha_partition::update_create_info() in a way
other handlers work.
HA_ARCHIVE:stats.auto_increment handling made consistent with other engines
2007-12-06 16:39:42 +04:00
gshchepa/uchum@gleb.loc
3cc449465c ha_archive.cc:
Post-merge fix.
2007-10-28 02:33:18 +05:00
gshchepa/uchum@gleb.loc
5eb3b270d3 Fixed bug #31036: Using order by with archive table crashes server.
1. Memory overrun have been fixed.
2. Server failure on assertion has been fixed.
2007-10-26 21:26:06 +05:00
brian@zim.(none)
17451d503d Fixed locking issues around flushes. 2007-07-12 17:39:07 -07:00
svoj@june.mysql.com
0cb2099c2d Merge mysql.com:/home/svoj/devel/mysql/BUG29250/mysql-5.0-engines
into  mysql.com:/home/svoj/devel/mysql/BUG29250/mysql-5.1-engines
2007-06-28 12:13:57 +05:00
monty@mysql.com/narttu.mysql.fi
088e2395f1 WL#3817: Simplify string / memory area types and make things more consistent (first part)
The following type conversions was done:

- Changed byte to uchar
- Changed gptr to uchar*
- Change my_string to char *
- Change my_size_t to size_t
- Change size_s to size_t

Removed declaration of byte, gptr, my_string, my_size_t and size_s. 

Following function parameter changes was done:
- All string functions in mysys/strings was changed to use size_t
  instead of uint for string lengths.
- All read()/write() functions changed to use size_t (including vio).
- All protocoll functions changed to use size_t instead of uint
- Functions that used a pointer to a string length was changed to use size_t*
- Changed malloc(), free() and related functions from using gptr to use void *
  as this requires fewer casts in the code and is more in line with how the
  standard functions work.
- Added extra length argument to dirname_part() to return the length of the
  created string.
- Changed (at least) following functions to take uchar* as argument:
  - db_dump()
  - my_net_write()
  - net_write_command()
  - net_store_data()
  - DBUG_DUMP()
  - decimal2bin() & bin2decimal()
- Changed my_compress() and my_uncompress() to use size_t. Changed one
  argument to my_uncompress() from a pointer to a value as we only return
  one value (makes function easier to use).
- Changed type of 'pack_data' argument to packfrm() to avoid casts.
- Changed in readfrm() and writefrom(), ha_discover and handler::discover()
  the type for argument 'frmdata' to uchar** to avoid casts.
- Changed most Field functions to use uchar* instead of char* (reduced a lot of
  casts).
- Changed field->val_xxx(xxx, new_ptr) to take const pointers.

Other changes:
- Removed a lot of not needed casts
- Added a few new cast required by other changes
- Added some cast to my_multi_malloc() arguments for safety (as string lengths
  needs to be uint, not size_t).
- Fixed all calls to hash-get-key functions to use size_t*. (Needed to be done
  explicitely as this conflict was often hided by casting the function to
  hash_get_key).
- Changed some buffers to memory regions to uchar* to avoid casts.
- Changed some string lengths from uint to size_t.
- Changed field->ptr to be uchar* instead of char*. This allowed us to
  get rid of a lot of casts.
- Some changes from true -> TRUE, false -> FALSE, unsigned char -> uchar
- Include zlib.h in some files as we needed declaration of crc32()
- Changed MY_FILE_ERROR to be (size_t) -1.
- Changed many variables to hold the result of my_read() / my_write() to be
  size_t. This was needed to properly detect errors (which are
  returned as (size_t) -1).
- Removed some very old VMS code
- Changed packfrm()/unpackfrm() to not be depending on uint size
  (portability fix)
- Removed windows specific code to restore cursor position as this
  causes slowdown on windows and we should not mix read() and pread()
  calls anyway as this is not thread safe. Updated function comment to
  reflect this. Changed function that depended on original behavior of
  my_pwrite() to itself restore the cursor position (one such case).
- Added some missing checking of return value of malloc().
- Changed definition of MOD_PAD_CHAR_TO_FULL_LENGTH to avoid 'long' overflow.
- Changed type of table_def::m_size from my_size_t to ulong to reflect that
  m_size is the number of elements in the array, not a string/memory
  length.
- Moved THD::max_row_length() to table.cc (as it's not depending on THD).
  Inlined max_row_length_blob() into this function.
- More function comments
- Fixed some compiler warnings when compiled without partitions.
- Removed setting of LEX_STRING() arguments in declaration (portability fix).
- Some trivial indentation/variable name changes.
- Some trivial code simplifications:
  - Replaced some calls to alloc_root + memcpy to use
    strmake_root()/strdup_root().
  - Changed some calls from memdup() to strmake() (Safety fix)
  - Simpler loops in client-simple.c
2007-05-10 12:59:39 +03:00
brian@zim.(none)
e661d6eeb6 Making sure thar archive is inited for info AUTO call. 2007-03-26 22:50:08 -07:00
brian@zim.(none)
9e1565e37e Merge piggy:/home/brian/mysql-5.1-arch
into  zim.(none):/home/brian/mysql/pread-archive-5.1
2007-03-26 17:31:52 -07:00
brian@zim.(none)
88719428f5 Centralized init logic for starting a scan. 2007-03-26 17:15:31 -07:00
brian@piggy.tangent.org
414da94c04 Adjusting locks for concurrency issue (not found, but suspect). 2007-03-26 16:45:17 -07:00
brian@zim.(none)
ff9da1f048 New comments, additional init for rebuild options. 2007-03-25 11:38:49 -07:00
brian@zim.(none)
bbe97fa4e3 Added delayed open of file descriptors to cut down on issues surrounding large collections of partitions being open by many threads. 2007-03-23 18:51:56 -07:00
jani@a88-113-38-195.elisa-laajakaista.fi
cd75806b61 Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-5.1
into  a88-113-38-195.elisa-laajakaista.fi:/home/my/bk/mysql-5.1
2007-02-03 00:58:09 +02:00
brian@zim.(none)
acd1201504 Reworked a section of code that caused valgrind errors (and that partitioning was not happy about). 2007-01-31 20:13:17 -08:00
monty@mysql.com/narttu.mysql.fi
410fc81a72 After merge fixes
Removed a lot of compiler warnings
Removed not used variables, functions and labels
Initialize some variables that could be used unitialized (fatal bugs)
%ll -> %l
2007-01-29 01:47:35 +02:00
monty@narttu.mysql.fi
8a80e36ac3 Merge mysql.com:/home/my/mysql-5.0
into  mysql.com:/home/my/mysql-5.1
Merge of 'remove compiler warnings when using -Wshadow'
2007-01-27 03:46:45 +02:00
brian@zim.(none)
08e93132c4 Two things:
1) Two small windows cleanups for Archive.
2) Patch from Calvin for Falcon to be able to have its own I_S loaded. One example added for this, does hello world.
2007-01-26 15:36:39 -08:00
brian@zim.(none)
8820333ec3 For performance reasons we remove the ability in unique indexes on autoincrements to remove the ability to insert key lower then the current autoincrement value. 2007-01-26 14:17:45 -08:00
brian@zim.(none)
6829b2a5a6 This fixes a bug in show create table displaying auto_increment field when it should not.
It also refactors the test case for Archive (removed two bad tests).
2007-01-26 11:15:16 -08:00
brian@zim.(none)
3cca6ad8c1 Fixed a warning. Added the -A option so that the autoincrement could be set outside of the file. 2007-01-26 10:17:53 -08:00
brian@zim.(none)
099c634d62 This patch passes comment to be embedded in ARZ.
Fixes autodiscovery of tables. 
Allows the FRM to be extracted from the ARZ file via archive_reader.
2007-01-24 10:30:06 -08:00
brian@zim.(none)
dee24c66ba 1) New dirty state for files (need this for longterm fast recovery)
2) We now store shortest and longest row information.
3) archive_reader can now check and backup files (even if they are hot)
4) We now record longest and shortest row information for stats.
2007-01-20 17:19:54 -08:00
brian@zim.(none)
834485bc80 Updates to archive_reader. 2007-01-13 19:51:22 -08:00
brian@zim.(none)
e2f4aa82c4 More windows warnings cleanup 2007-01-13 17:19:20 -08:00
brian@zim.(none)
81b8d0868b REAL_PATH was rewritten for DATA DIRECTORY (doesn't get calculated for each table open, and won't be calculted more then once now).
Windows warnings cleanup.

I am still get a weird warning about file descriptors closed multiple times.
2007-01-13 16:16:56 -08:00
brian@zim.(none)
4e8d92e5dd Final cleanup for new archive internal format. All new headers work. 2007-01-12 20:05:55 -08:00
brian@zim.(none)
ab1a97f5ef Merge baker@bk-internal.mysql.com:/home/bk/mysql-5.1-arch
into  zim.(none):/home/brian/mysql/archive-format-5.1
2007-01-11 00:28:22 -08:00
brian@zim.(none)
9879f4363f New azio which keeps meta data in its own header. 2007-01-10 23:53:08 -08:00
kent@kent-amd64.(none)
be15e3bc15 Merge mysql.com:/home/kent/bk/main/mysql-5.0
into  mysql.com:/home/kent/bk/main/mysql-5.1
2006-12-23 20:20:40 +01:00
brian@zim.(none)
f85acb894c This updates archive to use new header information in az files and makes way for combining the meta data file with the AZ file. 2006-12-04 22:01:48 -08:00
holyfoot/hf@deer.(none)
d64142e2e6 Merge bk@192.168.21.1:mysql-5.1-opt
into  mysql.com:/home/hf/work/22634/my51-22634
2006-12-04 20:18:30 +04:00
brian@zim.(none)
4eba36ee3b Fixed problems with original gzio() functions not being able to correctly return lengths of long rows. 2006-12-03 22:09:32 -08:00
brian@zim.(none)
c4a1c72b5e Formailized the row buffer structure, implemented new streaming format. 2006-12-02 00:30:49 -08:00
brian@zim.(none)
8a9c481e0d Varchar hack to clean strings removed. 2006-11-28 18:30:41 -08:00
baker@bk-internal.mysql.com
f175a892ab Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-arch
2006-11-28 22:22:52 +01:00
monty@mysql.com/nosik.monty.fi
0e149b7170 Removed compiler warnings
Ensure that my_size_t is always unsigned (to get predictiable results from system to system)
Removed some %lld, as these are not portable
2006-11-27 18:16:08 +02:00
monty@nosik.monty.fi
89570bf966 Merge mysql.com:/home/my/mysql-5.0
into  mysql.com:/home/my/mysql-5.1
2006-11-22 14:11:36 +02:00
monty@mysql.com/nosik.monty.fi
f6682e2743 Added --debug-info to most clients to detect memory leaks in mysql-test-run
Moved .progress files into the log directory
Moved 'cluster' database tables into the MySQL database, to not have 'cluster' beeing a reserved database name
Fixed bug where mysqld got a core dump when trying to use a table created by MySQL 3.23
Fixed some compiler warnings
Fixed small memory leak in libmysql
Note that this doesn't changeset doesn't include the new mysqldump.c code required to run some tests. This will be added when I merge 5.0 to 5.1
2006-11-21 22:32:58 +02:00
brian@zim.(none)
f0c661f1ac Refactored a number of engines to have correct init/deinit. Added pass support for "data" from plugin to plugin generic init to use memory location. 2006-11-19 18:01:54 -08:00
holyfoot/hf@mysql.com/deer.(none)
f8263518eb bug #22634 (partitioned tables with DATA DIRECTORY option corrupts table)
In fact the problem is inside the ARCHIVE engine.
It stores real datapath inside the ARM file, but doesn't implement
specific ha_archive::rename_table function.
As the ALTER TABLE statement first creates the table with the temporary
name and then renames it to the normal one, we get the temporary name
saved in ARM what leads to "can't open file" error.
Code modified to store only path in the ARM, without filename.
2006-11-16 15:13:48 +04:00
brian@zim.(none)
5649195493 This finished the bzero() on varchar patch I wrote a few months ago. It also completes the data_length() method I added to Fields to determine the length of data for a particular data type. I have many uses for this :) 2006-11-15 17:55:17 -08:00
stewart@willster.(none)
71636edc16 Merge willster.(none):/home/stewart/Documents/MySQL/5.0/bug19914-mk2-merge
into  willster.(none):/home/stewart/Documents/MySQL/5.1/bug19914-mk2-merge
2006-10-18 18:51:39 +10:00
brian@zim.(none)
faff46eefe Added license information display to output of plugins schema, and tagged all plugins with GPL flag. 2006-10-05 00:41:29 -07:00
brian@zim.(none)
46ae2113ba This patch adds handlerton passing to functions. NDB and Innodb still require a global hanlderton in the main code due to the nature of the sql_cache call back function (should be solveable... another patch).
Partitioning now has a flag to allow disabling of engines from being compatible with partitioning. Cleaned up heap naming convention on panic call.
2006-09-30 12:49:46 -07:00
brian@zim.(none)
a756fd36ef This removes the passing of global hton to engine instance. 2006-09-29 17:19:02 -07:00
brian@zim.(none)
f9a02811da Removed Field (this came in as an idea from a previous patch by Serg) 2006-09-26 21:26:04 -07:00
brian@zim.(none)
7194b6d75a This changes the order of the universe, black is now the new white.
In practice this means that handlerton is now created by the server and is passed to the engine. Plugin startups can now also control how plugins are inited (and can optionally pass values). Bit more flexibility to those who want to write plugin interfaces to the database.
2006-09-15 10:28:00 -07:00
acurtis/antony@xiphis.org/ltantony.xiphis.org
38a59efbc9 add 2 placeholder values for config and system variables. 2006-08-30 14:27:29 -07:00
brian@zim.(none)
8deb5beb9c Merge zim.(none):/home/brian/mysql/dep-5.0
into  zim.(none):/home/brian/mysql/dep-5.1
2006-08-14 15:24:29 -07:00
evgen@moonbone.local
79c91f6214 Manually merged 2006-06-18 14:56:35 +04:00