Files
@ b61824e61e68
Branch filter:
Location: kallithea/rhodecode/lib/dbmigrate/versions/004_version_1_3_0.py - annotation
b61824e61e68
3.1 KiB
text/x-python
Don't cache dulwich Repos, in pararell multithreaded evniroment dulwich pack file openers
can break badly. We need to create Repo() objects always for each call, even when it's
taken from cache.
Fixed issue with dulwich filedescriptor leak ref #573
can break badly. We need to create Repo() objects always for each call, even when it's
taken from cache.
Fixed issue with dulwich filedescriptor leak ref #573
5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 72c525a7e7ad 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 5b2cf21b1947 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad cf51bbfb120e 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 72c525a7e7ad 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 5b2cf21b1947 | import logging
import datetime
from sqlalchemy import *
from sqlalchemy.exc import DatabaseError
from sqlalchemy.orm import relation, backref, class_mapper
from sqlalchemy.orm.session import Session
from rhodecode.lib.dbmigrate.migrate import *
from rhodecode.lib.dbmigrate.migrate.changeset import *
from rhodecode.model.meta import Base
log = logging.getLogger(__name__)
def upgrade(migrate_engine):
""" Upgrade operations go here.
Don't create your own engine; bind migrate_engine to your metadata
"""
#==========================================================================
# Add table `users_group_repo_group_to_perm`
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_3_0 import UsersGroupRepoGroupToPerm
UsersGroupRepoGroupToPerm().__table__.create()
#==========================================================================
# Add table `changeset_comments`
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_3_0 import ChangesetComment
ChangesetComment().__table__.create()
#==========================================================================
# Add table `notifications`
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_3_0 import Notification
Notification().__table__.create()
#==========================================================================
# Add table `user_to_notification`
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_3_0 import UserNotification
UserNotification().__table__.create()
#==========================================================================
# Add unique to table `users_group_to_perm`
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_3_0 import UsersGroupToPerm
tbl = UsersGroupToPerm().__table__
cons = UniqueConstraint('users_group_id', 'permission_id', table=tbl)
cons.create()
#==========================================================================
# Fix unique constrain on table `user_logs`
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_3_0 import UserLog
tbl = UserLog().__table__
col = Column("repository_id", Integer(), ForeignKey('repositories.repo_id'),
nullable=False, unique=None, default=None)
col.alter(nullable=True, table=tbl)
#==========================================================================
# Rename table `group_to_perm` to `user_repo_group_to_perm`
#==========================================================================
tbl = Table('group_to_perm', MetaData(bind=migrate_engine), autoload=True,
autoload_with=migrate_engine)
tbl.rename('user_repo_group_to_perm')
return
def downgrade(migrate_engine):
meta = MetaData()
meta.bind = migrate_engine
|