Commit graph

1679 commits

Author SHA1 Message Date
marko
87cf4a3a02 branches/zip: Merge revisions 4994:5148 from branches/5.1:
------------------------------------------------------------------------
  r5126 | vasil | 2009-05-26 16:57:12 +0300 (Tue, 26 May 2009) | 9 lines

  branches/5.1:

  Preparation for the fix of
  Bug#45097 Hang during recovery, redo logs for doublewrite buffer pages

  Non-functional change: move FSP_* macros from fsp0fsp.h to a new file
  fsp0types.h. This is needed in order to be able to use FSP_EXTENT_SIZE
  in mtr0log.ic.
  ------------------------------------------------------------------------
  r5127 | vasil | 2009-05-26 17:05:43 +0300 (Tue, 26 May 2009) | 9 lines

  branches/5.1:

  Preparation for the fix of
  Bug#45097 Hang during recovery, redo logs for doublewrite buffer pages

  Do not include unnecessary headers mtr0log.h and fut0lst.h in trx0sys.h
  and include fsp0fsp.h just before it is needed. This is needed in order
  to be able to use TRX_SYS_SPACE in mtr0log.ic.
  ------------------------------------------------------------------------
  r5128 | vasil | 2009-05-26 17:26:37 +0300 (Tue, 26 May 2009) | 7 lines

  branches/5.1:

  Fix Bug#45097 Hang during recovery, redo logs for doublewrite buffer pages

  Do not write redo log for the pages in the doublewrite buffer. Also, do not
  make a dummy change to the page because this is not needed.
  ------------------------------------------------------------------------
2009-05-27 10:46:42 +00:00
marko
245bd82170 branches/zip: ibuf0ibuf.c: Improve a comment. 2009-05-27 09:55:14 +00:00
marko
ef99c401f2 branches/zip: buf0buf.h, Doxyfile: Fix the Doxygen translation.
@defgroup is for source code modules, not for field groups.
Tell Doxygen to expand the UT_LIST declarations.
2009-05-27 06:57:25 +00:00
marko
8c0fad1c5f branches/zip: Add Doxyfile. 2009-05-27 06:01:40 +00:00
marko
6f9a1e17c6 branches/zip: Add some Doxygen @return comments. 2009-05-27 05:08:43 +00:00
marko
68a1ee9960 branches/zip: Add some Doxygen comments for many structs, typedefs,
#defines and global variables.  Many are still missing.
2009-05-26 12:28:49 +00:00
marko
ab2efbff66 branches/zip: lexyy.c: Remove the inadvertently added @file directive.
There is nothing for Doxygen to see in this file, move along.
2009-05-25 20:32:35 +00:00
marko
5929cea0fe branches/zip: Add some Doxygen comments, mainly to structs, typedefs,
macros and global variables.  Many more to go.
2009-05-25 12:09:24 +00:00
marko
c25f65d00f branches/zip: Enclose some #error checks inside #ifndef DOXYGEN
to prevent bogus Doxygen errors.
2009-05-25 10:52:20 +00:00
marko
c7d9b4bcd7 branches/zip: Revert ut0auxconf_* to r5102,
that is, make Doxygen ignore these test programs.
2009-05-25 10:39:07 +00:00
marko
11ff89d994 branches/zip: Add @file comments, and convert decorative
/*********************************
comments to Doxygen /** style like this:
/*****************************//**

This conversion was performed by the following command:

perl -i -e 'while(<ARGV>){if (m|^/\*{30}\**$|) {
s|\*{4}$|//**| if ++$com>1; $_ .= "\@file $ARGV\n" if $com==2}
print; if(eof){$.=0;undef $com}}' */*[ch] include/univ.i
2009-05-25 09:52:29 +00:00
marko
aa5ceec5d7 branches/zip: Add missing file comments. 2009-05-25 09:47:14 +00:00
marko
aff9b3854f branches/zip: Introduce the macro TEMP_INDEX_PREFIX_STR.
This is to avoid triggering an error in Doxygen.
2009-05-25 08:42:47 +00:00
marko
d075e80c49 branches/zip: Split some long lines that were introduced in r5091. 2009-05-25 08:09:45 +00:00
marko
a45e6d2bae branches/zip: Adjust some function comments after r5091. 2009-05-25 05:54:17 +00:00
marko
e49dee377b branches/zip: Convert the function comments to Doxygen format.
This patch was created by running the following commands:

for i in */*[ch]; do doxygenify.pl $i; done
perl -i -pe 's#\*{3} \*/$#****/#' */*[ch]

where doxygenify.pl is
https://svn.innodb.com/svn/misc/trunk/tools/doxygenify.pl r510

Verified the consistency as follows:

(0) not too many /* in: */ or /* out: */ comments left in the code:
grep -l '/\*\s*\(in\|out\)[,:/]' */*[ch]

(1) no difference when ignoring blank lines, after stripping all
C90-style /* comments */, including multi-line ones, before and after
applying this patch:

perl -i -e 'undef $/;while(<ARGV>){s#/\*(.*?)\*/##gs;print}' */*[ch]
diff -I'^\s*$' --exclude .svn -ru TREE1 TREE2

(2) after stripping @return comments and !<, generated a diff and omitted
the hunks where /* out: */ function return comments were removed:

perl -i -e'undef $/;while(<ARGV>){s#!<##g;s#\n\@return\t.*?\*/# \*/#gs;print}'\
 */*[ch]
svn diff|
perl -e 'undef $/;$_=<>;s#\n-\s*/\* out[:,]([^\n]*?)(\n-[^\n]*?)*\*/##gs;print'

Some unintended changes were left.  These will be removed in a
subsequent patch.
2009-05-25 05:30:14 +00:00
vasil
1b3cac5689 branches/zip:
Whitespace fixup.
2009-05-21 04:27:00 +00:00
marko
90e50d964e branches/zip: Fix some function comments. 2009-05-20 20:51:23 +00:00
marko
931572dfaa branches/zip: ha_innodb.cc: Add some missing function comments. 2009-05-20 19:17:43 +00:00
marko
4e652f12c0 branches/zip: innobase_end(), innobase_flush_logs():
Document the function parameters.
2009-05-20 12:17:26 +00:00
marko
d8b91c90a2 branches/zip: ut_dulint_sort(): Write proper comments. 2009-05-20 12:10:17 +00:00
marko
c7ae9cc921 branches/zip: ha_innodb.cc: Clean up some comments. 2009-05-20 10:45:03 +00:00
marko
e986fb2c8e branches/zip: innodb_export_status(): Remove the return(0),
now that the function was declared void in r5060.
2009-05-20 10:07:49 +00:00
marko
288a29458b branches/zip: Clean up some comments. 2009-05-20 10:06:59 +00:00
marko
a29de5108e branches/zip: Clean up some function comments. 2009-05-20 09:06:03 +00:00
marko
a092c0a7e5 branches/zip: Remove bogus in: comments from struct members. 2009-05-20 08:45:17 +00:00
marko
6e042881e1 branches/zip: page_cur_lcg_prng(): Add missing parameter list. 2009-05-20 08:35:33 +00:00
marko
94b4ba74a8 branches/zip: ib_vector_is_empty(): Fix the function comment. 2009-05-20 08:32:37 +00:00
marko
10b11254a8 branches/zip: inno_bcmp(): Remove this memcmp replacement.
srv0start.c does not (any longer) call memcmp.
srv_parse_megabytes(): Add a function comment.
2009-05-20 08:28:44 +00:00
marko
3174e395f3 branches/zip: ut_snprintf(): Fix the function comments. 2009-05-20 08:26:49 +00:00
marko
cea9a03ab6 branches/zip: Fix some function comments. 2009-05-20 08:19:40 +00:00
marko
5a20c7a84a branches/zip: fil0fil.c: Correct some comments. 2009-05-20 07:37:08 +00:00
marko
dbe13c2ba2 branches/zip: mlog_parse_index(): Correct a parameter comment
and add a const qualifier that was missing.
2009-05-20 07:11:58 +00:00
marko
cab1802cee branches/zip: sync0rw.ic: Remove an extra ; that was added in r5041. 2009-05-20 04:46:01 +00:00
marko
b04cffec7d branches/zip: Add missing function comments. 2009-05-20 04:42:12 +00:00
marko
62718d0e0c branches/zip: ib_wqueue_wait(): Add decorative comment. 2009-05-19 19:13:12 +00:00
marko
9649c3e3b3 branches/zip: Write PAGE_MAX_TRX_ID to the redo log. Otherwise,
transactions that are started before the rollback of incomplete
transactions has finished may have an inconsistent view of the
secondary indexes.

dict_index_is_sec_or_ibuf(): Auxiliary function for controlling
updates and checks of PAGE_MAX_TRX_ID: check whether an index is a
secondary index or the insert buffer tree.

page_set_max_trx_id(), page_update_max_trx_id(),
lock_rec_insert_check_and_lock(),
lock_sec_rec_modify_check_and_lock(), btr_cur_ins_lock_and_undo(),
btr_cur_upd_lock_and_undo(): Add the parameter mtr.

page_set_max_trx_id(): Allow mtr to be NULL.  When mtr==NULL, do not
attempt to write to the redo log.  This only occurs when creating a
page or reorganizing a compressed page.  In these cases, the
PAGE_MAX_TRX_ID will be set correctly during the application of redo
log records, even though there is no explicit log record about it.

btr_discard_only_page_on_level(): Preserve PAGE_MAX_TRX_ID.  This
function should be unreachable, though.

btr_cur_pessimistic_update(): Update PAGE_MAX_TRX_ID.

Add some assertions for checking that PAGE_MAX_TRX_ID is set on all
secondary index leaf pages.

rb://115 tested by Michael, fixes Issue #211
2009-05-19 18:59:07 +00:00
marko
5c5817cccb branches/zip: Fix a typo that was introduced in r5036. 2009-05-19 09:08:16 +00:00
marko
c0d9e7b96a branches/zip: Add proper comments to some file page accessors. 2009-05-19 09:05:50 +00:00
marko
70f15d3fd9 branches/zip: ut0auxconf_have_solaris_atomics.c: Get the
function declarations from <atomic.h>.
Call the functions with proper arguments.
2009-05-19 09:04:58 +00:00
marko
1c0cf56c45 branches/zip: row_update_prebuilt_trx(): Correct bogus comment. 2009-05-19 08:41:32 +00:00
marko
79362a389d branches/zip: Remove bogus out: comments of functions returning void. 2009-05-19 07:00:51 +00:00
marko
db9dc3bb20 branches/zip: Add missing out: comments to nullary functions. 2009-05-19 06:30:02 +00:00
marko
a7942035c2 branches/zip: os_thread_get_curr_id(), os_thread_get_curr():
Add missing out: comments.
2009-05-19 06:04:04 +00:00
marko
a15f8bec88 branches/zip: When executing an optimistic update by delete-and-insert,
correctly estimate the free space on the compressed page by
page_zip_available(..., create=TRUE). This was reported as Issue #231.

btr_cur_update_alloc_zip(): Add the parameter ibool create and pass it
to page_zip_available(). The parameter was previously passed as 0.

btr_cur_optimistic_update(): Pass create=TRUE to btr_cur_update_alloc_zip().

rb://120 approved by Heikki Tuuri
2009-05-18 12:40:07 +00:00
marko
b10bc48d35 branches/zip: Add some missing out: comments to buf0buf.h, buf0buf.c. 2009-05-18 12:36:10 +00:00
marko
a512de6783 branches/zip: buf_validate(): Add missing out: comment. 2009-05-18 12:29:51 +00:00
vasil
5c2c89e38a branches/zip:
Add ChangeLog entry for r4994.
2009-05-14 16:13:41 +00:00
marko
bc48ebd870 branches/zip: Merge revisions 4976:4994 from branches/5.1:
------------------------------------------------------------------------
  r4994 | marko | 2009-05-14 15:04:55 +0300 (Thu, 14 May 2009) | 18 lines

  branches/5.1: Prevent a race condition in innobase_commit() by ensuring
  that innodb_commit_concurrency>0 remains constant at run time. (Bug #42101)

  srv_commit_concurrency: Make this a static variable in ha_innodb.cc.

  innobase_commit_concurrency_validate(): Check that innodb_commit_concurrency
  is not changed from or to 0 at run time.  This is needed, because
  innobase_commit() assumes that innodb_commit_concurrency>0 remains constant.
  Without this limitation, the checks for innodb_commit_concurrency>0
  in innobase_commit() should be removed and that function would have to
  acquire and release commit_cond_m at least twice per invocation.
  Normally, innodb_commit_concurrency=0, and introducing the mutex operations
  would mean significant overhead.

  innodb_bug42101.test, innodb_bug42101-nonzero.test: Test cases.

  rb://123 approved by Heikki Tuuri
  ------------------------------------------------------------------------
2009-05-14 11:31:43 +00:00
vasil
f42bc56e41 branches/zip:
Add ChangeLog entry for r4977.
2009-05-13 12:21:55 +00:00