diff options
author | Matt (work) <matt@digitaleye.com> | 2014-02-11 17:26:03 -0500 |
---|---|---|
committer | Matt (work) <matt@digitaleye.com> | 2014-02-11 17:26:03 -0500 |
commit | bd98bd5fffd53a650319d36f002031171930ca86 (patch) | |
tree | e5db11d7b19014f45dda62313d288483a0ed8123 /lib/sqlalchemy/dialects/mysql/cymysql.py | |
parent | bf934018a52b4fe4c43745f88b66210d6517338f (diff) | |
download | sqlalchemy-pr/69.tar.gz |
Parse server version info more robustlypr/69
Closes #2934
Diffstat (limited to 'lib/sqlalchemy/dialects/mysql/cymysql.py')
-rw-r--r-- | lib/sqlalchemy/dialects/mysql/cymysql.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/sqlalchemy/dialects/mysql/cymysql.py b/lib/sqlalchemy/dialects/mysql/cymysql.py index 40bbc880e..497280459 100644 --- a/lib/sqlalchemy/dialects/mysql/cymysql.py +++ b/lib/sqlalchemy/dialects/mysql/cymysql.py @@ -13,6 +13,7 @@ :url: https://github.com/nakagami/CyMySQL """ +import re from .mysqldb import MySQLDialect_mysqldb from .base import (BIT, MySQLDialect) @@ -54,7 +55,13 @@ class MySQLDialect_cymysql(MySQLDialect_mysqldb): def _get_server_version_info(self, connection): dbapi_con = connection.connection - version = [int(v) for v in dbapi_con.server_version.split('.')] + version = [] + r = re.compile('[.\-]') + for n in r.split(dbapi_con.server_version): + try: + version.append(int(n)) + except ValueError: + version.append(n) return tuple(version) def _detect_charset(self, connection): |