Example #1
0
def get_storm_store(settings, search_index=None, debug=False, auto_create=False):
    if debug:
        storm.tracer.debug(True, stream=sys.stdout)
    store = _get_native_store(settings)
    dbschema = _get_schema(settings)
    if dbschema.has_pending_patches(store):
        if auto_create:
            dbschema.upgrade(store)
        else:
            store.close()
            raise SchemaUpgradeNeeded()
    setup_cache(store.cache, settings)
    return StormStore(store, search_index, settings, debug=debug)
Example #2
0
def get_sa_store(settings, search_index=None, debug=False, auto_create=False):
    engine = create_engine(settings.KITTYSTORE_URL, echo=debug)
    schema_mgr = SchemaManager(settings, engine, debug)
    try:
        schema_mgr.check()
    except SchemaUpgradeNeeded:
        if not auto_create:
            raise
        schema_mgr.setup_db()
    Session = sessionmaker(bind=engine)
    session = Session()
    cache = make_region()
    setup_cache(cache, settings)
    session.cache = cache
    return SAStore(session, search_index, settings, debug)