5440 Marko Mäkelä 2013-01-24 [merge]
Merge mysql-5.6 to mysql-trunk.
modified:
storage/innobase/btr/btr0cur.cc
storage/innobase/include/btr0cur.h
storage/innobase/row/row0log.cc
5439 Jon Olav Hauglid 2013-01-24 [merge]
Merge from mysql-5.6 to mysql-trunk
modified:
storage/innobase/handler/ha_innodb.cc
storage/innobase/handler/handler0alter.cc
=== modified file 'storage/innobase/btr/btr0cur.cc'
--- a/storage/innobase/btr/btr0cur.cc revid:jon.hauglid@oracle.com-20130124143329-2kx7kzpz6dkwnr3j
+++ b/storage/innobase/btr/btr0cur.cc revid:marko.makela@stripped4151548-hyoyh52cmoyb8fri
@@ -1933,8 +1933,7 @@ btr_cur_update_in_place(
const upd_t* update, /*!< in: update vector */
ulint cmpl_info,/*!< in: compiler info on secondary index
updates */
- que_thr_t* thr, /*!< in: query thread, or NULL if
- appropriate flags are set */
+ que_thr_t* thr, /*!< in: query thread */
trx_id_t trx_id, /*!< in: transaction id */
mtr_t* mtr) /*!< in: mtr; must be committed before
latching any further pages */
@@ -1956,8 +1955,8 @@ btr_cur_update_in_place(
ut_ad(!dict_index_is_ibuf(index));
ut_ad(dict_index_is_online_ddl(index) == !!(flags & BTR_CREATE_FLAG)
|| dict_index_is_clust(index));
- ut_ad(!thr || thr_get_trx(thr)->id == trx_id);
- ut_ad(thr || (flags & ~BTR_KEEP_POS_FLAG)
+ ut_ad(thr_get_trx(thr)->id == trx_id
+ || (flags & ~BTR_KEEP_POS_FLAG)
== (BTR_NO_UNDO_LOG_FLAG | BTR_NO_LOCKING_FLAG
| BTR_CREATE_FLAG | BTR_KEEP_SYS_FLAG));
ut_ad(fil_page_get_type(btr_cur_get_page(cursor)) == FIL_PAGE_INDEX);
@@ -2065,7 +2064,7 @@ btr_cur_optimistic_update(
cursor stays valid and positioned on the
same record */
ulint** offsets,/*!< out: offsets on cursor->page_cur.rec */
- mem_heap_t** heap, /*!< in/out: pointer to memory heap, or NULL */
+ mem_heap_t** heap, /*!< in/out: pointer to NULL or memory heap */
const upd_t* update, /*!< in: update vector; this must also
contain trx id and roll ptr fields */
ulint cmpl_info,/*!< in: compiler info on secondary index
@@ -2101,8 +2100,8 @@ btr_cur_optimistic_update(
ut_ad(!dict_index_is_ibuf(index));
ut_ad(dict_index_is_online_ddl(index) == !!(flags & BTR_CREATE_FLAG)
|| dict_index_is_clust(index));
- ut_ad(!thr || thr_get_trx(thr)->id == trx_id);
- ut_ad(thr || (flags & ~BTR_KEEP_POS_FLAG)
+ ut_ad(thr_get_trx(thr)->id == trx_id
+ || (flags & ~BTR_KEEP_POS_FLAG)
== (BTR_NO_UNDO_LOG_FLAG | BTR_NO_LOCKING_FLAG
| BTR_CREATE_FLAG | BTR_KEEP_SYS_FLAG));
ut_ad(fil_page_get_type(page) == FIL_PAGE_INDEX);
@@ -2382,8 +2381,8 @@ btr_cur_pessimistic_update(
ut_ad(!dict_index_is_ibuf(index));
ut_ad(dict_index_is_online_ddl(index) == !!(flags & BTR_CREATE_FLAG)
|| dict_index_is_clust(index));
- ut_ad(!thr || thr_get_trx(thr)->id == trx_id);
- ut_ad(thr || (flags & ~BTR_KEEP_POS_FLAG)
+ ut_ad(thr_get_trx(thr)->id == trx_id
+ || (flags & ~BTR_KEEP_POS_FLAG)
== (BTR_NO_UNDO_LOG_FLAG | BTR_NO_LOCKING_FLAG
| BTR_CREATE_FLAG | BTR_KEEP_SYS_FLAG));
=== modified file 'storage/innobase/include/btr0cur.h'
--- a/storage/innobase/include/btr0cur.h revid:jon.hauglid@strippedx7kzpz6dkwnr3j
+++ b/storage/innobase/include/btr0cur.h revid:marko.makela@strippedfri
@@ -1,6 +1,6 @@
/*****************************************************************************
-Copyright (c) 1994, 2012, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 1994, 2013, Oracle and/or its affiliates. All Rights Reserved.
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
@@ -293,12 +293,11 @@ btr_cur_update_in_place(
const upd_t* update, /*!< in: update vector */
ulint cmpl_info,/*!< in: compiler info on secondary index
updates */
- que_thr_t* thr, /*!< in: query thread, or NULL if
- appropriate flags are set */
+ que_thr_t* thr, /*!< in: query thread */
trx_id_t trx_id, /*!< in: transaction id */
mtr_t* mtr) /*!< in: mtr; must be committed before
latching any further pages */
- __attribute__((warn_unused_result, nonnull(2,3,4,8)));
+ __attribute__((warn_unused_result, nonnull));
/*************************************************************//**
Tries to update a record on a page in an index tree. It is assumed that mtr
holds an x-latch on the page. The operation does not succeed if there is too
@@ -316,17 +315,16 @@ btr_cur_optimistic_update(
cursor stays valid and positioned on the
same record */
ulint** offsets,/*!< out: offsets on cursor->page_cur.rec */
- mem_heap_t** heap, /*!< in/out: pointer to memory heap, or NULL */
+ mem_heap_t** heap, /*!< in/out: pointer to NULL or memory heap */
const upd_t* update, /*!< in: update vector; this must also
contain trx id and roll ptr fields */
ulint cmpl_info,/*!< in: compiler info on secondary index
updates */
- que_thr_t* thr, /*!< in: query thread, or NULL if
- appropriate flags are set */
+ que_thr_t* thr, /*!< in: query thread */
trx_id_t trx_id, /*!< in: transaction id */
mtr_t* mtr) /*!< in: mtr; must be committed before
latching any further pages */
- __attribute__((warn_unused_result, nonnull(2,3,4,5,9)));
+ __attribute__((warn_unused_result, nonnull));
/*************************************************************//**
Performs an update of a record on a page of a tree. It is assumed
that mtr holds an x-latch on the tree and on the cursor page. If the
@@ -356,12 +354,11 @@ btr_cur_pessimistic_update(
the values in update vector have no effect */
ulint cmpl_info,/*!< in: compiler info on secondary index
updates */
- que_thr_t* thr, /*!< in: query thread, or NULL if
- appropriate flags are set */
+ que_thr_t* thr, /*!< in: query thread */
trx_id_t trx_id, /*!< in: transaction id */
mtr_t* mtr) /*!< in: mtr; must be committed before
latching any further pages */
- __attribute__((warn_unused_result, nonnull(2,3,4,5,6,7,11)));
+ __attribute__((warn_unused_result, nonnull));
/***********************************************************//**
Marks a clustered index record deleted. Writes an undo log record to
undo log on this delete marking. Writes in the trx id field the id
=== modified file 'storage/innobase/row/row0log.cc'
--- a/storage/innobase/row/row0log.cc revid:jon.hauglid@stripped20130124143329-2kx7kzpz6dkwnr3j
+++ b/storage/innobase/row/row0log.cc revid:marko.makela@stripped-hyoyh52cmoyb8fri
@@ -1,6 +1,6 @@
/*****************************************************************************
-Copyright (c) 2011, 2012, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2011, 2013, Oracle and/or its affiliates. All Rights Reserved.
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
@@ -1685,7 +1685,7 @@ delete_insert:
| BTR_KEEP_POS_FLAG,
btr_pcur_get_btr_cur(&pcur),
&cur_offsets, &offsets_heap, heap, &big_rec,
- update, 0, NULL, 0, &mtr);
+ update, 0, thr, 0, &mtr);
if (big_rec) {
if (error == DB_SUCCESS) {
No bundle (reason: useless for push emails).| Thread |
|---|
| • bzr push into mysql-trunk branch (marko.makela:5439 to 5440) | marko.makela | 11 Mar 2013 |