Commit d5e9ecd7 authored by Douwe Maan's avatar Douwe Maan

Merge branch 'master' into 'ce-to-ee-2018-05-09'

# Conflicts:
#   db/schema.rb
parents 981d27c1 12d57caf
......@@ -11,7 +11,7 @@
#
# It's strongly recommended that you check this file into your version control system.
ActiveRecord::Schema.define(version: 20180508135515) do
ActiveRecord::Schema.define(version: 20180509091305) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"
......@@ -1987,8 +1987,6 @@ ActiveRecord::Schema.define(version: 20180508135515) do
t.datetime "last_update_started_at"
t.datetime "last_update_scheduled_at"
t.datetime "next_execution_timestamp"
t.datetime "created_at"
t.datetime "updated_at"
t.string "status"
t.string "jid"
t.datetime_with_timezone "last_update_at"
......
# Geo (Geo Replication) **[PREMIUM ONLY]**
> **Notes:**
- Geo is part of [GitLab Premium][ee].
- Introduced in GitLab Enterprise Edition 8.9.
- Geo is part of [GitLab Premium][ee]
- Introduced in GitLab Enterprise Edition 8.9
We recommend you use it with at least GitLab Enterprise Edition 10.0 for
basic Geo features, or latest version for a better experience.
- You should make sure that all nodes run the same GitLab version.
basic Geo features, or latest version for a better experience
- You should make sure that all nodes run the same GitLab version
- Geo requires PostgreSQL 9.6 and Git 2.9 in addition to GitLab's usual
[minimum requirements][install-requirements]
- Using Geo in combination with High Availability is considered **GA** in GitLab Enterprise Edition 10.4
- Using Geo in combination with High Availability (HA) is considered **Generally Available** (GA) in GitLab Enterprise Edition 10.4
>**Note:**
Geo changes significantly from release to release. Upgrades **are**
......@@ -213,11 +213,9 @@ extra limitations may be in place.
### Limitations on replication
Only the following items are replicated to the secondary. Any data not on this
list will not be available on the secondary, and failing over without manually
replicating it will cause the data to be **lost**:
Only the following items are replicated to the secondary. Data not on this list is unavailable on the secondary. Failing over without manually replicating it will cause the data to be **lost**:
- All database content (e.g., snippets, epics, issues, merge requests, groups, project metadata, etc)
- All database content (e.g. snippets, epics, issues, merge requests, groups, project metadata, etc)
- Project repositories
- Project wiki repositories
- User uploads (e.g. attachments to issues, merge requests and epics, avatars, etc)
......
......@@ -4,6 +4,9 @@ module EE
extend ::Gitlab::Utils::Override
prepended do
include IgnorableColumn
ignore_column :created_at, :updated_at
BACKOFF_PERIOD = 24.seconds
JITTER = 6.seconds
......
......@@ -21,9 +21,7 @@ class CreateProjectMirrorDataEE < ActiveRecord::Migration
0 AS retry_count,
CAST(NULL AS #{timestamp}) AS last_update_started_at,
CAST(NULL AS #{timestamp}) AS last_update_scheduled_at,
NOW() AS next_execution_timestamp,
NOW() AS created_at,
NOW() AS updated_at
NOW() AS next_execution_timestamp
FROM projects
WHERE mirror IS TRUE
);
......
......@@ -12,17 +12,13 @@ class EnsureProjectMirrorData < ActiveRecord::Migration
retry_count,
last_update_started_at,
last_update_scheduled_at,
next_execution_timestamp,
created_at,
updated_at
next_execution_timestamp
)
SELECT id AS project_id,
0 AS retry_count,
CAST(NULL AS TIMESTAMP) AS last_update_started_at,
CAST(NULL AS TIMESTAMP) AS last_update_scheduled_at,
NOW() AS next_execution_timestamp,
NOW() AS created_at,
NOW() as updated_at
NOW() AS next_execution_timestamp
FROM projects
WHERE mirror IS TRUE
AND NOT EXISTS (
......
class RemoveProjectMirrorDataCreatedAtUpdatedAt < ActiveRecord::Migration
include Gitlab::Database::MigrationHelpers
# Set this constant to true if this migration requires downtime.
DOWNTIME = false
def up
# A project_mirror_data table created in EE would have these columns, but
# one created in CE wouldn't. We don't actually need them, so let's remove them.
remove_column :project_mirror_data, :created_at if column_exists?(:project_mirror_data, :created_at)
remove_column :project_mirror_data, :updated_at if column_exists?(:project_mirror_data, :updated_at)
end
def down
# The columns do not need to be re-added; no application logic ever used them,
# and migrations that did have been modified to no longer do so.
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