Commit 5bc30247 authored by Sergei Golubchik's avatar Sergei Golubchik

5.5.61-38.13

parent 4fd1c7e4
# generated with:
# clang-format-5.0 -style=Google --dump-config
Language: Cpp
# BasedOnStyle: Google
AccessModifierOffset: -1
AlignAfterOpenBracket: Align
AlignConsecutiveAssignments: false
AlignEscapedNewlines: Left
AlignOperands: true
AlignTrailingComments: true
AllowAllParametersOfDeclarationOnNextLine: true
AllowShortBlocksOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: All
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakBeforeMultilineStrings: true
AlwaysBreakTemplateDeclarations: true
BinPackArguments: true
BinPackParameters: true
BraceWrapping:
AfterClass: false
AfterControlStatement: false
AfterEnum: false
AfterFunction: false
AfterNamespace: false
AfterObjCDeclaration: false
AfterStruct: false
AfterUnion: false
BeforeCatch: false
BeforeElse: false
IndentBraces: false
SplitEmptyFunction: true
SplitEmptyRecord: true
SplitEmptyNamespace: true
BreakBeforeBinaryOperators: None
BreakBeforeBraces: Attach
BreakBeforeInheritanceComma: false
BreakBeforeTernaryOperators: true
BreakConstructorInitializersBeforeComma: false
BreakConstructorInitializers: BeforeColon
BreakAfterJavaFieldAnnotations: false
BreakStringLiterals: true
CommentPragmas: '^ IWYU pragma:'
CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: true
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
DisableFormat: false
ExperimentalAutoDetectBinPacking: false
FixNamespaceComments: true
ForEachMacros:
- foreach
- Q_FOREACH
- BOOST_FOREACH
IncludeCategories:
- Regex: '^<.*\.h>'
Priority: 1
- Regex: '^<.*'
Priority: 2
- Regex: '.*'
Priority: 3
IncludeIsMainRegex: '([-_](test|unittest))?$'
IndentCaseLabels: true
IndentWrappedFunctionNames: false
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: false
MacroBlockBegin: ''
MacroBlockEnd: ''
NamespaceIndentation: None
ObjCBlockIndentWidth: 2
ObjCSpaceAfterProperty: false
ObjCSpaceBeforeProtocolList: false
PenaltyBreakAssignment: 2
PenaltyBreakBeforeFirstCallParameter: 1
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakString: 1000
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 200
SortUsingDeclarations: true
SpaceAfterTemplateKeyword: true
SpaceBeforeAssignmentOperators: true
SpaceBeforeParens: ControlStatements
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 2
SpacesInAngles: false
SpacesInContainerLiterals: true
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
Standard: Auto
TabWidth: 8
# changes for MySQL 5.x (InnoDB)
AlignConsecutiveDeclarations: true
AllowShortIfStatementsOnASingleLine: false
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterReturnType: All
ColumnLimit: 78
DerivePointerAlignment: false
IndentWidth: 8
MaxEmptyLinesToKeep: 2
PointerAlignment: Right
ReflowComments: false
SortIncludes: false
SpaceAfterCStyleCast: true
UseTab: Always
......@@ -308,3 +308,8 @@ MYSQL_ADD_PLUGIN(innobase ${INNOBASE_SOURCES} STORAGE_ENGINE
DEFAULT
MODULE_OUTPUT_NAME ha_innodb
LINK_LIBRARIES ${ZLIB_LIBRARY})
IF(WITH_INNOBASE_STORAGE_ENGINE)
# Remove -DMYSQL_SERVER, it breaks embedded build
SET_TARGET_PROPERTIES(innobase PROPERTIES COMPILE_DEFINITIONS "")
ENDIF()
......@@ -431,43 +431,6 @@ xdes_find_bit(
return(ULINT_UNDEFINED);
}
/**********************************************************************//**
Looks for a descriptor bit having the desired value. Scans the extent in
a direction opposite to xdes_find_bit.
@return bit index of the bit, ULINT_UNDEFINED if not found */
UNIV_INLINE
ulint
xdes_find_bit_downward(
/*===================*/
xdes_t* descr, /*!< in: descriptor */
ulint bit, /*!< in: XDES_FREE_BIT or XDES_CLEAN_BIT */
ibool val, /*!< in: desired bit value */
ulint hint, /*!< in: hint of which bit position would be desirable */
mtr_t* mtr) /*!< in: mtr */
{
ulint i;
ut_ad(descr && mtr);
ut_ad(val <= TRUE);
ut_ad(hint < FSP_EXTENT_SIZE);
ut_ad(mtr_memo_contains_page(mtr, descr, MTR_MEMO_PAGE_X_FIX));
for (i = hint + 1; i > 0; i--) {
if (val == xdes_get_bit(descr, bit, i - 1, mtr)) {
return(i - 1);
}
}
for (i = FSP_EXTENT_SIZE - 1; i > hint; i--) {
if (val == xdes_get_bit(descr, bit, i, mtr)) {
return(i);
}
}
return(ULINT_UNDEFINED);
}
/**********************************************************************//**
Returns the number of used pages in a descriptor.
@return number of pages used */
......
/*****************************************************************************
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All Rights Reserved.
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All Rights Reserved.
Copyright (c) 2008, 2009 Google Inc.
Copyright (c) 2009, Percona Inc.
......@@ -1938,6 +1938,7 @@ trx_is_registered_for_2pc(
/*********************************************************************//**
Note that a transaction owns the prepare_commit_mutex. */
#ifndef EXTENDED_FOR_COMMIT_ORDERED
static inline
void
trx_owns_prepare_commit_mutex_set(
......@@ -1947,6 +1948,7 @@ trx_owns_prepare_commit_mutex_set(
ut_a(trx_is_registered_for_2pc(trx));
trx->owns_prepare_mutex = 1;
}
#endif // EXTENDED_FOR_COMMIT_ORDERED
/*********************************************************************//**
Note that a transaction has been registered with MySQL 2PC coordinator. */
......@@ -5830,7 +5832,7 @@ build_template(
if (UNIV_LIKELY(templ_type == ROW_MYSQL_REC_FIELDS)) {
/* Decide which columns we should fetch
and which we can skip. */
register const ibool index_contains_field =
const ibool index_contains_field =
dict_index_contains_col_or_prefix(index, i);
if (!index_contains_field && prebuilt->read_just_key) {
......@@ -6199,6 +6201,8 @@ ha_innobase::write_row(
innodb_srv_conc_enter_innodb(prebuilt->trx);
error = row_insert_for_mysql((byte*) record, prebuilt);
DEBUG_SYNC(user_thd, "ib_after_row_insert");
#ifdef EXTENDED_FOR_USERSTAT
if (UNIV_LIKELY(error == DB_SUCCESS && !trx->fake_changes)) {
......@@ -7648,8 +7652,6 @@ create_table_def(
}
}
ut_a(field->type() < 256); /* we assume in dtype_form_prtype()
that this fits in one byte */
col_len = field->pack_length();
/* The MySQL pack length contains 1 or 2 bytes length field
......@@ -10404,8 +10406,10 @@ ha_innobase::start_stmt(
case SQLCOM_INSERT:
case SQLCOM_UPDATE:
case SQLCOM_DELETE:
case SQLCOM_REPLACE:
init_table_handle_for_HANDLER();
prebuilt->select_lock_type = LOCK_X;
prebuilt->stored_select_lock_type = LOCK_X;
error = row_lock_table_for_mysql(prebuilt, NULL, 1);
if (error != DB_SUCCESS) {
......
......@@ -183,7 +183,7 @@ class ha_innobase: public handler
ha_rows estimate_rows_upper_bound();
void update_create_info(HA_CREATE_INFO* create_info);
int create(const char *name, register TABLE *form,
int create(const char *name, TABLE *form,
HA_CREATE_INFO *create_info);
int truncate();
int delete_table(const char *name);
......
......@@ -446,6 +446,7 @@ dtype_get_fixed_size_low(
return(0);
}
#endif /* UNIV_DEBUG */
// fallthrough
case DATA_CHAR:
case DATA_FIXBINARY:
case DATA_INT:
......@@ -524,6 +525,7 @@ dtype_get_min_size_low(
return(0);
}
#endif /* UNIV_DEBUG */
// fallthrough
case DATA_CHAR:
case DATA_FIXBINARY:
case DATA_INT:
......
......@@ -64,7 +64,7 @@ component, i.e. we show M.N.P as M.N */
(INNODB_VERSION_MAJOR << 8 | INNODB_VERSION_MINOR)
#ifndef PERCONA_INNODB_VERSION
#define PERCONA_INNODB_VERSION 38.11
#define PERCONA_INNODB_VERSION 38.13
#endif
#define INNODB_VERSION_STR MYSQL_SERVER_VERSION
......
......@@ -1561,10 +1561,10 @@ log_online_open_bitmap_file_read_only(
if (srv_data_home_len
&& srv_data_home[srv_data_home_len-1]
!= SRV_PATH_SEPARATOR) {
ut_snprintf(bitmap_file->name, FN_REFLEN, "%s%c%s",
ut_snprintf(bitmap_file->name, sizeof(bitmap_file->name), "%s%c%s",
srv_data_home, SRV_PATH_SEPARATOR, name);
} else {
ut_snprintf(bitmap_file->name, FN_REFLEN, "%s%s",
ut_snprintf(bitmap_file->name, sizeof(bitmap_file->name), "%s%s",
srv_data_home, name);
}
bitmap_file->file
......
......@@ -226,24 +226,6 @@ os_cond_broadcast(
#endif
}
/*********************************************************//**
Wakes one thread waiting for condition variable */
UNIV_INLINE
void
os_cond_signal(
/*==========*/
os_cond_t* cond) /*!< in: condition variable. */
{
ut_a(cond);
#ifdef __WIN__
ut_a(wake_condition_variable != NULL);
wake_condition_variable(cond);
#else
ut_a(pthread_cond_signal(cond) == 0);
#endif
}
/*********************************************************//**
Destroys condition variable */
UNIV_INLINE
......
......@@ -4298,6 +4298,7 @@ row_search_for_mysql(
prebuilt->new_rec_locks = 1;
}
err = DB_SUCCESS;
break;
case DB_SUCCESS:
break;
case DB_LOCK_WAIT:
......
......@@ -1402,6 +1402,8 @@ srv_conc_enter_innodb(
os_fast_mutex_unlock(&srv_conc_mutex);
DEBUG_SYNC_C("user_thread_waiting");
trx->op_info = "sleeping before joining InnoDB queue";
/* Peter Zaitsev suggested that we take the sleep away
......
......@@ -315,9 +315,9 @@ mutex_create_func(
/* NOTE! The very first mutexes are not put to the mutex list */
if ((mutex == &mutex_list_mutex)
if (mutex == &mutex_list_mutex
#ifdef UNIV_SYNC_DEBUG
|| (mutex == &sync_thread_mutex)
|| mutex == &sync_thread_mutex
#endif /* UNIV_SYNC_DEBUG */
) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment