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

54 Commits

Author SHA1 Message Date
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
anozdrin/alik@alik.opbmk
f97d10d236 Patch for IM in scope of working on BUG#24415: Instance manager test
im_daemon_life_cycle fails randomly.

1. Move IM-angel functionality into a separate file, create Angel class.
2. Be more verbose;
3. Fix typo in FLUSH INSTANCES implementation;
4. Polishing.
2007-02-18 15:45:28 +03:00
malff/marcsql@weblab.(none)
0055056c91 Merge weblab.(none):/home/marcsql/TREE/mysql-5.1-base
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-merge
2007-01-02 14:18:13 -07: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
kent@mysql.com/kent-amd64.(none)
226a5c833f Many files:
Changed header to GPL version 2 only
2006-12-23 20:17:15 +01:00
anozdrin/alik@booka.
b534ca4bc0 Fix for the following bugs:
- BUG#22306: STOP INSTANCE can not be applied for instances in Crashed,
    Failed and Abandoned;
  - BUG#23476: DROP INSTANCE does not work
  - BUG#23215: STOP INSTANCE takes too much time

BUG#22306:
The problem was that STOP INSTANCE checked that mysqld is up and running.
If it was not so, STOP INSTANCE reported an error. Now, STOP INSTANCE
reports an error if the instance has been started (mysqld can be down).

BUG#23476:
The problem was that DROP INSTANCE tried to stop inactive instance. The fix is
trivial.

BUG#23215:
The problem was that locks were not acquired properly, so the
instance-monitoring thread could not acquire the mutex, holded by the
query-processing thread.

The fix is to simplify locking scheme by moving instance-related information to
Instance-class out of Guardian-class. This allows to get rid of storing a
separate list of Instance-information in Guardian and keeping it synchronized
with the original list in Instance_map.
2006-11-30 12:23:55 +03:00
anozdrin/alik@booka.
3e042c6d7b Polishing:
- change some return types from int to bool;
  - add [ERROR] tag to log_error() output;
  - add [INFO] tag to log_info() output;
  - change log messages to be more consistent.
2006-11-21 17:47:14 +03:00
kostja@bodhi.local
2fc4562d63 Port cleanups, trivial refactoring and code rearrangements from
Alik's patch for BUG#22306: STOP INSTANCE can not be applied for 
instances in Crashed, Failed and Abandoned" to ease review process.
Evaluate global variable linuxthreads before starting threads to avoid
a race.
2006-11-18 01:34:44 +03:00
kostja@bodhi.local
33bbdf5c25 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  bodhi.local:/opt/local/work/m51lamp
2006-11-17 18:19:49 +03:00
anozdrin/alik@alik.
c6cd61a5cc Polishing: generate more warnings and make code warnings-free. 2006-11-17 16:45:29 +03:00
kostja@bodhi.local
7278f45bfd Replace the approach using Foo_thread_args + Foo_thread and manually
spawned threads with a reusable class Thread.

This is the second idea implemented in the Alik's patch for
BUG#22306: STOP INSTANCE can not be applied for instances in Crashed,
Failed and Abandoned.
Commiting separately to ease review process.
2006-11-17 16:11:04 +03:00
kostja@bodhi.local
2f69dfb28f Cleanup: manually port the polishing parts from Alik's changeset for
BUG#22306: STOP INSTANCE can not be applied for instances in Crashed,
Failed and Abandoned
2006-11-16 23:36:20 +03:00
monty@mysql.com/nosik.monty.fi
ca99516cc7 Fixed a lot of compiler warnings (Mainly in mysqld and instance manager)
Fixed some possible fatal wrong arguments to printf() style functions
Initialized some not initialized variables
Fixed bug in stored procedure and continue handlers
(Fixes Bug#22150)
2006-11-01 19:41:09 +02:00
anozdrin@mysql.com
7ecfadbcf2 Polishing: C_STRING_WITH_SIZE() was renamed to C_STRING_WITH_LEN(). 2006-06-19 15:17:15 +04:00
anozdrin@mysql.com
b551722333 Fix compilation problems on Windows and SUN Solaris. 2006-05-19 04:51:23 +04:00
anozdrin@mysql.com
c1113af15c This is an implementation of two WL items:
- WL#3158: IM: Instance configuration extensions;
  - WL#3159: IM: --bootstrap and --start-default-instance modes

The following new statements have been added:
  - CREATE INSTANCE;
  - DROP INSTANCE;

The behaviour of the following statements have been changed:
  - SET;
  - UNSET;
  - FLUSH INSTANCES;
  - SHOW INSTANCES;
  - SHOW INSTANCE OPTIONS;
2006-05-18 18:57:50 +04:00
petr@mysql.com
2e01c8b0d0 Merge mysql.com:/home/cps/mysql/devel/5.0-mike
into  mysql.com:/home/cps/mysql/devel/5.1-merge
2006-02-10 21:03:49 +03:00
petr@mysql.com
8488498545 IM changes by GUI team: add a version_no column to the
SHOW INSTANCE STATUS output
2006-02-10 03:35:07 +03:00
petr@mysql.com
1c7bc08537 a bunch of IM fixes from the GUI team 2006-02-10 02:15:55 +03:00
petr@mysql.com
6168d0d52c fix warnings 2005-09-20 03:14:07 +04:00
konstantin@mysql.com
344144ad14 Cleanup the instance manager code. 2005-08-29 23:29:35 +04:00
petr@mysql.com
a64f264e4b IM port fixes: fix crash on startup, add more error checking, get rid of unnecessary code. 2005-08-05 14:35:30 +04:00
reggie@fedora.(none)
72c0a021e9 Merge rburnett@bk-internal.mysql.com:/home/bk/mysql-5.0
into  fedora.(none):/home/reggie/bk/im_patch
2005-08-04 09:33:44 -05:00
reggie@fedora.(none)
8cb3bd41c8 alot of formatting changes that came out of JimW's review 2005-08-03 16:20:27 -05:00
petr@mysql.com
9644bc3e2b Post-review fixes for WL#2713 "Change IM behaviour so, that it only reads and alters one config file only." 2005-07-21 22:40:53 +04:00
petr@mysql.com
b9fcdfbb0f WL #2713 Change IM behaviour so, that it only reads and alters one config file only.
Implemented on brian's request.
2005-07-21 14:21:23 +04:00
reggie@fedora.(none)
f3de5d6b69 initial import of Windows port of IM. 2005-07-20 10:55:40 -05:00
petr@mysql.com
a9d376b42b rename: store_to_string -> store_to_protocol_packet 2005-06-15 01:06:25 +04:00
petr@mysql.com
489598716a Fix for Bug #11200 show instance options returns garbage instead of log options 2005-06-14 17:13:42 +04:00
petr@mysql.com
65d79b9d83 post-review fixes 2005-06-07 15:47:02 +04:00
petr@mysql.com
c7581758ec fix IM to display version string in "show instance status" (Bug #10229) 2005-06-01 04:40:22 +04:00
jimw@mysql.com
6757a04e4c Merge mysql.com:/home/jimw/my/mysql-5.0-build
into mysql.com:/home/jimw/my/mysql-5.0-clean
2005-05-18 17:13:31 -07:00
jani@a193-229-222-105.elisa-laajakaista.fi
c63ad3b549 New file default_modify.c. Fixed a typo on mysqld.cc
Changed name of function my_correct_default_file to
modify_defaults_file. Improved function and fixed some
bugs in it.
2005-05-18 20:10:17 +03:00
petr@mysql.com
67364e99af fix comments 2005-05-18 15:28:38 +04:00
kent@mysql.com
72ce7299a9 commands.cc, parse.h, parse.cc, instance_options.cc:
Prefix enum symbols LOG_* with IM_, not to clash with system headers
2005-05-18 12:34:38 +02:00
petr@mysql.com
180d0ed620 post-review fixes 2005-05-16 01:54:02 +04:00
petr@mysql.com
0584756fb4 merge 2005-04-21 01:27:03 +04:00
petr@mysql.com
48b3332b8a Fix for bug #9808 2005-04-11 17:14:40 +04:00
petr@mysql.com
83f9ee0786 WL#2246 "IM: Add ability to change instance options, add server logs handling" ported to the
current version of the IM
2005-04-09 14:28:39 +04:00
petr@mysql.com
b072eaa3da Fix for AIX compilation failure: sacred knowledge of my_global.h nature (it should be
included before any other include) was hidden from me.
2005-03-22 02:04:14 +03:00
petr@mysql.com
912dfdfa34 post-review fixes + cleanup + some minor fixes 2005-02-27 18:41:34 +03:00
petr@mysql.com
59d8e51150 some more cleanups and fixes 2005-02-15 04:38:33 +03:00
petr@mysql.com
bb8e5b6227 various fixes 2005-02-13 15:13:33 +03:00
petr@mysql.com
6b50b5b087 Post-review fixes + some bugs fixed + several minor features 2005-02-11 14:21:59 +03:00
petr@mysql.com
84d5b3a332 more fixes for IM to substitude mysqld_safe in startup scripts 2005-01-31 23:54:08 +03:00
petr@mysql.com
ee08b749dd IM mostly fixed according to Brian's directions. Will need to do some additional option handling and cleanups 2005-01-25 13:54:56 +03:00
petr@mysql.com
fdb3b0b6c1 cleanup 2004-12-29 00:13:32 +03:00
petr@mysql.com
d40e0935ce fix autobuild failures 2004-12-12 20:59:15 +03:00
petr@mysql.com
d2115d133d Some minor IM fixes 2004-11-15 14:53:30 +03:00
petr@mysql.com
d3dc041dd1 post-review fixes 2004-11-02 10:11:03 +03:00