~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to plugin/innobase/ChangeLog

  • Committer: David Shrewsbury
  • Date: 2010-08-27 13:02:11 UTC
  • mfrom: (1733 trunk)
  • mto: (1734.1.1 build)
  • mto: This revision was merged to the branch mainline in revision 1735.
  • Revision ID: shrewsbury.dave@gmail.com-20100827130211-11vkj8w63l1xhtu8
MergeĀ fromĀ trunk

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