~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to plugin/innobase/ChangeLog

Merge Joe, plus I updated the tests.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
2010-09-06      The InnoDB Team
2
 
        * dict/dict0load.c, innodb_bug53756.test innodb_bug53756.result
3
 
        Fix Bug #53756  ALTER TABLE ADD PRIMARY KEY affects crash recovery
4
 
 
5
 
2010-08-24      The InnoDB Team
6
 
 
7
 
        * handler/ha_innodb.c, dict/dict0dict.c:
8
 
        Fix Bug #55832 selects crash too easily when innodb_force_recovery>3
9
 
 
10
 
2010-08-03      The InnoDB Team
11
 
        * include/dict0dict.h, include/dict0dict.ic, row/row0mysql.c:
12
 
        Fix Bug#54678 InnoDB, TRUNCATE, ALTER, I_S SELECT, crash or deadlock
13
 
 
14
 
2010-08-03      The InnoDB Team
15
 
 
16
 
 
17
 
        * include/ut0mem.h, ut/ut0mem.c:
18
 
        Fix Bug #55627 segv in ut_free pars_lexer_close innobase_shutdown
19
 
        innodb-use-sys-malloc=0
20
 
 
21
 
2010-08-01      The InnoDB Team
22
 
 
23
 
        * handler/ha_innodb.cc
24
 
        Fix Bug #55382 Assignment with SELECT expressions takes unexpected
25
 
        S locks in READ COMMITTED
26
 
 
27
 
2010-07-27      The InnoDB Team
28
 
 
29
 
        * include/mem0pool.h, mem/mem0mem.c, mem/mem0pool.c, srv/srv0start.c:
30
 
        Fix Bug#55581 shutdown with innodb-use-sys-malloc=0: assert
31
 
        mutex->magic_n == MUTEX_MAGIC_N.
32
 
 
33
 
2010-06-30      The InnoDB Team
34
 
 
35
 
        * btr/btr0sea.c, ha/ha0ha.c, handler/ha_innodb.cc, include/btr0sea.h:
36
 
        Fix Bug#54311 Crash on CHECK PARTITION after concurrent LOAD DATA
37
 
        and adaptive_hash_index=OFF
38
 
 
39
 
2010-06-29      The InnoDB Team
40
 
        * row/row0row.c, row/row0undo.c, row/row0upd.c:
41
 
        Fix Bug#54408 txn rollback after recovery: row0umod.c:673
42
 
        dict_table_get_format(index->table)
43
 
 
44
 
2010-06-29      The InnoDB Team
45
 
        * row/row0row.c, row/row0undo.c, row/row0upd.c:
46
 
        Fix Bug#54408 txn rollback after recovery: row0umod.c:673
47
 
        dict_table_get_format(index->table)
48
 
 
49
 
2010-06-29      The InnoDB Team
50
 
 
51
 
        * btr/btr0cur.c, include/btr0cur.h, include/row0mysql.h,
52
 
        row/row0merge.c, row/row0sel.c:
53
 
        Fix Bug#54358 READ UNCOMMITTED access failure of off-page DYNAMIC
54
 
        or COMPRESSED columns
55
 
 
56
 
2010-06-24      The InnoDB Team
57
 
 
58
 
        * handler/ha_innodb.cc:
59
 
        Fix Bug#54679 alter table causes compressed row_format to revert
60
 
        to compact
61
 
 
62
 
2010-06-22      The InnoDB Team
63
 
 
64
 
        * handler/ha_innodb.cc, innodb_bug54044.test, innodb_bug54044.result
65
 
        Fix Bug#54044, Create temporary tables and using innodb crashes.
66
 
 
67
 
2010-06-22      The InnoDB Team
68
 
 
69
 
        * handler/ha_innodb.cc, innodb_bug54044.test, innodb_bug54044.result
70
 
        Fix Bug#54044, Create temporary tables and using innodb crashes.
71
 
 
72
 
2010-06-22      The InnoDB Team
73
 
 
74
 
        * dict/dict0dict.c, dict/dict0mem.c, include/dict0mem.h,
75
 
        include/univ.i, page/page0zip.c, row/row0merge.c:
76
 
        Fix Bug#47991 InnoDB Dictionary Cache memory usage increases
77
 
        indefinitely when renaming tables
78
 
 
79
 
2010-06-22      The InnoDB Team
80
 
 
81
 
        * handler/ha_innodb.cc:
82
 
        Fix Bug#54686: "field->col->mtype == type" assertion error at
83
 
        row/row0sel.c
84
 
 
85
 
2010-06-21      The InnoDB Team
86
 
 
87
 
        * dict/dict0load.c, fil/fil0fil.c:
88
 
        Fix Bug#54658: InnoDB: Warning: allocated tablespace %lu,
89
 
        old maximum was 0 (introduced in Bug#53578 fix)
90
 
 
91
 
2010-06-16      The InnoDB Team
92
 
 
93
 
        * row/row0merge.c:
94
 
        Fix Bug#54330 Broken fast index creation
95
 
 
96
 
2010-06-10      The InnoDB Team
97
 
 
98
 
        * include/log0log.ic, row/row0ins.c, row/row0purge.c,
99
 
        row/row0uins.c, row/row0umod.c, row/row0upd.c:
100
 
        Fix Bug#39168 ERROR: the age of the last checkpoint ... exceeds
101
 
        the log group capacity
102
 
 
103
 
2010-06-16      The InnoDB Team
104
 
 
105
 
        * row/row0merge.c:
106
 
        Fix Bug#54330 Broken fast index creation
107
 
 
108
 
2010-06-08      The InnoDB Team
109
 
 
110
 
        * dict/dict0load.c:
111
 
        Fix Bug#54009 Server crashes when data is selected from non backed
112
 
        up table for InnoDB plugin
113
 
 
114
 
2010-06-02      The InnoDB Team
115
 
 
116
 
        * include/db0err.h, include/lock0lock.h, include/row0mysql.h,
117
 
        lock/lock0lock.c, row/row0ins.c, row/row0mysql.c, row/row0sel.c:
118
 
        Fix Bug#53674 InnoDB: Error: unlock row could not find a
119
 
        4 mode lock on the record
120
 
 
121
 
2010-06-01      The InnoDB Team
122
 
 
123
 
        * include/sync0rw.h, sync/sync0rw.c:
124
 
        Fix Bug#48197 Concurrent rw_lock_free may cause assertion failure
125
 
 
126
 
2010-06-01      The InnoDB Team
127
 
 
128
 
        * include/sync0rw.h, sync/sync0rw.c:
129
 
        Fix Bug#48197 Concurrent rw_lock_free may cause assertion failure
130
 
 
131
 
2010-06-01      The InnoDB Team
132
 
 
133
 
        * row/row0umod.c:
134
 
        Fix Bug#53812 assert row/row0umod.c line 660 in txn rollback
135
 
        after crash recovery
136
 
 
137
 
2010-05-24      The InnoDB Team
138
 
 
139
 
        * dict/dict0boot.c, dict/dict0crea.c, fil/fil0fil.c,
140
 
        include/dict0boot.h, include/fil0fil.h, row/row0mysql.c:
141
 
        Fix Bug#53578: assert on invalid page access, in fil_io()
142
 
 
143
 
2010-05-12      The InnoDB Team
144
 
 
145
 
        * handler/handler0alter.cc:
146
 
        Fix Bug#53591 crash with fast alter table and text/blob prefix
147
 
        primary key
148
 
 
149
 
2010-05-12      The InnoDB Team
150
 
 
151
 
        * handler/handler0alter.cc:
152
 
        Fix Bug#53591 crash with fast alter table and text/blob prefix
153
 
        primary key
154
 
 
155
 
2010-05-12      The InnoDB Team
156
 
 
157
 
        * row/row0merge.c:
158
 
        Fix Bug#53471 row_merge_drop_temp_indexes() refers freed memory, SEGVs
159
 
 
160
 
2010-05-11      The InnoDB Team
161
 
 
162
 
        * mysql-test/innodb_bug53290.test, mysql-test/innodb_bug53290.result,
163
 
        include/rem0cmp.h, rem/rem0cmp.c, row/row0merge.c:
164
 
        Fix Bug#53290 wrong duplicate key error when adding a unique index
165
 
        via fast alter table
166
 
 
167
 
2010-05-11      The InnoDB Team
168
 
        * buf/buf0lru.c, include/buf0buf.ic:
169
 
        Fix Bug#53307 valgrind: warnings in main.partition_innodb_plugin
170
 
 
171
 
2010-05-05      The InnoDB Team
172
 
 
173
 
        * row/row0merge.c:
174
 
        Fix Bug#53256 in a stress test, assert dict/dict0dict.c:815
175
 
        table2 == NULL
176
 
 
177
 
2010-05-05      The InnoDB Team
178
 
 
179
 
        * row/row0merge.c:
180
 
        Fix Bug#53256 in a stress test, assert dict/dict0dict.c:815
181
 
        table2 == NULL
182
 
 
183
 
2010-05-05      The InnoDB Team
184
 
 
185
 
        * handler/ha_innodb.cc:
186
 
        Fix Bug#53165 Setting innodb_change_buffering=DEFAULT produces
187
 
        incorrect result
188
 
 
189
 
2010-05-04      The InnoDB Team
190
 
 
191
 
        * fsp/fsp0fsp.c:
192
 
        Fix Bug#53306 valgrind: warnings in innodb.innodb
193
 
 
194
 
2010-05-03      The InnoDB Team
195
 
 
196
 
        * buf0buf.c:
197
 
        Fix Bug#53248 compressed tables page checksum mismatch after
198
 
        re-enabling innodb_checksums
199
 
 
200
 
2010-04-28      The InnoDB Team
201
 
 
202
 
        * log/log0recv.h, log/log0recv.c:
203
 
        Fix Bug#53122 InnoDB recovery uses too big a hash table for redo
204
 
        log records
205
 
 
206
 
2010-04-27      The InnoDB Team
207
 
 
208
 
        * handler/ha_innodb.cc, lock/lock0lock.c, row/row0mysql.c,
209
 
        row/row0sel.c:
210
 
        Fix Bug#48607 READ UNCOMMITTED uses more locks than READ COMMITTED
211
 
        in InnoDB 5.1+
212
 
 
213
 
2010-04-26      The InnoDB Team
214
 
 
215
 
        * btr/btr0cur.c, dict/dict0dict.c, dict/dict0load.c,
216
 
        handler/ha_innodb.cc, include/dict0dict.h, row/row0mysql.c,
217
 
        innodb_bug53046.result, innodb_bug53046.test:
218
 
        Fix Bug#53046 dict_update_statistics_low can still be run
219
 
        concurrently on same table
220
 
 
221
 
2010-11-03      The InnoDB Team
222
 
 
223
 
        * fil/fil0fil.c, fsp/fsp0fsp.c, handler/ha_innodb.cc,
224
 
        include/fil0fil.h, include/univ.i:
225
 
        Fix Bug #54538 - use of exclusive innodb dictionary lock limits
226
 
        performance.
227
 
 
228
 
2010-11-02      The InnoDB Team
229
 
 
230
 
        * row/row0sel.c:
231
 
        Fix Bug#52663 Lost update incrementing column value under
232
 
        READ COMMITTED isolation level
233
 
 
234
 
2010-04-22      The InnoDB Team
235
 
 
236
 
        * include/dict0boot.h, dict/dict0boot.c:
237
 
        Fix a bug that prevented the crash recovery of fast CREATE INDEX
238
 
        from dropping partially created indexes.
239
 
 
240
 
2010-04-21      The InnoDB Team
241
 
 
242
 
        * btr/btr0btr.c:
243
 
        Fix Bug#52964 Infinite loop in btr_page_split_and_insert()
244
 
        in ROW_FORMAT=COMPRESSED
245
 
 
246
 
2010-04-21      The InnoDB Team
247
 
 
248
 
        * data/data0data.c:
249
 
        Fix Bug#52745 Failing assertion: blob_no < page_zip->n_blobs
250
 
 
251
 
2010-04-20      The InnoDB Team
252
 
 
253
 
        * dict/dict0crea.c, handler/ha_innodb.cc, include/trx0trx.h:
254
 
        Fix Bug#50495 'Row size too large' for plugin, but works for
255
 
        built-in InnoDB
256
 
        Only check the record size at index creation time when
257
 
        innodb_strict_mode is set or when ROW_FORMAT is DYNAMIC or COMPRESSED.
258
 
 
259
 
2010-04-20      The InnoDB Team
260
 
 
261
 
        * dict/dict0crea.c, handler/ha_innodb.cc, include/trx0trx.h:
262
 
        Fix Bug#50495 'Row size too large' for plugin, but works for
263
 
        built-in InnoDB
264
 
        Only check the record size at index creation time when
265
 
        innodb_strict_mode is set.
266
 
 
267
 
2010-04-15      The InnoDB Team
268
 
 
269
 
        * trx/trx0rec.c:
270
 
        Fix Bug#52746 InnoDB purge thread crashed with table containing
271
 
        prefix indexed blobs
272
 
 
273
 
2010-03-31      The InnoDB Team
274
 
 
275
 
        * mysql-test/innodb_bug51920.test, mysql-test/innodb_bug51920.result,
276
 
        srv/srv0srv.c:
277
 
        Fix Bug#51920 InnoDB connections in row lock wait ignore KILL
278
 
        until lock wait timeout
279
 
 
280
 
2010-03-31      The InnoDB Team
281
 
 
282
 
        * mysql-test/innodb_bug38231.test:
283
 
        Remove non-determinism in the test case.
284
 
 
285
 
2010-03-29      The InnoDB Team
286
 
 
287
 
        InnoDB Plugin 1.0.7 released
288
 
 
289
 
2010-03-29      The InnoDB Team
290
 
 
291
 
        InnoDB Plugin 1.0.7 released
292
 
 
293
 
2010-03-18      The InnoDB Team
294
 
 
295
 
        * CMakeLists.txt:
296
 
        Fix Bug#52102 InnoDB Plugin shows performance drop compared to
297
 
        InnoDB (Windows)
298
 
 
299
 
2010-03-18      The InnoDB Team
300
 
 
301
 
        * buf0buf.ic:
302
 
        When comparing the time of the first access to a block against
303
 
        innodb_old_blocks_time, use 32-bit arithmetics. The comparison was
304
 
        incorrect on 64-bit systems.
305
 
 
306
 
2010-03-11      The InnoDB Team
307
 
 
308
 
        * buf0buf.h, buf0buf.ic:
309
 
        Fix and clarify the latching of some buf_block_t members.
310
 
        Note that check_index_page_at_flush is not protected by any mutex.
311
 
        Note and assert that lock_hash_val is protected by the rw-latch.
312
 
 
313
 
2010-03-10      The InnoDB Team
314
 
 
315
 
        * trx/trx0sys.c:
316
 
        Fix Bug#51653 outdated reference to set-variable
317
 
 
318
 
2010-03-10      The InnoDB Team
319
 
 
320
 
        * handler/ha_innodb.cc, mysql-test/innodb_bug21704.result,
321
 
        mysql-test/innodb_bug47621.result, mysql-test/innodb_bug47621.test:
322
 
        Fix Bug#47621 MySQL and InnoDB data dictionaries will become out of
323
 
        sync when renaming columns
324
 
 
325
 
2010-03-10      The InnoDB Team
326
 
 
327
 
        * handler/ha_innodb.cc:
328
 
        Fix Bug#51356 Many Valgrind errors in error messages
329
 
        with concurrent DDL
330
 
 
331
 
2010-03-10      The InnoDB Team
332
 
 
333
 
        * handler/ha_innodb.cc, handler/handler0alter.cc,
334
 
        mysql-test/innodb_bug51378.result, mysql-test/innodb_bug51378.test:
335
 
        Fix Bug#51378 Init 'ref_length' to correct value, in case an out
336
 
        of bound MySQL primary_key
337
 
 
338
 
2010-03-10      The InnoDB Team
339
 
 
340
 
        * log/log0recv.c:
341
 
        Remove a bogus assertion about page numbers exceeding 0x90000000
342
 
        in the redo log. Abort when encountering a corrupted redo log
343
 
        record, unless innodb_force_recovery is set.
344
 
 
345
 
2010-03-09      The InnoDB Team
346
 
 
347
 
        * handler/ha_innodb.cc:
348
 
        Make SHOW ENGINE INNODB MUTEX STATUS display SUM(os_waits)
349
 
        for the buffer pool block mutexes and locks.
350
 
 
351
 
2010-03-08      The InnoDB Team
352
 
 
353
 
        * fil/fil0fil.c:
354
 
        Fix ALTER TABLE ... IMPORT TABLESPACE of compressed tables.
355
 
 
356
 
2010-03-03      The InnoDB Team
357
 
 
358
 
        * handler/handler0alter.cc, innodb-index.result, innodb-index.test,
359
 
        innodb.result, innodb.test:
360
 
        Disallow a duplicate index name when creating an index.
361
 
 
362
 
2010-02-11      The InnoDB Team
363
 
 
364
 
        * include/mem0mem.h, include/mem0mem.ic, mem/mem0mem.c:
365
 
        Fix Bug#49535 Available memory check slows down crash
366
 
        recovery tens of times
367
 
 
368
 
2010-02-09      The InnoDB Team
369
 
 
370
 
        * buf/buf0buf.c:
371
 
        Fix Bug#38901 InnoDB logs error repeatedly when trying to load
372
 
        page into buffer pool
373
 
 
374
 
2010-02-09      The InnoDB Team
375
 
 
376
 
        * srv/srv0srv.c:
377
 
        Let the master thread sleep if the amount of work to be done is
378
 
        calibrated as taking less than a second.
379
 
 
380
 
2010-02-04      The InnoDB Team
381
 
 
382
 
        * btr/btr0btr.c, btr/btr0cur.c, btr/btr0pcur.c, buf/buf0buf.c,
383
 
        include/btr0btr.h, include/btr0cur.h, include/btr0pcur.h,
384
 
        include/btr0pcur.ic, include/buf0buf.h, row/row0ins.c, row/row0sel.c:
385
 
        Pass the file name and line number of the caller of the
386
 
        b-tree cursor functions to the buffer pool requests, in order
387
 
        to make the latch diagnostics more accurate.
388
 
 
389
 
2010-02-03      The InnoDB Team
390
 
 
391
 
        * lock/lock0lock.c:
392
 
        Fix Bug#49001 SHOW INNODB STATUS deadlock info incorrect
393
 
        when deadlock detection aborts
394
 
 
395
 
2010-02-03      The InnoDB Team
396
 
 
397
 
        * buf/buf0lru.c:
398
 
        Fix Bug#35077 Very slow DROP TABLE (ALTER TABLE, OPTIMIZE TABLE)
399
 
        on compressed tables
400
 
 
401
 
2010-02-03      The InnoDB Team
402
 
 
403
 
        * handler/ha_innodb.cc, include/row0mysql.h, row/row0mysql.c:
404
 
        Clean up CHECK TABLE error handling.
405
 
 
406
 
2010-02-01      The InnoDB Team
407
 
 
408
 
        * handler/ha_innodb.cc, mysql-test/innodb-autoinc.test,
409
 
        mysql-test/innodb-autoinc.result,
410
 
        mysql-test/innodb-autoinc-44030.test,
411
 
        mysql-test/innodb-autoinc-44030.result:
412
 
        Fix Bug#49497 Error 1467 (ER_AUTOINC_READ_FAILED) on inserting
413
 
        a negative value
414
 
 
415
 
2010-01-28      The InnoDB Team
416
 
        *  handler/ha_innodb.h, handler/ha_innodb.cc,
417
 
        handler/handler0alter.cc,
418
 
        mysql-test/innodb_bug47622.test,
419
 
        mysql-test/innodb_bug47622.result:
420
 
        Fix Bug#47622 the new index is added before the existing ones
421
 
        in MySQL, but after one in SE
422
 
 
423
 
2010-01-28      The InnoDB Team
424
 
        *  handler/ha_innodb.h, handler/ha_innodb.cc,
425
 
        handler/handler0alter.cc,
426
 
        mysql-test/innodb_bug47622.test,
427
 
        mysql-test/innodb_bug47622.result:
428
 
        Fix Bug#47622 the new index is added before the existing ones
429
 
        in MySQL, but after one in SE
430
 
 
431
 
2010-01-27      The InnoDB Team
432
 
 
433
 
        * include/row0mysql.h, log/log0recv.c, row/row0mysql.c:
434
 
        Drop temporary tables at startup.
435
 
        This addresses the third aspect of
436
 
        Bug#41609 Crash recovery does not work for InnoDB temporary tables.
437
 
 
438
 
2010-01-21      The InnoDB Team
439
 
 
440
 
        * buf/buf0buf.c:
441
 
        Do not merge buffered inserts to compressed pages before
442
 
        the redo log has been applied in crash recovery.
443
 
 
444
 
2010-01-13      The InnoDB Team
445
 
 
446
 
        * row/row0sel.c:
447
 
        On the READ UNCOMMITTED isolation level, do not attempt to access
448
 
        a clustered index record that has been marked for deletion. The
449
 
        built-in InnoDB in MySQL 5.1 and earlier would attempt to retrieve
450
 
        a previous version of the record in this case.
451
 
 
452
 
2010-01-13      The InnoDB Team
453
 
 
454
 
        * buf/buf0buf.c:
455
 
        When disabling the adaptive hash index, check the block state
456
 
        before checking block->is_hashed, because the latter may be
457
 
        uninitialized right after server startup.
458
 
 
459
 
2010-01-12      The InnoDB Team
460
 
 
461
 
        * handler/ha_innodb.cc, handler/ha_innodb.h:
462
 
        Fix Bug#46193 crash when accessing tables after enabling
463
 
        innodb_force_recovery option
464
 
 
465
 
2010-01-12      The InnoDB Team
466
 
 
467
 
        * row/row0mysql.c:
468
 
        Fix Bug#49238 Creating/Dropping a temporary table while at 1023
469
 
        transactions will cause assert.
470
 
 
471
 
2009-12-02      The InnoDB Team
472
 
 
473
 
        * handler/ha_innodb.cc, innodb_bug56143.result, innodb_bug56143.test:
474
 
        Fix Bug#56143 too many foreign keys causes output of show create
475
 
        table to become invalid
476
 
 
477
 
2010-10-14      The InnoDB Team
478
 
 
479
 
        * dict/dict0dict.c, handler/handler0alter.cc, include/dict0dict.h
480
 
        row/row0merge.c:
481
 
        Fix Bug #55084 Innodb crash and corruption after alter table
482
 
 
483
 
2010-11-10      The InnoDB Team
484
 
 
485
 
        * srv/srv0start.c:
486
 
        Display the zlib version number at startup.
487
 
        InnoDB compressed tables use zlib, and the implementation depends
488
 
        on the zlib function compressBound(), whose definition was slightly
489
 
        changed in zlib version 1.2.3.1 in 2006. MySQL bundles zlib 1.2.3
490
 
        from 2005, but some installations use a more recent zlib.
491
 
 
492
 
2009-11-30      The InnoDB Team
493
 
 
494
 
        * dict/dict0crea.c, dict/dict0mem.c, dict/dict0load.c,
495
 
        dict/dict0boot.c, fil/fil0fil.c, handler/ha_innodb.cc,
496
 
        include/dict0mem.h, row/row0mysql.c:
497
 
        Fix the bogus warning messages for non-existing temporary
498
 
        tables that were reported in
499
 
        Bug#41609 Crash recovery does not work for InnoDB temporary tables.
500
 
        The actual crash recovery bug was corrected on 2009-04-29.
501
 
 
502
 
2009-11-27      The InnoDB Team
503
 
 
504
 
        InnoDB Plugin 1.0.6 released
505
 
 
506
 
2009-11-20      The InnoDB Team
507
 
 
508
 
        * handler/ha_innodb.cc:
509
 
        Add a workaround to prevent a crash due to Bug#45961 DDL on
510
 
        partitioned innodb tables leaves data dictionary in an inconsistent
511
 
        state
512
 
 
513
 
2009-11-19      The InnoDB Team
514
 
 
515
 
        * btr/btr0btr.c:
516
 
        Fix Bug#48469 when innodb tablespace is configured too small, crash
517
 
        and corruption!
518
 
 
519
 
2009-11-19      The InnoDB Team
520
 
 
521
 
        * data/data0type.c:
522
 
        Fix Bug#48526 Data type for float and double is incorrectly reported
523
 
        in InnoDB table monitor
524
 
 
525
 
2009-11-19      The InnoDB Team
526
 
 
527
 
        * CMakeLists.txt:
528
 
        Fix Bug#48317 cannot build innodb as static library
529
 
 
530
 
2009-11-18      The InnoDB Team
531
 
 
532
 
        * handler/handler0alter.cc:
533
 
        Fix Bug#48782 On lock wait timeout, CREATE INDEX (creating primary key)
534
 
        attempts DROP TABLE
535
 
 
536
 
2009-11-17      The InnoDB Team
537
 
 
538
 
        * handler/ha_innodb.cc, mysql-test/innodb.result,
539
 
        mysql-test/innodb.test, mysql-test/innodb_bug44369.result,
540
 
        mysql-test/innodb_bug44369.test, mysql-test/patches/innodb-index.diff,
541
 
        row/row0mysql.c:
542
 
        Report duplicate table names to the client connection, not to the
543
 
        error log.
544
 
 
545
 
2009-11-12      The InnoDB Team
546
 
 
547
 
        * handler/ha_innodb.cc, include/db0err.h, row/row0merge.c,
548
 
        row/row0mysql.c:
549
 
        Allow CREATE INDEX to be interrupted.
550
 
        Also, when CHECK TABLE is interrupted, report ER_QUERY_INTERRUPTED.
551
 
 
552
 
2009-11-11      The InnoDB Team
553
 
 
554
 
        * handler/ha_innodb.cc, mysql-test/innodb_bug47167.result,
555
 
        mysql-test/innodb_bug47167.test, mysql-test/innodb_file_format.result:
556
 
        Fix Bug#47167 "set global innodb_file_format_check" cannot set value
557
 
        by User-Defined Variable
558
 
 
559
 
2009-11-11      The InnoDB Team
560
 
 
561
 
        * include/os0file.h, os/os0file.c:
562
 
        Fix Bug#3139 Mysql crashes: 'windows error 995' after several selects
563
 
        on a large DB
564
 
 
565
 
2009-01-01      The InnoDB Team
566
 
 
567
 
        * btr/btr0sea.c, buf/buf0buf.c, dict/dict0dict.c, fil/fil0fil.c,
568
 
        ibuf/ibuf0ibuf.c, include/btr0sea.h, include/dict0dict.h,
569
 
        include/fil0fil.h, include/ibuf0ibuf.h, include/lock0lock.h,
570
 
        include/log0log.h, include/log0recv.h, include/mem0mem.h,
571
 
        include/mem0pool.h, include/os0file.h, include/pars0pars.h,
572
 
        include/srv0srv.h, include/thr0loc.h, include/trx0i_s.h,
573
 
        include/trx0purge.h, include/trx0rseg.h, include/trx0sys.h,
574
 
        include/trx0undo.h, include/usr0sess.h, lock/lock0lock.c,
575
 
        log/log0log.c, log/log0recv.c, mem/mem0dbg.c, mem/mem0pool.c,
576
 
        os/os0file.c, os/os0sync.c, os/os0thread.c, pars/lexyy.c,
577
 
        pars/pars0lex.l, que/que0que.c, srv/srv0srv.c, srv/srv0start.c,
578
 
        sync/sync0arr.c, sync/sync0sync.c, thr/thr0loc.c, trx/trx0i_s.c,
579
 
        trx/trx0purge.c, trx/trx0rseg.c, trx/trx0sys.c, trx/trx0undo.c,
580
 
        usr/usr0sess.c, ut/ut0mem.c:
581
 
        Fix Bug#45992 innodb memory not freed after shutdown
582
 
        Fix Bug#46656 InnoDB plugin: memory leaks (Valgrind)
583
 
 
584
 
2009-10-29      The InnoDB Team
585
 
 
586
 
        * handler/ha_innodb.cc, mysql-test/innodb-autoinc.result,
587
 
        mysql-test/innodb-autoinc.test:
588
 
        Fix Bug#47125 auto_increment start value is ignored if an index is
589
 
        created and engine=innodb
590
 
 
591
 
2009-10-29      The InnoDB Team
592
 
 
593
 
        * handler/ha_innodb.cc, mysql-test/innodb_bug47777.result,
594
 
        mysql-test/innodb_bug47777.test:
595
 
        Fix Bug#47777 innodb dies with spatial pk: Failing assertion: buf <=
596
 
        original_buf + buf_len
597
 
 
598
 
2009-10-29      The InnoDB Team
599
 
 
600
 
        * handler/ha_innodb.cc:
601
 
        Fix Bug#38996 Race condition in ANALYZE TABLE
602
 
 
603
 
2009-10-29      The InnoDB Team
604
 
 
605
 
        * handler/ha_innodb.cc:
606
 
        Fix bug#42383: Can't create table 'test.bug39438'
607
 
 
608
 
2009-10-29      The InnoDB Team
609
 
 
610
 
        * os/os0proc.c:
611
 
        Fix Bug#48237 Error handling in os_mem_alloc_large appears to
612
 
        be incorrect
613
 
 
614
 
2009-10-29      The InnoDB Team
615
 
 
616
 
        * buf/buf0buf.c, buf/buf0lru.c, include/buf0buf.h, include/buf0buf.ic:
617
 
        Fix corruption of the buf_pool->LRU_old list and improve debug
618
 
        assertions.
619
 
 
620
 
2009-10-28      The InnoDB Team
621
 
 
622
 
        * srv/srv0start.c:
623
 
        Fix Bug#41490 After enlargement of InnoDB page size, the error message
624
 
        become inaccurate
625
 
 
626
 
2009-10-26      The InnoDB Team
627
 
 
628
 
        * row/row0ins.c:
629
 
        When allocating a data tuple, zero out the system fields in order
630
 
        to avoid Valgrind warnings about uninitialized fields in
631
 
        dtuple_validate().
632
 
 
633
 
2009-10-22      The InnoDB Team
634
 
 
635
 
        * handler/ha_innodb.cc, mysql-test/innodb-zip.result,
636
 
        mysql-test/innodb-zip.test, mysql-test/innodb_bug44369.result,
637
 
        mysql-test/innodb_bug44369.test:
638
 
        Fix Bug#47233 Innodb calls push_warning(MYSQL_ERROR::WARN_LEVEL_ERROR)
639
 
 
640
 
2009-10-19      The InnoDB Team
641
 
 
642
 
        * mysql-test/innodb_information_schema.test:
643
 
        Fix Bug#47808 innodb_information_schema.test fails when run under
644
 
        valgrind
645
 
 
646
 
2009-10-15      The InnoDB Team
647
 
 
648
 
        * include/page0page.ic:
649
 
        Fix Bug#47058 Failure to compile innodb_plugin on solaris 10u7 + spro
650
 
        cc/CC 5.10
651
 
 
652
 
2009-10-13      The InnoDB Team
653
 
 
654
 
        * buf/buf0flu.c:
655
 
        Call fsync() on datafiles after a batch of pages is written to disk
656
 
        even when skip_innodb_doublewrite is set.
657
 
 
658
 
2009-10-05      The InnoDB Team
659
 
 
660
 
        * buf/buf0buf.c:
661
 
        Do not invalidate buffer pool while an LRU batch is active. Added code
662
 
        to buf_pool_invalidate() to wait for the running batches to finish.
663
 
 
664
 
2009-10-01      The InnoDB Team
665
 
 
666
 
        * handler/ha_innodb.cc:
667
 
        Fix Bug#47763 typo in error message: Failed to open table %s after %lu
668
 
        attemtps.
669
 
 
670
 
2009-10-01      The InnoDB Team
671
 
 
672
 
        * fsp/fsp0fsp.c, row/row0merge.c:
673
 
        Clean up after a crash during DROP INDEX. When InnoDB crashes
674
 
        while dropping an index, ensure that the index will be completely
675
 
        dropped during crash recovery. The MySQL .frm file may still
676
 
        contain the dropped index, but there is little that we can do
677
 
        about it.
678
 
 
679
 
2009-09-28      The InnoDB Team
680
 
 
681
 
        * handler/ha_innodb.cc:
682
 
        When a secondary index exists in the MySQL .frm file but not in
683
 
        the InnoDB data dictionary, return an error instead of letting an
684
 
        assertion fail in index_read.
685
 
 
686
 
2009-09-28      The InnoDB Team
687
 
 
688
 
        * btr/btr0btr.c, buf/buf0buf.c, include/page0page.h,
689
 
        include/page0zip.h, page/page0cur.c, page/page0page.c,
690
 
        page/page0zip.c:
691
 
        Do not write to PAGE_INDEX_ID when restoring an uncompressed page
692
 
        after a compression failure. The field should only be written
693
 
        when creating a B-tree page. This fix addresses a race condition
694
 
        in a debug assertion.
695
 
 
696
 
2009-09-28      The InnoDB Team
697
 
 
698
 
        * fil/fil0fil.c:
699
 
        Try to prevent the reuse of tablespace identifiers after InnoDB
700
 
        has crashed during table creation. Also, refuse to start if files
701
 
        with duplicate tablespace identifiers are encountered.
702
 
 
703
 
2009-09-25      The InnoDB Team
704
 
 
705
 
        * include/os0file.h, os/os0file.c:
706
 
        Fix Bug#47055 unconditional exit(1) on ERROR_WORKING_SET_QUOTA
707
 
        1453 (0x5AD) for InnoDB backend
708
 
 
709
 
2009-09-19      The InnoDB Team
710
 
 
711
 
        * handler/ha_innodb.cc, mysql-test/innodb-consistent-master.opt,
712
 
        mysql-test/innodb-consistent.result,
713
 
        mysql-test/innodb-consistent.test:
714
 
        Fix Bug#37232 Innodb might get too many read locks for DML with
715
 
        repeatable-read
716
 
 
717
 
2009-09-19      The InnoDB Team
718
 
 
719
 
        * fsp/fsp0fsp.c:
720
 
        Fix Bug#31183 Tablespace full problems not reported in error log,
721
 
        error message unclear
722
 
 
723
 
2009-09-16      The InnoDB Team
724
 
 
725
 
        * handler/ha_innodb.cc:
726
 
        Fix Bug#46256 drop table with unknown collation crashes innodb
727
 
 
728
 
2009-09-16      The InnoDB Team
729
 
 
730
 
        * dict/dict0dict.c, handler/ha_innodb.cc,
731
 
        mysql-test/innodb_bug44369.result, mysql-test/innodb_bug44369.test,
732
 
        row/row0mysql.c:
733
 
        Fix Bug#44369 InnoDB: Does not uniformly disallow disallowed column
734
 
        names
735
 
 
736
 
2009-09-16      The InnoDB Team
737
 
 
738
 
        * handler/ha_innodb.cc, include/db0err.h,
739
 
        mysql-test/innodb_bug46000.result, mysql-test/innodb_bug46000.test:
740
 
        Fix Bug#46000 using index called GEN_CLUST_INDEX crashes server
741
 
 
742
 
2009-09-02      The InnoDB Team
743
 
 
744
 
        * include/lock0lock.h, include/row0mysql.h, lock/lock0lock.c,
745
 
        row/row0mysql.c:
746
 
        Fix a regression introduced by the fix for MySQL bug#26316. We check
747
 
        whether a transaction holds any AUTOINC locks before we acquire
748
 
        the kernel mutex and release those locks.
749
 
 
750
 
2009-08-27      The InnoDB Team
751
 
 
752
 
        * dict/dict0dict.c, include/dict0dict.h,
753
 
        mysql-test/innodb_bug44571.result, mysql-test/innodb_bug44571.test:
754
 
        Fix Bug#44571 InnoDB Plugin crashes on ADD INDEX
755
 
 
756
 
2009-08-27      The InnoDB Team
757
 
 
758
 
        * row/row0merge.c:
759
 
        Fix a bug in the merge sort that can corrupt indexes in fast index
760
 
        creation. Add some consistency checks. Check that the number of
761
 
        records remains constant in every merge sort pass.
762
 
 
763
 
2009-08-27      The InnoDB Team
764
 
 
765
 
        * buf/buf0buf.c, buf/buf0lru.c, buf/buf0rea.c, handler/ha_innodb.cc,
766
 
        include/buf0buf.h, include/buf0buf.ic, include/buf0lru.h,
767
 
        include/ut0ut.h, ut/ut0ut.c:
768
 
        Make it possible to tune the buffer pool LRU eviction policy to be
769
 
        more resistant against index scans. Introduce the settable global
770
 
        variables innodb_old_blocks_pct and innodb_old_blocks_time for
771
 
        controlling the buffer pool eviction policy. The parameter
772
 
        innodb_old_blocks_pct (5..95) controls the desired amount of "old"
773
 
        blocks in the LRU list. The default is 37, corresponding to the
774
 
        old fixed ratio of 3/8. Each time a block is accessed, it will be
775
 
        moved to the "new" blocks if its first access was at least
776
 
        innodb_old_blocks_time milliseconds ago (default 0, meaning every
777
 
        block). The idea is that in index scans, blocks will be accessed
778
 
        a few times within innodb_old_blocks_time, and they will remain in
779
 
        the "old" section of the LRU list. Thus, when innodb_old_blocks_time
780
 
        is nonzero, blocks retrieved for one-time index scans will be more
781
 
        likely candidates for eviction than blocks that are accessed in
782
 
        random patterns.
783
 
 
784
 
2009-08-26      The InnoDB Team
785
 
 
786
 
        * handler/ha_innodb.cc, os/os0file.c:
787
 
        Fix Bug#42885 buf_read_ahead_random, buf_read_ahead_linear counters,
788
 
        thread wakeups
789
 
 
790
 
2009-08-20      The InnoDB Team
791
 
 
792
 
        * lock/lock0lock.c:
793
 
        Fix Bug#46650 Innodb assertion autoinc_lock == lock in
794
 
        lock_table_remove_low on INSERT SELECT
795
 
 
796
 
2009-08-13      The InnoDB Team
797
 
 
798
 
        * handler/handler0alter.cc:
799
 
        Fix Bug#46657 InnoDB plugin: invalid read in index_merge_innodb test
800
 
        (Valgrind)
801
 
 
802
 
2009-08-11      The InnoDB Team
803
 
 
804
 
        InnoDB Plugin 1.0.4 released
805
 
 
806
 
2009-07-20      The InnoDB Team
807
 
 
808
 
        * buf/buf0rea.c, handler/ha_innodb.cc, include/srv0srv.h,
809
 
        srv/srv0srv.c:
810
 
        Change the read ahead parameter name to innodb_read_ahead_threshold.
811
 
        Change the meaning of this parameter to signify the number of pages
812
 
        that must be sequentially accessed for InnoDB to trigger a readahead
813
 
        request.
814
 
 
815
 
2009-07-20      The InnoDB Team
816
 
 
817
 
        * handler/ha_innodb.cc:
818
 
        Fix Bug#39802 On Windows, 32-bit time_t should be enforced
819
 
 
820
 
2009-07-16      The InnoDB Team
821
 
 
822
 
        * include/univ.i:
823
 
        Support inlining of functions and prefetch with Sun Studio.
824
 
        These changes are based on contribution from Sun Microsystems Inc.
825
 
        under a BSD license.
826
 
 
827
 
2009-07-14      The InnoDB Team
828
 
 
829
 
        * fil/fil0fil.c:
830
 
        Fix Bug#45814 URL reference in InnoDB server errors needs adjusting to
831
 
        match documentation
832
 
 
833
 
2009-07-14      The InnoDB Team
834
 
 
835
 
        * handler/ha_innodb.cc, mysql-test/innodb_bug21704.result,
836
 
        mysql-test/innodb_bug21704.test:
837
 
        Fix Bug#21704 Renaming column does not update FK definition
838
 
 
839
 
2009-07-10      The InnoDB Team
840
 
 
841
 
        * handler/ha_innodb.cc, srv/srv0srv.c:
842
 
        Change the defaults for
843
 
        innodb_sync_spin_loops: 20 -> 30
844
 
        innodb_spin_wait_delay: 5 -> 6
845
 
 
846
 
2009-07-08      The InnoDB Team
847
 
 
848
 
        * buf/buf0flu.c, handler/ha_innodb.cc, include/buf0flu.h,
849
 
        include/log0log.h, include/log0log.ic, include/srv0srv.h,
850
 
        srv/srv0srv.c:
851
 
        Implement the adaptive flushing of dirty pages, which uses
852
 
        a heuristics based flushing rate of dirty pages to avoid IO
853
 
        bursts at checkpoint. Expose new configure knob
854
 
        innodb_adaptive_flushing to control whether the new flushing
855
 
        algorithm should be used.
856
 
 
857
 
2009-07-07      The InnoDB Team
858
 
 
859
 
        * handler/ha_innodb.cc, include/srv0srv.h, log/log0log.c,
860
 
        srv/srv0srv.c:
861
 
        Implement IO capacity tuning. Expose new configure knob
862
 
        innodb_io_capacity to control the master threads IO rate. The
863
 
        ibuf merge is also changed from synchronous to asynchronous.
864
 
        These changes are based on contribution from Google Inc.
865
 
        under a BSD license.
866
 
 
867
 
2009-07-02      The InnoDB Team
868
 
 
869
 
        * include/ut0ut.h, plug.in, ut/ut0ut.c:
870
 
        Use the PAUSE instruction inside the spinloop if it is available,
871
 
        Thanks to Mikael Ronstrom <mikael@mysql.com>.
872
 
 
873
 
2009-06-29      The InnoDB Team
874
 
 
875
 
        * handler/ha_innodb.cc, mysql-test/innodb_file_format.test,
876
 
        mysql-test/innodb_file_format.result:
877
 
        Do not crash on SET GLOBAL innodb_file_format=DEFAULT
878
 
        or SET GLOBAL innodb_file_format_check=DEFAULT.
879
 
 
880
 
2009-06-29      The InnoDB Team
881
 
 
882
 
        * buf/buf0buf.c, buf/buf0rea.c, lock/lock0lock.c:
883
 
        Tolerate missing tablespaces during crash recovery and when
884
 
        printing information on locks.
885
 
 
886
 
2009-06-29      The InnoDB Team
887
 
 
888
 
        * buf/buf0buf.c:
889
 
        Fix a race condition when reading buf_fix_count.
890
 
        Currently, it is not being protected by the buffer pool mutex,
891
 
        but by the block mutex.
892
 
 
893
 
2009-06-29      The InnoDB Team
894
 
 
895
 
        * handler/handler0alter.cc:
896
 
        Start the user transaction prebuilt->trx if it was not started
897
 
        before adding or dropping an index. Without this fix, the
898
 
        table could be locked outside an active transaction.
899
 
 
900
 
2009-06-25      The InnoDB Team
901
 
 
902
 
        * handler/ha_innodb.cc, mysql-test/innodb_bug42101.test,
903
 
        mysql-test/innodb_bug42101.result,
904
 
        mysql-test/innodb_bug42101-nonzero.test,
905
 
        mysql-test/innodb_bug42101-nonzero.result:
906
 
        Fix Bug#45749 Race condition in SET GLOBAL
907
 
        innodb_commit_concurrency=DEFAULT
908
 
 
909
 
2009-06-25      The InnoDB Team
910
 
 
911
 
        * dict/dict0dict.c:
912
 
        When an index column cannot be found in the table during index
913
 
        creation, display additional diagnostic before an assertion failure.
914
 
        This does NOT fix Bug#44571 InnoDB Plugin crashes on ADD INDEX,
915
 
        but it helps understand the reason of the crash.
916
 
 
917
 
2009-06-17      The InnoDB Team
918
 
 
919
 
        * row/row0merge.c:
920
 
        Fix Bug#45426 UNIV_DEBUG build cause assertion error at CREATE INDEX
921
 
 
922
 
2009-06-17      The InnoDB Team
923
 
 
924
 
        * mysql-test/innodb_bug45357.result, mysql-test/innodb_bug45357.test,
925
 
        row/row0mysql.c:
926
 
        Fix Bug#45357 5.1.35 crashes with Failing assertion: index->type &
927
 
        DICT_CLUSTERED
928
 
 
929
 
2009-06-17      The InnoDB Team
930
 
 
931
 
        * handler/ha_innodb.cc, mysql-test/innodb-autoinc.result,
932
 
        mysql-test/innodb-autoinc.test:
933
 
        Fix Bug#44030 Error: (1500) Couldn't read the MAX(ID) autoinc value
934
 
        from the index (PRIMARY)
935
 
 
936
 
2009-06-11      The InnoDB Team
937
 
 
938
 
        * handler/ha_innodb.cc, mysql-test/innodb.result, srv/srv0srv.c:
939
 
        Change the following defaults:
940
 
        max_dirty_pages_pct: from 90 to 75, max allowed from 100 to 99
941
 
        additional_mem_pool_size: from 1 to 8 MB
942
 
        buffer_pool_size: from 8 to 128 MB
943
 
        log_buffer_size: from 1 to 8 MB
944
 
        read_io_threads/write_io_threads: from 1 to 4
945
 
 
946
 
2009-06-09      The InnoDB Team
947
 
 
948
 
        * handler/ha_innodb.cc, include/trx0trx.h, trx/trx0trx.c:
949
 
        Enable Group Commit functionality that was broken in 5.0 when
950
 
        distributed transactions were introduced.
951
 
 
952
 
2009-06-05      The InnoDB Team
953
 
 
954
 
        * handler/ha_innodb.cc, include/os0file.h, include/srv0srv.h,
955
 
        os/os0file.c, srv/srv0srv.c, srv/srv0start.c:
956
 
        Enable functionality to have multiple background IO helper threads.
957
 
        Expose new configure knobs innodb_read_io_threads and
958
 
        innodb_write_io_threads and deprecate innodb_file_io_threads (this
959
 
        parameter was relevant only on windows). Internally this allows
960
 
        multiple segments for read and write IO request arrays where one
961
 
        thread works on one segment.
962
 
 
963
 
2009-06-05      The InnoDB Team
964
 
 
965
 
        * buf/buf0lru.c, buf/buf0rea.c, handler/ha_innodb.cc,
966
 
        include/srv0srv.h, srv/srv0srv.c:
967
 
        Fix a bug in linear read ahead:
968
 
          1) Take into account access pattern when deciding whether or not to
969
 
            do linear read ahead.
970
 
          2) Expose a knob innodb_read_ahead_factor = [0-64] default (8),
971
 
            dynamic, global to control linear read ahead behavior. This is the
972
 
            value of the number of pages that InnoDB will tolerate within a
973
 
            64 page extent even if they are accessed out of order or have
974
 
            not been accessed at all. This number (which varies from 0 to 64)
975
 
            is indicative of the slack that we have when deciding about linear
976
 
            readahead.
977
 
          3) Disable random read ahead. Keep the code for now.
978
 
 
979
 
2009-06-03      The InnoDB Team
980
 
 
981
 
        * dict/dict0dict.c, mysql-test/t/innodb_mysql.test,
982
 
        mysql-test/r/innodb_mysql.result:
983
 
        Fix Bug#39793 Foreign keys not constructed when column
984
 
        has a '#' in a comment or default value
985
 
 
986
 
2009-05-27      The InnoDB Team
987
 
 
988
 
        * Doxyfile:
989
 
        Allow the extraction of documentation from the code base with the
990
 
        Doxygen tool. Convert and add many (but not yet all) comments to
991
 
        Doxygen format.
992
 
 
993
 
2009-05-19      The InnoDB Team
994
 
 
995
 
        * btr/btr0btr.c, btr/btr0cur.c, lock/lock0lock.c,
996
 
        include/page0page.ic, include/lock0lock.h, include/dict0dict.h,
997
 
        include/page0page.h, include/dict0dict.ic, ibuf/ibuf0ibuf.c,
998
 
        page/page0zip.c, page/page0page.c:
999
 
        Write updates of PAGE_MAX_TRX_ID to the redo log and add debug
1000
 
        assertions for checking that PAGE_MAX_TRX_ID is valid on leaf
1001
 
        pages of secondary indexes and the insert buffer B-tree. This bug
1002
 
        could cause failures in secondary index lookups in consistent
1003
 
        reads right after crash recovery.
1004
 
 
1005
 
2009-05-18      The InnoDB Team
1006
 
 
1007
 
        * btr/btr0cur.c:
1008
 
        Correctly estimate the space needed on the compressed page when
1009
 
        performing an update by delete-and-insert.
1010
 
 
1011
 
2009-05-14      The InnoDB Team
1012
 
 
1013
 
        * handler/ha_innodb.cc, include/srv0srv.h,
1014
 
        mysql-test/innodb_bug42101-nonzero-master.opt,
1015
 
        mysql-test/innodb_bug42101-nonzero.result,
1016
 
        mysql-test/innodb_bug42101-nonzero.test,
1017
 
        mysql-test/innodb_bug42101.result, mysql-test/innodb_bug42101.test,
1018
 
        srv/srv0srv.c:
1019
 
        Fix Bug#42101 Race condition in innodb_commit_concurrency
1020
 
 
1021
 
2009-05-13      The InnoDB Team
1022
 
 
1023
 
        * dict/dict0dict.c:
1024
 
        Fix Bug#44320 InnoDB: missing DB_ROLL_PTR in Table Monitor COLUMNS
1025
 
        output
1026
 
 
1027
 
2009-04-29      The InnoDB Team
1028
 
 
1029
 
        * fil/fil0fil.c, include/fil0fil.h, include/mtr0mtr.h,
1030
 
        log/log0recv.c:
1031
 
        Fix Bug#41609 Crash recovery does not work for InnoDB temporary tables
1032
 
 
1033
 
2009-04-23      The InnoDB Team
1034
 
 
1035
 
        * row/row0mysql.c:
1036
 
        When scanning indexes, report in the error log any error codes
1037
 
        returned by the search function. These error codes will still be
1038
 
        ignored in CHECK TABLE.
1039
 
 
1040
 
2009-04-23      The InnoDB Team
1041
 
 
1042
 
        * include/trx0types.h:
1043
 
        Define the logical type names trx_id_t, roll_ptr_t, and undo_no_t
1044
 
        and use them in place of dulint everywhere.
1045
 
 
1046
 
2009-04-18      The InnoDB Team
1047
 
 
1048
 
        * handler/ha_innodb.cc, include/pars0pars.h:
1049
 
        Fix Bug#29125 Windows Server X64: so many compiler warnings
1050
 
 
1051
 
2009-04-16      The InnoDB Team
1052
 
 
1053
 
        * include/univ.i:
1054
 
        Define REFMAN as the base URL of the MySQL Reference Manual and
1055
 
        use the macro in all diagnostic output.
1056
 
 
1057
 
2009-04-16      The InnoDB Team
1058
 
 
1059
 
        * CMakeLists.txt, include/os0sync.h, include/sync0sync.h,
1060
 
        include/sync0sync.ic, include/univ.i, srv/srv0start.c,
1061
 
        sync/sync0sync.c:
1062
 
        Use the Windows Interlocked functions for atomic memory
1063
 
        access.
1064
 
 
1065
 
2009-04-15      The InnoDB Team
1066
 
 
1067
 
        * mysql-test/innodb.result, mysql-test/innodb.test:
1068
 
        Fix Bug#43309 Test main.innodb can't be run twice
1069
 
 
1070
 
2009-04-14      The InnoDB Team
1071
 
 
1072
 
        * CMakeLists.txt, handler/win_delay_loader.cc,
1073
 
        win-plugin/win-plugin.diff:
1074
 
        Remove statically linked libraries from MySQL (zlib and strings).
1075
 
 
1076
 
2009-04-11      The InnoDB Team
1077
 
 
1078
 
        * CMakeLists.txt, win-plugin/README, win-plugin/win-plugin.diff:
1079
 
        Rewrite CMakeLists.txt.
1080
 
 
1081
 
2009-04-07      The InnoDB Team
1082
 
 
1083
 
        * include/os0sync.h, include/sync0rw.ic, include/sync0sync.h,
1084
 
        include/sync0sync.ic, include/univ.i, plug.in, srv/srv0srv.c,
1085
 
        srv/srv0start.c, sync/sync0arr.c, sync/sync0sync.c:
1086
 
        Enable atomics on Solaris (using the libc functions as defined in
1087
 
        atomic.h) if GCC atomic builtins are not present.
1088
 
 
1089
 
2009-04-07      The InnoDB Team
1090
 
 
1091
 
        * btr/btr0btr.c, dict/dict0dict.c, ibuf/ibuf0ibuf.c,
1092
 
        include/data0data.h, include/data0data.ic, include/data0type.h,
1093
 
        include/data0type.ic, include/dict0dict.h, include/dict0dict.ic,
1094
 
        include/rem0rec.ic, mysql-test/innodb.result, mysql-test/innodb.test,
1095
 
        pars/pars0pars.c, rem/rem0rec.c, row/row0upd.c:
1096
 
        Fix Bug#44032 In ROW_FORMAT=REDUNDANT, update UTF-8 CHAR
1097
 
        to/from NULL is not in-place
1098
 
 
1099
 
2009-04-07      The InnoDB Team
1100
 
 
1101
 
        * page/page0cur.c:
1102
 
        Fix Bug#43660 SHOW INDEXES/ANALYZE does NOT update cardinality for
1103
 
        indexes of InnoDB table
1104
 
 
1105
 
2009-04-06      The InnoDB Team
1106
 
 
1107
 
        * handler/ha_innodb.cc:
1108
 
        Make the parameter innodb_change_buffering settable by the
1109
 
        configuration file or mysqld command line options. Before this
1110
 
        fix, the initial value specified for this parameter was ignored.
1111
 
 
1112
 
2009-04-06      The InnoDB Team
1113
 
 
1114
 
        * sync/sync0rw.c:
1115
 
        Avoid a bogus failure in UNIV_SYNC_DEBUG diagnostics.
1116
 
 
1117
 
2009-04-02      The InnoDB Team
1118
 
 
1119
 
        * handler/ha_innodb.cc, include/srv0srv.h, srv/srv0srv.c:
1120
 
        Add new parameter innodb_spin_wait_delay to set the maximum delay
1121
 
        between polling for a spin lock.
1122
 
 
1123
 
2009-04-02      The InnoDB Team
1124
 
 
1125
 
        * dict/dict0crea.c, handler/ha_innodb.cc, handler/ha_innodb.h,
1126
 
        include/dict0mem.h, include/row0merge.h, include/row0mysql.h,
1127
 
        mysql-test/innodb-index.result, mysql-test/innodb-index.test,
1128
 
        row/row0merge.c, row/row0sel.c:
1129
 
        In consistent reads, refuse to use newly created indexes that may
1130
 
        lack history.
1131
 
 
1132
 
2009-03-25      The InnoDB Team
1133
 
 
1134
 
        * buf/buf0buf.c, handler/ha_innodb.cc, include/buf0buf.h:
1135
 
        In SHOW ENGINE INNODB MUTEX do not show the status of block->mutex,
1136
 
        block->lock, block->lock->mutex (if applicable) and all mutexes and
1137
 
        rw-locks for which number of os-waits are zero because this can
1138
 
        be overwhelming particularly when the buffer pool is very large.
1139
 
 
1140
 
2009-03-20      The InnoDB Team
1141
 
 
1142
 
        * buf/buf0buf.c, include/log0recv.h, log/log0recv.c:
1143
 
        Remove the compile-time constant parameters of
1144
 
        recv_recover_page(), recv_scan_log_recs(), and recv_sys_init().
1145
 
 
1146
 
2009-03-20      The InnoDB Team
1147
 
 
1148
 
        * data/data0type.c, handler/ha_innodb.cc, include/ha_prototypes.h:
1149
 
        Declare innobase_get_at_most_n_mbchars() in ha_prototypes.h.
1150
 
 
1151
 
2009-03-20      The InnoDB Team
1152
 
 
1153
 
        * fil/fil0fil.h, fil/fil0fil.c, srv/srv0start.c:
1154
 
        Add the parameter hash_size to fil_init().
1155
 
 
1156
 
2009-03-20      The InnoDB Team
1157
 
 
1158
 
        * fil/fil0fil.c:
1159
 
        Refer to fil_system directly, not via local variables.
1160
 
 
1161
 
2009-03-20      The InnoDB Team
1162
 
 
1163
 
        * page/page0page.c:
1164
 
        In page_validate(), always report the space id, page number and
1165
 
        the name of the index when corruption is noticed.
1166
 
 
1167
 
2009-03-20      The InnoDB Team
1168
 
 
1169
 
        * include/log0log.h, include/log0log.ic, log/log0log.c:
1170
 
        Add in/out comments or const qualifiers to some function
1171
 
        parameters as appropriate.
1172
 
 
1173
 
2009-03-20      The InnoDB Team
1174
 
 
1175
 
        * dict/dict0boot.c, dict/dict0dict.c, fsp/fsp0fsp.c,
1176
 
        include/dict0dict.h, include/srv0srv.h, srv/srv0srv.c,
1177
 
        page/page0page.c:
1178
 
        Replace srv_sys->dummy_ind1 and srv_sys->dummy_ind2 with
1179
 
        dict_ind_redundant and dict_ind_compact, which are
1180
 
        initialized by dict_init().
1181
 
 
1182
 
2009-03-11      The InnoDB Team
1183
 
 
1184
 
        InnoDB Plugin 1.0.3 released
1185
 
 
1186
 
2009-03-05      The InnoDB Team
1187
 
 
1188
 
        * handler/ha_innodb.cc, mysql-test/innodb-autoinc.result,
1189
 
        mysql-test/innodb-autoinc.test:
1190
 
        Fix Bug#43203 Overflow from auto incrementing causes server segv
1191
 
 
1192
 
2009-02-25      The InnoDB Team
1193
 
 
1194
 
        * handler/ha_innodb.cc, mysql-test/innodb-autoinc.result,
1195
 
        mysql-test/innodb-autoinc.test:
1196
 
        Fix Bug#42714 AUTO_INCREMENT errors in 5.1.31
1197
 
 
1198
 
2009-02-23      The InnoDB Team
1199
 
 
1200
 
        * btr/btr0cur.c:
1201
 
        Fix Bug#43043 Crash on BLOB delete operation
1202
 
 
1203
 
2009-02-20      The InnoDB Team
1204
 
 
1205
 
        * handler/ha_innodb.cc:
1206
 
        Make innodb_use_sys_malloc=ON the default.
1207
 
 
1208
 
2009-02-20      The InnoDB Team
1209
 
 
1210
 
        * handler/ha_innodb.cc, mysql-test/innodb-autoinc.result,
1211
 
        mysql-test/innodb-autoinc.test:
1212
 
        Fix Bug#42400 InnoDB autoinc code can't handle floating-point columns
1213
 
 
1214
 
2009-02-18      The InnoDB Team
1215
 
 
1216
 
        * include/ut0mem.h, os/os0proc.c, ut/ut0mem.c:
1217
 
        Protect ut_total_allocated_memory with ut_list_mutex in
1218
 
        os_mem_alloc_large() and os_mem_free_large(). The lack of this mutex
1219
 
        protection could cause an assertion failure during fast index
1220
 
        creation. Also, add UNIV_MEM_ALLOC and UNIV_MEM_FREE instrumentation
1221
 
        to os_mem_alloc_large() and os_mem_free_large(), so that Valgrind can
1222
 
        detect more errors.
1223
 
 
1224
 
2009-02-11      The InnoDB Team
1225
 
 
1226
 
        * handler/ha_innodb.cc:
1227
 
        Make innodb_thread_concurrency=0 the default. The old default value
1228
 
        was 8. A non-zero setting may be useful when InnoDB is showing severe
1229
 
        scalability problems under multiple concurrent connections.
1230
 
 
1231
 
2009-02-10      The InnoDB Team
1232
 
 
1233
 
        * handler/ha_innodb.cc, handler/ha_innodb.h:
1234
 
        Fix Bug#41676 Table names are case insensitive in locking
1235
 
 
1236
 
2009-02-10      The InnoDB Team
1237
 
 
1238
 
        * mem/mem0dbg.c, mem/mem0mem.c, mem/mem0pool.c:
1239
 
        When innodb_use_sys_malloc is set, ignore
1240
 
        innodb_additional_mem_pool_size, because nothing will be allocated
1241
 
        from mem_comm_pool.
1242
 
 
1243
 
2009-02-10      The InnoDB Team
1244
 
 
1245
 
        * ut/ut0mem.c:
1246
 
        Map ut_malloc_low(), ut_realloc(), and ut_free() directly to malloc(),
1247
 
        realloc(), and free() when innodb_use_sys_malloc is set. As a side
1248
 
        effect, ut_total_allocated_memory ("Total memory allocated" in the
1249
 
        "BUFFER POOL AND MEMORY" section of SHOW ENGINE INNODB STATUS) will
1250
 
        exclude any memory allocated by these functions when
1251
 
        innodb_use_sys_malloc is set.
1252
 
 
1253
 
2009-02-10      The InnoDB Team
1254
 
 
1255
 
        * btr/btr0cur.c, btr/btr0sea.c, buf/buf0buf.c, handler/ha_innodb.cc,
1256
 
        include/buf0buf.ic, include/os0sync.h, include/srv0srv.h,
1257
 
        include/sync0rw.h, include/sync0rw.ic, include/sync0sync.h,
1258
 
        include/sync0sync.ic, include/univ.i, row/row0sel.c, srv/srv0srv.c,
1259
 
        srv/srv0start.c, sync/sync0arr.c, sync/sync0rw.c, sync/sync0sync.c:
1260
 
        On those platforms that support it, implement the synchronization
1261
 
        primitives of InnoDB mutexes and read/write locks with GCC atomic
1262
 
        builtins instead of Pthreads mutexes and InnoDB mutexes. These changes
1263
 
        are based on a patch supplied by Mark Callaghan of Google under a BSD
1264
 
        license.
1265
 
 
1266
 
2009-01-30      The InnoDB Team
1267
 
 
1268
 
        * btr/btr0cur.c, btr/btr0sea.c, buf/buf0buf.c, handler/ha_innodb.cc,
1269
 
        include/btr0sea.h, include/buf0buf.h, include/sync0sync.h,
1270
 
        sync/sync0sync.c:
1271
 
        Make the configuration parameter innodb_adaptive_hash_index dynamic,
1272
 
        so that it can be changed at runtime.
1273
 
 
1274
 
2009-01-29      The InnoDB Team
1275
 
 
1276
 
        * handler/ha_innodb.cc, ibuf/ibuf0ibuf.c, include/ibuf0ibuf.h,
1277
 
        include/ibuf0ibuf.ic:
1278
 
        Implement the settable global variable innodb_change_buffering,
1279
 
        with the allowed values 'none' and 'inserts'. The default value
1280
 
        'inserts' enables the buffering of inserts to non-unique secondary
1281
 
        index trees when the B-tree leaf page is not in the buffer pool.
1282
 
 
1283
 
2009-01-27      The InnoDB Team
1284
 
 
1285
 
        * buf/buf0lru.c:
1286
 
        Fix a race condition in buf_LRU_invalidate_tablespace(): The
1287
 
        compressed page size (zip_size) was read while the block descriptor
1288
 
        was no longer protected by a mutex. This could lead to corruption
1289
 
        when a table is dropped on a busy system that contains compressed
1290
 
        tables.
1291
 
 
1292
 
2009-01-26      The InnoDB Team
1293
 
 
1294
 
        * btr/btr0sea.c, buf/buf0buf.c, include/buf0buf.h, include/buf0buf.ic,
1295
 
        include/mtr0log.ic, include/row0upd.ic, mtr/mtr0mtr.c:
1296
 
        Implement buf_block_align() with pointer arithmetics, as it is in the
1297
 
        built-in InnoDB distributed with MySQL. Do not acquire the buffer pool
1298
 
        mutex before buf_block_align(). This removes a scalability bottleneck
1299
 
        in the adaptive hash index lookup. In CHECK TABLE, check that
1300
 
        buf_pool->page_hash is consistent with buf_block_align().
1301
 
 
1302
 
2009-01-23      The InnoDB Team
1303
 
 
1304
 
        * btr/btr0sea.c:
1305
 
        Fix Bug#42279 Race condition in btr_search_drop_page_hash_when_freed()
1306
 
 
1307
 
2009-01-23      The InnoDB Team
1308
 
 
1309
 
        * buf/buf0buf.c, include/buf0buf.h:
1310
 
        Remove the unused mode BUF_GET_NOWAIT of buf_page_get_gen()
1311
 
 
1312
 
2009-01-20      The InnoDB Team
1313
 
 
1314
 
        * include/rem0rec.h, include/rem0rec.ic:
1315
 
        Fix Bug#41571 MySQL segfaults after innodb recovery
1316
 
 
1317
 
2009-01-20      The InnoDB Team
1318
 
 
1319
 
        * lock/lock0lock.c:
1320
 
        Fix Bug#42152 Race condition in lock_is_table_exclusive()
1321
 
 
1322
 
2009-01-14      The InnoDB Team
1323
 
 
1324
 
        * include/trx0roll.h, trx/trx0roll.c, trx/trx0trx.c:
1325
 
        Fix Bug#38187 Error 153 when creating savepoints
1326
 
 
1327
 
2009-01-14      The InnoDB Team
1328
 
 
1329
 
        * dict/dict0load.c:
1330
 
        Fix Bug#42075 dict_load_indexes failure in dict_load_table will
1331
 
        corrupt the dictionary cache
1332
 
 
1333
 
2009-01-13      The InnoDB Team
1334
 
 
1335
 
        * buf/buf0buddy.c, dict/dict0dict.c, dict/dict0mem.c, fil/fil0fil.c,
1336
 
        ha/ha0storage.c, handler/ha_innodb.cc, handler/win_delay_loader.cc,
1337
 
        include/buf0buf.ic, include/dict0dict.ic, include/hash0hash.h,
1338
 
        thr/thr0loc.c, trx/trx0i_s.c:
1339
 
        Add the parameter ASSERTION to HASH_SEARCH() macro, and use it for
1340
 
        light validation of the traversed items in hash table lookups when
1341
 
        UNIV_DEBUG is enabled.
1342
 
 
1343
 
2009-01-09      The InnoDB Team
1344
 
 
1345
 
        * buf/buf0flu.c, include/buf0flu.h, include/buf0flu.ic:
1346
 
        Remove unused code from the functions
1347
 
        buf_flush_insert_into_flush_list() and
1348
 
        buf_flush_insert_sorted_into_flush_list().
1349
 
 
1350
 
2009-01-09      The InnoDB Team
1351
 
 
1352
 
        * buf/buf0flu.c:
1353
 
        Simplify the functions buf_flush_try_page() and buf_flush_batch(). Add
1354
 
        debug assertions and an explanation to buf_flush_write_block_low().
1355
 
 
1356
 
2009-01-07      The InnoDB Team
1357
 
 
1358
 
        * row/row0merge.c:
1359
 
        Fix a bug in recovery when dropping temporary indexes.
1360
 
 
1361
 
2009-01-07      The InnoDB Team
1362
 
 
1363
 
        * handler/ha_innodb.cc, handler/ha_innodb.h, handler/handler0alter.cc:
1364
 
        Fix Bug#41680 calls to trx_allocate_for_mysql are not consistent
1365
 
 
1366
 
2009-01-07      The InnoDB Team
1367
 
 
1368
 
        * mysql-test/innodb_bug41904.result, mysql-test/innodb_bug41904.test,
1369
 
        row/row0merge.c:
1370
 
        Fix Bug#41904 create unique index problem
1371
 
 
1372
 
2009-01-02      The InnoDB Team
1373
 
 
1374
 
        * handler/ha_innodb.cc, include/srv0srv.h, mem/mem0pool.c,
1375
 
        mysql-test/innodb-use-sys-malloc-master.opt,
1376
 
        mysql-test/innodb-use-sys-malloc.result,
1377
 
        mysql-test/innodb-use-sys-malloc.test, srv/srv0srv.c, srv/srv0start.c:
1378
 
        Implement the configuration parameter innodb_use_sys_malloc (false by
1379
 
        default), for disabling InnoDB's internal memory allocator and using
1380
 
        system malloc/free instead. The "BUFFER POOL AND MEMORY" section of
1381
 
        SHOW ENGINE INNODB STATUS will report "in additional pool allocated
1382
 
        allocated 0" when innodb_use_sys_malloc is set.
1383
 
 
1384
 
2008-12-30      The InnoDB Team
1385
 
 
1386
 
        * btr/btr0btr.c:
1387
 
        When setting the PAGE_LEVEL of a compressed B-tree page from or to 0,
1388
 
        compress the page at the same time. This is necessary, because the
1389
 
        column information stored on the compressed page will differ between
1390
 
        leaf and non-leaf pages. Leaf pages are identified by PAGE_LEVEL=0.
1391
 
        This bug can make InnoDB crash when all rows of a compressed table are
1392
 
        deleted.
1393
 
 
1394
 
2008-12-17      The InnoDB Team
1395
 
 
1396
 
        * include/row0sel.h, include/row0upd.h, pars/pars0pars.c,
1397
 
        row/row0mysql.c, row/row0sel.c, row/row0upd.c:
1398
 
        Remove update-in-place select from the internal SQL interpreter. It
1399
 
        was only used for updating the InnoDB internal data dictionary when
1400
 
        renaming or dropping tables. It could have caused deadlocks when
1401
 
        acquiring latches on insert buffer bitmap pages.
1402
 
 
1403
 
2008-12-17      The InnoDB Team
1404
 
 
1405
 
        * btr/btr0sea.c, buf/buf0buf.c, buf/buf0lru.c, ha/ha0ha.c,
1406
 
        ha/hash0hash.c, include/buf0buf.h, include/ha0ha.h, include/ha0ha.ic,
1407
 
        include/hash0hash.h, include/univ.i:
1408
 
        Introduce the preprocessor symbol UNIV_AHI_DEBUG for enabling adaptive
1409
 
        hash index debugging independently of UNIV_DEBUG.
1410
 
 
1411
 
2008-12-16      The InnoDB Team
1412
 
 
1413
 
        * btr/btr0cur.c:
1414
 
        Do not update the free bits in the insert buffer bitmap when inserting
1415
 
        or deleting from the insert buffer B-tree. Assert that records in the
1416
 
        insert buffer B-tree are never updated.
1417
 
 
1418
 
2008-12-12      The InnoDB Team
1419
 
 
1420
 
        * buf/buf0buf.c, fil/fil0fil.c, fsp/fsp0fsp.c, ibuf/ibuf0ibuf.c,
1421
 
        include/fil0fil.h, include/ibuf0ibuf.h, include/ibuf0ibuf.ic,
1422
 
        include/ibuf0types.h:
1423
 
        Clean up the insert buffer subsystem so that only one insert
1424
 
        buffer B-tree exists.
1425
 
        Originally, there were provisions in InnoDB for multiple insert
1426
 
        buffer B-trees, apparently one for each tablespace.
1427
 
        When Heikki Tuuri implemented multiple InnoDB tablespaces in
1428
 
        MySQL/InnoDB 4.1, he made the insert buffer live only in the
1429
 
        system tablespace (space 0) but left the provisions in the code.
1430
 
 
1431
 
2008-12-11      The InnoDB Team
1432
 
 
1433
 
        * include/srv0srv.h, os/os0proc.c, srv/srv0srv.c:
1434
 
        Fix the issue that the InnoDB plugin fails if innodb_buffer_pool_size
1435
 
        is defined bigger than 4096M on 64-bit Windows. This bug should not
1436
 
        have affected other 64-bit systems.
1437
 
 
1438
 
2008-12-09      The InnoDB Team
1439
 
 
1440
 
        * handler/ha_innodb.cc:
1441
 
        Fix Bug#40386 Not flushing query cache after truncate.
1442
 
 
1443
 
2008-12-09      The InnoDB Team
1444
 
 
1445
 
        * handler/ha_innodb.cc, srv/srv0srv.c, trx/trx0trx.c:
1446
 
        Fix Bug#40760 "set global innodb_thread_concurrency = 0;" is not safe
1447
 
 
1448
 
2008-12-04      The InnoDB Team
1449
 
 
1450
 
        * handler/ha_innodb.cc, handler/mysql_addons.cc,
1451
 
        include/mysql_addons.h, trx/trx0i_s.c, win-plugin/win-plugin.diff:
1452
 
        Remove dependencies to MySQL internals (defining MYSQL_SERVER).
1453
 
 
1454
 
2008-12-02      The InnoDB Team
1455
 
 
1456
 
        * page/page0cur.c:
1457
 
        When allocating space for a record from the free list of previously
1458
 
        purged records, zero out the DB_TRX_ID and DB_ROLL_PTR of the purged
1459
 
        record if the new record would not overwrite these fields. This fixes
1460
 
        a harmless content mismatch reported by page_zip_validate().
1461
 
 
1462
 
2008-12-02      The InnoDB Team
1463
 
 
1464
 
        * row/row0merge.c:
1465
 
        Replace the WHILE 1 with WHILE 1=1 in the SQL procedure, so that the
1466
 
        loop will actually be entered and temporary indexes be dropped during
1467
 
        crash recovery.
1468
 
 
1469
 
2008-12-01      The InnoDB Team
1470
 
 
1471
 
        InnoDB Plugin 1.0.2 released
1472
 
 
1473
 
2008-10-31      The InnoDB Team
1474
 
 
1475
 
        * dict/dict0mem.c, include/dict0mem.h, include/lock0lock.h,
1476
 
        include/row0mysql.h, include/trx0trx.h, include/univ.i,
1477
 
        include/ut0vec.h, include/ut0vec.ic, lock/lock0lock.c,
1478
 
        row/row0mysql.c, trx/trx0trx.c:
1479
 
        Fix Bug#26316 Triggers create duplicate entries on auto-increment
1480
 
        columns
1481
 
 
1482
 
2008-10-30      The InnoDB Team
1483
 
 
1484
 
        * handler/ha_innodb.cc, handler/handler0vars.h,
1485
 
        handler/win_delay_loader.cc, mysql-test/innodb_bug40360.result,
1486
 
        mysql-test/innodb_bug40360.test:
1487
 
        Fix Bug#40360 Binlog related errors with binlog off
1488
 
 
1489
 
2008-10-29      The InnoDB Team
1490
 
 
1491
 
        * include/data0type.ic:
1492
 
        Fix Bug#40369 dtype_get_sql_null_size() returns 0 or 1, not the size
1493
 
 
1494
 
2008-10-29      The InnoDB Team
1495
 
 
1496
 
        * handler/ha_innodb.cc, include/srv0srv.h, srv/srv0srv.c:
1497
 
        Fix Bug#38189 innodb_stats_on_metadata missing
1498
 
 
1499
 
2008-10-28      The InnoDB Team
1500
 
 
1501
 
        * CMakeLists.txt, ha_innodb.def, handler/ha_innodb.cc,
1502
 
        handler/handler0alter.cc, handler/handler0vars.h, handler/i_s.cc,
1503
 
        handler/win_delay_loader.cc, win-plugin/*:
1504
 
        Implemented the delayloading of externals for the plugin on Windows.
1505
 
        This makes it possible to build a dynamic plugin (ha_innodb.dll) on
1506
 
        Windows.
1507
 
 
1508
 
2008-10-27      The InnoDB Team
1509
 
 
1510
 
        * CMakeLists.txt:
1511
 
        Fix Bug#19424 InnoDB: Possibly a memory overrun of the buffer being
1512
 
        freed (64-bit Visual C)
1513
 
 
1514
 
2008-10-23      The InnoDB Team
1515
 
 
1516
 
        * ibuf/ibuf0ibuf.c:
1517
 
        ibuf_delete_rec(): When the cursor to the insert buffer record
1518
 
        cannot be restored, do not complain if the tablespace does not
1519
 
        exist, because the insert buffer record may have been discarded by
1520
 
        some other thread. This bug has existed in MySQL/InnoDB since
1521
 
        version 4.1, when innodb_file_per_table was implemented.
1522
 
        This may fix Bug#27276 InnoDB Error: ibuf cursor restoration fails.
1523
 
 
1524
 
2008-10-22      The InnoDB Team
1525
 
 
1526
 
        * dict/dict0dict.c, dict/dict0mem.c, handler/ha_innodb.cc,
1527
 
        handler/ha_innodb.h, include/dict0dict.h, include/dict0mem.h,
1528
 
        row/row0mysql.c:
1529
 
        Fix Bug#39830 Table autoinc value not updated on first insert
1530
 
        Fix Bug#35498 Cannot get table test/table1 auto-inccounter value in
1531
 
        ::info
1532
 
        Fix Bug#36411 "Failed to read auto-increment value from storage
1533
 
        engine" in 5.1.24 auto-inc
1534
 
 
1535
 
2008-10-22      The InnoDB Team
1536
 
 
1537
 
        * handler/ha_innodb.cc, include/row0mysql.h, row/row0mysql.c:
1538
 
        Fix Bug#40224 New AUTOINC changes mask reporting of deadlock/timeout
1539
 
        errors
1540
 
 
1541
 
2008-10-16      The InnoDB Team
1542
 
 
1543
 
        * dict/dict0dict.c, mysql-test/innodb-index.result,
1544
 
        mysql-test/innodb-index.test:
1545
 
        Skip the undo log size check when creating REDUNDANT and COMPACT
1546
 
        tables. In ROW_FORMAT=DYNAMIC and ROW_FORMAT=COMPRESSED, column
1547
 
        prefix indexes require that prefixes of externally stored columns
1548
 
        be written to the undo log. This may make the undo log record
1549
 
        bigger than the record on the B-tree page. The maximum size of an
1550
 
        undo log record is the page size. That must be checked for, in
1551
 
        dict_index_add_to_cache(). However, this restriction must not
1552
 
        be enforced on REDUNDANT or COMPACT tables.
1553
 
 
1554
 
2008-10-15      The InnoDB Team
1555
 
 
1556
 
        * btr/btr0cur.c, include/btr0cur.h, row/row0ext.c, row/row0sel.c,
1557
 
        row/row0upd.c:
1558
 
        When the server crashes while freeing an externally stored column
1559
 
        of a compressed table, the BTR_EXTERN_LEN field in the BLOB
1560
 
        pointer will be written as 0. Tolerate this in the functions that
1561
 
        deal with externally stored columns. This fixes problems after
1562
 
        crash recovery, in the rollback of incomplete transactions, and in
1563
 
        the purge of delete-marked records.
1564
 
 
1565
 
2008-10-15      The InnoDB Team
1566
 
 
1567
 
        * btr/btr0btr.c, include/page0zip.h, page/page0zip.c, include/univ.i:
1568
 
        When a B-tree node of a compressed table is split or merged, the
1569
 
        compression may fail. In this case, the entire compressed page
1570
 
        will be copied and the excess records will be deleted. However,
1571
 
        page_zip_copy(), now renamed to page_zip_copy_recs(), copied too
1572
 
        many fields in the page header, overwriting PAGE_BTR_SEG_LEAF and
1573
 
        PAGE_BTR_SEG_TOP when splitting the B-tree root. This caused
1574
 
        corruption of compressed tables. Furthermore, the lock table and
1575
 
        the adaptive hash index would be corrupted, because we forgot to
1576
 
        update them when invoking page_zip_copy_recs().
1577
 
 
1578
 
        Introduce the symbol UNIV_ZIP_DEBUG for triggering the copying of
1579
 
        compressed pages more often, for debugging purposes.
1580
 
 
1581
 
2008-10-10      The InnoDB Team
1582
 
 
1583
 
        * handler/handler0alter.cc, include/row0merge.h, row/row0merge.c,
1584
 
        row/row0mysql.c:
1585
 
        Fix some locking issues, mainly in fast index creation. The
1586
 
        InnoDB data dictionary cache should be latched whenever a
1587
 
        transaction is holding locks on any data dictionary tables.
1588
 
        Otherwise, lock waits or deadlocks could occur. Furthermore, the
1589
 
        data dictionary transaction must be committed (and the locks
1590
 
        released) before the data dictionary latch is released.
1591
 
 
1592
 
        ha_innobase::add_index(): Lock the data dictionary before renaming
1593
 
        or dropping the created indexes, because neither operation will
1594
 
        commit the data dictionary transaction.
1595
 
 
1596
 
        ha_innobase::final_drop_index(): Commit the transactions before
1597
 
        unlocking the data dictionary.
1598
 
 
1599
 
2008-10-09      The InnoDB Team
1600
 
 
1601
 
        * buf/buf0lru.c:
1602
 
        Fix Bug#39939 DROP TABLE/DISCARD TABLESPACE takes long time in
1603
 
        buf_LRU_invalidate_tablespace()
1604
 
 
1605
 
2008-10-08      The InnoDB Team
1606
 
 
1607
 
        * dict/dict0crea.c, trx/trx0roll.c, include/row0mysql.h,
1608
 
        row/row0merge.c, row/row0mysql.c:
1609
 
        When dropping a table, hold the data dictionary latch until the
1610
 
        transaction has been committed. The data dictionary latch is
1611
 
        supposed to prevent lock waits and deadlocks in the data
1612
 
        dictionary tables. Due to this bug, DROP TABLE could cause a
1613
 
        deadlock or hang. Note that because of Bug#33650 and Bug#39833,
1614
 
        MySQL may also drop a (temporary) table when executing CREATE INDEX
1615
 
        or ALTER TABLE ... ADD INDEX.
1616
 
 
1617
 
2008-10-04      The InnoDB Team
1618
 
 
1619
 
        * handler/ha_innodb.cc, mysql-test/innodb_bug39438-master.opt,
1620
 
        mysql-test/innodb_bug39438.result, mysql-test/innodb_bug39438.test:
1621
 
        Fix Bug#39438 Testcase for Bug#39436 crashes on 5.1 in
1622
 
        fil_space_get_latch
1623
 
 
1624
 
2008-10-04      The InnoDB Team
1625
 
 
1626
 
        * include/lock0lock.h, lock/lock0lock.c,
1627
 
        mysql-test/innodb_bug38231.result, mysql-test/innodb_bug38231.test,
1628
 
        row/row0mysql.c:
1629
 
        Fix Bug#38231 Innodb crash in lock_reset_all_on_table() on TRUNCATE +
1630
 
        LOCK / UNLOCK
1631
 
 
1632
 
2008-10-04      The InnoDB Team
1633
 
 
1634
 
        * handler/ha_innodb.cc:
1635
 
        Fix Bug#35498 Cannot get table test/table1 auto-inccounter value in
1636
 
        ::info
1637
 
 
1638
 
2008-10-04      The InnoDB Team
1639
 
 
1640
 
        * handler/ha_innodb.cc, handler/ha_innodb.h:
1641
 
        Fix Bug#37788 InnoDB Plugin: AUTO_INCREMENT wrong for compressed
1642
 
        tables
1643
 
 
1644
 
2008-10-04      The InnoDB Team
1645
 
 
1646
 
        * dict/dict0dict.c, handler/ha_innodb.cc, handler/ha_innodb.h,
1647
 
        include/dict0dict.h, include/dict0mem.h, row/row0mysql.c:
1648
 
        Fix Bug#39830 Table autoinc value not updated on first insert
1649
 
 
1650
 
2008-10-03      The InnoDB Team
1651
 
 
1652
 
        * mysql-test/innodb-index.test, mysql-test/innodb-index.result,
1653
 
        mysql-test/innodb-timeout.test, mysql-test/innodb-timeout.result,
1654
 
        srv/srv0srv.c, include/srv0srv.h, handler/ha_innodb.cc,
1655
 
        include/ha_prototypes.h:
1656
 
        Fix Bug#36285 innodb_lock_wait_timeout is not dynamic, not per session
1657
 
 
1658
 
2008-09-19      The InnoDB Team
1659
 
 
1660
 
        * os/os0proc.c:
1661
 
        Fix a memory leak on Windows. The memory leak was due to wrong
1662
 
        parameters passed into VirtualFree() call. As the result, the
1663
 
        call fails with Windows error 87.
1664
 
 
1665
 
2008-09-17      The InnoDB Team
1666
 
 
1667
 
        * mysql-test/innodb.result, mysql-test/innodb-zip.result,
1668
 
        mysql-test/innodb-zip.test, mysql-test/innodb.test, ibuf/ibuf0ibuf.c,
1669
 
        dict/dict0crea.c, dict/dict0load.c, dict/dict0boot.c,
1670
 
        include/dict0dict.h, include/trx0trx.h, dict/dict0dict.c,
1671
 
        trx/trx0trx.c, include/ha_prototypes.h, handler/ha_innodb.cc:
1672
 
        When creating an index in innodb_strict_mode, check that the
1673
 
        maximum record size will never exceed the B-tree page size limit.
1674
 
        For uncompressed tables, there should always be enough space for
1675
 
        two records in an empty B-tree page. For compressed tables, there
1676
 
        should be enough space for storing two node pointer records or one
1677
 
        data record in an empty page in uncompressed format.
1678
 
        The purpose of this check is to guarantee that INSERT or UPDATE
1679
 
        will never fail due to too big record size.
1680
 
 
1681
 
2008-09-17      The InnoDB Team
1682
 
 
1683
 
        * btr/btr0cur.c, data/data0data.c, include/page0zip.h,
1684
 
        include/page0zip.ic, page/page0zip.c, mysql-test/innodb_bug36172.test:
1685
 
        Prevent infinite B-tree page splits in compressed tables by
1686
 
        ensuring that there will always be enough space for two node
1687
 
        pointer records in an empty B-tree page. Also, require that at
1688
 
        least one data record will fit in an empty compressed page. This
1689
 
        will reduce the maximum size of records in compressed tables.
1690
 
 
1691
 
2008-09-09      The InnoDB Team
1692
 
 
1693
 
        * mysql-test/innodb.result:
1694
 
        Fix the failing innodb test by merging changes that MySQL made to
1695
 
        that file (r2646.12.1 in MySQL BZR repository)
1696
 
 
1697
 
2008-09-09      The InnoDB Team
1698
 
 
1699
 
        * handler/ha_innodb.cc, mysql-test/innodb-autoinc.result,
1700
 
        mysql-test/innodb-autoinc.test:
1701
 
        Fix Bug#38839 auto increment does not work properly with InnoDB after
1702
 
        update
1703
 
 
1704
 
2008-09-09      The InnoDB Team
1705
 
 
1706
 
        * dict/dict0dict.c, handler/handler0alter.cc, include/dict0dict.h,
1707
 
        mysql-test/innodb-index.result, mysql-test/innodb-index.test:
1708
 
        Fix Bug#38786 InnoDB plugin crashes on drop table/create table with FK
1709
 
 
1710
 
2008-08-21      The InnoDB Team
1711
 
 
1712
 
        * handler/ha_innodb.cc, include/ha_prototypes.h, row/row0sel.c:
1713
 
        Fix Bug#37885 row_search_for_mysql may gap lock unnecessarily with SQL
1714
 
        comments in query
1715
 
 
1716
 
2008-08-21      The InnoDB Team
1717
 
 
1718
 
        * handler/ha_innodb.cc:
1719
 
        Fix Bug#38185 ha_innobase::info can hold locks even when called with
1720
 
        HA_STATUS_NO_LOCK
1721
 
 
1722
 
2008-08-18      The InnoDB Team
1723
 
 
1724
 
        * buf/buf0buf.c, buf/buf0lru.c, include/buf0buf.ic, include/univ.i:
1725
 
        Introduce UNIV_LRU_DEBUG for debugging the LRU buffer pool cache
1726
 
 
1727
 
2008-08-08      The InnoDB Team
1728
 
 
1729
 
        * buf/buf0lru.c, include/buf0buf.h:
1730
 
        Fix two recovery bugs that could lead to a crash in debug builds with
1731
 
        small buffer size
1732
 
 
1733
 
2008-08-07      The InnoDB Team
1734
 
 
1735
 
        * btr/btr0cur.c, handler/ha_innodb.cc, include/srv0srv.h,
1736
 
        srv/srv0srv.c:
1737
 
        Add a parameter innodb_stats_sample_pages to allow users to control
1738
 
        the number of index dives when InnoDB estimates the cardinality of
1739
 
        an index (ANALYZE TABLE, SHOW TABLE STATUS etc)
1740
 
 
1741
 
2008-08-07      The InnoDB Team
1742
 
 
1743
 
        * trx/trx0i_s.c:
1744
 
        Fix a bug that would lead to a crash if a SELECT was issued from the
1745
 
        INFORMATION_SCHEMA tables and there are rolling back transactions at
1746
 
        the same time
1747
 
 
1748
 
2008-08-06      The InnoDB Team
1749
 
 
1750
 
        * btr/btr0btr.c, btr/btr0cur.c, ibuf/ibuf0ibuf.c, include/btr0cur.h,
1751
 
        include/trx0roll.h, include/trx0types.h, row/row0purge.c,
1752
 
        row/row0uins.c, row/row0umod.c, trx/trx0roll.c:
1753
 
        In the rollback of incomplete transactions after crash recovery,
1754
 
        tolerate clustered index records whose externally stored columns
1755
 
        have not been written.
1756
 
 
1757
 
2008-07-30      The InnoDB Team
1758
 
 
1759
 
        * trx/trx0trx.c:
1760
 
        Fixes a race in recovery where the recovery thread recovering a
1761
 
        PREPARED trx and the background rollback thread can both try
1762
 
        to free the trx after its status is set to COMMITTED_IN_MEMORY.
1763
 
 
1764
 
2008-07-29      The InnoDB Team
1765
 
 
1766
 
        * include/trx0rec.h, row/row0purge.c, row/row0vers.c, trx/trx0rec.c:
1767
 
        Fix a BLOB corruption bug
1768
 
 
1769
 
2008-07-15      The InnoDB Team
1770
 
 
1771
 
        * btr/btr0sea.c, dict/dict0dict.c, include/btr0sea.h:
1772
 
        Fixed a timing hole where a thread dropping an index can free the
1773
 
        in-memory index struct while another thread is still using that
1774
 
        structure to remove entries from adaptive hash index belonging
1775
 
        to one of the pages that belongs to the index being dropped.
1776
 
 
1777
 
2008-07-04      The InnoDB Team
1778
 
 
1779
 
        * mysql-test/innodb-index.result:
1780
 
        Fix the failing innodb-index test by adjusting the result to a new
1781
 
        MySQL behavior (the change occured in BZR-r2667)
1782
 
 
1783
 
2008-07-03      The InnoDB Team
1784
 
 
1785
 
        * mysql-test/innodb-zip.result, mysql-test/innodb-zip.test:
1786
 
        Remove the negative test cases that produce warnings
1787
 
 
1788
 
2008-07-02      The InnoDB Team
1789
 
 
1790
 
        * mysql-test/innodb-replace.result, mysql-test/innodb-index.test:
1791
 
        Disable part of innodb-index test because MySQL changed its behavior
1792
 
        and is not calling ::add_index() anymore when adding primary index on
1793
 
        non-NULL column
1794
 
 
1795
 
2008-07-01      The InnoDB Team
1796
 
 
1797
 
        * mysql-test/innodb-replace.result, mysql-test/innodb-replace.test:
1798
 
        Fix the failing innodb-replace test by merging changes that MySQL
1799
 
        made to that file (r2659 in MySQL BZR repository)
1800
 
 
1801
 
2008-07-01      The InnoDB Team
1802
 
 
1803
 
        * lock/lock0lock.c:
1804
 
        Fix Bug#36942 Performance problem in lock_get_n_rec_locks (SHOW INNODB
1805
 
        STATUS)
1806
 
 
1807
 
2008-07-01      The InnoDB Team
1808
 
 
1809
 
        * ha/ha0ha.c:
1810
 
        Fix Bug#36941 Performance problem in ha_print_info (SHOW INNODB
1811
 
        STATUS)
1812
 
 
1813
 
2008-07-01      The InnoDB Team
1814
 
 
1815
 
        * handler/ha_innodb.cc, mysql-test/innodb-autoinc.result,
1816
 
        mysql-test/innodb-autoinc.test:
1817
 
        Fix Bug#37531 After truncate, auto_increment behaves incorrectly for
1818
 
        InnoDB
1819
 
 
1820
 
2008-06-19      The InnoDB Team
1821
 
 
1822
 
        * handler/ha_innodb.cc:
1823
 
        Rewrite the function innodb_plugin_init() to support parameters in
1824
 
        different order (in static and dynamic InnoDB) and to support more
1825
 
        parameters in the static InnoDB
1826
 
 
1827
 
2008-06-19      The InnoDB Team
1828
 
 
1829
 
        * handler/handler0alter.cc:
1830
 
        Fix a bug in ::add_index() which set the transaction state to "active"
1831
 
        but never restored it to the original value. This bug caused warnings
1832
 
        to be printed by the rpl.rpl_ddl mysql-test.
1833
 
 
1834
 
2008-06-19      The InnoDB Team
1835
 
 
1836
 
        * mysql-test/patches:
1837
 
        Add a directory which contains patches, which need to be applied to
1838
 
        MySQL source in order to get some mysql-tests to succeed. The patches
1839
 
        cannot be committed in MySQL repository because they are specific to
1840
 
        the InnoDB plugin.
1841
 
 
1842
 
2008-06-19      The InnoDB Team
1843
 
 
1844
 
        * mysql-test/innodb-zip.result, mysql-test/innodb-zip.test,
1845
 
        row/row0row.c:
1846
 
        Fix an anomaly when updating a record with BLOB prefix
1847
 
 
1848
 
2008-06-18      The InnoDB Team
1849
 
 
1850
 
        * include/trx0sys.h, srv/srv0start.c, trx/trx0sys.c:
1851
 
        Fix a bug in recovery which was a side effect of the file_format_check
1852
 
        changes
1853
 
 
1854
 
2008-06-09      The InnoDB Team
1855
 
 
1856
 
        * mysql-test/innodb.result:
1857
 
        Fix the failing innodb test by merging changes that MySQL made to that
1858
 
        file
1859
 
 
1860
 
2008-06-06      The InnoDB Team
1861
 
 
1862
 
        * buf/buf0buf.c, handler/ha_innodb.cc, include/buf0buf.h,
1863
 
        include/srv0srv.h, srv/srv0srv.c:
1864
 
        Fix Bug#36600 SHOW STATUS takes a lot of CPU in
1865
 
        buf_get_latched_pages_number
1866
 
 
1867
 
        * handler/ha_innodb.cc, os/os0file.c:
1868
 
        Fix Bug#11894 innodb_file_per_table crashes w/ Windows .sym symbolic
1869
 
        link hack
1870
 
 
1871
 
        * include/ut0ut.h, srv/srv0srv.c, ut/ut0ut.c:
1872
 
        Fix Bug#36819 ut_usectime does not handle errors from gettimeofday
1873
 
 
1874
 
        * handler/ha_innodb.cc:
1875
 
        Fix Bug#35602 Failed to read auto-increment value from storage engine
1876
 
 
1877
 
        * srv/srv0start.c:
1878
 
        Fix Bug#36149 Read buffer overflow in srv0start.c found during "make
1879
 
        test"
1880
 
 
1881
 
2008-05-08      The InnoDB Team
1882
 
 
1883
 
        * btr/btr0btr.c, mysql-test/innodb_bug36172.result,
1884
 
        mysql-test/innodb_bug36172.test:
1885
 
        Fix Bug#36172 insert into compressed innodb table crashes
1886
 
 
1887
 
2008-05-08      The InnoDB Team
1888
 
 
1889
 
        InnoDB Plugin 1.0.1 released
1890
 
 
1891
 
2008-05-06      The InnoDB Team
1892
 
 
1893
 
        * handler/ha_innodb.cc, include/srv0srv.h, include/sync0sync.h,
1894
 
        include/trx0sys.h, mysql-test/innodb-zip.result,
1895
 
        mysql-test/innodb-zip.test, srv/srv0srv.c, srv/srv0start.c,
1896
 
        sync/sync0sync.c, trx/trx0sys.c:
1897
 
        Implement the system tablespace tagging
1898
 
 
1899
 
        * handler/ha_innodb.cc, handler/i_s.cc, include/univ.i,
1900
 
        srv/srv0start.c:
1901
 
        Add InnoDB version in INFORMATION_SCHEMA.PLUGINS.PLUGIN_VERSION,
1902
 
        in the startup message and in a server variable innodb_version.
1903
 
 
1904
 
        * sync/sync0sync.c:
1905
 
        Fix a bug in the sync debug code where a lock with level
1906
 
        SYNC_LEVEL_VARYING would cause an assertion failure when a thread
1907
 
        tried to release it.
1908
 
 
1909
 
2008-04-30      The InnoDB Team
1910
 
 
1911
 
        * Makefile.am:
1912
 
        Fix Bug#36434 ha_innodb.so is installed in the wrong directory
1913
 
 
1914
 
        * handler/ha_innodb.cc:
1915
 
        Merge change from MySQL (Fix Bug#35406 5.1-opt crashes on select from
1916
 
        I_S.REFERENTIAL_CONSTRAINTS):
1917
 
        ChangeSet@1.2563, 2008-03-18 19:42:04+04:00, gluh@mysql.com +1 -0
1918
 
 
1919
 
        * scripts/install_innodb_plugins.sql:
1920
 
        Added
1921
 
 
1922
 
        * mysql-test/innodb.result:
1923
 
        Merge change from MySQL (this fixes the failing innodb test):
1924
 
        ChangeSet@1.1810.3601.4, 2008-02-07 02:33:21+04:00
1925
 
 
1926
 
        * row/row0sel.c:
1927
 
        Fix Bug#35226 RBR event crashes slave
1928
 
 
1929
 
        * handler/ha_innodb.cc:
1930
 
        Change the fix for Bug#32440 to show bytes instead of kilobytes in
1931
 
        INFORMATION_SCHEMA.TABLES.DATA_FREE
1932
 
 
1933
 
        * handler/ha_innodb.cc, mysql-test/innodb.result,
1934
 
        mysql-test/innodb.test:
1935
 
        Fix Bug#29507 TRUNCATE shows to many rows effected
1936
 
 
1937
 
        * handler/ha_innodb.cc, mysql-test/innodb.result,
1938
 
        mysql-test/innodb.test:
1939
 
        Fix Bug#35537 Innodb doesn't increment handler_update and
1940
 
        handler_delete
1941
 
 
1942
 
2008-04-29      The InnoDB Team
1943
 
 
1944
 
        * handler/i_s.cc, include/srv0start.h, srv/srv0start.c:
1945
 
        Fix Bug#36310 InnoDB plugin crash
1946
 
 
1947
 
2008-04-23      The InnoDB Team
1948
 
 
1949
 
        * mysql-test/innodb_bug36169.result, mysql-test/innodb_bug36169.test,
1950
 
        row/row0mysql.c:
1951
 
        Fix Bug#36169 create innodb compressed table with too large row size
1952
 
        crashed
1953
 
 
1954
 
        * (outside the source tree):
1955
 
        Fix Bug#36222 New InnoDB plugin 1.0 has wrong MKDIR_P defined in
1956
 
        Makefile.in
1957
 
 
1958
 
2008-04-15      The InnoDB Team
1959
 
 
1960
 
        InnoDB Plugin 1.0.0 released