2024-05-13 04:54:56 发布
网友
我正在尝试用turbogears和sqlalchemy开发一个应用程序。 在同一台服务器上,已经有一个使用kinterbasdb的应用程序直接位于mod wsgi下。 当两个应用程序都被使用时,两个应用程序似乎都没有意识到kinterbasdb已经初始化 在不同的应用程序中使用sqlalchemy和kinterbasdb,我是否遗漏了一些不明显的东西?为了确保只有一个kinterbasdb实例被初始化并且两个应用程序都使用该实例,有人有什么建议吗?在
我以为我已经把我的解决方案贴出来了。。。在
在httpd conf文件中将这两个应用程序修改为在WSGIApplicationGroup${GLOBAL}下运行 和修补sqlalchemy.databases.firebird.py检查self.dbapi.initialized是真的吗 打电话之前self.dbapi.init(... 是我唯一能让这个场景开始运行的方法。 SQLAlchemy 0.4.7修补程序:
diff -Naur SQLAlchemy-0.4.7/lib/sqlalchemy/databases/firebird.py SQLAlchemy-0.4.7.new/lib/sqlalchemy/databases/firebird.py - SQLAlchemy-0.4.7/lib/sqlalchemy/databases/firebird.py 2008-07-26 12:43:52.000000000 -0400 +++ SQLAlchemy-0.4.7.new/lib/sqlalchemy/databases/firebird.py 2008-10-01 10:51:22.000000000 -0400 @@ -291,7 +291,8 @@ global _initialized_kb if not _initialized_kb and self.dbapi is not None: _initialized_kb = True - self.dbapi.init(type_conv=type_conv, concurrency_level=concurrency_level) + if not self.dbapi.initialized: + self.dbapi.init(type_conv=type_conv, concurrency_level=concurrency_level) return ([], opts) def create_execution_context(self, *args, **kwargs):
我以为我已经把我的解决方案贴出来了。。。在
在httpd conf文件中将这两个应用程序修改为在WSGIApplicationGroup${GLOBAL}下运行 和修补sqlalchemy.databases.firebird.py检查self.dbapi.initialized是真的吗 打电话之前self.dbapi.init(... 是我唯一能让这个场景开始运行的方法。
SQLAlchemy 0.4.7修补程序:
相关问题 更多 >
编程相关推荐