Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Boxiang Sun
gitlab-ce
Commits
3a2d7a66
Commit
3a2d7a66
authored
Jun 11, 2012
by
Dmitriy Zaporozhets
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #917 from teaminsight/queue_fix
Connection fix for resque worker
parents
04bf40a9
294dfe15
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
19 additions
and
2 deletions
+19
-2
config/initializers/connection_fix.rb
config/initializers/connection_fix.rb
+19
-2
No files found.
config/initializers/connection_fix.rb
View file @
3a2d7a66
# from http://gist.github.com/238999
#
# If your workers are inactive for a long period of time, they'll lose
# their MySQL connection.
#
# This hack ensures we re-connect whenever a connection is
# lost. Because, really. why not?
#
# Stick this in RAILS_ROOT/config/initializers/connection_fix.rb (or somewhere similar)
#
# From:
# http://coderrr.wordpress.com/2009/01/08/activerecord-threading-issues-and-resolutions/
if
defined?
(
ActiveRecord
::
ConnectionAdapters
::
Mysql2Adapter
)
if
defined?
(
ActiveRecord
::
ConnectionAdapters
::
Mysql2Adapter
)
module
ActiveRecord::ConnectionAdapters
module
ActiveRecord::ConnectionAdapters
class
Mysql2Adapter
class
Mysql2Adapter
alias_method
:execute_without_retry
,
:execute
alias_method
:execute_without_retry
,
:execute
def
execute
(
*
args
)
def
execute
(
*
args
)
execute_without_retry
(
*
args
)
execute_without_retry
(
*
args
)
rescue
Mysql2
::
Error
=>
e
rescue
ActiveRecord
::
StatementInvalid
=>
e
if
e
.
message
=~
/server has gone away/i
if
e
.
message
=~
/server has gone away/i
warn
"Server timed out, retrying"
warn
"Server timed out, retrying"
reconnect!
reconnect!
...
@@ -15,5 +30,7 @@ if defined?(ActiveRecord::ConnectionAdapters::Mysql2Adapter)
...
@@ -15,5 +30,7 @@ if defined?(ActiveRecord::ConnectionAdapters::Mysql2Adapter)
end
end
end
end
end
end
end
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