Fix for randomely ocurring bug
The bug and it's fix are described by the first comment from Guido
in http://code.google.com/p/googleappengine/issues/detail?id=772.
Patch by: Guido van Rossum
"""
Extracts the version of the PostgreSQL server.
"""
import re
VERSION_RE = re.compile(r'PostgreSQL (\d+)\.(\d+)\.')
def get_version(cursor):
"""
Returns a tuple representing the major and minor version number of the
server. For example, (7, 4) or (8, 3).
"""
cursor.execute("SELECT version()")
version = cursor.fetchone()[0]
major, minor = VERSION_RE.search(version).groups()
return int(major), int(minor)