Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
100f88b8
Commit
100f88b8
authored
Jun 21, 2010
by
Joerg Bruehe
Browse files
Options
Browse Files
Download
Plain Diff
Automerge part of mysql-trunk-bugfixing into mysql-trunk-merge.
parents
c388c044
766f6a76
Changes
9
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
145 additions
and
14 deletions
+145
-14
mysql-test/include/not_parallel.inc
mysql-test/include/not_parallel.inc
+3
-0
mysql-test/mysql-test-run.pl
mysql-test/mysql-test-run.pl
+12
-1
mysql-test/suite/federated/federated_plugin-master.opt
mysql-test/suite/federated/federated_plugin-master.opt
+1
-2
mysql-test/suite/federated/federated_plugin.test
mysql-test/suite/federated/federated_plugin.test
+2
-0
mysql-test/t/archive_plugin-master.opt
mysql-test/t/archive_plugin-master.opt
+1
-1
mysql-test/t/archive_plugin.test
mysql-test/t/archive_plugin.test
+4
-0
mysql-test/t/blackhole_plugin-master.opt
mysql-test/t/blackhole_plugin-master.opt
+1
-1
mysql-test/t/blackhole_plugin.test
mysql-test/t/blackhole_plugin.test
+4
-0
support-files/mysql.spec.sh
support-files/mysql.spec.sh
+117
-9
No files found.
mysql-test/include/not_parallel.inc
0 → 100644
View file @
100f88b8
if
(
`SELECT '$MTR_PARALLEL' > 1`
)
{
--
skip
test
requires
--
parallel
=
1
}
mysql-test/mysql-test-run.pl
View file @
100f88b8
...
...
@@ -362,6 +362,7 @@ sub main {
$opt_parallel
=
1
if
(
$opt_parallel
<
1
);
mtr_report
("
Using parallel:
$opt_parallel
");
}
$ENV
{
MTR_PARALLEL
}
=
$opt_parallel
;
# Create server socket on any free port
my
$server
=
new
IO::Socket::
INET
...
...
@@ -1943,6 +1944,16 @@ sub environment_setup {
}
}
# ----------------------------------------------------
# Add the paths where mysqld will find archive/blackhole/federated plugins.
# ----------------------------------------------------
$ENV
{'
ARCHIVE_PLUGIN_DIR
'}
=
dirname
(
find_plugin
("
ha_archive
",
"
storage/archive
"));
$ENV
{'
BLACKHOLE_PLUGIN_DIR
'}
=
dirname
(
find_plugin
("
ha_blackhole
",
"
storage/blackhole
"));
$ENV
{'
FEDERATED_PLUGIN_DIR
'}
=
dirname
(
find_plugin
("
ha_federated
",
"
storage/federated
"));
# ----------------------------------------------------
# Add the path where mysqld will find mypluglib.so
# ----------------------------------------------------
...
...
mysql-test/suite/federated/federated_plugin-master.opt
View file @
100f88b8
--plugin_dir=../storage/federated/.libs
--plugin_dir=$FEDERATED_PLUGIN_DIR
mysql-test/suite/federated/federated_plugin.test
View file @
100f88b8
--
source
include
/
not_windows
.
inc
--
source
include
/
have_federated_plugin
.
inc
--
skip
federated
plugin
is
disabled
CREATE
TABLE
t1
(
a
int
)
ENGINE
=
FEDERATED
;
DROP
TABLE
t1
;
...
...
mysql-test/t/archive_plugin-master.opt
View file @
100f88b8
--plugin_dir=
../storage/archive/.libs
--plugin_dir=
$ARCHIVE_PLUGIN_DIR
mysql-test/t/archive_plugin.test
View file @
100f88b8
--
source
include
/
not_windows
.
inc
--
source
include
/
have_archive_plugin
.
inc
# When running in parallel we get
# Warning 1620 Plugin is busy and will be uninstalled on shutdown
--
source
include
/
not_parallel
.
inc
CREATE
TABLE
t1
(
a
int
)
ENGINE
=
ARCHIVE
;
DROP
TABLE
t1
;
...
...
mysql-test/t/blackhole_plugin-master.opt
View file @
100f88b8
--plugin_dir=
../storage/blackhole/.libs
--plugin_dir=
$BLACKHOLE_PLUGIN_DIR
mysql-test/t/blackhole_plugin.test
View file @
100f88b8
--
source
include
/
not_windows
.
inc
--
source
include
/
have_blackhole_plugin
.
inc
# When running in parallel we get
# Warning 1620 Plugin is busy and will be uninstalled on shutdown
--
source
include
/
not_parallel
.
inc
CREATE
TABLE
t1
(
a
int
)
ENGINE
=
BLACKHOLE
;
DROP
TABLE
t1
;
...
...
support-files/mysql.spec.sh
View file @
100f88b8
...
...
@@ -504,6 +504,7 @@ rm -f $RBR%{_mandir}/man1/make_win_bin_dist.1*
##############################################################################
%pre
-n
MySQL-server%
{
product_suffix
}
mysql_datadir
=
%
{
mysqldatadir
}
# Check if we can safely upgrade. An upgrade is only safe if it's from one
# of our RPMs in the same version family.
...
...
@@ -576,7 +577,74 @@ HERE
fi
fi
# We assume that if there is exactly one ".pid" file,
# it contains the valid PID of a running MySQL server.
NR_PID_FILES
=
`
ls
$mysql_datadir
/
*
.pid 2>/dev/null |
wc
-l
`
case
$NR_PID_FILES
in
0
)
SERVER_TO_START
=
''
;;
# No "*.pid" file == no running server
1
)
SERVER_TO_START
=
'true'
;;
*
)
SERVER_TO_START
=
''
# Situation not clear
SEVERAL_PID_FILES
=
true
;;
esac
# That logic may be debated: We might check whether it is non-empty,
# contains exactly one number (possibly a PID), and whether "ps" finds it.
# OTOH, if there is no such process, it means a crash without a cleanup -
# is that a reason not to start a new server after upgrade?
STATUS_FILE
=
$mysql_datadir
/RPM_UPGRADE_MARKER
if
[
-f
$STATUS_FILE
]
;
then
echo
"Some previous upgrade was not finished:"
ls
-ld
$STATUS_FILE
echo
"Please check its status, then do"
echo
" rm
$STATUS_FILE
"
echo
"before repeating the MySQL upgrade."
exit
1
elif
[
-n
"
$SEVERAL_PID_FILES
"
]
;
then
echo
"Your MySQL directory '
$mysql_datadir
' has more than one PID file:"
ls
-ld
$mysql_datadir
/
*
.pid
echo
"Please check which one (if any) corresponds to a running server"
echo
"and delete all others before repeating the MySQL upgrade."
exit
1
fi
NEW_VERSION
=
%
{
mysql_version
}
-%
{
release
}
# The "pre" section code is also run on a first installation,
# when there is no data directory yet. Protect against error messages.
if
[
-d
$mysql_datadir
]
;
then
echo
"MySQL RPM upgrade to version
$NEW_VERSION
"
>
$STATUS_FILE
echo
"'pre' step running at
`
date
`
"
>>
$STATUS_FILE
echo
>>
$STATUS_FILE
echo
"ERR file(s):"
>>
$STATUS_FILE
ls
-ltr
$mysql_datadir
/
*
.err
>>
$STATUS_FILE
echo
>>
$STATUS_FILE
echo
"Latest 'Version' line in latest file:"
>>
$STATUS_FILE
grep
'^Version'
`
ls
-tr
$mysql_datadir
/
*
.err |
tail
-1
`
|
\
tail
-1
>>
$STATUS_FILE
echo
>>
$STATUS_FILE
if
[
-n
"
$SERVER_TO_START
"
]
;
then
# There is only one PID file, race possibility ignored
echo
"PID file:"
>>
$STATUS_FILE
ls
-l
$mysql_datadir
/
*
.pid
>>
$STATUS_FILE
cat
$mysql_datadir
/
*
.pid
>>
$STATUS_FILE
echo
>>
$STATUS_FILE
echo
"Server process:"
>>
$STATUS_FILE
ps
-fp
`
cat
$mysql_datadir
/
*
.pid
`
>>
$STATUS_FILE
echo
>>
$STATUS_FILE
echo
"SERVER_TO_START=
$SERVER_TO_START
"
>>
$STATUS_FILE
else
# Take a note we checked it ...
echo
"PID file:"
>>
$STATUS_FILE
ls
-l
$mysql_datadir
/
*
.pid
>>
$STATUS_FILE
2>&1
fi
fi
# Shut down a previously installed server first
# Note we *could* make that depend on $SERVER_TO_START, but we rather don't,
# so a "stop" is attempted even if there is no PID file.
# (Maybe the "stop" doesn't work then, but we might fix that in itself.)
if
[
-x
%
{
_sysconfdir
}
/init.d/mysql
]
;
then
%
{
_sysconfdir
}
/init.d/mysql stop
>
/dev/null 2>&1
echo
"Giving mysqld 5 seconds to exit nicely"
...
...
@@ -585,17 +653,33 @@ fi
%post
-n
MySQL-server%
{
product_suffix
}
mysql_datadir
=
%
{
mysqldatadir
}
NEW_VERSION
=
%
{
mysql_version
}
-%
{
release
}
STATUS_FILE
=
$mysql_datadir
/RPM_UPGRADE_MARKER
# ----------------------------------------------------------------------
# Create data directory if needed
# Create data directory if needed
, check whether upgrade or install
# ----------------------------------------------------------------------
if
[
!
-d
$mysql_datadir
]
;
then
mkdir
-m
755
$mysql_datadir
;
fi
if
[
!
-d
$mysql_datadir
/mysql
]
;
then
mkdir
$mysql_datadir
/mysql
;
fi
if
[
-f
$STATUS_FILE
]
;
then
SERVER_TO_START
=
`
grep
'^SERVER_TO_START='
$STATUS_FILE
|
cut
-c17-
`
else
SERVER_TO_START
=
''
fi
# echo "Analyzed: SERVER_TO_START=$SERVER_TO_START"
if
[
!
-d
$mysql_datadir
/mysql
]
;
then
mkdir
$mysql_datadir
/mysql
;
echo
"MySQL RPM installation of version
$NEW_VERSION
"
>>
$STATUS_FILE
else
# If the directory exists, we may assume it is an upgrade.
echo
"MySQL RPM upgrade to version
$NEW_VERSION
"
>>
$STATUS_FILE
fi
if
[
!
-d
$mysql_datadir
/test
]
;
then
mkdir
$mysql_datadir
/test
;
fi
# ----------------------------------------------------------------------
# Make MySQL start/shutdown automatically when the machine does it.
# ----------------------------------------------------------------------
# NOTE: This still needs to be debated. Should we check whether these links
# for the other run levels exist(ed) before the upgrade?
# use insserv for older SuSE Linux versions
if
[
-x
/sbin/insserv
]
;
then
/sbin/insserv %
{
_sysconfdir
}
/init.d/mysql
...
...
@@ -677,17 +761,30 @@ if [ -x sbin/restorecon ] ; then
sbin/restorecon
-R
var/lib/mysql
fi
# Restart in the same way that mysqld will be started normally.
if
[
-x
%
{
_sysconfdir
}
/init.d/mysql
]
;
then
# Was the server running before the upgrade? If so, restart the new one.
if
[
"
$SERVER_TO_START
"
=
"true"
]
;
then
# Restart in the same way that mysqld will be started normally.
if
[
-x
%
{
_sysconfdir
}
/init.d/mysql
]
;
then
%
{
_sysconfdir
}
/init.d/mysql start
echo
"Giving mysqld 2 seconds to start"
sleep
2
fi
# Allow mysqld_safe to start mysqld and print a message before we exit
sleep
2
fi
# Allow mysqld_safe to start mysqld and print a message before we exit
sleep
2
# Collect an upgrade history ...
echo
"Upgrade/install finished at
`
date
`
"
>>
$STATUS_FILE
echo
>>
$STATUS_FILE
echo
"====="
>>
$STATUS_FILE
STATUS_HISTORY
=
$mysql_datadir
/RPM_UPGRADE_HISTORY
cat
$STATUS_FILE
>>
$STATUS_HISTORY
rm
$STATUS_FILE
%preun
-n
MySQL-server%
{
product_suffix
}
if
[
$1
=
0
]
;
then
# Stop MySQL before uninstalling it
if
[
-x
%
{
_sysconfdir
}
/init.d/mysql
]
;
then
...
...
@@ -892,6 +989,17 @@ fi
# merging BK trees)
##############################################################################
%changelog
*
Tue Jun 15 2010 Joerg Bruehe <joerg.bruehe@sun.com>
- Change the behaviour on installation and upgrade:
On installation,
do
not autostart the server.
*
Iff
*
the server was stopped before the upgrade is started, this is taken as a
sign the administrator is handling that manually, and so the new server will
not be started automatically at the end of the upgrade.
The start/stop scripts will still be installed, so the server will be started
on the next machine boot.
This is the 5.5 version of fixing bug#27072
(
RPM autostarting the server
)
.
*
Tue Jun 1 2010 Jonathan Perkin <jonathan.perkin@oracle.com>
- Implement SELinux checks from distribution-specific spec file.
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment