3626 Nirbhay Choubey 2011-10-14
WL#5945 : Improve libedit library
Updated libedit library.
added:
cmd-line-utils/libedit/chartype.c
cmd-line-utils/libedit/chartype.h
cmd-line-utils/libedit/eln.c
cmd-line-utils/libedit/historyn.c
cmd-line-utils/libedit/np/wcsdup.c
cmd-line-utils/libedit/tokenizern.c
renamed:
cmd-line-utils/libedit/el_term.h => cmd-line-utils/libedit/el_terminal.h
cmd-line-utils/libedit/key.c => cmd-line-utils/libedit/keymacro.c
cmd-line-utils/libedit/key.h => cmd-line-utils/libedit/keymacro.h
cmd-line-utils/libedit/term.c => cmd-line-utils/libedit/terminal.c
modified:
cmd-line-utils/libedit/Makefile.am
cmd-line-utils/libedit/README
cmd-line-utils/libedit/chared.c
cmd-line-utils/libedit/chared.h
cmd-line-utils/libedit/common.c
cmd-line-utils/libedit/config.h
cmd-line-utils/libedit/el.c
cmd-line-utils/libedit/el.h
cmd-line-utils/libedit/emacs.c
cmd-line-utils/libedit/filecomplete.c
cmd-line-utils/libedit/filecomplete.h
cmd-line-utils/libedit/hist.c
cmd-line-utils/libedit/hist.h
cmd-line-utils/libedit/histedit.h
cmd-line-utils/libedit/history.c
cmd-line-utils/libedit/makelist.sh
cmd-line-utils/libedit/map.c
cmd-line-utils/libedit/map.h
cmd-line-utils/libedit/np/strlcat.c
cmd-line-utils/libedit/np/strlcpy.c
cmd-line-utils/libedit/np/unvis.c
cmd-line-utils/libedit/np/vis.c
cmd-line-utils/libedit/np/vis.h
cmd-line-utils/libedit/parse.c
cmd-line-utils/libedit/parse.h
cmd-line-utils/libedit/prompt.c
cmd-line-utils/libedit/prompt.h
cmd-line-utils/libedit/read.c
cmd-line-utils/libedit/read.h
cmd-line-utils/libedit/readline.c
cmd-line-utils/libedit/readline/readline.h
cmd-line-utils/libedit/refresh.c
cmd-line-utils/libedit/refresh.h
cmd-line-utils/libedit/search.c
cmd-line-utils/libedit/search.h
cmd-line-utils/libedit/sig.c
cmd-line-utils/libedit/sig.h
cmd-line-utils/libedit/sys.h
cmd-line-utils/libedit/tokenizer.c
cmd-line-utils/libedit/tty.c
cmd-line-utils/libedit/tty.h
cmd-line-utils/libedit/vi.c
cmd-line-utils/libedit/el_terminal.h
cmd-line-utils/libedit/keymacro.c
cmd-line-utils/libedit/keymacro.h
cmd-line-utils/libedit/terminal.c
3625 Marko Mäkelä 2011-10-12
Bug#13006367 62487: innodb takes 3 minutes to clean up the adaptive
hash index at shutdown
btr_search_disable(): Just drop the entire adaptive hash index,
without dropping every record separately.
buf_pool_clear_hash_index(): Renamed and simplified from
buf_pool_drop_hash_index(). Set block->index = NULL for every block in
the buffer pool. Do not release the btr_search_latch. The caller will
have to adjust other data structures.
Remove block->is_hashed. It is redundant, should be always equal to
block->index != NULL.
Remove btr_search_fully_disabled, btr_search_enabled_mutex, and
SYNC_SEARCH_SYS_CONF. We drop the AHI in one pass, without releasing
the btr_search_latch in between.
Replace void* with const rec_t* and add assertions on btr_search_latch
and btr_search_enabled to ha0ha.h, ha0ha.ic, ha0ha.c.
page_set_max_trx_id(): Ignore the adaptive hash index. I forgot to
push this in rb:750.
btr0sea.c: Always after acquiring btr_search_latch, check for
block->index==NULL or !btr_search_enabled. We can now set
block->index=NULL while only holding btr_search_latch in exclusive
mode. Always acquire btr_search_latch before reading block->index,
except in shortcuts when testing for block->index == NULL.
ha_clear(), ha_search(): Unused function, remove.
buf_page_peek_if_search_hashed(): Remove. This function may avoid
latching a page at the cost of doing a duplicate buf_pool->page_hash
lookup.
rb:775 approved by Inaam Rana
modified:
storage/innodb_plugin/ChangeLog
storage/innodb_plugin/btr/btr0cur.c
storage/innodb_plugin/btr/btr0sea.c
storage/innodb_plugin/buf/buf0buf.c
storage/innodb_plugin/buf/buf0lru.c
storage/innodb_plugin/ha/ha0ha.c
storage/innodb_plugin/handler/ha_innodb.cc
storage/innodb_plugin/ibuf/ibuf0ibuf.c
storage/innodb_plugin/include/btr0sea.h
storage/innodb_plugin/include/btr0types.h
storage/innodb_plugin/include/buf0buf.h
storage/innodb_plugin/include/ha0ha.h
storage/innodb_plugin/include/ha0ha.ic
storage/innodb_plugin/include/row0upd.ic
storage/innodb_plugin/include/sync0sync.h
storage/innodb_plugin/page/page0page.c
storage/innodb_plugin/sync/sync0sync.c
Diff too large for email (16947 lines, the limit is 10000).
No bundle (reason: useless for push emails).| Thread |
|---|
| • bzr push into mysql-5.1 branch (nirbhay.choubey:3625 to 3626) WL#5945 | Nirbhay Choubey | 14 Oct |