Corrected PostgreSQL version comparisons from r10730. Thanks to rozwell for the report on IRC.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@10735 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Russell Keith-Magee 2009-05-11 01:46:26 +00:00
parent fe971ec66f
commit 4f9fd44965
2 changed files with 4 additions and 4 deletions

View File

@ -121,7 +121,7 @@ class DatabaseWrapper(BaseDatabaseWrapper):
cursor.execute("SET TIME ZONE %s", [settings_dict['TIME_ZONE']]) cursor.execute("SET TIME ZONE %s", [settings_dict['TIME_ZONE']])
if not hasattr(self, '_version'): if not hasattr(self, '_version'):
self.__class__._version = get_version(cursor) self.__class__._version = get_version(cursor)
if self._version[0:2] < [8, 0]: if self._version[0:2] < (8, 0):
# No savepoint support for earlier version of PostgreSQL. # No savepoint support for earlier version of PostgreSQL.
self.features.uses_savepoints = False self.features.uses_savepoints = False
cursor.execute("SET client_encoding to 'UNICODE'") cursor.execute("SET client_encoding to 'UNICODE'")

View File

@ -66,7 +66,7 @@ class DatabaseOperations(BaseDatabaseOperations):
def sql_flush(self, style, tables, sequences): def sql_flush(self, style, tables, sequences):
if tables: if tables:
if self.postgres_version[0:2] >= [8,1]: if self.postgres_version[0:2] >= (8,1):
# Postgres 8.1+ can do 'TRUNCATE x, y, z...;'. In fact, it *has to* # Postgres 8.1+ can do 'TRUNCATE x, y, z...;'. In fact, it *has to*
# in order to be able to truncate tables referenced by a foreign # in order to be able to truncate tables referenced by a foreign
# key in any other table. The result is a single SQL TRUNCATE # key in any other table. The result is a single SQL TRUNCATE
@ -154,10 +154,10 @@ class DatabaseOperations(BaseDatabaseOperations):
NotImplementedError if this is the database in use. NotImplementedError if this is the database in use.
""" """
if aggregate.sql_function in ('STDDEV_POP', 'STDDEV_SAMP', 'VAR_POP', 'VAR_SAMP'): if aggregate.sql_function in ('STDDEV_POP', 'STDDEV_SAMP', 'VAR_POP', 'VAR_SAMP'):
if self.postgres_version[0:2] < [8,2]: if self.postgres_version[0:2] < (8,2):
raise NotImplementedError('PostgreSQL does not support %s prior to version 8.2. Please upgrade your version of PostgreSQL.' % aggregate.sql_function) raise NotImplementedError('PostgreSQL does not support %s prior to version 8.2. Please upgrade your version of PostgreSQL.' % aggregate.sql_function)
if aggregate.sql_function in ('STDDEV_POP', 'VAR_POP'): if aggregate.sql_function in ('STDDEV_POP', 'VAR_POP'):
if self.postgres_version[0:2] == [8,2]: if self.postgres_version[0:2] == (8,2):
if self.postgres_version[2] is None or self.postgres_version[2] <= 4: if self.postgres_version[2] is None or self.postgres_version[2] <= 4:
raise NotImplementedError('PostgreSQL 8.2 to 8.2.4 is known to have a faulty implementation of %s. Please upgrade your version of PostgreSQL.' % aggregate.sql_function) raise NotImplementedError('PostgreSQL 8.2 to 8.2.4 is known to have a faulty implementation of %s. Please upgrade your version of PostgreSQL.' % aggregate.sql_function)