summaryrefslogtreecommitdiff
path: root/sql/uniques.cc
Commit message (Collapse)AuthorAgeFilesLines
* Updated/added copyright headersKent Boortz2011-06-301-2/+5
|\
| * Updated/added copyright headersKent Boortz2011-06-301-2/+3
| |
| |
| \
*-. \ Merge from 5.0-bugteamStaale Smedseng2009-06-171-2/+2
|\ \ \ | | |/
| | * Bug #43414 Parenthesis (and other) warnings compiling MySQL Staale Smedseng2009-06-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | with gcc 4.3.2 Compiling MySQL with gcc 4.3.2 and later produces a number of warnings, many of which are new with the recent compiler versions. This bug will be resolved in more than one patch to limit the size of changesets. This is the second patch, fixing more of the warnings.
| * | Bug #43414 Parenthesis (and other) warnings compiling MySQL Staale Smedseng2009-06-101-2/+2
| |/ | | | | | | | | | | | | | | | | | | | | with gcc 4.3.2 Compiling MySQL with gcc 4.3.2 and later produces a number of warnings, many of which are new with the recent compiler versions. This bug will be resolved in more than one patch to limit the size of changesets. This is the second patch, fixing more of the warnings.
* | Bug#29125 Windows Server X64: so many compiler warningsIgnacio Galarza2009-02-131-1/+1
|\ \ | |/ | | | | | | | | - Remove bothersome warning messages. This change focuses on the warnings that are covered by the ignore file: support-files/compiler_warnings.supp. - Strings are guaranteed to be max uint in length
| * Bug#29125 Windows Server X64: so many compiler warningsIgnacio Galarza2009-02-101-1/+1
| | | | | | | | | | - Remove bothersome warning messages. This change focuses on the warnings that are covered by the ignore file: support-files/compiler_warnings.supp. - Strings are guaranteed to be max uint in length
* | Merge magare.gmz:/home/kgeorge/mysql/work/mysql-5.0-optgkodinov/kgeorge@magare.gmz2007-07-041-7/+6
|\ \ | |/ | | | | into magare.gmz:/home/kgeorge/mysql/work/merge-5.1-opt
| * Fixed bug #25798.igor@olga.mysql.com2007-07-011-7/+6
| | | | | | | | | | | | | | | | | | | | | | This bug may manifest itself not only with the queries for which the index-merge access method is chosen. It also may display itself for queries with DISTINCT. The bug was in how the Unique::get method used the merge_buffers function. To compare elements in the the queue employed by merge_buffers() it must use the buffpek_compare function rather than the function for binary comparison.
* | WL#3817: Simplify string / memory area types and make things more consistent ↵monty@mysql.com/narttu.mysql.fi2007-05-101-10/+9
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (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
* Many files:kent@mysql.com/kent-amd64.(none)2006-12-231-2/+1
| | | | Changed header to GPL version 2 only
* Fixed compiler warningsmonty@mysql.com/narttu.mysql.fi2006-11-301-2/+2
| | | | Don't assert if my_thread_end() is called twice (common case)
* Fixed portability issue in my_thr_init.c (was added in my last push)monty@mysql.com/narttu.mysql.fi2006-11-301-16/+22
| | | | | | | | | | Fixed compiler warnings (detected by VC++): - Removed not used variables - Added casts - Fixed wrong assignments to bool - Fixed wrong calls with bool arguments - Added missing argument to store(longlong), which caused wrong store method to be called.
* Increased heap max length to > 4G for 64 bit machines monty@mysql.com/nosik.monty.fi2006-11-281-2/+2
| | | | Initialize key_part->type on open. This caused key_copy() to fail for bit_fields. (key_copy is used in HANDLER and opt_range)
* many warnings (practically safe but annoying) correctedserg@serg.mylan2006-01-031-61/+61
|
* Code cleanups during code reviewsmonty@mysql.com2005-06-011-1/+1
| | | | | Ensure we get error if INSERT IGNORE ... SELECT fails Fixed wrong key_part->key_length usage in index_merge
* Fixed bug in replacation for not x86 platformsmonty@mysql.com2003-12-211-13/+12
| | | | Portability fixes
* Merge mysql.com:/home/psergey/mysql-5.0-latest-pullsergefp@mysql.com2003-12-201-2/+234
|\ | | | | | | into mysql.com:/dbdata/psergey/mysql-5.0-imerge-unique
| * Merge 4.1 to 5.0.pem@mysql.com2003-12-191-1/+1
| |\
| | * Merge with 4.0.17monty@mysql.com2003-12-171-5/+11
| | |\
| | | * Fix for bug #1980sergefp@mysql.com2003-12-021-4/+10
| | | |
| * | | Implementation of SUM(DISTINCT), tests caseskonstantin@oak.local2003-12-191-1/+233
| | | |
* | | | Numerous small fixes to index_merge read time estimates codesergefp@mysql.com2003-12-201-64/+114
| | | |
* | | | Post-merge fixes and code cleanupsergefp@mysql.com2003-12-181-11/+23
| | | |
* | | | Precise read time estimates for index_merge/Uniquesergefp@mysql.com2003-12-181-0/+182
|/ / /
* | | Fix for bug #1980sergefp@mysql.com2003-12-021-4/+10
|/ /
* | Fix for bug #1820sergefp@mysql.com2003-11-181-1/+2
| |
* | Merge with 4.0.14monty@mashka.mysql.fi2003-08-111-3/+3
|\ \ | |/
| * Fixed memory allocation in Unique to not allocate too much memorymonty@mashka.mysql.fi2003-06-261-3/+3
| |
| * New multi-table-update codemonty@mashka.mysql.fi2002-11-291-1/+2
| | | | | | | | | | | | | | New (simpler) internal timestamp handling. More debuging to heap tables. Small cleanups to multi-table-delete false -> 0 and true -> 1 (We should use TRUE and FALSE)
* | Many files:igor@hundin.mysql.fi2003-04-241-5/+5
| | | | | | | | | | | | Added the MAX_LENGTH_FOR_SORT_DATA option filesort.cc: Added the MAX_LENGTH_FOR_SORT_DATA option
* | Fixes and code cleanups after merge with 4.0.3monty@mashka.mysql.fi2002-10-021-1/+2
|/ | | | | | | | | | | | | | | Warning handling and initial prepared statement handling (last not complete yet) Changed a lot of functions that returned 0/1 to my_bool type. GRANT handling now uses read/write locks instead of mutex Change basic net functions to use THD instead of NET (needed for 4.1 protocol) Use my_sprintf instead of sprintf() + strlen() Added alloc_query() to be able to chare query initialization code with prepared statements. Cleanup handling of SHOW COUNT(*) WARNINGS and SELECT LAST_INSERT_ID() Note that the following test fails (will be fixed ASAP): sub_select, union, rpl_rotate_logs and rpl_mystery22
* New SET syntax & system variables.monty@mashka.mysql.fi2002-07-231-1/+1
| | | | | | | | | | | | | Made a some new buffers thread specific and changeable. Resize of key_buffer. AUTO_COMMIT -> AUTOCOMMIT Fixed mutex bug in DROP DATABASE Fixed bug when using auto_increment as second part of a key where first part could include NULL. Split handler->extra() to extra() and extra_opt() to be able to support thread specific buffers. Don't write message to error log when slave reconnects becasue of timeout. Fixed possible update problem when using DELETE/UPDATE on small tables (In some cases we used index even if table scanning would be better) A lot of minior code cleanups
* init_dynamic_array MyODBC compatibility fixserg@serg.mysql.com2002-04-281-1/+1
|
* Update copyrightmonty@hundin.mysql.fi2001-12-061-2/+2
| | | | Fixed memory leak on shutdown (Affects the embedded version & MyODBC)
* Portability fixes.monty@hundin.mysql.fi2001-10-031-14/+13
|
* Portability fixesmonty@hundin.mysql.fi2001-09-151-1/+2
|
* Redefinition of myisam_bulk_insert_tree_sizemonty@tik.mysql.fi2001-07-101-0/+2
| | | | | | | | Removed new error message Fixed test case for varbinary Threads are again killable in "merge_buffers" Cleanup of sql_repl.cc SHOW OPEN TABLES now works when no tables are opened
* mergedserg@serg.mysql.com2001-07-021-20/+24
|\
| * Fixed multi-table-deletemonty@hundin.mysql.fi2001-06-151-13/+12
| | | | | | | | Optimize fixed length MyISAM rows to use pread/pwrite.
| * Enhancing both multi-table delete and division of LEXSinisa@sinisa.nasamreza.org2001-06-071-8/+5
| |
| * These are actually two changesets. One for splitting LEX in two and Sinisa@sinisa.nasamreza.org2001-06-031-7/+15
| | | | | | | | the other for multi-table delete
* | memory-limited treeserg@serg.mysql.com2001-07-021-1/+1
|/ | | | bulk inserts optimization: caching keys in binary tree
* Added Unique class to be used for duplicate removal in multi-table delete.monty@donna.mysql.fi2001-05-231-0/+160