summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2010-07-02 12:57:15 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2010-07-02 12:57:15 -0400
commit64d92c836ce029e33b57bcabd4ca76944549e022 (patch)
treee27c2e9981e631917f5085bd9facff85244a3dd9 /lib/sqlalchemy
parent3c56bfde953efdcc2b619a960856fc7465fdc326 (diff)
downloadsqlalchemy-64d92c836ce029e33b57bcabd4ca76944549e022.tar.gz
- If server_version_info is outside the usual
range of (8, ), (9, ), (10, ), a warning is emitted which suggests checking that the FreeTDS version configuration is using 7.0 or 8.0, not 4.2. [ticket:1825]
Diffstat (limited to 'lib/sqlalchemy')
-rw-r--r--lib/sqlalchemy/dialects/mssql/base.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/sqlalchemy/dialects/mssql/base.py b/lib/sqlalchemy/dialects/mssql/base.py
index 066ab8d04..24067f119 100644
--- a/lib/sqlalchemy/dialects/mssql/base.py
+++ b/lib/sqlalchemy/dialects/mssql/base.py
@@ -1015,6 +1015,16 @@ class MSDialect(default.DefaultDialect):
def initialize(self, connection):
super(MSDialect, self).initialize(connection)
+ if self.server_version_info[0] not in range(8, 17):
+ # FreeTDS with version 4.2 seems to report here
+ # a number like "95.10.255". Don't know what
+ # that is. So emit warning.
+ util.warn(
+ "Unrecognized server version info '%s'. Version specific "
+ "behaviors may not function properly. If using ODBC "
+ "with FreeTDS, ensure server version 7.0 or 8.0, not 4.2, "
+ "is configured in the FreeTDS configuration." %
+ ".".join(str(x) for x in self.server_version_info) )
if self.server_version_info >= MS_2005_VERSION and \
'implicit_returning' not in self.__dict__:
self.implicit_returning = True