Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
ffb218c7
R
rails
项目概览
张重言
/
rails
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rails
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
ffb218c7
编写于
11月 28, 2011
作者:
A
Aaron Patterson
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
pools are 1:1 with spec now rather than 1:1 with class
上级
2a9a8ad4
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
8 addition
and
7 deletion
+8
-7
activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb
...ve_record/connection_adapters/abstract/connection_pool.rb
+6
-3
activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb
.../connection_adapters/abstract/connection_specification.rb
+2
-1
activerecord/test/cases/connection_adapters/connection_handler_test.rb
...test/cases/connection_adapters/connection_handler_test.rb
+0
-2
activerecord/test/cases/multiple_db_test.rb
activerecord/test/cases/multiple_db_test.rb
+0
-1
未找到文件。
activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb
浏览文件 @
ffb218c7
...
...
@@ -320,10 +320,12 @@ class ConnectionHandler
def
initialize
(
pools
=
{})
@connection_pools
=
pools
@class_to_pool
=
{}
end
def
establish_connection
(
name
,
spec
)
@connection_pools
[
name
]
=
ConnectionAdapters
::
ConnectionPool
.
new
(
spec
)
@connection_pools
[
spec
]
||=
ConnectionAdapters
::
ConnectionPool
.
new
(
spec
)
@class_to_pool
[
name
]
=
@connection_pools
[
spec
]
end
# Returns true if there are any active connections among the connection
...
...
@@ -374,16 +376,17 @@ def connected?(klass)
# can be used as an argument for establish_connection, for easily
# re-establishing the connection.
def
remove_connection
(
klass
)
pool
=
@c
onnection_pools
.
delete
(
klass
.
name
)
pool
=
@c
lass_to_pool
.
delete
(
klass
.
name
)
return
nil
unless
pool
@connection_pools
.
delete
pool
.
spec
pool
.
automatic_reconnect
=
false
pool
.
disconnect!
pool
.
spec
.
config
end
def
retrieve_connection_pool
(
klass
)
pool
=
@c
onnection_pools
[
klass
.
name
]
pool
=
@c
lass_to_pool
[
klass
.
name
]
return
pool
if
pool
return
nil
if
ActiveRecord
::
Base
==
klass
retrieve_connection_pool
klass
.
superclass
...
...
activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb
浏览文件 @
ffb218c7
...
...
@@ -82,7 +82,8 @@ def self.resolve_string_connection(spec) # :nodoc:
def
self
.
resolve_hash_connection
(
spec
)
# :nodoc:
spec
=
spec
.
symbolize_keys
unless
spec
.
key?
(
:adapter
)
then
raise
AdapterNotSpecified
,
"database configuration does not specify adapter"
end
raise
(
AdapterNotSpecified
,
"database configuration does not specify adapter"
)
unless
spec
.
key?
(
:adapter
)
begin
require
"active_record/connection_adapters/
#{
spec
[
:adapter
]
}
_adapter"
...
...
activerecord/test/cases/connection_adapters/connection_handler_test.rb
浏览文件 @
ffb218c7
...
...
@@ -40,8 +40,6 @@ def test_retrieve_connection_pool_uses_superclass_when_no_subclass_connection
def
test_retrieve_connection_pool_uses_superclass_pool_after_subclass_establish_and_remove
@handler
.
establish_connection
'north america'
,
Base
.
connection_pool
.
spec
assert_not_same
@handler
.
retrieve_connection_pool
(
@klass
),
@handler
.
retrieve_connection_pool
(
@subklass
)
@handler
.
remove_connection
@subklass
assert_same
@handler
.
retrieve_connection_pool
(
@klass
),
...
...
activerecord/test/cases/multiple_db_test.rb
浏览文件 @
ffb218c7
...
...
@@ -85,7 +85,6 @@ def test_transactions_across_databases
end
def
test_arel_table_engines
assert_not_equal
Entrant
.
arel_engine
,
Course
.
arel_engine
assert_equal
Entrant
.
arel_engine
,
Bird
.
arel_engine
end
end
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录