Skip to content
代码片段 群组 项目
未验证 提交 c80872bc 编辑于 作者: Dmitry Gruzd's avatar Dmitry Gruzd 提交者: GitLab
浏览文件

Merge branch '412716-rename-method' into 'master'

Refactor: in dry run, we don't execute sql

See merge request https://gitlab.com/gitlab-org/gitlab/-/merge_requests/144222



Merged-by: default avatarDmitry Gruzd <dgruzd@gitlab.com>
Approved-by: default avatarDmitry Gruzd <dgruzd@gitlab.com>
Approved-by: default avatarEduardo Bonet <ebonet@gitlab.com>
Approved-by: default avatarMichał Zając <mzajac@gitlab.com>
Approved-by: default avatarMax Orefice <morefice@gitlab.com>
Reviewed-by: default avatarMax Orefice <morefice@gitlab.com>
Co-authored-by: default avatarRutger Wessels <rwessels@gitlab.com>
No related branches found
No related tags found
无相关合并请求
......@@ -49,9 +49,9 @@ def lock_writes
FOR EACH STATEMENT EXECUTE FUNCTION #{TRIGGER_FUNCTION_NAME}();
SQL
execute_sql_statement(sql_statement)
result = process_query(sql_statement, 'lock')
result_hash(action: dry_run ? 'needs_lock' : 'locked')
result_hash(action: result)
end
def unlock_writes
......@@ -65,19 +65,27 @@ def unlock_writes
DROP TRIGGER IF EXISTS #{write_trigger_name} ON #{table_name};
SQL
execute_sql_statement(sql_statement)
result = process_query(sql_statement, 'unlock')
result_hash(action: dry_run ? 'needs_unlock' : 'unlocked')
result_hash(action: result)
end
private
attr_reader :table_name, :connection, :database_name, :logger, :dry_run, :table_name_without_schema, :with_retries
def execute_sql_statement(sql)
def process_query(sql, action)
if dry_run
logger&.info sql
elsif with_retries
"needs_#{action}"
else
execute_sql_statement(sql)
"#{action}ed"
end
end
def execute_sql_statement(sql)
if with_retries
raise "Cannot call lock_retries_helper if a transaction is already open" if connection.transaction_open?
run_with_retries(connection) do
......
0% 加载中 .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册