Commit afb3c3c1 authored by David H. Wilkins's avatar David H. Wilkins

Add missing timezone to legacy artifacts (ci_builds)

- ci_builds.artifacts_expire_at are copied to
  ci_job_artifacts.expire_at with incorrect timestamps when the
  database timezone is NOT utc

- ci_builds.artifacts_expire_at is `timestamp without time zone` and
  ci_job_artifacts.expire_at is `timestamp with time zone` on
  postgresql

- Tests fail locally for `rspec
  ./spec/lib/gitlab/import_export/import_export_spec.rb` without this
  change
parent bce8b66d
...@@ -39,10 +39,10 @@ module Gitlab ...@@ -39,10 +39,10 @@ module Gitlab
SELECT SELECT
project_id, project_id,
id, id,
artifacts_expire_at, artifacts_expire_at #{add_missing_db_timezone},
#{LEGACY_PATH_FILE_LOCATION}, #{LEGACY_PATH_FILE_LOCATION},
created_at, created_at #{add_missing_db_timezone},
created_at, created_at #{add_missing_db_timezone},
artifacts_file, artifacts_file,
artifacts_size, artifacts_size,
COALESCE(artifacts_file_store, #{FILE_LOCAL_STORE}), COALESCE(artifacts_file_store, #{FILE_LOCAL_STORE}),
...@@ -81,10 +81,10 @@ module Gitlab ...@@ -81,10 +81,10 @@ module Gitlab
SELECT SELECT
project_id, project_id,
id, id,
artifacts_expire_at, artifacts_expire_at #{add_missing_db_timezone},
#{LEGACY_PATH_FILE_LOCATION}, #{LEGACY_PATH_FILE_LOCATION},
created_at, created_at #{add_missing_db_timezone},
created_at, created_at #{add_missing_db_timezone},
artifacts_metadata, artifacts_metadata,
NULL, NULL,
COALESCE(artifacts_metadata_store, #{FILE_LOCAL_STORE}), COALESCE(artifacts_metadata_store, #{FILE_LOCAL_STORE}),
...@@ -121,6 +121,12 @@ module Gitlab ...@@ -121,6 +121,12 @@ module Gitlab
AND artifacts_file <> '' AND artifacts_file <> ''
SQL SQL
end end
def add_missing_db_timezone
return '' unless Gitlab::Database.postgresql?
'at time zone \'UTC\''
end
end end
end end
end end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment