add micro version to mysql_version_ge

This commit is contained in:
MATSUU Takuto 2014-02-24 21:08:05 +09:00
parent dbcb8178ed
commit 5f59ce5bc7

View file

@ -463,9 +463,11 @@ sub get_replication_status {
} }
# Checks for supported or EOL'ed MySQL versions # Checks for supported or EOL'ed MySQL versions
my ($mysqlvermajor,$mysqlverminor); my ($mysqlvermajor,$mysqlverminor, $mysqlvermicro);
sub validate_mysql_version { sub validate_mysql_version {
($mysqlvermajor,$mysqlverminor) = $myvar{'version'} =~ /(\d+)\.(\d+)/; ($mysqlvermajor,$mysqlverminor,$mysqlvermicro) = $myvar{'version'} =~ /^(\d+)(?:\.(\d+)|)(?:\.(\d+)|)/;
$mysqlverminor ||= 0;
$mysqlvermicro ||= 0;
if (!mysql_version_ge(5)) { if (!mysql_version_ge(5)) {
badprint "Your MySQL version ".$myvar{'version'}." is EOL software! Upgrade soon!\n"; badprint "Your MySQL version ".$myvar{'version'}." is EOL software! Upgrade soon!\n";
} elsif (mysql_version_ge(6)) { } elsif (mysql_version_ge(6)) {
@ -475,10 +477,12 @@ sub validate_mysql_version {
} }
} }
# Checks if MySQL version is greater than equal to (major, minor) # Checks if MySQL version is greater than equal to (major, minor, micro)
sub mysql_version_ge { sub mysql_version_ge {
my ($maj, $min) = @_; my ($maj, $min, $mic) = @_;
return $mysqlvermajor > $maj || ($mysqlvermajor == $maj && $mysqlverminor >= ($min || 0)); $min ||= 0;
$mic ||= 0;
return $mysqlvermajor > $maj || $mysqlvermajor == $maj && ($mysqlverminor > $min || $mysqlverminor == $min && $mysqlvermicro >= $mic);
} }
# Checks for 32-bit boxes with more than 2GB of RAM # Checks for 32-bit boxes with more than 2GB of RAM