Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
heptapod
heptapod
Commits
e30140dc1a0b
Commit
15b7bc62
authored
Feb 22, 2017
by
Rémy Coutable
Browse files
Merge branch 'connection-pool-host' into 'master'
Allow setting of a custom connection pool host See merge request !9445
parents
c6cbb25aba16
41e687d37c51
Changes
2
Hide whitespace changes
Inline
Side-by-side
lib/gitlab/database.rb
View file @
e30140dc
...
...
@@ -79,11 +79,16 @@ def self.with_connection_pool(pool_size)
end
end
def
self
.
create_connection_pool
(
pool_size
)
# pool_size - The size of the DB pool.
# host - An optional host name to use instead of the default one.
def
self
.
create_connection_pool
(
pool_size
,
host
=
nil
)
# See activerecord-4.2.7.1/lib/active_record/connection_adapters/connection_specification.rb
env
=
Rails
.
env
original_config
=
ActiveRecord
::
Base
.
configurations
env_config
=
original_config
[
env
].
merge
(
'pool'
=>
pool_size
)
env_config
[
'host'
]
=
host
if
host
config
=
original_config
.
merge
(
env
=>
env_config
)
spec
=
...
...
spec/lib/gitlab/database_spec.rb
View file @
e30140dc
...
...
@@ -119,9 +119,24 @@ class MigrationTest
it
'creates a new connection pool with specific pool size'
do
pool
=
described_class
.
create_connection_pool
(
5
)
expect
(
pool
)
.
to
be_kind_of
(
ActiveRecord
::
ConnectionAdapters
::
ConnectionPool
)
expect
(
pool
.
spec
.
config
[
:pool
]).
to
eq
(
5
)
begin
expect
(
pool
)
.
to
be_kind_of
(
ActiveRecord
::
ConnectionAdapters
::
ConnectionPool
)
expect
(
pool
.
spec
.
config
[
:pool
]).
to
eq
(
5
)
ensure
pool
.
disconnect!
end
end
it
'allows setting of a custom hostname'
do
pool
=
described_class
.
create_connection_pool
(
5
,
'127.0.0.1'
)
begin
expect
(
pool
.
spec
.
config
[
:host
]).
to
eq
(
'127.0.0.1'
)
ensure
pool
.
disconnect!
end
end
end
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment