def isolation_level(fn): return _chain_decorators_on( fn, only_on(('postgresql', 'sqlite', 'mysql'), "DBAPI has no isolation level support"), fails_on('postgresql+pypostgresql', 'pypostgresql bombs on multiple isolation level calls') )
def update_from(fn): """Target must support UPDATE..FROM syntax""" return only_on(['postgresql', 'mssql', 'mysql'], "Backend does not support UPDATE..FROM")(fn)