Commit graph

22148 commits

Author SHA1 Message Date
unknown
de1d7c23f6 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  chilla.local:/home/mydev/mysql-4.1--main
2007-03-25 15:11:16 +02:00
unknown
a1e7490f41 nptl: typo fixed. sigaddset restored 2007-03-24 14:03:27 +02:00
unknown
d89329c685 reverted linuxthreads thr_client_alarm fix (not future-proof)
fixed differently: wake up select_thread with THR_SERVER_ALARM instead


mysys/thr_alarm.c:
  reverted linuxthreads thr_client_alarm fix (not future-proof)
2007-03-23 20:37:20 +02:00
unknown
cc72a835d6 Merge bk-internal:/home/bk/mysql-4.1-build
into  sergbook.mysql.com:/usr/home/serg/Abk/mysql-4.1
2007-03-23 16:05:02 +02:00
unknown
9a4b2e9081 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  sergbook.mysql.com:/usr/home/serg/Abk/mysql-4.1


mysys/thr_alarm.c:
  Auto merged
sql/mysqld.cc:
  Auto merged
2007-03-23 14:57:55 +02:00
unknown
c80ac29ee2 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  sergbook.mysql.com:/usr/home/serg/Abk/mysql-4.1


sql/mysqld.cc:
  merged
2007-03-23 14:47:51 +02:00
unknown
6e1f446ae1 move thr_client_alarm initialization to mysqld.cc
(in thr_alarm.cc it happened too late).


mysys/thr_alarm.c:
  move thr_client_alarm initialization to mysqld.cc
  (here it happened too late)
sql/mysqld.cc:
  move thr_client_alarm initialization to mysqld.cc
  (in thr_alarm.cc it happened too late).
  moved thr_kill_signal initialization to init_signals()
2007-03-23 13:38:42 +02:00
unknown
f9cf31c4df Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug26996
2007-03-23 08:28:21 +01:00
unknown
55f991c24d Merge bk@192.168.21.1:mysql-4.1
into  mysql.com:/home/hf/work/mrg/mysql-4.1-opt
2007-03-22 23:45:37 +04:00
unknown
4b4700f32f .del-fill_func_tables.sh:
Delete: scripts/fill_func_tables.sh
.del-fill_help_tables.sh:
  Delete: scripts/fill_help_tables.sh
.del-internals.texi:
  Delete: Docs/internals.texi


BitKeeper/deleted/.del-internals.texi:
  Delete: Docs/internals.texi
BitKeeper/deleted/.del-fill_func_tables.sh:
  Delete: scripts/fill_func_tables.sh
BitKeeper/deleted/.del-fill_help_tables.sh:
  Delete: scripts/fill_help_tables.sh
2007-03-22 19:43:15 +01:00
unknown
d3125d0a06 Merge mysql.com:/home/kent/bk/tmp/mysql-4.0
into  mysql.com:/home/kent/bk/tmp/mysql-4.1-build


BitKeeper/deleted/.del-net_doc.txt:
  Auto merged
2007-03-22 19:39:23 +01:00
unknown
84536ba9e4 Deleted directories
Docs/Books/
  Docs/MySQL-logos/
Deleted files
  Docs/Tutorial-MySQL-final.txt
  Docs/bk.txt
  Docs/Support/.cvsignore
  Docs/Support/colspec-fix.pl
  Docs/Support/docbook-fixup.pl
  Docs/Support/docbook-prefix.pl
  Docs/Support/docbook-split
  Docs/Support/make-docbook
  Docs/Support/make-makefile
  Docs/Support/test-make-manual
  Docs/Support/test-make-manual-de
  Docs/Support/trivial-makeinfo-4.0c.patch
  Docs/Support/xwf
Deleted file now in internals main text
  Docs/my_sys.txt
Deleted file now in internals svn tree
  Docs/net_doc.txt
Removed obsolete entries
  Docs/.cvsignore
Added note that info is obsolete
  Docs/linuxthreads.txt


BitKeeper/deleted/.del-colspec-fix.pl:
  Delete: Docs/Support/colspec-fix.pl
BitKeeper/deleted/.del-docbook-fixup.pl:
  Delete: Docs/Support/docbook-fixup.pl
BitKeeper/deleted/.del-docbook-prefix.pl:
  Delete: Docs/Support/docbook-prefix.pl
BitKeeper/deleted/.del-docbook-split:
  Delete: Docs/Support/docbook-split
BitKeeper/deleted/.del-make-docbook:
  Delete: Docs/Support/make-docbook
BitKeeper/deleted/.del-make-makefile:
  Delete: Docs/Support/make-makefile
BitKeeper/deleted/.del-test-make-manual-de:
  Delete: Docs/Support/test-make-manual-de
BitKeeper/deleted/.del-test-make-manual:
  Delete: Docs/Support/test-make-manual
BitKeeper/deleted/.del-trivial-makeinfo-4.0c.patch:
  Delete: Docs/Support/trivial-makeinfo-4.0c.patch
BitKeeper/deleted/.del-xwf:
  Delete: Docs/Support/xwf
BitKeeper/deleted/.del-algor.eps~1a57aff065918206:
  Delete: Docs/Books/algor.eps
BitKeeper/deleted/.del-algor.gif:
  Delete: Docs/Books/algor.gif
BitKeeper/deleted/.del-algor.txt:
  Delete: Docs/Books/algor.txt
BitKeeper/deleted/.del-dbi.eps~7b1032f98de7736d:
  Delete: Docs/Books/dbi.eps
BitKeeper/deleted/.del-dbi.gif:
  Delete: Docs/Books/dbi.gif
BitKeeper/deleted/.del-dbi.txt:
  Delete: Docs/Books/dbi.txt
BitKeeper/deleted/.del-dubois.eps~f24e09a7fa420436:
  Delete: Docs/Books/dubois.eps
BitKeeper/deleted/.del-dubois.gif:
  Delete: Docs/Books/dubois.gif
BitKeeper/deleted/.del-dubois.txt:
  Delete: Docs/Books/dubois.txt
BitKeeper/deleted/.del-ecomm.eps~17833026ebd7656:
  Delete: Docs/Books/ecomm.eps
BitKeeper/deleted/.del-ecomm.gif:
  Delete: Docs/Books/ecomm.gif
BitKeeper/deleted/.del-ecomm.txt:
  Delete: Docs/Books/ecomm.txt
BitKeeper/deleted/.del-in_21.eps~8150d06653dab178:
  Delete: Docs/Books/in_21.eps
BitKeeper/deleted/.del-in_21.gif:
  Delete: Docs/Books/in_21.gif
BitKeeper/deleted/.del-in_21.txt:
  Delete: Docs/Books/in_21.txt
BitKeeper/deleted/.del-manual.eps~1c2ebcea50b4840c:
  Delete: Docs/Books/manual.eps
BitKeeper/deleted/.del-manual.gif:
  Delete: Docs/Books/manual.gif
BitKeeper/deleted/.del-manual.txt:
  Delete: Docs/Books/manual.txt
BitKeeper/deleted/.del-msql.eps~f3801b9d166ae4fc:
  Delete: Docs/Books/msql.eps
BitKeeper/deleted/.del-msql.gif:
  Delete: Docs/Books/msql.gif
BitKeeper/deleted/.del-msql.txt:
  Delete: Docs/Books/msql.txt
BitKeeper/deleted/.del-prof.eps~1f54d9a56eb2b908:
  Delete: Docs/Books/prof.eps
BitKeeper/deleted/.del-prof.gif:
  Delete: Docs/Books/prof.gif
BitKeeper/deleted/.del-prof.txt:
  Delete: Docs/Books/prof.txt
BitKeeper/deleted/.del-pthreads.eps~2ca8ff2d1181b2c0:
  Delete: Docs/Books/pthreads.eps
BitKeeper/deleted/.del-pthreads.gif:
  Delete: Docs/Books/pthreads.gif
BitKeeper/deleted/.del-pthreads.txt:
  Delete: Docs/Books/pthreads.txt
BitKeeper/deleted/.del-realmen.eps~cc022325d3cb045:
  Delete: Docs/Books/realmen.eps
BitKeeper/deleted/.del-realmen.gif:
  Delete: Docs/Books/realmen.gif
BitKeeper/deleted/.del-realmen.txt:
  Delete: Docs/Books/realmen.txt
BitKeeper/deleted/.del-sql-99.eps~f85c06de7a016c7d:
  Delete: Docs/Books/sql-99.eps
BitKeeper/deleted/.del-sql-99.gif:
  Delete: Docs/Books/sql-99.gif
BitKeeper/deleted/.del-sql-99.txt:
  Delete: Docs/Books/sql-99.txt
BitKeeper/deleted/.del-mysql-01.gif:
  Delete: Docs/MySQL-logos/mysql-01.gif
BitKeeper/deleted/.del-mysql-02.gif:
  Delete: Docs/MySQL-logos/mysql-02.gif
BitKeeper/deleted/.del-mysql-03.gif:
  Delete: Docs/MySQL-logos/mysql-03.gif
BitKeeper/deleted/.del-mysql-04.gif:
  Delete: Docs/MySQL-logos/mysql-04.gif
BitKeeper/deleted/.del-mysql-05.gif:
  Delete: Docs/MySQL-logos/mysql-05.gif
BitKeeper/deleted/.del-mysql-06.gif:
  Delete: Docs/MySQL-logos/mysql-06.gif
BitKeeper/deleted/.del-mysql-07.gif:
  Delete: Docs/MySQL-logos/mysql-07.gif
BitKeeper/deleted/.del-mysql-08.gif:
  Delete: Docs/MySQL-logos/mysql-08.gif
BitKeeper/deleted/.del-mysql-09.gif:
  Delete: Docs/MySQL-logos/mysql-09.gif
BitKeeper/deleted/.del-mysql-10.gif:
  Delete: Docs/MySQL-logos/mysql-10.gif
BitKeeper/deleted/.del-mysql-11.gif:
  Delete: Docs/MySQL-logos/mysql-11.gif
BitKeeper/deleted/.del-mysql-12.gif:
  Delete: Docs/MySQL-logos/mysql-12.gif
BitKeeper/deleted/.del-mysql-13.gif:
  Delete: Docs/MySQL-logos/mysql-13.gif
BitKeeper/deleted/.del-mysql-14.gif:
  Delete: Docs/MySQL-logos/mysql-14.gif
BitKeeper/deleted/.del-mysql-15.gif:
  Delete: Docs/MySQL-logos/mysql-15.gif
BitKeeper/deleted/.del-mysql-16.gif:
  Delete: Docs/MySQL-logos/mysql-16.gif
BitKeeper/deleted/.del-mysql-17.gif:
  Delete: Docs/MySQL-logos/mysql-17.gif
BitKeeper/deleted/.del-mysql-compatible.jpg:
  Delete: Docs/MySQL-logos/mysql-compatible.jpg
BitKeeper/deleted/.del-mysql_anim-01.gif:
  Delete: Docs/MySQL-logos/mysql_anim-01.gif
BitKeeper/deleted/.del-mysql_anim-02.gif:
  Delete: Docs/MySQL-logos/mysql_anim-02.gif
BitKeeper/deleted/.del-mysql_anim-03.gif:
  Delete: Docs/MySQL-logos/mysql_anim-03.gif
BitKeeper/deleted/.del-mysql_anim-04.gif:
  Delete: Docs/MySQL-logos/mysql_anim-04.gif
BitKeeper/deleted/.del-mysql_anim-05.gif:
  Delete: Docs/MySQL-logos/mysql_anim-05.gif
BitKeeper/deleted/.del-mysql_anim-06.gif:
  Delete: Docs/MySQL-logos/mysql_anim-06.gif
BitKeeper/deleted/.del-Tutorial-MySQL-final.txt:
  Delete: Docs/Tutorial-MySQL-final.txt
BitKeeper/deleted/.del-net_doc.txt:
  Delete: Docs/net_doc.txt
BitKeeper/deleted/.del-my_sys.txt:
  Delete: Docs/my_sys.txt
BitKeeper/deleted/.del-bk.txt:
  Delete: Docs/bk.txt
BitKeeper/deleted/.del-.cvsignore:
  Delete: Docs/Support/.cvsignore
Docs/.cvsignore:
  Removed obsolete entries
Docs/linuxthreads.txt:
  Added note info is obsolete
2007-03-22 19:38:56 +01:00
unknown
50b5064ccd bug #16546 (DATETIME + 0 not always coerced in the same way)
fix for cast( AS DATETIME) + 0 operation.
  I just implemented Item_datetime_typecast::val() method
  as it is usually done in other classes.
  Should be fixed more radically in 5.0


mysql-test/r/type_datetime.result:
  result added
mysql-test/t/type_datetime.test:
  testcase
sql/item_timefunc.h:
  added double conversion to Item_datetime_typecast
2007-03-22 12:24:56 +04:00
unknown
6ef0fee8e6 Merge mysql.com:/home/hf/work/25492/my41-25492
into  mysql.com:/home/hf/work/mrg/mysql-4.1-opt
2007-03-22 12:01:05 +04:00
unknown
095a80ee93 Merge bk-internal:/home/bk/mysql-4.1-maint
into  pilot.blaudden:/home/msvensson/mysql/mysql-4.1-maint
2007-03-21 17:29:18 +01:00
unknown
ec81cfdc0c Remove the variables for long gone disable_ps_warnings 2007-03-20 19:43:36 +01:00
unknown
55e0ff5c33 Test "help":
Shift the ID values up into a range where they will not collide with those
which we use for real data, when we fill the system tables.

Will be merged up to 5.0 where it is needed for 5.0.38.


mysql-test/r/help.result:
  Fix the result file according to the changed ID values in "help.test".
mysql-test/t/help.test:
  Now that (at least in 5.0) the system tables are filled with real data,
  inserting rows vith ID values 1 .. 5 will fail in release build tests (it did in 5.0.38)
  like it should already have done in customer installations.
  
  Shift the ID values up into a high area where they will not conflict,
  also make the distinct for the different kinds of values (= unique throughout the test).
  
  No change to the logic.
2007-03-20 19:36:11 +01:00
unknown
d59272fb3d Bug #27231: Server crash when dumping into outfile with long FIELDS ENCLOSED BY option
- Problem: data separators were copied to a fixed-size buffer
  on the stack; memcpy was used, without bounds checking; a
  server crash could result if long FIELDS ENCLOSED BY, etc.,
  was given
- Fix: write the separators directly, instead of copying to
  a buffer first (in select_export::send_data())


sql/sql_class.cc:
  In select_export::send_data(), write data separators
  directly, instead of copying into a fixed-size memory
  buffer before writing.  This avoids a buffer overflow
  when very large separators are specified.
2007-03-20 19:09:28 +01:00
unknown
db573e637c Bug#26996 - Update of a Field in a Memory Table ends with wrong result
Using a MEMORY table BTREE index for scanning for updatable rows
could lead to an infinite loop.

Everytime a key was inserted into a btree index, the position
in the index scan was cleared. The search started from the
beginning and found the same key again.

Now we do not clear the position on key insert an more.


heap/hp_write.c:
  Bug#26996 - Update of a Field in a Memory Table ends with wrong result
  Removed the index-scan-breaking nulling of last_pos.
  The comment behind this line ("For heap_rnext/heap_rprev")
  was misleading. It should have been "Breaks heap_rnext/heap_rprev".
mysql-test/r/heap_btree.result:
  Bug#26996 - Update of a Field in a Memory Table ends with wrong result
  Added test result.
mysql-test/t/heap_btree.test:
  Bug#26996 - Update of a Field in a Memory Table ends with wrong result
  Added test.
2007-03-19 15:56:53 +01:00
unknown
ee6dc3a0de Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  chilla.local:/home/mydev/mysql-4.1--main
2007-03-17 22:52:23 +01:00
unknown
13643101e0 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug25289


sql/ha_myisam.cc:
  Auto merged
2007-03-16 14:26:45 +01:00
unknown
396f84aa82 Bug#26231 - select count(*) on myisam table returns wrong value
when index is used

When the table contained TEXT columns with empty contents
('', zero length, but not NULL) _and_ strings starting with
control characters like tabulator or newline, the empty values
were not found in a "records in range" estimate. Hence count(*)
missed these records.

The reason was a different set of search flags used for key
insert and key range estimation.

I decided to fix the set of flags used in range estimation.
Otherwise millions of databases around the world would require
a repair after an upgrade.

The consequence is that the manual must be fixed, which claims
that TEXT columns are compared with "end space padding". This
is true for CHAR/VARCHAR but wrong for TEXT. See also bug 21335.


myisam/mi_range.c:
  Bug#26231 - select count(*) on myisam table returns wrong value
              when index is used
  Added SEARCH_UPDATE to the search flags so that it compares
  like write/update/delete operations do. Only so it expects
  the keys at the place where they have been inserted.
myisam/mi_search.c:
  Bug#26231 - select count(*) on myisam table returns wrong value
              when index is used
  Added some comments to explain how _mi_get_binary_pack_key()
  works.
mysql-test/r/myisam.result:
  Bug#26231 - select count(*) on myisam table returns wrong value
              when index is used
  Added a test.
mysql-test/t/myisam.test:
  Bug#26231 - select count(*) on myisam table returns wrong value
              when index is used
  Added test result.
2007-03-16 10:28:48 +01:00
unknown
39333ba7f2 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  mockturtle.local:/home/dlenev/src/mysql-4.1-merge
2007-03-15 14:31:34 +03:00
unknown
db1d2f64d1 Fix for bug #25966 "2MB per second endless memory consumption after LOCK
TABLE ... WRITE".

CPU hogging occured when connection which had to wait for table lock was
serviced by thread which previously serviced connection that was killed
(note that connections can reuse threads if thread cache is enabled).
One possible scenario which exposed this problem was when thread which
provided binlog dump to replication slave was implicitly/automatically
killed when the same slave reconnected and started pulling data through
different thread/connection.
In 5.* versions memory hogging was added to CPU hogging. Moreover in
those versions the problem also occured when one killed particular query
in connection (using KILL QUERY) and later this connection had to wait for
some table lock.

This problem was caused by the fact that thread-specific mysys_var::abort
variable, which indicates that waiting operations on mysys layer should
be aborted (this includes waiting for table locks), was set by kill
operation but was never reset back. So this value was "inherited" by the
following statements or even other connections (which reused the same
physical thread). Such discrepancy between this variable and THD::killed
flag broke logic on SQL-layer and caused CPU and memory hogging.

This patch tries to fix this problem by properly resetting this member.

There is no test-case associated with this patch since it is hard to test
for memory/CPU hogging conditions in our test-suite.


sql/mysqld.cc:
  We should not forget to reset THD::mysys_var::abort after kill operation
  if we are going to use thread to which this operation was applied for
  handling of other connections.
2007-03-15 11:30:17 +03:00
unknown
eddf23e057 Merge mysql.com:/home/kent/bk/tmp/mysql-4.0
into  mysql.com:/home/kent/bk/tmp/mysql-4.1-build
2007-03-14 18:28:52 +01:00
unknown
377853e24f EXCEPTIONS-CLIENT:
Updated to version 0.6 of the text


EXCEPTIONS-CLIENT:
  Updated to version 0.6 of the text
2007-03-14 18:28:16 +01:00
unknown
3c89dd7966 Bug#25289 - repair table causes "my_seek.c:56:
my_seek: Assertion `fd != -1' failed"

In difficult optimize/repair situations the server could crash.
Under some circumstances the server retries an optimize/repair
with more elaborate options. But it did not check if the first
attempt failed so badly that a second one must not be tried.

This could happen when a new data file has been created
but it was not possible to open it. In this case the
repair leaves behind a table with closed data file.
This must not be used for another repair attempt.

We do now detect the closed data file and do not try
another repair attempt in this situation.

No test case. The required table corruption can not be
repeated easily. There is a test program attached to
bug 25433.


sql/ha_myisam.cc:
  Bug#25289 - repair table causes "my_seek.c:56:
              my_seek: Assertion `fd != -1' failed"
  Added code to detect a closed data file. It could be closed
  by a preceeding repair attempt. We must not try another
  repair then.
2007-03-14 16:27:37 +01:00
unknown
f4656c37ab Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/home/kent/bk/tmp/mysql-4.1-build
2007-03-14 14:30:12 +01:00
unknown
9be5d51809 Merge mysql.com:/home/kent/bk/tmp/mysql-4.0
into  mysql.com:/home/kent/bk/tmp/mysql-4.1-build


configure.in:
  SCCS merged
2007-03-14 14:29:23 +01:00
unknown
0f7f7ff845 configure.in:
Added test for sched_yield() possibly in -lposix4 on Solaris


configure.in:
  Added test for sched_yield() possibly in -lposix4 on Solaris
2007-03-14 14:27:46 +01:00
unknown
969b71653d BUG#26881 - Large MERGE tables report incorrect specification when no
differences in tables
Certain merge tables were wrongly reported as having incorrect definition:
- Some fields that are 1 byte long (e.g. TINYINT, CHAR(1)), might
  be internally casted (in certain cases) to a different type on a
  storage engine layer. (affects 4.1 and up)
- If tables in a merge (and a MERGE table itself) had short VARCHAR column (less
  than 4 bytes) and at least one (but not all) tables were ALTER'ed (even to an
  identical table: ALTER TABLE xxx ENGINE=yyy), table definitions went ouf of
  sync. (affects 4.1 only)

This is fixed by relaxing a check for underlying conformance and setting
field type to FIELD_TYPE_STRING in case varchar is shorter than 4
when a table is created.


myisam/mi_create.c:
  Added a comment.
mysql-test/r/merge.result:
  A test case for bug#26881.
mysql-test/t/merge.test:
  A test case for bug#26881.
sql/ha_myisam.cc:
  Relaxed some checks performed by check_definition():
  As comparing of fulltext keys (and key segments) is not yet implemented,
  only return an error in case one of keys is fulltext and other is not.
  Otherwise, if both keys are fulltext, accept them as is.
  
  As comparing of spatial keys (and key segments) is not yet implemented,
  only return an error in case one of keys is spatial and other is not.
  Otherwise, if both keys are spatial, accept them as is.
  
  A workaround to handle situation when field is casted from FIELD_SKIP_ZERO
  to FIELD_NORMAL. This could happen only in case field length is 1 and row
  format is fixed.
sql/sql_parse.cc:
  When a table that has varchar field shorter than 4 is created, field type is
  set to FIELD_TYPE_VAR_STRING. Later, when a table is modified using alter
  table, field type is changed to FIELD_TYPE_STRING (see Field_string::type).
  That means HA_OPTION_PACK_RECORD flag might be lost and thus null_bit might
  be shifted by alter table, in other words alter table doesn't create 100%
  equal table definition.
  
  This is usually not a problem, since when a table is created/altered,
  definition on a storage engine layer is based on one that is passed from
  sql layer. But it is a problem for merge engine - null_bit is shifted when
  a table (merge or underlying) is altered.
  
  Set field type to FIELD_TYPE_STRING in case FIELD_TYPE_VAR_STRING is shorter
  than 4 when a table is created as it is done in Field::type.
2007-03-13 18:02:06 +04:00
unknown
e266365cad Merge mysql.com:/home/svoj/devel/bk/mysql-4.1
into  mysql.com:/home/svoj/devel/mysql/BUG26881/mysql-4.1-engines
2007-03-13 16:57:16 +04:00
unknown
6f83533440 configure.in:
Restored accidently removed line to check for zlib


configure.in:
  Restored accidently removed line to check for zlib
2007-03-12 21:27:07 +01:00
unknown
d429f59011 mysys_ia64.dsp, mysys.vcproj:
Removed references to unused files


VC++Files/mysys/mysys.vcproj:
  Removed unused files
VC++Files/mysys/mysys_ia64.dsp:
  Removed unused files
2007-03-12 13:18:48 +01:00
unknown
d4d8d132eb Merge mysql.com:/home/kent/bk/tmp/mysql-4.0
into  mysql.com:/home/kent/bk/tmp/mysql-4.1-build


include/Makefile.am:
  Auto merged
2007-03-12 13:15:11 +01:00
unknown
32b370bb7f Makefile.am, configure.in, mysys.dsp:
Removed unused files
.del-my_winsem.c:
  Delete: mysys/my_winsem.c
.del-my_semaphore.c:
  Delete: mysys/my_semaphore.c
.del-my_semaphore.h:
  Delete: include/my_semaphore.h


BitKeeper/deleted/.del-my_semaphore.c:
  Delete: mysys/my_semaphore.c
BitKeeper/deleted/.del-my_semaphore.h:
  Delete: include/my_semaphore.h
BitKeeper/deleted/.del-my_winsem.c:
  Delete: mysys/my_winsem.c
VC++Files/mysys/mysys.dsp:
  Removed unused files
configure.in:
  Removed unused files
include/Makefile.am:
  Removed unused files
mysys/Makefile.am:
  Removed unused files
2007-03-12 13:12:42 +01:00
unknown
9f911a4cf8 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug25673
2007-03-10 17:01:52 +01:00
unknown
603a398172 Bug#25673 - spatial index corruption, error 126 incorrect key file for table
Fixed a compiler warning, deteced by pushbuild only.
2007-03-09 16:19:42 +01:00
unknown
35d5819129 Bug#25673 - spatial index corruption, error 126 incorrect key file for table
After backport fix.
Added forgotten DBUG_RETURNs, which was detected in 5.1 only.
2007-03-08 19:22:43 +01:00
unknown
0fcd9c2bfb Merge bk@192.168.21.1:mysql-4.1
into  mysql.com:/home/hf/work/mrg/mysql-4.1-opt
2007-03-08 21:14:31 +04:00
unknown
5130e88e41 Merge bk-internal:/home/bk/mysql-4.1-maint
into  pilot.blaudden:/home/msvensson/mysql/mysql-4.1-maint
2007-03-08 15:10:24 +01:00
unknown
548a39a104 Bug#25673 - spatial index corruption, error 126
incorrect key file for table

In certain cases it could happen that deleting a row could
corrupt an RTREE index.

According to Guttman's algorithm, page underflow is handled
by storing the page in a list for later re-insertion. The
keys from the stored pages have to be inserted into the
remaining pages of the same level of the tree. Hence the
level number is stored in the re-insertion list together
with the page.

In the MySQL RTree implementation the level counts from zero
at the root page, increasing numbers for levels down the tree.

If during re-insertion of the keys the tree height grows, all
level numbers become invalid. The remaining keys will be
inserted at the wrong level.

The fix is to increment the level numbers stored in the
reinsert list after a split of the root block during reinsertion.


myisam/rt_index.c:
  Bug#25673 - spatial index corruption, error 126
              incorrect key file for table
  Added a loop in rtree_delete() to increment the level numbers
  stored in the reinsert list after a split of the root block
  during reinsertion.
  Added comments and DBUG statements.
myisam/rt_key.c:
  Bug#25673 - spatial index corruption, error 126
              incorrect key file for table
  Added DBUG statements.
myisam/rt_split.c:
  Bug#25673 - spatial index corruption, error 126
              incorrect key file for table
  Added DBUG statements.
mysql-test/r/gis-rtree.result:
  Bug#25673 - spatial index corruption, error 126
              incorrect key file for table
  Added the test result.
mysql-test/t/gis-rtree.test:
  Bug#25673 - spatial index corruption, error 126
              incorrect key file for table
  Added a test.
2007-03-08 09:54:37 +01:00
unknown
f2044997d8 Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mar07/stage2/40
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mar07/stage2/41
2007-03-08 01:06:04 +01:00
unknown
ae8cad4424 Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-4.1-build
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mar07/stage2/41
2007-03-08 00:59:15 +01:00
unknown
7a512b029d Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/40
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/40
2007-03-07 23:54:52 +01:00
unknown
4c1312d446 Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/home/kent/bk/tmp/mysql-4.1-build
2007-03-07 23:04:25 +01:00
unknown
f9ff9436a7 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  chilla.local:/home/mydev/mysql-4.1--main


sql/item_func.cc:
  Auto merged
2007-03-07 20:17:17 +01:00
unknown
cd5140d389 Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-4.1-runtime
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/41
2007-03-07 07:02:00 +01:00
unknown
b68519f7dc Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-4.1
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/41
2007-03-07 05:59:56 +01:00
unknown
49110f3e30 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/home/ram/work/b26038/b26038.4.1
2007-03-05 18:21:52 +04:00