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
Léo-Paul Géneau
gitlab-ce
Commits
4caf58a1
Commit
4caf58a1
authored
May 08, 2018
by
Tiago Botelho
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Adds not null constraint to ProjectMirrorData's foreign_key project_id
parent
fcea5fc8
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
41 additions
and
2 deletions
+41
-2
db/migrate/20180508100222_add_not_null_constraint_to_project_mirror_data_foreign_key.rb
...not_null_constraint_to_project_mirror_data_foreign_key.rb
+21
-0
db/schema.rb
db/schema.rb
+2
-2
spec/migrations/add_not_null_constraint_to_project_mirror_data_foreign_key_spec.rb
...ull_constraint_to_project_mirror_data_foreign_key_spec.rb
+18
-0
No files found.
db/migrate/20180508100222_add_not_null_constraint_to_project_mirror_data_foreign_key.rb
0 → 100644
View file @
4caf58a1
class
AddNotNullConstraintToProjectMirrorDataForeignKey
<
ActiveRecord
::
Migration
include
Gitlab
::
Database
::
MigrationHelpers
DOWNTIME
=
false
class
ProjectImportState
<
ActiveRecord
::
Base
include
EachBatch
self
.
table_name
=
'project_mirror_data'
end
def
up
ProjectImportState
.
where
(
project_id:
nil
).
delete_all
change_column_null
:project_mirror_data
,
:project_id
,
false
end
def
down
change_column_null
:project_mirror_data
,
:project_id
,
true
end
end
db/schema.rb
View file @
4caf58a1
...
...
@@ -11,7 +11,7 @@
#
# It's strongly recommended that you check this file into your version control system.
ActiveRecord
::
Schema
.
define
(
version:
20180508
055821
)
do
ActiveRecord
::
Schema
.
define
(
version:
20180508
100222
)
do
# These are extensions that must be enabled in order to support this database
enable_extension
"plpgsql"
...
...
@@ -1529,7 +1529,7 @@ ActiveRecord::Schema.define(version: 20180508055821) do
add_index
"project_import_data"
,
[
"project_id"
],
name:
"index_project_import_data_on_project_id"
,
using: :btree
create_table
"project_mirror_data"
,
force: :cascade
do
|
t
|
t
.
integer
"project_id"
t
.
integer
"project_id"
,
null:
false
t
.
string
"status"
t
.
string
"jid"
t
.
text
"last_error"
...
...
spec/migrations/add_not_null_constraint_to_project_mirror_data_foreign_key_spec.rb
0 → 100644
View file @
4caf58a1
require
'spec_helper'
require
Rails
.
root
.
join
(
'db'
,
'migrate'
,
'20180508100222_add_not_null_constraint_to_project_mirror_data_foreign_key.rb'
)
describe
AddNotNullConstraintToProjectMirrorDataForeignKey
,
:migration
do
let
(
:namespaces
)
{
table
(
:namespaces
)
}
let
(
:projects
)
{
table
(
:projects
)
}
let
(
:import_state
)
{
table
(
:project_mirror_data
)
}
before
do
import_state
.
create!
(
id:
1
,
project_id:
nil
,
status: :started
)
end
it
'removes every import state without an associated project_id'
do
expect
do
subject
.
up
end
.
to
change
{
import_state
.
count
}.
from
(
1
).
to
(
0
)
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