ChangeLog 68.4 KB
Newer Older
1 2 3 4 5
2011-06-16	The InnoDB Team

	* page/page0zip.c, rem/rem0rec.c:
	Fix Bug#61191 question about page_zip_available()

6 7 8 9 10 11 12 13 14 15
2011-06-16	The InnoDB Team

	* btr/btr0btr.c, btr/btr0cur.c, include/btr0btr.h, include/btr0cur.h,
	include/btr0cur.ic, include/buf0buf.h, include/buf0buf.ic,
	include/page0cur.ic, include/page0page.h, include/page0page.ic,
	include/sync0rw.ic, include/sync0sync.h, page/page0cur.c,
	page/page0page.c, row/row0ins.c, row/row0upd.c,
	sync/sync0rw.c, sync/sync0sync.c:
	Fix Bug#12612184 Race condition after btr_cur_pessimistic_update()

16 17 18 19 20
2011-06-09	The InnoDB Team
	* btr/btr0cur.c, include/rem0rec.h, include/rem0rec.ic,
	* row/row0row.c, row/row0vers.c, trx/trx0rec.c:
	Instrumentation for Bug#12612184 Race condition in row_upd_clust_rec()

21 22 23 24 25
2011-04-07	The InnoDB Team

	* handler/ha_innodb.cc, handler/ha_innodb.h, handler/handler0alter.cc:
	Fix Bug #52409 Assertion failure: long semaphore wait

26 27 28 29 30 31 32
2011-04-07	The InnoDB Team

	* handler/ha_innodb.cc, include/trx0trx.h, include/trx0undo.h,
	log/log0log.c, trx/trx0sys.c, trx/trx0trx.c, trx/trx0undo.c:
	Fix Bug #59641 Prepared XA transaction in system after hard crash
	causes future shutdown hang

33 34 35 36 37
2011-03-30	The InnoDB Team

	* srv/srv0srv.c, sync/sync0arr.h, sync/sync0arr.c:
	Fix Bug#11877216 InnoDB too eager to commit suicide on a busy server

38 39 40 41 42
2011-03-15	The InnoDB Team

	* btr/btr0cur.c, page/page0zip.c:
	Fix Bug#11849231 inflateInit() invoked without initializing all memory

43 44 45 46 47 48
2011-02-28	The InnoDB Team

	* btr/btr0sea.c, buf/buf0buf.c, buf/buf0lru.c:
	Fix Bug#58549 Race condition in buf_LRU_drop_page_hash_for_tablespace()
	and compressed tables

49 50 51 52 53 54
2011-02-15	The InnoDB Team

	* sync/sync0rw.c, innodb_bug59307.test:
	Bug#59307 Valgrind: uninitialized value in
	rw_lock_set_writer_id_and_recursion_flag()

55 56 57 58 59 60
2011-02-14	The InnoDB Team

	* handler/handler0alter.cc:
	Bug#59749 Enabling concurrent reads while creating non-primary
	unique index gives failures

61 62 63 64 65 66 67
2011-01-31	The InnoDB Team

	* btr/btr0cur.c, include/row0upd.h,
	row/row0purge.c, row/row0umod.c, row/row0upd.c:
	Bug#59230 assert 0 row_upd_changes_ord_field_binary()
	in post-crash rollback or purge

68 69 70 71 72 73
2011-01-27	The InnoDB Team

	* btr/btr0cur.c:
	Bug#59465 btr_estimate_number_of_different_key_vals use
	incorrect offset for external_size

74 75 76 77 78 79
2011-01-27	The InnoDB Team

	* include/trx0trx.h, trx/trx0trx.c:
	Bug#59440 Race condition in XA ROLLBACK and XA COMMIT
	after server restart

80 81 82 83 84 85
2011-01-25	The InnoDB Team

	* row/row0upd.c:
	Bug#59585 Fix 58912 introduces compiler warning
	due to potentially uninitialized variable

86 87 88 89 90
2011-01-25	The InnoDB Team

	* mtr/mtr0log.c:
	Bug#59486 Incorrect usage of UNIV_UNLIKELY() in mlog_parse_string()

91 92 93 94 95
2011-01-25	The InnoDB Team

	* row/row0vers.c:
	Fix Bug#59464 Race condition in row_vers_build_for_semi_consistent_read

96 97 98 99 100 101 102 103 104
2011-01-25	The InnoDB Team

	* btr/btr0btr.c, btr/btr0cur.c, btr/btr0sea.c,
	buf/buf0buddy.c, buf/buf0buf.c, buf/buf0lru.c,
	include/buf0buf.h, include/buf0buf.ic, include/buf0lru.h,
	mem/mem0mem.c, page/page0zip.c:
	Fix Bug#59707 Unused compression-related parameters
	in buffer pool functions

105 106 107 108 109 110
2011-01-18	The InnoDB Team

	* include/sync0rw.h, sync/sync0arr.c, sync/sync0rw.c:
	Fix Bug#59579 rw_lock_debug_print outputs to stderr, not to
	SHOW ENGINE INNODB STATUS

111 112 113 114 115 116 117 118
2011-01-14	The InnoDB Team
	* btr/btr0cur.c, dict/dict0dict.c, handler/ha_innodb.cc,
	include/btr0cur.h, include/dict0mem.h, include/rem0cmp.h,
	include/rem0cmp.ic, include/srv0srv.h, rem/rem0cmp.c,
	srv/srv0srv.c, innodb_bug30423.test:
	Fix Bug#30423 InnoDBs treatment of NULL in index stats causes
	bad "rows examined" estimates

119 120 121 122 123 124 125 126 127 128
2011-01-06	The InnoDB Team
	* row/row0merge.c:
	Fix Bug#59312 Examine MAX_FULL_NAME_LEN in InnoDB to address
	possible insufficient name buffer

2011-01-06	The InnoDB Team
	* dict/dict0dict.c, handler/ha_innodb.cc, handler/i_s.cc,
	include/univ.i: 
	Fix Bug#58643 InnoDB: too long table name

129 130 131 132 133
2011-01-06	The InnoDB Team
	* handler/i_s.cc, include/trx0i_s.h, trx/trx0i_s.c:
	Fix Bug#55397 cannot select from innodb_trx when trx_query contains
	blobs that aren't strings

134 135 136 137 138
2011-01-04	The InnoDB Team
	* dict/dict0dict.c:
	Fix Bug#59197 double quote in field comment prevents foreign
	key constraint creation

139 140 141 142 143 144
2010-12-21	The InnoDB Team
	* include/btr0cur.h, include/row0upd.h, btr/btr0cur.c,
	row/row0umod.c, row/row0upd.c:
	Fix Bug#55284 Double free of off-page columns due to lock wait
	while updating PRIMARY KEY

145 146 147 148 149 150 151 152
2010-12-21	The InnoDB Team

	* include/data0data.h, include/data0data.ic, include/row0upd.h,
	btr/btr0cur.c, row/row0purge.c, row/row0umod.c, row/row0upd.c,
	innodb.result, innodb.test:
	Fix Bug#58912 InnoDB unnecessarily avoids update-in-place
	on column prefix indexes

153
2010-12-09	The InnoDB Team
154

155 156 157
	* buf/buf0lru.c:
	Fix Bug#57600 output of I/O sum[%lu] can go negative

158
2010-11-11	The InnoDB Team
159

160 161 162
	* thr/thr0loc.c, trx/trx0i_s.c:
	Fix Bug#57802 Empty ASSERTION parameter passed to the HASH_SEARCH macro

163 164 165 166
2010-11-10	The InnoDB Team

	* dict/dict0dict.c, handler/handler0alter.cc, include/dict0dict.h
	row/row0merge.c:
167
	Fix Bug#55084 InnoDB crash and corruption after ALTER TABLE
168

169 170 171
2010-11-10	The InnoDB Team

	* srv/srv0start.c:
172
	Fix Bug#48026 Log start and end of InnoDB buffer pool
173 174
	initialization to the error log

175 176 177 178 179 180
2010-11-03	The InnoDB Team

	* include/btr0btr.h, include/btr0btr.ic, dict/dict0crea.c:
	Fix Bug#57947 InnoDB diagnostics shows btr_block_get calls
	instead of real callers

181 182 183 184 185 186 187
2010-11-03	The InnoDB Team

	* fil/fil0fil.c, fsp/fsp0fsp.c, handler/ha_innodb.cc,
	include/fil0fil.h, include/univ.i:
	Fix Bug #54538 - use of exclusive innodb dictionary lock limits
	performance.

188 189 190 191 192 193 194 195
2010-11-02	The InnoDB Team

	* btr/btr0cur.c, dict/dict0dict.c, dict/dict0load.c,
	handler/ha_innodb.cc, include/dict0dict.h, row/row0mysql.c,
	innodb_bug53046.result, innodb_bug53046.test:
	Fix Bug#53046 dict_update_statistics_low can still be run
	concurrently on same table

196 197 198 199 200 201
2010-11-02	The InnoDB Team

	* row/row0sel.c:
	Fix Bug#57799 READ UNCOMMITTED access failure of off-page
	DYNAMIC or COMPRESSED columns again

202 203 204
2010-10-24	The InnoDB Team

	* row/row0mysql.c
205
	Fix Bug#57700 Latching order violation in
206 207
	row_truncate_table_for_mysql()

208 209 210
2010-10-20	The InnoDB Team

	* dict/dict0load.c
211
	Fix Bug#57616 Sig 11 in dict_load_table() when failed to load
212 213
	index or foreign key

214 215 216 217 218 219 220
2010-10-19	The InnoDB Team

	* btr/btr0cur.c, buf/buf0buf.c, buf/buf0flu.c, handler/ha_innodb.cc,
	ibuf/ibuf0ibuf.c, include/btr0cur.h, include/buf0flu.h,
	include/ibuf0ibuf.h, include/row0mysql.h,
	row/row0mysql.c, row/row0sel.c,
	innodb_bug56680.test, innodb_bug56680.result:
221
	Fix Bug#56680 InnoDB may return wrong results from a
222 223
	case-insensitive covering index

224 225 226 227 228 229
2010-10-18	The InnoDB Team

	* handler/ha_innodb.cc, handler/ha_innodb.h, innodb_bug57252.result,
	innodb_bug57252.test:
	Fix Bug#57252 disabling innobase_stats_on_metadata disables ANALYZE

230 231 232 233 234 235
2010-10-14	The InnoDB Team

	* handler/ha_innodb.cc, innodb_bug56143.result, innodb_bug56143.test:
	Fix Bug#56143 too many foreign keys causes output of show create
	table to become invalid

236
2010-10-14	The InnoDB Team
237 238 239

	* srv/srv0start.c:
	Fix Bug#57397 io_handler_thread() will never cleanup
240

241
2010-10-11	The InnoDB Team
242

unknown's avatar
unknown committed
243 244 245
	* row/row0sel.c
	Fix Bug #57345 btr_pcur_store_position abort for load with
	concurrent lock/unlock tables
246

247 248 249 250 251
2010-10-11	The InnoDB Team

	* row/row0mysql.c, innodb_bug56947.result, innodb_bug56947.test:
	Fix Bug #56947 InnoDB leaks memory when failing to create a table

252
2010-10-06	The InnoDB Team
253

254
	* row/row0mysql.c, innodb_bug57255.result, innodb_bug57255.test
255 256 257
	Fix Bug #57255 Cascade Delete results in "Got error -1 from
	storage engine"

258 259 260
2010-09-27	The InnoDB Team

	* row/row0sel.c, innodb_bug56716.result, innodb_bug56716.test:
261
	Fix Bug#56716 InnoDB locks a record gap without locking the table
262

263
2010-09-06	The InnoDB Team
264 265 266

	* dict/dict0load.c, innodb_bug53756.test innodb_bug53756.result:
	Fix Bug#53756 ALTER TABLE ADD PRIMARY KEY affects crash recovery
267

268 269 270
2010-08-24	The InnoDB Team

	* handler/ha_innodb.c, dict/dict0dict.c:
271
	Fix Bug#55832 selects crash too easily when innodb_force_recovery>3
272

273 274 275
2010-08-03	The InnoDB Team

	* include/dict0dict.h, include/dict0dict.ic, row/row0mysql.c:
276
	Fix Bug#54678 InnoDB, TRUNCATE, ALTER, I_S SELECT, crash or deadlock
277

278 279 280 281 282 283 284 285
2010-08-03	The InnoDB Team

	* dict/dict0load.c, handler/ha_innodb.cc, include/db0err.h,
	include/dict0load.h, include/dict0mem.h, include/que0que.h,
	row/row0merge.c, row/row0mysql.c:
	Fix Bug#54582 stack overflow when opening many tables linked
	with foreign keys at once

286 287 288
2010-08-03	The InnoDB Team

	* include/ut0mem.h, ut/ut0mem.c:
289
	Fix Bug#55627 segv in ut_free pars_lexer_close innobase_shutdown
290 291
	innodb-use-sys-malloc=0

292 293
2010-08-01	The InnoDB Team

294 295
	* handler/ha_innodb.cc:
	Fix Bug#55382 Assignment with SELECT expressions takes unexpected
296 297
	S locks in READ COMMITTED

298 299 300 301 302 303
2010-07-27	The InnoDB Team

	* include/mem0pool.h, mem/mem0mem.c, mem/mem0pool.c, srv/srv0start.c:
	Fix Bug#55581 shutdown with innodb-use-sys-malloc=0: assert
	mutex->magic_n == MUTEX_MAGIC_N.

304 305 306 307 308 309
2010-06-30	The InnoDB Team

	* btr/btr0sea.c, ha/ha0ha.c, handler/ha_innodb.cc, include/btr0sea.h:
	Fix Bug#54311 Crash on CHECK PARTITION after concurrent LOAD DATA
	and adaptive_hash_index=OFF

310 311 312 313 314
2010-06-29	The InnoDB Team
	* row/row0row.c, row/row0undo.c, row/row0upd.c:
	Fix Bug#54408 txn rollback after recovery: row0umod.c:673
	dict_table_get_format(index->table)

315 316
2010-06-29	The InnoDB Team

317 318
	* btr/btr0cur.c, include/btr0cur.h, include/row0mysql.h,
	row/row0merge.c, row/row0sel.c:
319 320 321
	Fix Bug#54358 READ UNCOMMITTED access failure of off-page DYNAMIC
	or COMPRESSED columns

322 323 324 325 326 327
2010-06-24	The InnoDB Team

	* handler/ha_innodb.cc:
	Fix Bug#54679 alter table causes compressed row_format to revert
	to compact

328 329 330 331 332 333 334
2010-06-22	The InnoDB Team

	* dict/dict0dict.c, dict/dict0mem.c, include/dict0mem.h,
	include/univ.i, page/page0zip.c, row/row0merge.c:
	Fix Bug#47991 InnoDB Dictionary Cache memory usage increases
	indefinitely when renaming tables

335 336 337 338 339 340
2010-06-22	The InnoDB Team

	* handler/ha_innodb.cc:
	Fix Bug#54686: "field->col->mtype == type" assertion error at
	row/row0sel.c

341 342 343 344 345
2010-06-22	The InnoDB Team

	* handler/ha_innodb.cc, innodb_bug54044.result, innodb_bug54044.test:
	Fix Bug#54044 Create temporary tables and using innodb crashes.

346 347 348 349
2010-06-21	The InnoDB Team

	* dict/dict0load.c, fil/fil0fil.c:
	Fix Bug#54658: InnoDB: Warning: allocated tablespace %lu,
350
	old maximum was 0 (introduced in Bug#53578 fix)
351

352 353 354 355 356
2010-06-16	The InnoDB Team

	* row/row0merge.c:
	Fix Bug#54330 Broken fast index creation

Inaam Rana's avatar
Inaam Rana committed
357 358 359 360 361 362 363
2010-06-10	The InnoDB Team

	* include/log0log.ic, row/row0ins.c, row/row0purge.c,
	row/row0uins.c, row/row0umod.c, row/row0upd.c:
	Fix Bug#39168 ERROR: the age of the last checkpoint ... exceeds
	the log group capacity

364 365 366 367 368 369
2010-06-08	The InnoDB Team

	* dict/dict0load.c:
	Fix Bug#54009 Server crashes when data is selected from non backed
	up table for InnoDB plugin

370 371 372 373 374 375 376
2010-06-02	The InnoDB Team

	* include/db0err.h, include/lock0lock.h, include/row0mysql.h,
	lock/lock0lock.c, row/row0ins.c, row/row0mysql.c, row/row0sel.c:
	Fix Bug#53674 InnoDB: Error: unlock row could not find a
	4 mode lock on the record

Marko Mäkelä's avatar
Marko Mäkelä committed
377 378 379 380 381
2010-06-01	The InnoDB Team

	* include/sync0rw.h, sync/sync0rw.c:
	Fix Bug#48197 Concurrent rw_lock_free may cause assertion failure

382 383 384 385 386 387
2010-06-01	The InnoDB Team

	* row/row0umod.c:
	Fix Bug#53812 assert row/row0umod.c line 660 in txn rollback
	after crash recovery

388 389 390 391 392 393
2010-05-25	The InnoDB Team

	* handler/ha_innodb.cc, include/row0mysql.h, row/row0mysql.c:
	Fix Bug#53592: crash replacing duplicates into table after fast
	alter table added unique key 

394 395 396 397 398 399
2010-05-24	The InnoDB Team

	* dict/dict0boot.c, dict/dict0crea.c, fil/fil0fil.c,
	include/dict0boot.h, include/fil0fil.h, row/row0mysql.c:
	Fix Bug#53578: assert on invalid page access, in fil_io()

400 401 402 403 404 405 406 407
2010-05-14	The InnoDB Team
	* mysql-test/innodb_bug48024.test, mysql-test/innodb_bug48024.result,
	dict/dict0dict.c, handler/ha_innodb.cc, handler/ha_innodb.h,
	include/dict0dict.h, include/ha_prototypes.h, include/row0mysql.h,
	include/trx0trx.h, row/row0mysql.c, trx/trx0i_s.c, trx/trx0trx.c:
	Fix Bug#48024 Innodb doesn't work with multi-statements
	Fix Bug#53644 InnoDB thinks that /*/ starts and ends a comment

408 409 410 411 412 413
2010-05-12	The InnoDB Team

	* handler/handler0alter.cc:
	Fix Bug#53591 crash with fast alter table and text/blob prefix
	primary key

414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429
2010-05-12	The InnoDB Team

	* row/row0merge.c:
	Fix Bug#53471 row_merge_drop_temp_indexes() refers freed memory, SEGVs

2010-05-11	The InnoDB Team

	* mysql-test/innodb_bug53290.test, mysql-test/innodb_bug53290.result,
	include/rem0cmp.h, rem/rem0cmp.c, row/row0merge.c:
	Fix Bug#53290 wrong duplicate key error when adding a unique index
	via fast alter table

2010-05-11	The InnoDB Team
	* buf/buf0lru.c, include/buf0buf.ic:
	Fix Bug#53307 valgrind: warnings in main.partition_innodb_plugin

Marko Mäkelä's avatar
Marko Mäkelä committed
430 431 432 433 434 435
2010-05-05	The InnoDB Team

	* row/row0merge.c:
	Fix Bug#53256 in a stress test, assert dict/dict0dict.c:815
	table2 == NULL

436 437 438 439 440 441
2010-05-05	The InnoDB Team

	* handler/ha_innodb.cc:
	Fix Bug#53165 Setting innodb_change_buffering=DEFAULT produces
	incorrect result

442 443 444 445 446
2010-05-04	The InnoDB Team

	* fsp/fsp0fsp.c:
	Fix Bug#53306 valgrind: warnings in innodb.innodb

447 448 449 450 451 452
2010-05-03	The InnoDB Team

	* buf0buf.c:
	Fix Bug#53248 compressed tables page checksum mismatch after
	re-enabling innodb_checksums

453 454 455 456 457 458
2010-04-28	The InnoDB Team

	* log/log0recv.h, log/log0recv.c:
	Fix Bug#53122 InnoDB recovery uses too big a hash table for redo
	log records

459 460 461 462 463 464 465
2010-04-27	The InnoDB Team

	* handler/ha_innodb.cc, lock/lock0lock.c, row/row0mysql.c,
	row/row0sel.c:
	Fix Bug#48607 READ UNCOMMITTED uses more locks than READ COMMITTED
	in InnoDB 5.1+

466 467 468 469 470 471
2010-04-26	The InnoDB Team

	* row/row0sel.c:
	Fix Bug#52663 Lost update incrementing column value under
	READ COMMITTED isolation level

472 473 474 475 476 477
2010-04-22	The InnoDB Team

	* include/dict0boot.h, dict/dict0boot.c:
	Fix a bug that prevented the crash recovery of fast CREATE INDEX
	from dropping partially created indexes.

478 479 480 481 482 483
2010-04-21	The InnoDB Team

	* btr/btr0btr.c:
	Fix Bug#52964 Infinite loop in btr_page_split_and_insert()
	in ROW_FORMAT=COMPRESSED

484 485 486 487 488
2010-04-21	The InnoDB Team

	* data/data0data.c:
	Fix Bug#52745 Failing assertion: blob_no < page_zip->n_blobs

489 490 491 492 493 494
2010-04-20	The InnoDB Team

	* dict/dict0crea.c, handler/ha_innodb.cc, include/trx0trx.h:
	Fix Bug#50495 'Row size too large' for plugin, but works for
	built-in InnoDB
	Only check the record size at index creation time when
495
	innodb_strict_mode is set or when ROW_FORMAT is DYNAMIC or COMPRESSED.
496

497 498 499 500 501 502
2010-04-15	The InnoDB Team

	* trx/trx0rec.c:
	Fix Bug#52746 InnoDB purge thread crashed with table containing
	prefix indexed blobs

503 504 505 506 507 508 509 510 511 512 513 514
2010-03-31	The InnoDB Team

	* mysql-test/innodb_bug51920.test, mysql-test/innodb_bug51920.result,
	srv/srv0srv.c:
	Fix Bug#51920 InnoDB connections in row lock wait ignore KILL
	until lock wait timeout

2010-03-31	The InnoDB Team

	* mysql-test/innodb_bug38231.test:
	Remove non-determinism in the test case.

Marko Mäkelä's avatar
Marko Mäkelä committed
515 516 517 518
2010-03-29	The InnoDB Team

	InnoDB Plugin 1.0.7 released

519 520 521
2010-03-18	The InnoDB Team

	* CMakeLists.txt:
vdimov's avatar
vdimov committed
522
	Fix Bug#52102 InnoDB Plugin shows performance drop compared to
vdimov's avatar
vdimov committed
523
	InnoDB (Windows)
524

525 526 527 528
2010-03-18	The InnoDB Team

	* buf0buf.ic:
	When comparing the time of the first access to a block against
vdimov's avatar
vdimov committed
529 530
	innodb_old_blocks_time, use 32-bit arithmetics. The comparison was
	incorrect on 64-bit systems.
531

532 533 534 535 536 537 538
2010-03-11	The InnoDB Team

	* buf0buf.h, buf0buf.ic:
	Fix and clarify the latching of some buf_block_t members.
	Note that check_index_page_at_flush is not protected by any mutex.
	Note and assert that lock_hash_val is protected by the rw-latch.

539 540 541
2010-03-10	The InnoDB Team

	* trx/trx0sys.c:
vdimov's avatar
vdimov committed
542
	Fix Bug#51653 outdated reference to set-variable
543 544 545 546 547

2010-03-10	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb_bug21704.result,
	mysql-test/innodb_bug47621.result, mysql-test/innodb_bug47621.test:
vdimov's avatar
vdimov committed
548 549
	Fix Bug#47621 MySQL and InnoDB data dictionaries will become out of
	sync when renaming columns
550

551 552 553
2010-03-10	The InnoDB Team

	* handler/ha_innodb.cc:
vdimov's avatar
vdimov committed
554
	Fix Bug#51356 Many Valgrind errors in error messages
555 556 557 558 559 560
	with concurrent DDL

2010-03-10	The InnoDB Team

	* handler/ha_innodb.cc, handler/handler0alter.cc,
	mysql-test/innodb_bug51378.result, mysql-test/innodb_bug51378.test:
vdimov's avatar
vdimov committed
561
	Fix Bug#51378 Init 'ref_length' to correct value, in case an out
562 563
	of bound MySQL primary_key

564 565 566 567
2010-03-10	The InnoDB Team

	* log/log0recv.c:
	Remove a bogus assertion about page numbers exceeding 0x90000000
vdimov's avatar
vdimov committed
568
	in the redo log. Abort when encountering a corrupted redo log
569 570
	record, unless innodb_force_recovery is set.

571 572 573 574 575 576
2010-03-09	The InnoDB Team

	* handler/ha_innodb.cc:
	Make SHOW ENGINE INNODB MUTEX STATUS display SUM(os_waits)
	for the buffer pool block mutexes and locks.

577 578 579 580 581
2010-03-08	The InnoDB Team

	* fil/fil0fil.c:
	Fix ALTER TABLE ... IMPORT TABLESPACE of compressed tables.

marko's avatar
marko committed
582 583 584 585 586 587
2010-03-03	The InnoDB Team

	* handler/handler0alter.cc, innodb-index.result, innodb-index.test,
	innodb.result, innodb.test:
	Disallow a duplicate index name when creating an index.

inaam's avatar
inaam committed
588 589 590
2010-02-11	The InnoDB Team

	* include/mem0mem.h, include/mem0mem.ic, mem/mem0mem.c:
vdimov's avatar
vdimov committed
591
	Fix Bug#49535 Available memory check slows down crash
inaam's avatar
inaam committed
592 593
	recovery tens of times

594 595 596
2010-02-09	The InnoDB Team

	* buf/buf0buf.c:
vdimov's avatar
vdimov committed
597
	Fix Bug#38901 InnoDB logs error repeatedly when trying to load
598 599
	page into buffer pool

600 601 602 603 604 605
2010-02-09	The InnoDB Team

	* srv/srv0srv.c:
	Let the master thread sleep if the amount of work to be done is
	calibrated as taking less than a second.

606 607 608 609 610 611 612 613 614
2010-02-04	The InnoDB Team

	* btr/btr0btr.c, btr/btr0cur.c, btr/btr0pcur.c, buf/buf0buf.c,
	include/btr0btr.h, include/btr0cur.h, include/btr0pcur.h,
	include/btr0pcur.ic, include/buf0buf.h, row/row0ins.c, row/row0sel.c:
	Pass the file name and line number of the caller of the
	b-tree cursor functions to the buffer pool requests, in order
	to make the latch diagnostics more accurate.

615 616 617 618 619 620
2010-02-03	The InnoDB Team

	* lock/lock0lock.c:
	Fix Bug#49001 SHOW INNODB STATUS deadlock info incorrect
	when deadlock detection aborts

621 622 623 624 625 626
2010-02-03	The InnoDB Team

	* buf/buf0lru.c:
	Fix Bug#35077 Very slow DROP TABLE (ALTER TABLE, OPTIMIZE TABLE)
	on compressed tables

627 628 629 630 631
2010-02-03	The InnoDB Team

	* handler/ha_innodb.cc, include/row0mysql.h, row/row0mysql.c:
	Clean up CHECK TABLE error handling.

632 633 634 635 636 637 638 639 640
2010-02-01	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb-autoinc.test,
	mysql-test/innodb-autoinc.result,
	mysql-test/innodb-autoinc-44030.test,
	mysql-test/innodb-autoinc-44030.result:
	Fix Bug#49497 Error 1467 (ER_AUTOINC_READ_FAILED) on inserting
	a negative value

641 642 643 644 645 646 647 648
2010-01-28	The InnoDB Team
	*  handler/ha_innodb.h, handler/ha_innodb.cc,
	handler/handler0alter.cc,
	mysql-test/innodb_bug47622.test,
	mysql-test/innodb_bug47622.result:
	Fix Bug#47622 the new index is added before the existing ones
	in MySQL, but after one in SE

649 650 651 652 653 654 655
2010-01-27	The InnoDB Team

	* include/row0mysql.h, log/log0recv.c, row/row0mysql.c:
	Drop temporary tables at startup.
	This addresses the third aspect of
	Bug#41609 Crash recovery does not work for InnoDB temporary tables.

656 657 658 659 660 661
2010-01-21	The InnoDB Team

	* buf/buf0buf.c:
	Do not merge buffered inserts to compressed pages before
	the redo log has been applied in crash recovery.

662 663 664 665
2010-01-13	The InnoDB Team

	* row/row0sel.c:
	On the READ UNCOMMITTED isolation level, do not attempt to access
vdimov's avatar
vdimov committed
666
	a clustered index record that has been marked for deletion. The
667 668 669
	built-in InnoDB in MySQL 5.1 and earlier would attempt to retrieve
	a previous version of the record in this case.

670 671 672 673 674 675 676
2010-01-13	The InnoDB Team

	* buf/buf0buf.c:
	When disabling the adaptive hash index, check the block state
	before checking block->is_hashed, because the latter may be
	uninitialized right after server startup.

677 678 679
2010-01-12	The InnoDB Team

	* handler/ha_innodb.cc, handler/ha_innodb.h:
vdimov's avatar
vdimov committed
680
	Fix Bug#46193 crash when accessing tables after enabling
681 682 683 684 685 686 687 688
	innodb_force_recovery option

2010-01-12	The InnoDB Team

	* row/row0mysql.c:
	Fix Bug#49238 Creating/Dropping a temporary table while at 1023
	transactions will cause assert.

689 690
2009-12-02	The InnoDB Team

691 692
	* srv/srv0start.c:
	Display the zlib version number at startup.
693 694
	InnoDB compressed tables use zlib, and the implementation depends
	on the zlib function compressBound(), whose definition was slightly
vdimov's avatar
vdimov committed
695
	changed in zlib version 1.2.3.1 in 2006. MySQL bundles zlib 1.2.3
696 697
	from 2005, but some installations use a more recent zlib.

698 699 700 701 702 703 704 705 706 707
2009-11-30	The InnoDB Team

	* dict/dict0crea.c, dict/dict0mem.c, dict/dict0load.c,
	dict/dict0boot.c, fil/fil0fil.c, handler/ha_innodb.cc,
	include/dict0mem.h, row/row0mysql.c:
	Fix the bogus warning messages for non-existing temporary
	tables that were reported in
	Bug#41609 Crash recovery does not work for InnoDB temporary tables.
	The actual crash recovery bug was corrected on 2009-04-29.

708 709 710 711
2009-11-27	The InnoDB Team

	InnoDB Plugin 1.0.6 released

vasil's avatar
vasil committed
712 713 714 715 716 717 718
2009-11-20	The InnoDB Team

	* handler/ha_innodb.cc:
	Add a workaround to prevent a crash due to Bug#45961 DDL on
	partitioned innodb tables leaves data dictionary in an inconsistent
	state

719 720 721 722 723 724 725 726 727 728 729 730
2009-11-19	The InnoDB Team

	* btr/btr0btr.c:
	Fix Bug#48469 when innodb tablespace is configured too small, crash
	and corruption!

2009-11-19	The InnoDB Team

	* data/data0type.c:
	Fix Bug#48526 Data type for float and double is incorrectly reported
	in InnoDB table monitor

vasil's avatar
vasil committed
731 732 733 734 735
2009-11-19	The InnoDB Team

	* CMakeLists.txt:
	Fix Bug#48317 cannot build innodb as static library

736 737 738 739 740 741
2009-11-18	The InnoDB Team

	* handler/handler0alter.cc:
	Fix Bug#48782 On lock wait timeout, CREATE INDEX (creating primary key)
	attempts DROP TABLE

vasil's avatar
vasil committed
742 743 744 745 746 747 748 749 750
2009-11-17	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb.result,
	mysql-test/innodb.test, mysql-test/innodb_bug44369.result,
	mysql-test/innodb_bug44369.test, mysql-test/patches/innodb-index.diff,
	row/row0mysql.c:
	Report duplicate table names to the client connection, not to the
	error log.

751 752
2009-11-12	The InnoDB Team

vasil's avatar
vasil committed
753 754
	* handler/ha_innodb.cc, include/db0err.h, row/row0merge.c,
	row/row0mysql.c:
755 756 757
	Allow CREATE INDEX to be interrupted.
	Also, when CHECK TABLE is interrupted, report ER_QUERY_INTERRUPTED.

vasil's avatar
vasil committed
758 759 760 761 762 763 764
2009-11-11	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb_bug47167.result,
	mysql-test/innodb_bug47167.test, mysql-test/innodb_file_format.result:
	Fix Bug#47167 "set global innodb_file_format_check" cannot set value
	by User-Defined Variable

vasil's avatar
vasil committed
765 766 767 768 769 770
2009-11-11	The InnoDB Team

	* include/os0file.h, os/os0file.c:
	Fix Bug#3139 Mysql crashes: 'windows error 995' after several selects
	on a large DB

771 772 773 774 775 776 777
2009-11-04	The InnoDB Team

	* handler/ha_innodb.cc:
	Fix Bug#32430 'show innodb status' causes errors
	Invalid (old?) table or database name in logs

2009-11-02	The InnoDB Team
778 779 780 781 782 783 784 785 786 787 788 789 790 791 792

	* btr/btr0sea.c, buf/buf0buf.c, dict/dict0dict.c, fil/fil0fil.c,
	ibuf/ibuf0ibuf.c, include/btr0sea.h, include/dict0dict.h,
	include/fil0fil.h, include/ibuf0ibuf.h, include/lock0lock.h,
	include/log0log.h, include/log0recv.h, include/mem0mem.h,
	include/mem0pool.h, include/os0file.h, include/pars0pars.h,
	include/srv0srv.h, include/thr0loc.h, include/trx0i_s.h,
	include/trx0purge.h, include/trx0rseg.h, include/trx0sys.h,
	include/trx0undo.h, include/usr0sess.h, lock/lock0lock.c,
	log/log0log.c, log/log0recv.c, mem/mem0dbg.c, mem/mem0pool.c,
	os/os0file.c, os/os0sync.c, os/os0thread.c, pars/lexyy.c,
	pars/pars0lex.l, que/que0que.c, srv/srv0srv.c, srv/srv0start.c,
	sync/sync0arr.c, sync/sync0sync.c, thr/thr0loc.c, trx/trx0i_s.c,
	trx/trx0purge.c, trx/trx0rseg.c, trx/trx0sys.c, trx/trx0undo.c,
	usr/usr0sess.c, ut/ut0mem.c:
vdimov's avatar
vdimov committed
793 794
	Fix Bug#45992 innodb memory not freed after shutdown
	Fix Bug#46656 InnoDB plugin: memory leaks (Valgrind)
795

796 797
2009-10-29	The InnoDB Team

vasil's avatar
vasil committed
798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822
	* handler/ha_innodb.cc, mysql-test/innodb-autoinc.result,
	mysql-test/innodb-autoinc.test:
	Fix Bug#47125 auto_increment start value is ignored if an index is
	created and engine=innodb

2009-10-29	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb_bug47777.result,
	mysql-test/innodb_bug47777.test:
	Fix Bug#47777 innodb dies with spatial pk: Failing assertion: buf <=
	original_buf + buf_len

2009-10-29	The InnoDB Team

	* handler/ha_innodb.cc:
	Fix Bug#38996 Race condition in ANALYZE TABLE

2009-10-29	The InnoDB Team

	* handler/ha_innodb.cc:
	Fix bug#42383: Can't create table 'test.bug39438'

2009-10-29	The InnoDB Team

	* os/os0proc.c:
823 824
	Fix Bug#48237 Error handling in os_mem_alloc_large appears to
	be incorrect
vasil's avatar
vasil committed
825 826 827 828

2009-10-29	The InnoDB Team

	* buf/buf0buf.c, buf/buf0lru.c, include/buf0buf.h, include/buf0buf.ic:
829 830 831
	Fix corruption of the buf_pool->LRU_old list and improve debug
	assertions.

vasil's avatar
vasil committed
832 833 834 835 836 837
2009-10-28	The InnoDB Team

	* srv/srv0start.c:
	Fix Bug#41490 After enlargement of InnoDB page size, the error message
	become inaccurate

838 839 840 841 842 843 844
2009-10-26	The InnoDB Team

	* row/row0ins.c:
	When allocating a data tuple, zero out the system fields in order
	to avoid Valgrind warnings about uninitialized fields in
	dtuple_validate().

vasil's avatar
vasil committed
845 846 847 848 849 850 851
2009-10-22	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb-zip.result,
	mysql-test/innodb-zip.test, mysql-test/innodb_bug44369.result,
	mysql-test/innodb_bug44369.test:
	Fix Bug#47233 Innodb calls push_warning(MYSQL_ERROR::WARN_LEVEL_ERROR)

vasil's avatar
vasil committed
852 853 854 855 856 857
2009-10-19	The InnoDB Team

	* mysql-test/innodb_information_schema.test:
	Fix Bug#47808 innodb_information_schema.test fails when run under
	valgrind

vasil's avatar
vasil committed
858 859 860 861 862 863
2009-10-15	The InnoDB Team

	* include/page0page.ic:
	Fix Bug#47058 Failure to compile innodb_plugin on solaris 10u7 + spro
	cc/CC 5.10

864 865 866 867 868 869
2009-10-13	The InnoDB Team

	* buf/buf0flu.c:
	Call fsync() on datafiles after a batch of pages is written to disk
	even when skip_innodb_doublewrite is set.

vasil's avatar
vasil committed
870 871 872 873 874 875 876 877 878 879 880 881
2009-10-05	The InnoDB Team

	* buf/buf0buf.c:
	Do not invalidate buffer pool while an LRU batch is active. Added code
	to buf_pool_invalidate() to wait for the running batches to finish.

2009-10-01	The InnoDB Team

	* handler/ha_innodb.cc:
	Fix Bug#47763 typo in error message: Failed to open table %s after %lu
	attemtps.

882 883 884
2009-10-01	The InnoDB Team

	* fsp/fsp0fsp.c, row/row0merge.c:
vasil's avatar
vasil committed
885
	Clean up after a crash during DROP INDEX. When InnoDB crashes
886
	while dropping an index, ensure that the index will be completely
vasil's avatar
vasil committed
887
	dropped during crash recovery. The MySQL .frm file may still
888 889 890
	contain the dropped index, but there is little that we can do
	about it.

891 892 893 894 895 896 897
2009-09-28	The InnoDB Team

	* handler/ha_innodb.cc:
	When a secondary index exists in the MySQL .frm file but not in
	the InnoDB data dictionary, return an error instead of letting an
	assertion fail in index_read.

898 899
2009-09-28	The InnoDB Team

vasil's avatar
vasil committed
900 901 902
	* btr/btr0btr.c, buf/buf0buf.c, include/page0page.h,
	include/page0zip.h, page/page0cur.c, page/page0page.c,
	page/page0zip.c:
903
	Do not write to PAGE_INDEX_ID when restoring an uncompressed page
vasil's avatar
vasil committed
904 905
	after a compression failure. The field should only be written
	when creating a B-tree page. This fix addresses a race condition
906 907
	in a debug assertion.

908 909 910 911
2009-09-28	The InnoDB Team

	* fil/fil0fil.c:
	Try to prevent the reuse of tablespace identifiers after InnoDB
vasil's avatar
vasil committed
912
	has crashed during table creation. Also, refuse to start if files
913 914
	with duplicate tablespace identifiers are encountered.

vasil's avatar
vasil committed
915 916 917 918 919 920
2009-09-25	The InnoDB Team

	* include/os0file.h, os/os0file.c:
	Fix Bug#47055 unconditional exit(1) on ERROR_WORKING_SET_QUOTA
	1453 (0x5AD) for InnoDB backend

vasil's avatar
vasil committed
921 922 923 924 925 926 927 928 929 930 931 932 933 934
2009-09-19	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb-consistent-master.opt,
	mysql-test/innodb-consistent.result,
	mysql-test/innodb-consistent.test:
	Fix Bug#37232 Innodb might get too many read locks for DML with
	repeatable-read

2009-09-19	The InnoDB Team

	* fsp/fsp0fsp.c:
	Fix Bug#31183 Tablespace full problems not reported in error log,
	error message unclear

935 936 937
2009-09-17	The InnoDB Team

	* mysql-test/innodb-zip.result, mysql-test/innodb-zip.test:
vasil's avatar
vasil committed
938
	Make the test pass with zlib 1.2.3.3. Apparently, the definition
939 940
	of compressBound() has changed between zlib versions, and the
	maximum record size of a table with 1K compressed page size has
vasil's avatar
vasil committed
941 942 943
	been reduced by one byte. This is an arbitrary test. In practical
	applications, for good write performance, the compressed page size
	should be chosen to be bigger than the absolute minimum.
944

vasil's avatar
vasil committed
945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963
2009-09-16	The InnoDB Team

	* handler/ha_innodb.cc:
	Fix Bug#46256 drop table with unknown collation crashes innodb

2009-09-16	The InnoDB Team

	* dict/dict0dict.c, handler/ha_innodb.cc,
	mysql-test/innodb_bug44369.result, mysql-test/innodb_bug44369.test,
	row/row0mysql.c:
	Fix Bug#44369 InnoDB: Does not uniformly disallow disallowed column
	names

2009-09-16	The InnoDB Team

	* handler/ha_innodb.cc, include/db0err.h,
	mysql-test/innodb_bug46000.result, mysql-test/innodb_bug46000.test:
	Fix Bug#46000 using index called GEN_CLUST_INDEX crashes server

964 965 966 967 968 969
2009-09-02	The InnoDB Team

	* include/lock0lock.h, include/row0mysql.h, lock/lock0lock.c,
	row/row0mysql.c:
	Fix a regression introduced by the fix for MySQL bug#26316. We check
	whether a transaction holds any AUTOINC locks before we acquire
vasil's avatar
vasil committed
970
	the kernel mutex and release those locks.
971

972 973 974 975 976 977
2009-08-27	The InnoDB Team

	* dict/dict0dict.c, include/dict0dict.h,
	mysql-test/innodb_bug44571.result, mysql-test/innodb_bug44571.test:
	Fix Bug#44571 InnoDB Plugin crashes on ADD INDEX

978 979 980 981
2009-08-27	The InnoDB Team

	* row/row0merge.c:
	Fix a bug in the merge sort that can corrupt indexes in fast index
vasil's avatar
vasil committed
982
	creation. Add some consistency checks. Check that the number of
983 984
	records remains constant in every merge sort pass.

985 986
2009-08-27	The InnoDB Team

vasil's avatar
vasil committed
987 988 989
	* buf/buf0buf.c, buf/buf0lru.c, buf/buf0rea.c, handler/ha_innodb.cc,
	include/buf0buf.h, include/buf0buf.ic, include/buf0lru.h,
	include/ut0ut.h, ut/ut0ut.c:
990
	Make it possible to tune the buffer pool LRU eviction policy to be
vasil's avatar
vasil committed
991
	more resistant against index scans. Introduce the settable global
992
	variables innodb_old_blocks_pct and innodb_old_blocks_time for
vasil's avatar
vasil committed
993
	controlling the buffer pool eviction policy. The parameter
994
	innodb_old_blocks_pct (5..95) controls the desired amount of "old"
vasil's avatar
vasil committed
995 996
	blocks in the LRU list. The default is 37, corresponding to the
	old fixed ratio of 3/8. Each time a block is accessed, it will be
997 998
	moved to the "new" blocks if its first access was at least
	innodb_old_blocks_time milliseconds ago (default 0, meaning every
vasil's avatar
vasil committed
999
	block). The idea is that in index scans, blocks will be accessed
1000
	a few times within innodb_old_blocks_time, and they will remain in
vasil's avatar
vasil committed
1001 1002 1003 1004
	the "old" section of the LRU list. Thus, when innodb_old_blocks_time
	is nonzero, blocks retrieved for one-time index scans will be more
	likely candidates for eviction than blocks that are accessed in
	random patterns.
1005

1006 1007
2009-08-26	The InnoDB Team

1008
	* handler/ha_innodb.cc, os/os0file.c:
1009 1010 1011
	Fix Bug#42885 buf_read_ahead_random, buf_read_ahead_linear counters,
	thread wakeups

1012 1013 1014
2009-08-20	The InnoDB Team

	* lock/lock0lock.c:
vasil's avatar
vasil committed
1015 1016
	Fix Bug#46650 Innodb assertion autoinc_lock == lock in
	lock_table_remove_low on INSERT SELECT
1017

1018 1019 1020 1021
2009-08-13	The InnoDB Team

	* handler/handler0alter.cc:
	Fix Bug#46657 InnoDB plugin: invalid read in index_merge_innodb test
vasil's avatar
vasil committed
1022
	(Valgrind)
1023

vasil's avatar
vasil committed
1024
2009-08-11	The InnoDB Team
vasil's avatar
vasil committed
1025 1026 1027

	InnoDB Plugin 1.0.4 released

1028 1029
2009-07-20	The InnoDB Team

vasil's avatar
vasil committed
1030 1031
	* buf/buf0rea.c, handler/ha_innodb.cc, include/srv0srv.h,
	srv/srv0srv.c:
1032 1033 1034 1035 1036
	Change the read ahead parameter name to innodb_read_ahead_threshold.
	Change the meaning of this parameter to signify the number of pages
	that must be sequentially accessed for InnoDB to trigger a readahead
	request.

vasil's avatar
vasil committed
1037 1038 1039 1040 1041
2009-07-20	The InnoDB Team

	* handler/ha_innodb.cc:
	Fix Bug#39802 On Windows, 32-bit time_t should be enforced

1042 1043 1044 1045
2009-07-16	The InnoDB Team

	* include/univ.i:
	Support inlining of functions and prefetch with Sun Studio.
vasil's avatar
vasil committed
1046 1047
	These changes are based on contribution from Sun Microsystems Inc.
	under a BSD license.
1048

vasil's avatar
vasil committed
1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060
2009-07-14	The InnoDB Team

	* fil/fil0fil.c:
	Fix Bug#45814 URL reference in InnoDB server errors needs adjusting to
	match documentation

2009-07-14	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb_bug21704.result,
	mysql-test/innodb_bug21704.test:
	Fix Bug#21704 Renaming column does not update FK definition

vasil's avatar
vasil committed
1061 1062 1063 1064 1065 1066 1067
2009-07-10	The InnoDB Team

	* handler/ha_innodb.cc, srv/srv0srv.c:
	Change the defaults for
	innodb_sync_spin_loops: 20 -> 30
	innodb_spin_wait_delay: 5 -> 6

1068 1069
2009-07-08	The InnoDB Team

vasil's avatar
vasil committed
1070 1071 1072
	* buf/buf0flu.c, handler/ha_innodb.cc, include/buf0flu.h,
	include/log0log.h, include/log0log.ic, include/srv0srv.h,
	srv/srv0srv.c:
1073 1074 1075 1076 1077 1078 1079 1080
	Implement the adaptive flushing of dirty pages, which uses
	a heuristics based flushing rate of dirty pages to avoid IO
	bursts at checkpoint. Expose new configure knob
	innodb_adaptive_flushing to control whether the new flushing
	algorithm should be used.

2009-07-07	The InnoDB Team

vasil's avatar
vasil committed
1081 1082
	* handler/ha_innodb.cc, include/srv0srv.h, log/log0log.c,
	srv/srv0srv.c:
1083 1084 1085 1086 1087 1088
	Implement IO capacity tuning. Expose new configure knob
	innodb_io_capacity to control the master threads IO rate. The
	ibuf merge is also changed from synchronous to asynchronous.
	These changes are based on contribution from Google Inc.
	under a BSD license.

vasil's avatar
vasil committed
1089 1090 1091 1092 1093 1094
2009-07-02	The InnoDB Team

	* include/ut0ut.h, plug.in, ut/ut0ut.c:
	Use the PAUSE instruction inside the spinloop if it is available,
	Thanks to Mikael Ronstrom <mikael@mysql.com>.

1095 1096 1097 1098 1099 1100 1101
2009-06-29	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb_file_format.test,
	mysql-test/innodb_file_format.result:
	Do not crash on SET GLOBAL innodb_file_format=DEFAULT
	or SET GLOBAL innodb_file_format_check=DEFAULT.

1102 1103 1104 1105 1106 1107
2009-06-29	The InnoDB Team

	* buf/buf0buf.c, buf/buf0rea.c, lock/lock0lock.c:
	Tolerate missing tablespaces during crash recovery and when
	printing information on locks.

1108 1109 1110 1111 1112 1113 1114
2009-06-29	The InnoDB Team

	* buf/buf0buf.c:
	Fix a race condition when reading buf_fix_count.
	Currently, it is not being protected by the buffer pool mutex,
	but by the block mutex.

1115 1116 1117 1118
2009-06-29	The InnoDB Team

	* handler/handler0alter.cc:
	Start the user transaction prebuilt->trx if it was not started
vasil's avatar
vasil committed
1119
	before adding or dropping an index. Without this fix, the
1120 1121
	table could be locked outside an active transaction.

1122 1123
2009-06-25	The InnoDB Team

vasil's avatar
vasil committed
1124
	* handler/ha_innodb.cc, mysql-test/innodb_bug42101.test,
1125 1126 1127 1128 1129 1130
	mysql-test/innodb_bug42101.result,
	mysql-test/innodb_bug42101-nonzero.test,
	mysql-test/innodb_bug42101-nonzero.result:
	Fix Bug#45749 Race condition in SET GLOBAL
	innodb_commit_concurrency=DEFAULT

1131 1132 1133 1134 1135
2009-06-25	The InnoDB Team

	* dict/dict0dict.c:
	When an index column cannot be found in the table during index
	creation, display additional diagnostic before an assertion failure.
vdimov's avatar
vdimov committed
1136
	This does NOT fix Bug#44571 InnoDB Plugin crashes on ADD INDEX,
1137 1138
	but it helps understand the reason of the crash.

1139 1140 1141 1142 1143
2009-06-17	The InnoDB Team

	* row/row0merge.c:
	Fix Bug#45426 UNIV_DEBUG build cause assertion error at CREATE INDEX

vasil's avatar
vasil committed
1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157
2009-06-17	The InnoDB Team

	* mysql-test/innodb_bug45357.result, mysql-test/innodb_bug45357.test,
	row/row0mysql.c:
	Fix Bug#45357 5.1.35 crashes with Failing assertion: index->type &
	DICT_CLUSTERED

2009-06-17	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb-autoinc.result,
	mysql-test/innodb-autoinc.test:
	Fix Bug#44030 Error: (1500) Couldn't read the MAX(ID) autoinc value
	from the index (PRIMARY)

vasil's avatar
vasil committed
1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173
2009-06-11	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb.result, srv/srv0srv.c:
	Change the following defaults:
	max_dirty_pages_pct: from 90 to 75, max allowed from 100 to 99
	additional_mem_pool_size: from 1 to 8 MB
	buffer_pool_size: from 8 to 128 MB
	log_buffer_size: from 1 to 8 MB
	read_io_threads/write_io_threads: from 1 to 4

2009-06-09	The InnoDB Team

	* handler/ha_innodb.cc, include/trx0trx.h, trx/trx0trx.c:
	Enable Group Commit functionality that was broken in 5.0 when
	distributed transactions were introduced.

vasil's avatar
vasil committed
1174 1175 1176 1177 1178 1179 1180 1181 1182
2009-06-05	The InnoDB Team

	* handler/ha_innodb.cc, include/os0file.h, include/srv0srv.h,
	os/os0file.c, srv/srv0srv.c, srv/srv0start.c:
	Enable functionality to have multiple background IO helper threads.
	Expose new configure knobs innodb_read_io_threads and
	innodb_write_io_threads and deprecate innodb_file_io_threads (this
	parameter was relevant only on windows). Internally this allows
	multiple segments for read and write IO request arrays where one
calvin's avatar
calvin committed
1183
	thread works on one segment.
vasil's avatar
vasil committed
1184

vasil's avatar
vasil committed
1185 1186 1187 1188 1189 1190 1191 1192
2009-06-05	The InnoDB Team

	* buf/buf0lru.c, buf/buf0rea.c, handler/ha_innodb.cc,
	include/srv0srv.h, srv/srv0srv.c:
	Fix a bug in linear read ahead:
	  1) Take into account access pattern when deciding whether or not to
	    do linear read ahead.
	  2) Expose a knob innodb_read_ahead_factor = [0-64] default (8),
calvin's avatar
calvin committed
1193
	    dynamic, global to control linear read ahead behavior. This is the
vasil's avatar
vasil committed
1194 1195 1196 1197 1198 1199 1200
	    value of the number of pages that InnoDB will tolerate within a
	    64 page extent even if they are accessed out of order or have
	    not been accessed at all. This number (which varies from 0 to 64)
	    is indicative of the slack that we have when deciding about linear
	    readahead.
	  3) Disable random read ahead. Keep the code for now.

1201 1202 1203 1204 1205 1206 1207
2009-06-03	The InnoDB Team

	* dict/dict0dict.c, mysql-test/t/innodb_mysql.test,
	mysql-test/r/innodb_mysql.result:
	Fix Bug#39793 Foreign keys not constructed when column
	has a '#' in a comment or default value

marko's avatar
marko committed
1208 1209 1210 1211
2009-05-27	The InnoDB Team

	* Doxyfile:
	Allow the extraction of documentation from the code base with the
vasil's avatar
vasil committed
1212
	Doxygen tool. Convert and add many (but not yet all) comments to
marko's avatar
marko committed
1213 1214
	Doxygen format.

1215 1216 1217 1218 1219 1220 1221 1222
2009-05-19	The InnoDB Team

	* btr/btr0btr.c, btr/btr0cur.c, lock/lock0lock.c,
	include/page0page.ic, include/lock0lock.h, include/dict0dict.h,
	include/page0page.h, include/dict0dict.ic, ibuf/ibuf0ibuf.c,
	page/page0zip.c, page/page0page.c:
	Write updates of PAGE_MAX_TRX_ID to the redo log and add debug
	assertions for checking that PAGE_MAX_TRX_ID is valid on leaf
vasil's avatar
vasil committed
1223
	pages of secondary indexes and the insert buffer B-tree. This bug
1224 1225 1226
	could cause failures in secondary index lookups in consistent
	reads right after crash recovery.

1227 1228 1229 1230 1231 1232
2009-05-18	The InnoDB Team

	* btr/btr0cur.c:
	Correctly estimate the space needed on the compressed page when
	performing an update by delete-and-insert.

vasil's avatar
vasil committed
1233 1234 1235 1236 1237 1238 1239 1240 1241 1242
2009-05-14	The InnoDB Team

	* handler/ha_innodb.cc, include/srv0srv.h,
	mysql-test/innodb_bug42101-nonzero-master.opt,
	mysql-test/innodb_bug42101-nonzero.result,
	mysql-test/innodb_bug42101-nonzero.test,
	mysql-test/innodb_bug42101.result, mysql-test/innodb_bug42101.test,
	srv/srv0srv.c:
	Fix Bug#42101 Race condition in innodb_commit_concurrency

vasil's avatar
vasil committed
1243 1244 1245 1246 1247 1248
2009-05-13	The InnoDB Team

	* dict/dict0dict.c:
	Fix Bug#44320 InnoDB: missing DB_ROLL_PTR in Table Monitor COLUMNS
	output

1249 1250 1251 1252 1253 1254
2009-04-29	The InnoDB Team

	* fil/fil0fil.c, include/fil0fil.h, include/mtr0mtr.h,
	log/log0recv.c:
	Fix Bug#41609 Crash recovery does not work for InnoDB temporary tables

1255 1256 1257 1258
2009-04-23	The InnoDB Team

	* row/row0mysql.c:
	When scanning indexes, report in the error log any error codes
vasil's avatar
vasil committed
1259
	returned by the search function. These error codes will still be
1260 1261
	ignored in CHECK TABLE.

1262 1263
2009-04-23	The InnoDB Team

1264
	* include/trx0types.h:
1265 1266 1267
	Define the logical type names trx_id_t, roll_ptr_t, and undo_no_t
	and use them in place of dulint everywhere.

vasil's avatar
vasil committed
1268 1269 1270 1271 1272
2009-04-18	The InnoDB Team

	* handler/ha_innodb.cc, include/pars0pars.h:
	Fix Bug#29125 Windows Server X64: so many compiler warnings

1273 1274
2009-04-16	The InnoDB Team

1275
	* include/univ.i:
1276 1277 1278
	Define REFMAN as the base URL of the MySQL Reference Manual and
	use the macro in all diagnostic output.

vasil's avatar
vasil committed
1279 1280 1281 1282 1283 1284 1285 1286
2009-04-16	The InnoDB Team

	* CMakeLists.txt, include/os0sync.h, include/sync0sync.h,
	include/sync0sync.ic, include/univ.i, srv/srv0start.c,
	sync/sync0sync.c:
	Use the Windows Interlocked functions for atomic memory
	access.

vasil's avatar
vasil committed
1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302
2009-04-15	The InnoDB Team

	* mysql-test/innodb.result, mysql-test/innodb.test:
	Fix Bug#43309 Test main.innodb can't be run twice

2009-04-14	The InnoDB Team

	* CMakeLists.txt, handler/win_delay_loader.cc,
	win-plugin/win-plugin.diff:
	Remove statically linked libraries from MySQL (zlib and strings).

2009-04-11	The InnoDB Team

	* CMakeLists.txt, win-plugin/README, win-plugin/win-plugin.diff:
	Rewrite CMakeLists.txt.

vasil's avatar
vasil committed
1303 1304 1305 1306 1307 1308 1309 1310
2009-04-07	The InnoDB Team

	* include/os0sync.h, include/sync0rw.ic, include/sync0sync.h,
	include/sync0sync.ic, include/univ.i, plug.in, srv/srv0srv.c,
	srv/srv0start.c, sync/sync0arr.c, sync/sync0sync.c:
	Enable atomics on Solaris (using the libc functions as defined in
	atomic.h) if GCC atomic builtins are not present.

1311
2009-04-07	The InnoDB Team
vasil's avatar
vasil committed
1312

1313 1314
	* btr/btr0btr.c, dict/dict0dict.c, ibuf/ibuf0ibuf.c,
	include/data0data.h, include/data0data.ic, include/data0type.h,
vasil's avatar
vasil committed
1315 1316
	include/data0type.ic, include/dict0dict.h, include/dict0dict.ic,
	include/rem0rec.ic, mysql-test/innodb.result, mysql-test/innodb.test,
1317 1318 1319 1320
	pars/pars0pars.c, rem/rem0rec.c, row/row0upd.c:
	Fix Bug#44032 In ROW_FORMAT=REDUNDANT, update UTF-8 CHAR
	to/from NULL is not in-place

vasil's avatar
vasil committed
1321 1322 1323 1324 1325 1326
2009-04-07	The InnoDB Team

	* page/page0cur.c:
	Fix Bug#43660 SHOW INDEXES/ANALYZE does NOT update cardinality for
	indexes of InnoDB table

1327 1328 1329 1330
2009-04-06	The InnoDB Team

	* handler/ha_innodb.cc:
	Make the parameter innodb_change_buffering settable by the
vasil's avatar
vasil committed
1331
	configuration file or mysqld command line options. Before this
1332 1333
	fix, the initial value specified for this parameter was ignored.

1334 1335 1336 1337 1338
2009-04-06	The InnoDB Team

	* sync/sync0rw.c:
	Avoid a bogus failure in UNIV_SYNC_DEBUG diagnostics.

vasil's avatar
vasil committed
1339 1340 1341 1342 1343 1344
2009-04-02	The InnoDB Team

	* handler/ha_innodb.cc, include/srv0srv.h, srv/srv0srv.c:
	Add new parameter innodb_spin_wait_delay to set the maximum delay
	between polling for a spin lock.

1345 1346 1347
2009-04-02	The InnoDB Team

	* dict/dict0crea.c, handler/ha_innodb.cc, handler/ha_innodb.h,
vasil's avatar
vasil committed
1348 1349 1350
	include/dict0mem.h, include/row0merge.h, include/row0mysql.h,
	mysql-test/innodb-index.result, mysql-test/innodb-index.test,
	row/row0merge.c, row/row0sel.c:
1351 1352 1353
	In consistent reads, refuse to use newly created indexes that may
	lack history.

vasil's avatar
vasil committed
1354 1355 1356 1357 1358 1359 1360 1361
2009-03-25	The InnoDB Team

	* buf/buf0buf.c, handler/ha_innodb.cc, include/buf0buf.h:
	In SHOW ENGINE INNODB MUTEX do not show the status of block->mutex,
	block->lock, block->lock->mutex (if applicable) and all mutexes and
	rw-locks for which number of os-waits are zero because this can
	be overwhelming particularly when the buffer pool is very large.

1362 1363 1364
2009-03-20	The InnoDB Team

	* buf/buf0buf.c, include/log0recv.h, log/log0recv.c:
1365
	Remove the compile-time constant parameters of
1366
	recv_recover_page(), recv_scan_log_recs(), and recv_sys_init().
1367

1368 1369 1370 1371 1372
2009-03-20	The InnoDB Team

	* data/data0type.c, handler/ha_innodb.cc, include/ha_prototypes.h:
	Declare innobase_get_at_most_n_mbchars() in ha_prototypes.h.

1373 1374 1375 1376 1377
2009-03-20	The InnoDB Team

	* fil/fil0fil.h, fil/fil0fil.c, srv/srv0start.c:
	Add the parameter hash_size to fil_init().

1378 1379 1380 1381 1382
2009-03-20	The InnoDB Team

	* fil/fil0fil.c:
	Refer to fil_system directly, not via local variables.

1383 1384 1385 1386 1387 1388
2009-03-20	The InnoDB Team

	* page/page0page.c:
	In page_validate(), always report the space id, page number and
	the name of the index when corruption is noticed.

1389 1390 1391 1392 1393 1394
2009-03-20	The InnoDB Team

	* include/log0log.h, include/log0log.ic, log/log0log.c:
	Add in/out comments or const qualifiers to some function
	parameters as appropriate.

1395 1396 1397 1398 1399 1400 1401 1402 1403
2009-03-20	The InnoDB Team

	* dict/dict0boot.c, dict/dict0dict.c, fsp/fsp0fsp.c,
	include/dict0dict.h, include/srv0srv.h, srv/srv0srv.c,
	page/page0page.c:
	Replace srv_sys->dummy_ind1 and srv_sys->dummy_ind2 with
	dict_ind_redundant and dict_ind_compact, which are
	initialized by dict_init().

vasil's avatar
vasil committed
1404
2009-03-11	The InnoDB Team
vasil's avatar
vasil committed
1405 1406 1407

	InnoDB Plugin 1.0.3 released

vasil's avatar
vasil committed
1408 1409 1410 1411 1412 1413
2009-03-05	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb-autoinc.result,
	mysql-test/innodb-autoinc.test:
	Fix Bug#43203 Overflow from auto incrementing causes server segv

vasil's avatar
vasil committed
1414 1415 1416 1417 1418 1419
2009-02-25	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb-autoinc.result,
	mysql-test/innodb-autoinc.test:
	Fix Bug#42714 AUTO_INCREMENT errors in 5.1.31

1420
2009-02-23	The InnoDB Team
vasil's avatar
vasil committed
1421

1422 1423 1424
	* btr/btr0cur.c:
	Fix Bug#43043 Crash on BLOB delete operation

1425 1426 1427 1428 1429
2009-02-20	The InnoDB Team

	* handler/ha_innodb.cc:
	Make innodb_use_sys_malloc=ON the default.

vasil's avatar
vasil committed
1430 1431 1432 1433 1434 1435
2009-02-20	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb-autoinc.result,
	mysql-test/innodb-autoinc.test:
	Fix Bug#42400 InnoDB autoinc code can't handle floating-point columns

1436 1437
2009-02-18	The InnoDB Team

vasil's avatar
vasil committed
1438
	* include/ut0mem.h, os/os0proc.c, ut/ut0mem.c:
1439
	Protect ut_total_allocated_memory with ut_list_mutex in
vasil's avatar
vasil committed
1440 1441 1442 1443 1444
	os_mem_alloc_large() and os_mem_free_large(). The lack of this mutex
	protection could cause an assertion failure during fast index
	creation. Also, add UNIV_MEM_ALLOC and UNIV_MEM_FREE instrumentation
	to os_mem_alloc_large() and os_mem_free_large(), so that Valgrind can
	detect more errors.
1445

1446 1447 1448
2009-02-11	The InnoDB Team

	* handler/ha_innodb.cc:
vasil's avatar
vasil committed
1449 1450 1451
	Make innodb_thread_concurrency=0 the default. The old default value
	was 8. A non-zero setting may be useful when InnoDB is showing severe
	scalability problems under multiple concurrent connections.
1452

1453 1454
2009-02-10	The InnoDB Team

vasil's avatar
vasil committed
1455
	* handler/ha_innodb.cc, handler/ha_innodb.h:
1456 1457
	Fix Bug#41676 Table names are case insensitive in locking

1458 1459
2009-02-10	The InnoDB Team

vasil's avatar
vasil committed
1460
	* mem/mem0dbg.c, mem/mem0mem.c, mem/mem0pool.c:
1461
	When innodb_use_sys_malloc is set, ignore
vasil's avatar
vasil committed
1462 1463
	innodb_additional_mem_pool_size, because nothing will be allocated
	from mem_comm_pool.
1464

1465 1466 1467
2009-02-10	The InnoDB Team

	* ut/ut0mem.c:
vasil's avatar
vasil committed
1468 1469 1470 1471 1472
	Map ut_malloc_low(), ut_realloc(), and ut_free() directly to malloc(),
	realloc(), and free() when innodb_use_sys_malloc is set. As a side
	effect, ut_total_allocated_memory ("Total memory allocated" in the
	"BUFFER POOL AND MEMORY" section of SHOW ENGINE INNODB STATUS) will
	exclude any memory allocated by these functions when
1473 1474 1475 1476 1477
	innodb_use_sys_malloc is set.

2009-02-10	The InnoDB Team

	* btr/btr0cur.c, btr/btr0sea.c, buf/buf0buf.c, handler/ha_innodb.cc,
vasil's avatar
vasil committed
1478 1479 1480 1481
	include/buf0buf.ic, include/os0sync.h, include/srv0srv.h,
	include/sync0rw.h, include/sync0rw.ic, include/sync0sync.h,
	include/sync0sync.ic, include/univ.i, row/row0sel.c, srv/srv0srv.c,
	srv/srv0start.c, sync/sync0arr.c, sync/sync0rw.c, sync/sync0sync.c:
1482 1483
	On those platforms that support it, implement the synchronization
	primitives of InnoDB mutexes and read/write locks with GCC atomic
vasil's avatar
vasil committed
1484 1485 1486
	builtins instead of Pthreads mutexes and InnoDB mutexes. These changes
	are based on a patch supplied by Mark Callaghan of Google under a BSD
	license.
1487

vasil's avatar
vasil committed
1488 1489 1490 1491 1492 1493
2009-01-30	The InnoDB Team

	* btr/btr0cur.c, btr/btr0sea.c, buf/buf0buf.c, handler/ha_innodb.cc,
	include/btr0sea.h, include/buf0buf.h, include/sync0sync.h,
	sync/sync0sync.c:
	Make the configuration parameter innodb_adaptive_hash_index dynamic,
1494
	so that it can be changed at runtime.
vasil's avatar
vasil committed
1495

1496 1497
2009-01-29	The InnoDB Team

vasil's avatar
vasil committed
1498 1499
	* handler/ha_innodb.cc, ibuf/ibuf0ibuf.c, include/ibuf0ibuf.h,
	include/ibuf0ibuf.ic:
1500
	Implement the settable global variable innodb_change_buffering,
vasil's avatar
vasil committed
1501
	with the allowed values 'none' and 'inserts'. The default value
1502 1503 1504
	'inserts' enables the buffering of inserts to non-unique secondary
	index trees when the B-tree leaf page is not in the buffer pool.

1505 1506 1507
2009-01-27	The InnoDB Team

	* buf/buf0lru.c:
vasil's avatar
vasil committed
1508 1509 1510 1511 1512
	Fix a race condition in buf_LRU_invalidate_tablespace(): The
	compressed page size (zip_size) was read while the block descriptor
	was no longer protected by a mutex. This could lead to corruption
	when a table is dropped on a busy system that contains compressed
	tables.
1513

1514 1515
2009-01-26	The InnoDB Team

vasil's avatar
vasil committed
1516 1517 1518 1519 1520 1521 1522
	* btr/btr0sea.c, buf/buf0buf.c, include/buf0buf.h, include/buf0buf.ic,
	include/mtr0log.ic, include/row0upd.ic, mtr/mtr0mtr.c:
	Implement buf_block_align() with pointer arithmetics, as it is in the
	built-in InnoDB distributed with MySQL. Do not acquire the buffer pool
	mutex before buf_block_align(). This removes a scalability bottleneck
	in the adaptive hash index lookup. In CHECK TABLE, check that
	buf_pool->page_hash is consistent with buf_block_align().
1523

1524 1525 1526 1527 1528
2009-01-23	The InnoDB Team

	* btr/btr0sea.c:
	Fix Bug#42279 Race condition in btr_search_drop_page_hash_when_freed()

1529 1530
2009-01-23	The InnoDB Team

vasil's avatar
vasil committed
1531
	* buf/buf0buf.c, include/buf0buf.h:
1532 1533
	Remove the unused mode BUF_GET_NOWAIT of buf_page_get_gen()

vasil's avatar
vasil committed
1534 1535 1536 1537 1538 1539 1540 1541 1542 1543
2009-01-20	The InnoDB Team

	* include/rem0rec.h, include/rem0rec.ic:
	Fix Bug#41571 MySQL segfaults after innodb recovery

2009-01-20	The InnoDB Team

	* lock/lock0lock.c:
	Fix Bug#42152 Race condition in lock_is_table_exclusive()

vasil's avatar
vasil committed
1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554
2009-01-14	The InnoDB Team

	* include/trx0roll.h, trx/trx0roll.c, trx/trx0trx.c:
	Fix Bug#38187 Error 153 when creating savepoints

2009-01-14	The InnoDB Team

	* dict/dict0load.c:
	Fix Bug#42075 dict_load_indexes failure in dict_load_table will
	corrupt the dictionary cache

1555 1556
2009-01-13	The InnoDB Team

vasil's avatar
vasil committed
1557 1558 1559 1560
	* buf/buf0buddy.c, dict/dict0dict.c, dict/dict0mem.c, fil/fil0fil.c,
	ha/ha0storage.c, handler/ha_innodb.cc, handler/win_delay_loader.cc,
	include/buf0buf.ic, include/dict0dict.ic, include/hash0hash.h,
	thr/thr0loc.c, trx/trx0i_s.c:
1561 1562 1563 1564
	Add the parameter ASSERTION to HASH_SEARCH() macro, and use it for
	light validation of the traversed items in hash table lookups when
	UNIV_DEBUG is enabled.

1565 1566
2009-01-09	The InnoDB Team

vasil's avatar
vasil committed
1567
	* buf/buf0flu.c, include/buf0flu.h, include/buf0flu.ic:
1568 1569 1570 1571 1572 1573
	Remove unused code from the functions
	buf_flush_insert_into_flush_list() and
	buf_flush_insert_sorted_into_flush_list().

2009-01-09	The InnoDB Team

vasil's avatar
vasil committed
1574 1575 1576
	* buf/buf0flu.c:
	Simplify the functions buf_flush_try_page() and buf_flush_batch(). Add
	debug assertions and an explanation to buf_flush_write_block_low().
1577

vasil's avatar
vasil committed
1578 1579 1580
2009-01-07	The InnoDB Team

	* row/row0merge.c:
vasil's avatar
vasil committed
1581
	Fix a bug in recovery when dropping temporary indexes.
vasil's avatar
vasil committed
1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593

2009-01-07	The InnoDB Team

	* handler/ha_innodb.cc, handler/ha_innodb.h, handler/handler0alter.cc:
	Fix Bug#41680 calls to trx_allocate_for_mysql are not consistent

2009-01-07	The InnoDB Team

	* mysql-test/innodb_bug41904.result, mysql-test/innodb_bug41904.test,
	row/row0merge.c:
	Fix Bug#41904 create unique index problem

1594 1595
2009-01-02	The InnoDB Team

vasil's avatar
vasil committed
1596
	* handler/ha_innodb.cc, include/srv0srv.h, mem/mem0pool.c,
1597 1598
	mysql-test/innodb-use-sys-malloc-master.opt,
	mysql-test/innodb-use-sys-malloc.result,
vasil's avatar
vasil committed
1599 1600 1601 1602 1603 1604
	mysql-test/innodb-use-sys-malloc.test, srv/srv0srv.c, srv/srv0start.c:
	Implement the configuration parameter innodb_use_sys_malloc (false by
	default), for disabling InnoDB's internal memory allocator and using
	system malloc/free instead. The "BUFFER POOL AND MEMORY" section of
	SHOW ENGINE INNODB STATUS will report "in additional pool allocated
	allocated 0" when innodb_use_sys_malloc is set.
1605 1606 1607 1608

2008-12-30	The InnoDB Team

	* btr/btr0btr.c:
vasil's avatar
vasil committed
1609 1610 1611 1612 1613 1614
	When setting the PAGE_LEVEL of a compressed B-tree page from or to 0,
	compress the page at the same time. This is necessary, because the
	column information stored on the compressed page will differ between
	leaf and non-leaf pages. Leaf pages are identified by PAGE_LEVEL=0.
	This bug can make InnoDB crash when all rows of a compressed table are
	deleted.
1615

1616 1617
2008-12-17	The InnoDB Team

vasil's avatar
vasil committed
1618 1619 1620 1621 1622 1623
	* include/row0sel.h, include/row0upd.h, pars/pars0pars.c,
	row/row0mysql.c, row/row0sel.c, row/row0upd.c:
	Remove update-in-place select from the internal SQL interpreter. It
	was only used for updating the InnoDB internal data dictionary when
	renaming or dropping tables. It could have caused deadlocks when
	acquiring latches on insert buffer bitmap pages.
1624

1625 1626
2008-12-17	The InnoDB Team

vasil's avatar
vasil committed
1627 1628 1629 1630 1631
	* btr/btr0sea.c, buf/buf0buf.c, buf/buf0lru.c, ha/ha0ha.c,
	ha/hash0hash.c, include/buf0buf.h, include/ha0ha.h, include/ha0ha.ic,
	include/hash0hash.h, include/univ.i:
	Introduce the preprocessor symbol UNIV_AHI_DEBUG for enabling adaptive
	hash index debugging independently of UNIV_DEBUG.
1632

1633 1634 1635
2008-12-16	The InnoDB Team

	* btr/btr0cur.c:
vasil's avatar
vasil committed
1636 1637 1638
	Do not update the free bits in the insert buffer bitmap when inserting
	or deleting from the insert buffer B-tree. Assert that records in the
	insert buffer B-tree are never updated.
1639 1640 1641

2008-12-12	The InnoDB Team

vasil's avatar
vasil committed
1642 1643 1644
	* buf/buf0buf.c, fil/fil0fil.c, fsp/fsp0fsp.c, ibuf/ibuf0ibuf.c,
	include/fil0fil.h, include/ibuf0ibuf.h, include/ibuf0ibuf.ic,
	include/ibuf0types.h:
1645 1646 1647 1648 1649 1650 1651 1652 1653 1654
	Clean up the insert buffer subsystem so that only one insert
	buffer B-tree exists.
	Originally, there were provisions in InnoDB for multiple insert
	buffer B-trees, apparently one for each tablespace.
	When Heikki Tuuri implemented multiple InnoDB tablespaces in
	MySQL/InnoDB 4.1, he made the insert buffer live only in the
	system tablespace (space 0) but left the provisions in the code.

2008-12-11	The InnoDB Team

vasil's avatar
vasil committed
1655 1656 1657 1658
	* include/srv0srv.h, os/os0proc.c, srv/srv0srv.c:
	Fix the issue that the InnoDB plugin fails if innodb_buffer_pool_size
	is defined bigger than 4096M on 64-bit Windows. This bug should not
	have affected other 64-bit systems.
1659 1660 1661 1662 1663 1664 1665 1666 1667

2008-12-09	The InnoDB Team

	* handler/ha_innodb.cc:
	Fix Bug#40386 Not flushing query cache after truncate.

2008-12-09	The InnoDB Team

	* handler/ha_innodb.cc, srv/srv0srv.c, trx/trx0trx.c:
vasil's avatar
vasil committed
1668
	Fix Bug#40760 "set global innodb_thread_concurrency = 0;" is not safe
1669 1670 1671

2008-12-04	The InnoDB Team

vasil's avatar
vasil committed
1672 1673
	* handler/ha_innodb.cc, handler/mysql_addons.cc,
	include/mysql_addons.h, trx/trx0i_s.c, win-plugin/win-plugin.diff:
1674 1675 1676 1677 1678
	Remove dependencies to MySQL internals (defining MYSQL_SERVER).

2008-12-02	The InnoDB Team

	* page/page0cur.c:
vasil's avatar
vasil committed
1679 1680 1681 1682
	When allocating space for a record from the free list of previously
	purged records, zero out the DB_TRX_ID and DB_ROLL_PTR of the purged
	record if the new record would not overwrite these fields. This fixes
	a harmless content mismatch reported by page_zip_validate().
1683

vasil's avatar
vasil committed
1684 1685 1686
2008-12-02	The InnoDB Team

	* row/row0merge.c:
vasil's avatar
vasil committed
1687 1688 1689
	Replace the WHILE 1 with WHILE 1=1 in the SQL procedure, so that the
	loop will actually be entered and temporary indexes be dropped during
	crash recovery.
vasil's avatar
vasil committed
1690

vasil's avatar
vasil committed
1691 1692 1693 1694
2008-12-01	The InnoDB Team

	InnoDB Plugin 1.0.2 released

1695
2008-10-31	The InnoDB Team
vasil's avatar
vasil committed
1696 1697 1698 1699 1700

	* dict/dict0mem.c, include/dict0mem.h, include/lock0lock.h,
	include/row0mysql.h, include/trx0trx.h, include/univ.i,
	include/ut0vec.h, include/ut0vec.ic, lock/lock0lock.c,
	row/row0mysql.c, trx/trx0trx.c:
1701 1702 1703
	Fix Bug#26316 Triggers create duplicate entries on auto-increment
	columns

vasil's avatar
vasil committed
1704 1705 1706 1707 1708 1709 1710
2008-10-30	The InnoDB Team

	* handler/ha_innodb.cc, handler/handler0vars.h,
	handler/win_delay_loader.cc, mysql-test/innodb_bug40360.result,
	mysql-test/innodb_bug40360.test:
	Fix Bug#40360 Binlog related errors with binlog off

vasil's avatar
vasil committed
1711 1712 1713 1714 1715 1716 1717 1718 1719 1720
2008-10-29	The InnoDB Team

	* include/data0type.ic:
	Fix Bug#40369 dtype_get_sql_null_size() returns 0 or 1, not the size

2008-10-29	The InnoDB Team

	* handler/ha_innodb.cc, include/srv0srv.h, srv/srv0srv.c:
	Fix Bug#38189 innodb_stats_on_metadata missing

vasil's avatar
vasil committed
1721 1722 1723 1724 1725 1726 1727 1728 1729
2008-10-28	The InnoDB Team

	* CMakeLists.txt, ha_innodb.def, handler/ha_innodb.cc,
	handler/handler0alter.cc, handler/handler0vars.h, handler/i_s.cc,
	handler/win_delay_loader.cc, win-plugin/*:
	Implemented the delayloading of externals for the plugin on Windows.
	This makes it possible to build a dynamic plugin (ha_innodb.dll) on
	Windows.

vasil's avatar
vasil committed
1730 1731 1732 1733 1734 1735
2008-10-27	The InnoDB Team

	* CMakeLists.txt:
	Fix Bug#19424 InnoDB: Possibly a memory overrun of the buffer being
	freed (64-bit Visual C)

1736 1737 1738 1739 1740 1741
2008-10-23	The InnoDB Team

	* ibuf/ibuf0ibuf.c:
	ibuf_delete_rec(): When the cursor to the insert buffer record
	cannot be restored, do not complain if the tablespace does not
	exist, because the insert buffer record may have been discarded by
vasil's avatar
vasil committed
1742
	some other thread. This bug has existed in MySQL/InnoDB since
1743
	version 4.1, when innodb_file_per_table was implemented.
1744
	This may fix Bug#27276 InnoDB Error: ibuf cursor restoration fails.
1745

vasil's avatar
vasil committed
1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762
2008-10-22	The InnoDB Team

	* dict/dict0dict.c, dict/dict0mem.c, handler/ha_innodb.cc,
	handler/ha_innodb.h, include/dict0dict.h, include/dict0mem.h,
	row/row0mysql.c:
	Fix Bug#39830 Table autoinc value not updated on first insert
	Fix Bug#35498 Cannot get table test/table1 auto-inccounter value in
	::info
	Fix Bug#36411 "Failed to read auto-increment value from storage
	engine" in 5.1.24 auto-inc

2008-10-22	The InnoDB Team

	* handler/ha_innodb.cc, include/row0mysql.h, row/row0mysql.c:
	Fix Bug#40224 New AUTOINC changes mask reporting of deadlock/timeout
	errors

1763 1764
2008-10-16	The InnoDB Team

vasil's avatar
vasil committed
1765 1766
	* dict/dict0dict.c, mysql-test/innodb-index.result,
	mysql-test/innodb-index.test:
1767
	Skip the undo log size check when creating REDUNDANT and COMPACT
vasil's avatar
vasil committed
1768
	tables. In ROW_FORMAT=DYNAMIC and ROW_FORMAT=COMPRESSED, column
1769 1770
	prefix indexes require that prefixes of externally stored columns
	be written to the undo log. This may make the undo log record
vasil's avatar
vasil committed
1771 1772 1773
	bigger than the record on the B-tree page. The maximum size of an
	undo log record is the page size. That must be checked for, in
	dict_index_add_to_cache(). However, this restriction must not
1774 1775 1776 1777
	be enforced on REDUNDANT or COMPACT tables.

2008-10-15	The InnoDB Team

vasil's avatar
vasil committed
1778 1779
	* btr/btr0cur.c, include/btr0cur.h, row/row0ext.c, row/row0sel.c,
	row/row0upd.c:
1780 1781
	When the server crashes while freeing an externally stored column
	of a compressed table, the BTR_EXTERN_LEN field in the BLOB
vasil's avatar
vasil committed
1782 1783
	pointer will be written as 0. Tolerate this in the functions that
	deal with externally stored columns. This fixes problems after
1784 1785 1786 1787 1788 1789 1790
	crash recovery, in the rollback of incomplete transactions, and in
	the purge of delete-marked records.

2008-10-15	The InnoDB Team

	* btr/btr0btr.c, include/page0zip.h, page/page0zip.c, include/univ.i:
	When a B-tree node of a compressed table is split or merged, the
vasil's avatar
vasil committed
1791 1792
	compression may fail. In this case, the entire compressed page
	will be copied and the excess records will be deleted. However,
1793 1794
	page_zip_copy(), now renamed to page_zip_copy_recs(), copied too
	many fields in the page header, overwriting PAGE_BTR_SEG_LEAF and
vasil's avatar
vasil committed
1795 1796
	PAGE_BTR_SEG_TOP when splitting the B-tree root. This caused
	corruption of compressed tables. Furthermore, the lock table and
1797 1798 1799 1800 1801 1802 1803 1804 1805 1806
	the adaptive hash index would be corrupted, because we forgot to
	update them when invoking page_zip_copy_recs().

	Introduce the symbol UNIV_ZIP_DEBUG for triggering the copying of
	compressed pages more often, for debugging purposes.

2008-10-10	The InnoDB Team

	* handler/handler0alter.cc, include/row0merge.h, row/row0merge.c,
	row/row0mysql.c:
vasil's avatar
vasil committed
1807
	Fix some locking issues, mainly in fast index creation. The
1808 1809
	InnoDB data dictionary cache should be latched whenever a
	transaction is holding locks on any data dictionary tables.
vasil's avatar
vasil committed
1810
	Otherwise, lock waits or deadlocks could occur. Furthermore, the
1811 1812 1813 1814 1815 1816 1817 1818 1819 1820
	data dictionary transaction must be committed (and the locks
	released) before the data dictionary latch is released.

	ha_innobase::add_index(): Lock the data dictionary before renaming
	or dropping the created indexes, because neither operation will
	commit the data dictionary transaction.

	ha_innobase::final_drop_index(): Commit the transactions before
	unlocking the data dictionary.

vasil's avatar
vasil committed
1821 1822 1823 1824 1825 1826
2008-10-09	The InnoDB Team

	* buf/buf0lru.c:
	Fix Bug#39939 DROP TABLE/DISCARD TABLESPACE takes long time in
	buf_LRU_invalidate_tablespace()

1827 1828 1829
2008-10-08	The InnoDB Team

	* dict/dict0crea.c, trx/trx0roll.c, include/row0mysql.h,
vasil's avatar
vasil committed
1830 1831 1832 1833 1834 1835 1836 1837
	row/row0merge.c, row/row0mysql.c:
	When dropping a table, hold the data dictionary latch until the
	transaction has been committed. The data dictionary latch is
	supposed to prevent lock waits and deadlocks in the data
	dictionary tables. Due to this bug, DROP TABLE could cause a
	deadlock or hang. Note that because of Bug#33650 and Bug#39833,
	MySQL may also drop a (temporary) table when executing CREATE INDEX
	or ALTER TABLE ... ADD INDEX.
1838

vasil's avatar
vasil committed
1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859
2008-10-04	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb_bug39438-master.opt,
	mysql-test/innodb_bug39438.result, mysql-test/innodb_bug39438.test:
	Fix Bug#39438 Testcase for Bug#39436 crashes on 5.1 in
	fil_space_get_latch

2008-10-04	The InnoDB Team

	* include/lock0lock.h, lock/lock0lock.c,
	mysql-test/innodb_bug38231.result, mysql-test/innodb_bug38231.test,
	row/row0mysql.c:
	Fix Bug#38231 Innodb crash in lock_reset_all_on_table() on TRUNCATE +
	LOCK / UNLOCK

2008-10-04	The InnoDB Team

	* handler/ha_innodb.cc:
	Fix Bug#35498 Cannot get table test/table1 auto-inccounter value in
	::info

vasil's avatar
vasil committed
1860 1861 1862 1863 1864 1865
2008-10-04	The InnoDB Team

	* handler/ha_innodb.cc, handler/ha_innodb.h:
	Fix Bug#37788 InnoDB Plugin: AUTO_INCREMENT wrong for compressed
	tables

vasil's avatar
vasil committed
1866 1867 1868 1869 1870 1871
2008-10-04	The InnoDB Team

	* dict/dict0dict.c, handler/ha_innodb.cc, handler/ha_innodb.h,
	include/dict0dict.h, include/dict0mem.h, row/row0mysql.c:
	Fix Bug#39830 Table autoinc value not updated on first insert

1872 1873 1874 1875
2008-10-03	The InnoDB Team

	* mysql-test/innodb-index.test, mysql-test/innodb-index.result,
	mysql-test/innodb-timeout.test, mysql-test/innodb-timeout.result,
vasil's avatar
vasil committed
1876 1877
	srv/srv0srv.c, include/srv0srv.h, handler/ha_innodb.cc,
	include/ha_prototypes.h:
vasil's avatar
vasil committed
1878
	Fix Bug#36285 innodb_lock_wait_timeout is not dynamic, not per session
1879

1880 1881 1882 1883 1884 1885 1886
2008-09-19	The InnoDB Team

	* os/os0proc.c:
	Fix a memory leak on Windows. The memory leak was due to wrong
	parameters passed into VirtualFree() call. As the result, the
	call fails with Windows error 87.

1887 1888 1889
2008-09-17	The InnoDB Team

	* mysql-test/innodb.result, mysql-test/innodb-zip.result,
vasil's avatar
vasil committed
1890 1891 1892 1893
	mysql-test/innodb-zip.test, mysql-test/innodb.test, ibuf/ibuf0ibuf.c,
	dict/dict0crea.c, dict/dict0load.c, dict/dict0boot.c,
	include/dict0dict.h, include/trx0trx.h, dict/dict0dict.c,
	trx/trx0trx.c, include/ha_prototypes.h, handler/ha_innodb.cc:
1894 1895 1896
	When creating an index in innodb_strict_mode, check that the
	maximum record size will never exceed the B-tree page size limit.
	For uncompressed tables, there should always be enough space for
vasil's avatar
vasil committed
1897
	two records in an empty B-tree page. For compressed tables, there
1898 1899 1900 1901 1902
	should be enough space for storing two node pointer records or one
	data record in an empty page in uncompressed format.
	The purpose of this check is to guarantee that INSERT or UPDATE
	will never fail due to too big record size.

1903 1904 1905
2008-09-17	The InnoDB Team

	* btr/btr0cur.c, data/data0data.c, include/page0zip.h,
vasil's avatar
vasil committed
1906
	include/page0zip.ic, page/page0zip.c, mysql-test/innodb_bug36172.test:
1907 1908
	Prevent infinite B-tree page splits in compressed tables by
	ensuring that there will always be enough space for two node
vasil's avatar
vasil committed
1909 1910
	pointer records in an empty B-tree page. Also, require that at
	least one data record will fit in an empty compressed page. This
1911 1912
	will reduce the maximum size of records in compressed tables.

vasil's avatar
vasil committed
1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075
2008-09-09	The InnoDB Team

	* mysql-test/innodb.result:
	Fix the failing innodb test by merging changes that MySQL made to
	that file (r2646.12.1 in MySQL BZR repository)

2008-09-09	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb-autoinc.result,
	mysql-test/innodb-autoinc.test:
	Fix Bug#38839 auto increment does not work properly with InnoDB after
	update

2008-09-09	The InnoDB Team

	* dict/dict0dict.c, handler/handler0alter.cc, include/dict0dict.h,
	mysql-test/innodb-index.result, mysql-test/innodb-index.test:
	Fix Bug#38786 InnoDB plugin crashes on drop table/create table with FK

2008-08-21	The InnoDB Team

	* handler/ha_innodb.cc, include/ha_prototypes.h, row/row0sel.c:
	Fix Bug#37885 row_search_for_mysql may gap lock unnecessarily with SQL
	comments in query

2008-08-21	The InnoDB Team

	* handler/ha_innodb.cc:
	Fix Bug#38185 ha_innobase::info can hold locks even when called with
	HA_STATUS_NO_LOCK

2008-08-18	The InnoDB Team

	* buf/buf0buf.c, buf/buf0lru.c, include/buf0buf.ic, include/univ.i:
	Introduce UNIV_LRU_DEBUG for debugging the LRU buffer pool cache

2008-08-08	The InnoDB Team

	* buf/buf0lru.c, include/buf0buf.h:
	Fix two recovery bugs that could lead to a crash in debug builds with
	small buffer size

2008-08-07	The InnoDB Team

	* btr/btr0cur.c, handler/ha_innodb.cc, include/srv0srv.h,
	srv/srv0srv.c:
	Add a parameter innodb_stats_sample_pages to allow users to control
	the number of index dives when InnoDB estimates the cardinality of
	an index (ANALYZE TABLE, SHOW TABLE STATUS etc)

2008-08-07	The InnoDB Team

	* trx/trx0i_s.c:
	Fix a bug that would lead to a crash if a SELECT was issued from the
	INFORMATION_SCHEMA tables and there are rolling back transactions at
	the same time

2008-08-06	The InnoDB Team

	* btr/btr0btr.c, btr/btr0cur.c, ibuf/ibuf0ibuf.c, include/btr0cur.h,
	include/trx0roll.h, include/trx0types.h, row/row0purge.c,
	row/row0uins.c, row/row0umod.c, trx/trx0roll.c:
	In the rollback of incomplete transactions after crash recovery,
	tolerate clustered index records whose externally stored columns
	have not been written.

2008-07-30	The InnoDB Team

	* trx/trx0trx.c:
	Fixes a race in recovery where the recovery thread recovering a
	PREPARED trx and the background rollback thread can both try
	to free the trx after its status is set to COMMITTED_IN_MEMORY.

2008-07-29	The InnoDB Team

	* include/trx0rec.h, row/row0purge.c, row/row0vers.c, trx/trx0rec.c:
	Fix a BLOB corruption bug

2008-07-15	The InnoDB Team

	* btr/btr0sea.c, dict/dict0dict.c, include/btr0sea.h:
	Fixed a timing hole where a thread dropping an index can free the
	in-memory index struct while another thread is still using that
	structure to remove entries from adaptive hash index belonging
	to one of the pages that belongs to the index being dropped.

2008-07-04	The InnoDB Team

	* mysql-test/innodb-index.result:
	Fix the failing innodb-index test by adjusting the result to a new
	MySQL behavior (the change occured in BZR-r2667)

2008-07-03	The InnoDB Team

	* mysql-test/innodb-zip.result, mysql-test/innodb-zip.test:
	Remove the negative test cases that produce warnings

2008-07-02	The InnoDB Team

	* mysql-test/innodb-replace.result, mysql-test/innodb-index.test:
	Disable part of innodb-index test because MySQL changed its behavior
	and is not calling ::add_index() anymore when adding primary index on
	non-NULL column

2008-07-01	The InnoDB Team

	* mysql-test/innodb-replace.result, mysql-test/innodb-replace.test:
	Fix the failing innodb-replace test by merging changes that MySQL
	made to that file (r2659 in MySQL BZR repository)

2008-07-01	The InnoDB Team

	* lock/lock0lock.c:
	Fix Bug#36942 Performance problem in lock_get_n_rec_locks (SHOW INNODB
	STATUS)

2008-07-01	The InnoDB Team

	* ha/ha0ha.c:
	Fix Bug#36941 Performance problem in ha_print_info (SHOW INNODB
	STATUS)

2008-07-01	The InnoDB Team

	* handler/ha_innodb.cc, mysql-test/innodb-autoinc.result,
	mysql-test/innodb-autoinc.test:
	Fix Bug#37531 After truncate, auto_increment behaves incorrectly for
	InnoDB

2008-06-19	The InnoDB Team

	* handler/ha_innodb.cc:
	Rewrite the function innodb_plugin_init() to support parameters in
	different order (in static and dynamic InnoDB) and to support more
	parameters in the static InnoDB

2008-06-19	The InnoDB Team

	* handler/handler0alter.cc:
	Fix a bug in ::add_index() which set the transaction state to "active"
	but never restored it to the original value. This bug caused warnings
	to be printed by the rpl.rpl_ddl mysql-test.

2008-06-19	The InnoDB Team

	* mysql-test/patches:
	Add a directory which contains patches, which need to be applied to
	MySQL source in order to get some mysql-tests to succeed. The patches
	cannot be committed in MySQL repository because they are specific to
	the InnoDB plugin.

2008-06-19	The InnoDB Team

	* mysql-test/innodb-zip.result, mysql-test/innodb-zip.test,
	row/row0row.c:
	Fix an anomaly when updating a record with BLOB prefix

2008-06-18	The InnoDB Team

	* include/trx0sys.h, srv/srv0start.c, trx/trx0sys.c:
	Fix a bug in recovery which was a side effect of the file_format_check
	changes

vasil's avatar
vasil committed
2076 2077 2078 2079 2080 2081
2008-06-09	The InnoDB Team

	* mysql-test/innodb.result:
	Fix the failing innodb test by merging changes that MySQL made to that
	file

vasil's avatar
vasil committed
2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102
2008-06-06	The InnoDB Team

	* buf/buf0buf.c, handler/ha_innodb.cc, include/buf0buf.h,
	include/srv0srv.h, srv/srv0srv.c:
	Fix Bug#36600 SHOW STATUS takes a lot of CPU in
	buf_get_latched_pages_number

	* handler/ha_innodb.cc, os/os0file.c:
	Fix Bug#11894 innodb_file_per_table crashes w/ Windows .sym symbolic
	link hack

	* include/ut0ut.h, srv/srv0srv.c, ut/ut0ut.c:
	Fix Bug#36819 ut_usectime does not handle errors from gettimeofday

	* handler/ha_innodb.cc:
	Fix Bug#35602 Failed to read auto-increment value from storage engine

	* srv/srv0start.c:
	Fix Bug#36149 Read buffer overflow in srv0start.c found during "make
	test"

vasil's avatar
vasil committed
2103 2104 2105 2106 2107 2108 2109 2110 2111 2112
2008-05-08	The InnoDB Team

	* btr/btr0btr.c, mysql-test/innodb_bug36172.result,
	mysql-test/innodb_bug36172.test:
	Fix Bug#36172 insert into compressed innodb table crashes

2008-05-08	The InnoDB Team

	InnoDB Plugin 1.0.1 released

vasil's avatar
vasil committed
2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130
2008-05-06	The InnoDB Team

	* handler/ha_innodb.cc, include/srv0srv.h, include/sync0sync.h,
	include/trx0sys.h, mysql-test/innodb-zip.result,
	mysql-test/innodb-zip.test, srv/srv0srv.c, srv/srv0start.c,
	sync/sync0sync.c, trx/trx0sys.c:
	Implement the system tablespace tagging

	* handler/ha_innodb.cc, handler/i_s.cc, include/univ.i,
	srv/srv0start.c:
	Add InnoDB version in INFORMATION_SCHEMA.PLUGINS.PLUGIN_VERSION,
	in the startup message and in a server variable innodb_version.

	* sync/sync0sync.c:
	Fix a bug in the sync debug code where a lock with level
	SYNC_LEVEL_VARYING would cause an assertion failure when a thread
	tried to release it.

vasil's avatar
vasil committed
2131 2132
2008-04-30	The InnoDB Team

vasil's avatar
vasil committed
2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143
	* Makefile.am:
	Fix Bug#36434 ha_innodb.so is installed in the wrong directory

	* handler/ha_innodb.cc:
	Merge change from MySQL (Fix Bug#35406 5.1-opt crashes on select from
	I_S.REFERENTIAL_CONSTRAINTS):
	ChangeSet@1.2563, 2008-03-18 19:42:04+04:00, gluh@mysql.com +1 -0

	* scripts/install_innodb_plugins.sql:
	Added

vasil's avatar
vasil committed
2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165
	* mysql-test/innodb.result:
	Merge change from MySQL (this fixes the failing innodb test):
	ChangeSet@1.1810.3601.4, 2008-02-07 02:33:21+04:00

	* row/row0sel.c:
	Fix Bug#35226 RBR event crashes slave

	* handler/ha_innodb.cc:
	Change the fix for Bug#32440 to show bytes instead of kilobytes in
	INFORMATION_SCHEMA.TABLES.DATA_FREE

	* handler/ha_innodb.cc, mysql-test/innodb.result,
	mysql-test/innodb.test:
	Fix Bug#29507 TRUNCATE shows to many rows effected

	* handler/ha_innodb.cc, mysql-test/innodb.result,
	mysql-test/innodb.test:
	Fix Bug#35537 Innodb doesn't increment handler_update and
	handler_delete

2008-04-29	The InnoDB Team

vasil's avatar
vasil committed
2166
	* handler/i_s.cc, include/srv0start.h, srv/srv0start.c:
vasil's avatar
vasil committed
2167 2168 2169 2170 2171 2172 2173 2174 2175
	Fix Bug#36310 InnoDB plugin crash

2008-04-23	The InnoDB Team

	* mysql-test/innodb_bug36169.result, mysql-test/innodb_bug36169.test,
	row/row0mysql.c:
	Fix Bug#36169 create innodb compressed table with too large row size
	crashed

vasil's avatar
vasil committed
2176 2177 2178 2179
	* (outside the source tree):
	Fix Bug#36222 New InnoDB plugin 1.0 has wrong MKDIR_P defined in
	Makefile.in

vasil's avatar
vasil committed
2180 2181 2182
2008-04-15	The InnoDB Team

	InnoDB Plugin 1.0.0 released