Commit 90ead995 authored by Nirbhay Choubey's avatar Nirbhay Choubey

bzr merge -r3980..3984 codership/5.5

parent b441c510
...@@ -20,6 +20,7 @@ set -u ...@@ -20,6 +20,7 @@ set -u
WSREP_SST_OPT_BYPASS=0 WSREP_SST_OPT_BYPASS=0
WSREP_SST_OPT_DATA="" WSREP_SST_OPT_DATA=""
WSREP_SST_OPT_AUTH=""
while [ $# -gt 0 ]; do while [ $# -gt 0 ]; do
case "$1" in case "$1" in
...@@ -55,7 +56,7 @@ case "$1" in ...@@ -55,7 +56,7 @@ case "$1" in
shift shift
;; ;;
'--password') '--password')
readonly WSREP_SST_OPT_PSWD="$2" WSREP_SST_OPT_PSWD="$2"
shift shift
;; ;;
'--port') '--port')
...@@ -71,7 +72,7 @@ case "$1" in ...@@ -71,7 +72,7 @@ case "$1" in
shift shift
;; ;;
'--user') '--user')
readonly WSREP_SST_OPT_USER="$2" WSREP_SST_OPT_USER="$2"
shift shift
;; ;;
'--gtid') '--gtid')
...@@ -89,7 +90,7 @@ readonly WSREP_SST_OPT_BYPASS ...@@ -89,7 +90,7 @@ readonly WSREP_SST_OPT_BYPASS
# For Bug:1200727 # For Bug:1200727
if my_print_defaults -c $WSREP_SST_OPT_CONF sst | grep -q "wsrep_sst_auth";then if my_print_defaults -c $WSREP_SST_OPT_CONF sst | grep -q "wsrep_sst_auth";then
if [ -z $WSREP_SST_OPT_AUTH -o $WSREP_SST_OPT_AUTH = "(null)" ];then if [ -z "$WSREP_SST_OPT_AUTH" -o "$WSREP_SST_OPT_AUTH" = "(null)" ];then
WSREP_SST_OPT_AUTH=$(my_print_defaults -c $WSREP_SST_OPT_CONF sst | grep -- "--wsrep_sst_auth" | cut -d= -f2) WSREP_SST_OPT_AUTH=$(my_print_defaults -c $WSREP_SST_OPT_CONF sst | grep -- "--wsrep_sst_auth" | cut -d= -f2)
fi fi
fi fi
...@@ -124,4 +125,3 @@ wsrep_cleanup_progress_file() ...@@ -124,4 +125,3 @@ wsrep_cleanup_progress_file()
{ {
[ -n "$SST_PROGRESS_FILE" ] && rm -f "$SST_PROGRESS_FILE" 2>/dev/null [ -n "$SST_PROGRESS_FILE" ] && rm -f "$SST_PROGRESS_FILE" 2>/dev/null
} }
#!/bin/sh -e #!/bin/bash -e
# Copyright (C) 2009 Codership Oy # Copyright (C) 2009 Codership Oy
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
...@@ -61,6 +61,11 @@ then ...@@ -61,6 +61,11 @@ then
exit $EINVAL exit $EINVAL
fi fi
# For Bug:1293798
if [ -z "$WSREP_SST_OPT_PSWD" -a -n "$WSREP_SST_OPT_AUTH" ]; then
WSREP_SST_OPT_USER=$(echo $WSREP_SST_OPT_AUTH | cut -d: -f1)
WSREP_SST_OPT_PSWD=$(echo $WSREP_SST_OPT_AUTH | cut -d: -f2)
fi
AUTH="-u$WSREP_SST_OPT_USER" AUTH="-u$WSREP_SST_OPT_USER"
if test -n "$WSREP_SST_OPT_PSWD"; then AUTH="$AUTH -p$WSREP_SST_OPT_PSWD"; fi if test -n "$WSREP_SST_OPT_PSWD"; then AUTH="$AUTH -p$WSREP_SST_OPT_PSWD"; fi
......
...@@ -717,10 +717,11 @@ static int sst_donate_mysqldump (const char* addr, ...@@ -717,10 +717,11 @@ static int sst_donate_mysqldump (const char* addr,
WSREP_SST_OPT_LPORT" '%u' " WSREP_SST_OPT_LPORT" '%u' "
WSREP_SST_OPT_SOCKET" '%s' " WSREP_SST_OPT_SOCKET" '%s' "
WSREP_SST_OPT_DATA" '%s' " WSREP_SST_OPT_DATA" '%s' "
WSREP_SST_OPT_CONF" '%s' "
WSREP_SST_OPT_GTID" '%s:%lld'" WSREP_SST_OPT_GTID" '%s:%lld'"
"%s", "%s",
user, pswd, host, port, mysqld_port, mysqld_unix_port, user, pswd, host, port, mysqld_port, mysqld_unix_port,
mysql_real_data_home, uuid_str, mysql_real_data_home, wsrep_defaults_file, uuid_str,
(long long)seqno, bypass ? " "WSREP_SST_OPT_BYPASS : ""); (long long)seqno, bypass ? " "WSREP_SST_OPT_BYPASS : "");
WSREP_DEBUG("Running: '%s'", cmd_str); WSREP_DEBUG("Running: '%s'", cmd_str);
......
...@@ -1696,6 +1696,10 @@ row_ins_scan_sec_index_for_duplicate( ...@@ -1696,6 +1696,10 @@ row_ins_scan_sec_index_for_duplicate(
mem_heap_t* heap = NULL; mem_heap_t* heap = NULL;
ulint offsets_[REC_OFFS_NORMAL_SIZE]; ulint offsets_[REC_OFFS_NORMAL_SIZE];
ulint* offsets = offsets_; ulint* offsets = offsets_;
#ifdef WITH_WSREP
/* appliers don't need dupkey checks */
if (wsrep_thd_is_BF(thr_get_trx(thr)->mysql_thd, 0)) return(DB_SUCCESS);
#endif /* WITH_WSREP */
rec_offs_init(offsets_); rec_offs_init(offsets_);
n_unique = dict_index_get_n_unique(index); n_unique = dict_index_get_n_unique(index);
...@@ -1760,10 +1764,6 @@ row_ins_scan_sec_index_for_duplicate( ...@@ -1760,10 +1764,6 @@ row_ins_scan_sec_index_for_duplicate(
lock_type, block, rec, index, offsets, thr); lock_type, block, rec, index, offsets, thr);
} else { } else {
#ifdef WITH_WSREP
/* appliers don't need dupkey checks */
if (!wsrep_thd_is_BF(thr_get_trx(thr)->mysql_thd, 0))
#endif /* WITH_WSREP */
err = row_ins_set_shared_rec_lock( err = row_ins_set_shared_rec_lock(
lock_type, block, rec, index, offsets, thr); lock_type, block, rec, index, offsets, thr);
} }
......
...@@ -1705,6 +1705,10 @@ row_ins_scan_sec_index_for_duplicate( ...@@ -1705,6 +1705,10 @@ row_ins_scan_sec_index_for_duplicate(
mem_heap_t* heap = NULL; mem_heap_t* heap = NULL;
ulint offsets_[REC_OFFS_NORMAL_SIZE]; ulint offsets_[REC_OFFS_NORMAL_SIZE];
ulint* offsets = offsets_; ulint* offsets = offsets_;
#ifdef WITH_WSREP
/* appliers don't need dupkey checks */
if (wsrep_thd_is_BF(thr_get_trx(thr)->mysql_thd, 0)) return(DB_SUCCESS);
#endif /* WITH_WSREP */
rec_offs_init(offsets_); rec_offs_init(offsets_);
n_unique = dict_index_get_n_unique(index); n_unique = dict_index_get_n_unique(index);
...@@ -1769,10 +1773,6 @@ row_ins_scan_sec_index_for_duplicate( ...@@ -1769,10 +1773,6 @@ row_ins_scan_sec_index_for_duplicate(
lock_type, block, rec, index, offsets, thr); lock_type, block, rec, index, offsets, thr);
} else { } else {
#ifdef WITH_WSREP
/* appliers don't need dupkey checks */
if (!wsrep_thd_is_BF(thr_get_trx(thr)->mysql_thd, 0))
#endif /* WITH_WSREP */
err = row_ins_set_shared_rec_lock( err = row_ins_set_shared_rec_lock(
lock_type, block, rec, index, offsets, thr); lock_type, block, rec, index, offsets, thr);
} }
......
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