def create(self, context): session = db_session.get_session() with session.begin(): try: session.add(self) except db_exc.DBDuplicateEntry as e: self.__class__._duplicate_object(e, self)
def create(self, context): session = db_session.get_session(mysql_traditional_mode=True) try: with session.begin(): session.add(self) except (db_exc.DBDuplicateEntry) as e: self.__class__._raise_duplicate_object(e, self)
def get_manager(): # Our CONF object is not the same as the db one so make sure the # database.connection is made know to the oslo DB layer. session.set_defaults(sql_connection=CONF.database.connection, sqlite_db='') session.get_session(mysql_traditional_mode=True) alembic_path = os.path.join(os.path.dirname(__file__), '..', 'objects', 'sqlalchemy', 'migration', 'alembic.ini') migrate_path = os.path.join(os.path.dirname(__file__), '..', 'objects', 'sqlalchemy', 'migration', 'alembic_migrations') migration_config = { 'alembic_ini_path': alembic_path, 'migration_repo_path': migrate_path, 'alembic_repo_path': migrate_path } return migration_manager.MigrationManager(migration_config)
def get_by_id(cls, context, item_id): query = db_session.get_session( mysql_traditional_mode=True).query(cls).filter_by(id=item_id) result = query.first() if not result: cls._raise_not_found(item_id) return result
def save(self, context): if objects.transition_schema(): self.add_forward_schema_changes() session = db_session.get_session(mysql_traditional_mode=True) with session.begin(): session.merge(self)
def get_manager(): CONF.import_opt('connection', 'solum.openstack.common.db.sqlalchemy.session', group='database') session.set_defaults(sql_connection=CONF.database.connection, sqlite_db='') session.get_session(mysql_traditional_mode=True) alembic_path = os.path.join(os.path.dirname(__file__), '..', 'objects', 'sqlalchemy', 'migration', 'alembic.ini') migrate_path = os.path.join(os.path.dirname(__file__), '..', 'objects', 'sqlalchemy', 'migration', 'alembic_migrations') migration_config = {'alembic_ini_path': alembic_path, 'migration_repo_path': migrate_path, 'alembic_repo_path': migrate_path} return migration_manager.MigrationManager(migration_config)
def get_manager(): CONF.import_opt('connection', 'solum.openstack.common.db.sqlalchemy.session', group='database') session.set_defaults(sql_connection=CONF.database.connection, sqlite_db='') session.get_session(mysql_traditional_mode=True) alembic_path = os.path.join(os.path.dirname(__file__), '..', 'objects', 'sqlalchemy', 'migration', 'alembic.ini') migrate_path = os.path.join(os.path.dirname(__file__), '..', 'objects', 'sqlalchemy', 'migration', 'alembic_migrations') migration_config = { 'alembic_ini_path': alembic_path, 'migration_repo_path': migrate_path, 'alembic_repo_path': migrate_path } return manager.MigrationManager(migration_config)
def model_query(context, model, *args, **kwargs): """Query helper. :param context: context to query under :param session: if present, the session to use """ session = kwargs.get('session') or db_session.get_session() query = session.query(model, *args) return query
def model_query(context, model, *args, **kwargs): """Query helper. :param context: context to query under :param session: if present, the session to use """ session = kwargs.get("session") or db_session.get_session() query = session.query(model, *args) return query
def model_query(context, model, *args, **kwargs): """Query helper. :param context: context to query under :param session: if present, the session to use """ session = kwargs.get('session') or db_session.get_session( mysql_traditional_mode=True) query = session.query(model, *args) return query
def run_migrations_online(): """Run migrations in 'online' mode. In this scenario we need to create an Engine and associate a connection with the context. """ engine = sqlalchemy_session.get_session().get_bind() with engine.connect() as connection: context.configure(connection=connection, target_metadata=target_metadata) with context.begin_transaction(): context.run_migrations()
def save(self, session=None): """Save this object.""" if not session: session = sa.get_session() # NOTE(boris-42): This part of code should be look like: # session.add(self) # session.flush() # But there is a bug in sqlalchemy and eventlet that # raises NoneType exception if there is no running # transaction and rollback is called. As long as # sqlalchemy has this bug we have to create transaction # explicitly. with session.begin(subtransactions=True): session.add(self) session.flush()
def save(self, session=None): """Save this object.""" if not session: session = sa.get_session() # NOTE(boris-42): This part of code should be look like: # sesssion.add(self) # session.flush() # But there is a bug in sqlalchemy and eventlet that # raises NoneType exception if there is no running # transaction and rollback is called. As long as # sqlalchemy has this bug we have to create transaction # explicity. with session.begin(subtransactions=True): session.add(self) session.flush()
def get_by_id(cls, context, item_id): query = db_session.get_session().query(cls).filter_by(id=item_id) result = query.first() if not result: cls._not_found(item_id) return result
def get_dummy_session(): return session.get_session()
def get_by_uuid(cls, context, item_uuid): query = db_session.get_session().query(cls).filter_by(uuid=item_uuid) result = query.first() if not result: cls._raise_not_found(item_uuid) return result
def get_by_uuid(cls, context, item_uuid): try: return db_session.get_session().query(cls).filter_by( uuid=item_uuid).one() except sqlalchemy.orm.exc.NoResultFound: cls._raise_not_found(item_uuid)
def get_session(cls): return db_session.get_session(mysql_traditional_mode=True)
def destroy(self, context): session = db_session.get_session() with session.begin(): session.query(self.__class__).\ filter_by(id=self.id).\ delete()
def destroy(self, context): session = db_session.get_session() with session.begin(): session.query(self.__class__).filter_by(id=self.id).delete()
def destroy(self, context): session = db_session.get_session(mysql_traditional_mode=True) with session.begin(): session.query(self.__class__).\ filter_by(id=self.id).\ delete()