Commit dd7e932c authored by Michael Kozono's avatar Michael Kozono

Merge branch '11965-geo-prevent-using-non-empty-tracking-database-ce' into 'master'

CE port of https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/14981

See merge request gitlab-org/gitlab-ce!31493
parents 0e456465 46441af9
# frozen_string_literal: true
class AddTimestampsColumnsToGeoNodes < ActiveRecord::Migration[5.2]
DOWNTIME = false
def change
add_column(:geo_nodes, :created_at, :datetime_with_timezone, null: true)
add_column(:geo_nodes, :updated_at, :datetime_with_timezone, null: true)
end
end
......@@ -1450,6 +1450,8 @@ ActiveRecord::Schema.define(version: 2019_08_02_235445) do
t.string "internal_url"
t.string "name", null: false
t.integer "container_repositories_max_capacity", default: 10, null: false
t.datetime_with_timezone "created_at"
t.datetime_with_timezone "updated_at"
t.index ["access_key"], name: "index_geo_nodes_on_access_key"
t.index ["name"], name: "index_geo_nodes_on_name", unique: true
t.index ["primary"], name: "index_geo_nodes_on_primary"
......
......@@ -230,7 +230,7 @@ sudo gitlab-ctl reconfigure
This will increase the timeout to three hours (10800 seconds). Choose a time
long enough to accommodate a full clone of your largest repositories.
### Reseting Geo **secondary** node replication
### Resetting Geo **secondary** node replication
If you get a **secondary** node in a broken state and want to reset the replication state,
to start again from scratch, there are a few steps that can help you:
......@@ -524,6 +524,20 @@ If it doesn't exist or inadvertent changes have been made to it, run `sudo gitla
If this path is mounted on a remote volume, please check your volume configuration and that it has correct permissions.
### An existing tracking database cannot be reused
Geo cannot reuse an existing tracking database.
It is safest to use a fresh secondary, or reset the whole secondary by following
[Resetting Geo secondary node replication](#resetting-geo-secondary-node-replication).
If you are not concerned about possible orphaned directories and files, then you
can simply reset the existing tracking database with:
```sh
sudo gitlab-rake geo:db:reset
```
### Geo node has a database that is writable which is an indication it is not configured for replication with the primary node.
This error refers to a problem with the database replica on a **secondary** node,
......
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