comparison rhodecode/lib/dbmigrate/migrate/versioning/schemadiff.py @ 3767:e203cd3640db beta

sync sqlalchemy migrate with latest changes
author Marcin Kuzminski <marcin@python-works.com>
date Tue, 16 Apr 2013 01:45:47 +0200
parents 72c525a7e7ad
children a1696507b3ad
comparison
equal deleted inserted replaced
3766:848492e2aafa 3767:e203cd3640db
8 from rhodecode.lib.dbmigrate.migrate.changeset import SQLA_06 8 from rhodecode.lib.dbmigrate.migrate.changeset import SQLA_06
9 from sqlalchemy.types import Float 9 from sqlalchemy.types import Float
10 10
11 log = logging.getLogger(__name__) 11 log = logging.getLogger(__name__)
12 12
13
13 def getDiffOfModelAgainstDatabase(metadata, engine, excludeTables=None): 14 def getDiffOfModelAgainstDatabase(metadata, engine, excludeTables=None):
14 """ 15 """
15 Return differences of model against database. 16 Return differences of model against database.
16 17
17 :return: object which will evaluate to :keyword:`True` if there \ 18 :return: object which will evaluate to :keyword:`True` if there \
18 are differences else :keyword:`False`. 19 are differences else :keyword:`False`.
19 """ 20 """
20 db_metadata = sqlalchemy.MetaData(engine, reflect=True) 21 db_metadata = sqlalchemy.MetaData(engine)
22 db_metadata.reflect()
21 23
22 # sqlite will include a dynamically generated 'sqlite_sequence' table if 24 # sqlite will include a dynamically generated 'sqlite_sequence' table if
23 # there are autoincrement sequences in the database; this should not be 25 # there are autoincrement sequences in the database; this should not be
24 # compared. 26 # compared.
25 if engine.dialect.name == 'sqlite': 27 if engine.dialect.name == 'sqlite':