Commit graph

1234 commits

Author SHA1 Message Date
cmiller@zippy.cornsilk.net
06e3f77901 Merge mysqldev@production.mysql.com:my/build-200702201448-5.0.36/mysql-5.0-release/
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-community
2007-02-27 17:07:08 -05:00
cmiller@zippy.cornsilk.net
6e096ee8d9 Prevent bugs by making DBUG_* expressions syntactically equivalent
to a single statement.
---
Bug#24795: SHOW PROFILE

Profiling is only partially functional on some architectures.  Where 
there is no getrusage() system call, presently Null values are 
returned where it would be required.  Notably, Windows needs some love 
applied to make it as useful.

  Syntax this adds:
  
  SHOW PROFILES
  
  SHOW PROFILE [types] [FOR QUERY n] [OFFSET n] [LIMIT n]
   where "n" is an integer
   and "types" is zero or many (comma-separated) of
      "CPU"
      "MEMORY" (not presently supported)
      "BLOCK IO"
      "CONTEXT SWITCHES"
      "PAGE FAULTS"
      "IPC"
      "SWAPS"
      "SOURCE"
      "ALL"

It also adds a session variable (boolean) "profiling", set to "no"
by default, and (integer) profiling_history_size, set to 15 by 
default.

This patch abstracts setting THDs' "proc_info" behind a macro that 
can be used as a hook into the profiling code when profiling 
support is compiled in.  All future code in this line should use
that mechanism for setting thd->proc_info.

---

Tests are now set to omit the statistics.

---

Adds an Information_schema table, "profiling" for access to 
"show profile" data.
---
Merge zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-community-3--bug24795
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-community
---
Fix merge problems.
---
Fixed one bug in the query_source being NULL.  

Updated test results.
---
Include more thorough profiling tests.

Improve support for prepared statements.

Use session-specific query IDs, starting at zero.
---
Selecting from I_S.profiling is no longer quashed in profiling, as
requested by Giuseppe.

Limit the size of captured query text.

No longer log queries that are zero length.
2007-02-22 10:03:08 -05:00
svoj@mysql.com/april.(none)
ea7fe60fbc Merge mysql.com:/home/svoj/devel/bk/mysql-5.0
into  mysql.com:/home/svoj/devel/mysql/merge/mysql-5.0-engines
2007-01-25 01:26:57 +04:00
svoj@mysql.com/june.mysql.com
94d834c7b6 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0-engines
into  mysql.com:/home/svoj/devel/mysql/BUG24401/mysql-5.0-engines
2007-01-24 11:40:45 +04:00
svoj@mysql.com/june.mysql.com
fb2172d20b Merge mysql.com:/home/svoj/devel/mysql/BUG24401/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG24401/mysql-5.0-engines
2007-01-23 16:35:17 +04:00
svoj@mysql.com/june.mysql.com
afaebb6d62 BUG#24401 - MySQL server crashes if you try to retrieve data from
corrupted table

Accessing a table with corrupted column definition results in server
crash.

This is fixed by refusing to open such tables. Affects MyISAM only.
No test case, since it requires crashed table.
2007-01-22 16:34:58 +04:00
istruewing@chilla.local
4c57e823bd Merge chilla.local:/home/mydev/mysql-4.1-bug24607
into  chilla.local:/home/mydev/mysql-5.0-bug24607
2007-01-18 11:35:54 +01:00
istruewing@chilla.local
568106c297 Merge chilla.local:/home/mydev/mysql-4.1--team
into  chilla.local:/home/mydev/mysql-4.1-bug24607
2007-01-17 14:52:36 +01:00
msvensson@pilot.mysql.com
3b8695911c Merge pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-5.0-maint
2007-01-17 12:14:34 +01:00
msvensson@pilot.mysql.com
29be5ce836 Bug#25505 Myisam library compiler error on Windows 2007-01-17 11:51:52 +01:00
svoj@mysql.com/june.mysql.com
ba6537ea8b Merge mysql.com:/home/svoj/devel/mysql/BUG24855/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG24855/mysql-5.0-engines
2007-01-17 12:59:54 +04:00
svoj@mysql.com/june.mysql.com
c606e30f35 BUG#24855 - Crash mysqld 4.1.21 with corrupted tables
Accessing fixed record format table with crashed key definition results
in server/myisamchk segmentation fault.

This is fixed by refusing to open such tables. Affects MyISAM only.
No test case, since it requires crashed table.
2007-01-16 18:05:37 +04:00
istruewing@chilla.local
a66da6203d Bug#24607 - MyISAM pointer size determined incorrectly
The function mi_get_pointer_length() computed too small
pointer size for very large tables.

Inserted missing 'else' between the branches for very
large tables.
2007-01-05 10:26:51 +01:00
istruewing@chilla.local
d37ff7d7bc Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  chilla.local:/home/mydev/mysql-5.0-axmrg
2007-01-03 08:52:50 +01:00
holyfoot/hf@mysql.com/hfmain.(none)
79361c655a Merge mysql.com:/d2/hf/common/my50-common
into  mysql.com:/d2/hf/opt/my50-opt
2007-01-03 11:13:01 +04:00
kent@mysql.com/kent-amd64.(none)
1b8bd0d246 Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/kent/bk/main/mysql-5.0
2006-12-31 01:04:07 +01:00
kent@mysql.com/kent-amd64.(none)
6523aca729 my_strtoll10-x86.s:
Corrected spelling in copyright text
Makefile.am:
  Don't update the files from BitKeeper
Many files:
  Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
  Adjusted year(s) in copyright header 
Many files:
  Added GPL copyright text
Removed files:
  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/xwf
2006-12-31 01:02:27 +01:00
svoj@mysql.com/april.(none)
bcbb50c1d2 Merge mysql.com:/home/svoj/devel/mysql/BUG23526/mysql-5.0-engines2
into  mysql.com:/home/svoj/devel/mysql/merge/mysql-5.0-engines
2006-12-30 03:44:25 +04:00
svoj@mysql.com/april.(none)
5344932e14 Merge mysql.com:/home/svoj/devel/bk/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/merge/mysql-5.0-engines
2006-12-30 03:42:29 +04:00
svoj@mysql.com/april.(none)
45aeb7f04d Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG23196/mysql-4.1-engines
2006-12-30 02:30:19 +04:00
acurtis/antony@xiphis.org/ltamd64.xiphis.org
82b03f29ac Merge xiphis.org:/home/antony/work2/mysql-5.0-engines
into  xiphis.org:/home/antony/work2/mysql-5.0-engines-merge
2006-12-26 16:23:05 -08: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
istruewing@chilla.local
33b96c3036 Merge chilla.local:/home/mydev/mysql-4.1-axmrg
into  chilla.local:/home/mydev/mysql-5.0-axmrg
2006-12-20 18:22:26 +01:00
istruewing@chilla.local
d9b9778e53 Bug#25213 - Compiler warnings in MyISAM code
Compiler warnings due to non-matching conversion
specifications in format strings in DBUG_PRINT calls,
due to non-used parameters (in non-debug mode), and
due to seemingly uninitialized variables.

Initialized variables, declared parameters unused, and
casted DBUG_PRINT arguments to get rid of warnings.
2006-12-20 15:32:02 +01:00
istruewing@chilla.local
1d69857c4d Bug#25208 - Warnings in mi_packrec.c
Compiler warnings due to non-matching conversion
specifications in format strings in DBUG_PRINT calls.

Fixed DBUG_PRINT format specifiactions.
2006-12-20 15:18:09 +01:00
gkodinov/kgeorge@macbook.gmz
8e0367918c Bug #23578: Corruption prevents Optimize table from working properly with a
spatial index
 While executing OPTIMIZE TABLE on MyISAM tables the server re-creates the
 index file(s) in order to sort them physically by the key. This cannot be 
 done for R-tree indexes as it makes no sense.
 The server was not checking the type of the index and was accessing an 
 R-tree index as if it was a B-tree.
 Fixed by preventing sorting the index file if it contains an R-tree index.
2006-12-19 15:04:26 +02:00
istruewing@chilla.local
df2b93439f Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  chilla.local:/home/mydev/mysql-5.0-axmrg
2006-12-08 12:28:21 +01:00
istruewing@chilla.local
ca62c94230 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  chilla.local:/home/mydev/mysql-4.1-axmrg
2006-12-08 12:20:48 +01:00
svoj@mysql.com/april.(none)
3cfd578ea7 BUG#23526 - show table status reports incorrect values for MyISAM tables
This problem could happen when show table status get outdated copy
of TABLE object from table cache.

MyISAM updates state info when external_lock() method is called. Though
I_S does not lock a table to avoid deadlocks. If I_S opens a table which
is in a table cache it will likely get outdated state info copy.

In this case shared state copy is more recent than local copy. This problem
is fixed by correctly restoring myisam state info pointer back to original
value, that is to shared state.

Affects MyISAM only. No good deterministic test case for this fix.
2006-12-05 18:44:14 +04:00
msvensson@neptunus.(none)
128b73fc36 Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-12-04 19:28:38 +01:00
istruewing@chilla.local
098abfadd0 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  chilla.local:/home/mydev/mysql-5.0-axmrg
2006-12-04 19:03:01 +01:00
iggy@rolltop.ignatz42.dyndns.org
a13e3ebe80 Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/bug17951/my50-bug17951
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-5.0-maint
2006-12-04 12:39:49 -05:00
andrey@example.com
b5e44560f6 Merge ahristov@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  example.com:/work/bug24395-v2/my50
2006-12-02 00:30:10 +01:00
andrey@example.com
b275089b66 Merge ahristov@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  example.com:/work/bug24395-v2/my41
2006-12-01 23:11:44 +01:00
istruewing@chilla.local
763fdea487 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  chilla.local:/home/mydev/mysql-5.0-axmrg
2006-12-01 18:49:20 +01:00
istruewing@chilla.local
341bd06408 Merge bk-internal.mysql.com:/home/bk/mysql-5.0-engines
into  chilla.local:/home/mydev/mysql-5.0-axmrg
2006-12-01 18:38:08 +01:00
svoj@mysql.com/april.(none)
5e733ee8fa BUG#23196 - MySQL server does not exit / shutdown when
storage engine returns errno 12

If there is not enough memory to store or update blob record
(while allocating record buffer), myisam marks table as crashed.

With this fix myisam attempts to roll an index back and return
an error, not marking a table as crashed.

Affects myisam tables with blobs only. No test case for this fix.
2006-12-01 19:11:43 +04:00
istruewing@chilla.local
ab70ed5e48 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  chilla.local:/home/mydev/mysql-4.1-axmrg
2006-12-01 15:49:49 +01:00
istruewing@chilla.local
0c273a79fc Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-axmrg
2006-12-01 15:46:58 +01:00
iggy@rolltop.ignatz42.dyndns.org
b457572385 Bug#17951: myisampack --force --silent : abnormal end in Windows XP
-myisampack wrote to a block on the heap that it did not allocate.
2006-11-30 21:04:02 -05:00
monty@mysql.com/narttu.mysql.fi
601e6f4b2a Fixed compiler warnings
Don't assert if my_thread_end() is called twice (common case)
2006-11-30 21:56:03 +02:00
andrey@example.com
dec1ebf6e3 Merge example.com:/work/bug24395-v2/my41
into  example.com:/work/bug24395-v2/my50

fix for bug#24395 merged into 5.0
2006-11-30 18:36:15 +01:00
monty@mysql.com/narttu.mysql.fi
3d40956039 Fixed portability issue in my_thr_init.c (was added in my last push)
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.
2006-11-30 18:25:05 +02:00
istruewing@chilla.local
474203d527 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug23139
2006-11-29 23:05:04 +01:00
istruewing@chilla.local
3b41ef6a5c Merge chilla.local:/home/mydev/mysql-4.1-bug23139
into  chilla.local:/home/mydev/mysql-5.0-bug23139
2006-11-28 19:28:49 +01:00
andrey@example.com
100dd45ec4 Fix for bug#24395:
ALTER TABLE DISABLE KEYS doesn't work when modifying the table
  
ENABLE|DISABLE KEYS combined with another ALTER TABLE option, different
than RENAME TO did nothing. Also, if the table had disabled keys
and was ALTER-ed then the end table was with enabled keys.
  
Fixed by checking whether the table had disabled keys and enabling them
in the copied table.
2006-11-28 18:27:32 +01:00
istruewing@chilla.local
671575211b Bug#23139 - myisamchk and mysqld crash when trying to access table
A corrupted compressed table could crash the server and
myisamchk.

The data file of an uncompressed table contains just the records.
There is no header in the data file.

However the data file of a compressed table has a header.
The header describes how the table was compressed. This
information is necessary to extract the records from the
compressed data file.

Part of the compressed data file header are the [de]code tables.
They are numeric representations of the Huffman trees used for
coding and decoding. A Huffman tree is a binary tree. Every
node has two childs. A child can be a leaf or a branch. Leaves
contain the decoded value. Branches point to another tree node.

Since the [de]code table is represented as an array of childs,
the branches need to point at a child within the same array.
The corruption of the compressed data file from the bug report
was a couple of branches that pointed outside their array.
This condition had not been correctly checked.

I added some checks for the pointers in the decode tables.
This type of corruption will no longer crash the server or
myisamchk.

No test case. A corrupted compressed table is required.
2006-11-28 15:46:01 +01:00
monty@mysql.com/nosik.monty.fi
306b871d52 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/my/mysql-5.0
2006-11-20 22:46:52 +02:00
monty@mysql.com/nosik.monty.fi
e825879800 Remove compiler warnings
(Mostly in DBUG_PRINT() and unused arguments)
Fixed bug in query cache when used with traceing (--with-debug)
Fixed memory leak in mysqldump
Removed warnings from mysqltest scripts (replaced -- with #)
2006-11-20 22:42:06 +02:00
istruewing@chilla.local
c378a8ee49 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  chilla.local:/home/mydev/mysql-4.1-axmrg
2006-11-13 21:49:00 +01:00