gitlab-org--gitlab-foss/lib/gitlab
Yorick Peterse 79696f5b7a
Hash concurrent foreign key names similar to Rails
This was initially not implemented simply because I forgot about the
size limit of constraint names in PostgreSQL (63 bytes). Using the old
technique we can't add foreign keys for certain tables. For example,
adding a foreign key on
protected_branch_merge_access_levels.protected_branch_id would lead to
the following key name:

    fk_protected_branch_merge_access_levels_protected_branches_protected_branch_id

This key is 78 bytes long, thus violating the PostgreSQL size
requirements.

The hashing strategy is copied from Rails' foreign_key_name() method,
which unfortunately is private and subject to change without notice.
2017-02-21 15:07:02 +01:00
..
auth
badge Also use latest_status, feedback: 2016-12-15 18:12:33 +08:00
bitbucket_import Add Wiki import to BB importer 2016-12-19 20:48:08 +02:00
chat_commands Fix project link on issue creation 2017-02-14 15:03:20 +01:00
checks Remove useless permission checks in Gitlab::Checks::ChangeAccess 2017-01-12 17:37:14 -05:00
ci Merge branch 'zj-drop-ruby-21-tests' into 'master' 2017-02-13 10:22:38 +00:00
conflict
cycle_analytics Merge branch 'add-additional-checks-to-ca-data' into 'master' 2017-02-18 18:52:43 +00:00
data_builder Adding links to user & build in Chat Notifications 2017-01-25 21:48:57 +05:30
database Hash concurrent foreign key names similar to Rails 2017-02-21 15:07:02 +01:00
diff Enable `Lint/EmptyWhen` cop and correct offense 2017-02-13 11:00:20 -05:00
downtime_check
email Merge branch 'zj-drop-ruby-21-tests' into 'master' 2017-02-13 10:22:38 +00:00
fogbugz_import
gfm Fix cross-project references copy to include the project reference 2017-01-03 13:01:46 +01:00
git Update Rubocop to ruby 2.3 2017-02-07 15:16:46 +01:00
github_import Reuse User#find_by_any_email on UserFormatter#find_by_email 2017-02-20 14:48:12 -03:00
gitlab_import
google_code_import Use Namespace#full_path instead of Namespace#path 2017-02-14 18:38:20 +02:00
graphs
import_export Merge branch 'fix/import-hooks' into 'master' 2017-02-16 15:00:40 +00:00
ldap Fix Rubocop offenses in LDAP related code and spec 2017-01-10 14:31:21 +01:00
markdown
metrics Check for env[Grape::Env::GRAPE_ROUTING_ARGS] instead of endpoint.route 2017-01-12 23:15:25 -05:00
middleware add rack middleware to proxy webpack dev server 2017-02-01 16:23:26 -06:00
o_auth Improve the `Gitlab::OAuth::User` error message 2016-11-30 11:23:04 -06:00
request_profiler Don't require lib/gitlab/request_profiler/middleware.rb in config/initializers/request_profiler.rb 2017-02-02 17:22:10 +01:00
saml
sanitizers
serializer Add specs for standalone pagination for serializers 2017-02-06 15:07:13 +01:00
sherlock
sidekiq_middleware
sidekiq_status SidekiqStatus need to be qualified in some cases 2017-02-14 18:37:21 +01:00
slash_commands Allow slashes in slash command arguments 2017-02-17 10:34:43 +01:00
sql Merge branch 'jej-note-search-uses-finder' into 'security' 2016-12-15 11:40:12 -03:00
template Rename "autodeploy" to "auto deploy" 2016-12-23 11:08:18 +01:00
view/presenter Raise Gitlab::View::Presenter::CannotOverrideMethodError if presentee already respond to method 2017-01-25 12:14:02 +01:00
access.rb
allowable.rb Remove trailing blank line from Allowable module 2016-12-14 08:36:03 +01:00
app_logger.rb
asciidoc.rb Merge branch 'asciidoctor-xss-patch' into 'security' 2017-02-15 10:41:40 -05:00
auth.rb Reduce hits to LDAP on Git HTTP auth by reordering auth mechanisms 2017-01-30 13:05:47 -06:00
award_emoji.rb
blame.rb
changes_list.rb
chat_name_token.rb
closing_issue_extractor.rb
color_schemes.rb
config_helper.rb
contributions_calendar.rb Add comment events to contributions calendar 2017-02-13 18:59:13 +01:00
contributor.rb
current_settings.rb Move ApplicationSetting DEFAULTS to `.defaults` instead 2017-01-27 16:16:55 +01:00
database.rb Merge branch 'create-connection-pool' into 'master' 2017-02-14 12:05:07 +00:00
devise_failure.rb
downtime_check.rb
ee_compat_check.rb Ensure we sanitize branch names with path-unfriendly characters 2016-11-23 10:55:28 +01:00
emoji.rb
environment_logger.rb
exclusive_lease.rb
file_detector.rb Unify detecting of special repository files 2016-11-21 12:51:40 +01:00
git.rb Unify parameters and callback after hooks 2016-12-14 02:29:35 +08:00
git_access.rb Rubocop prefers to indent this way 2016-12-20 23:30:01 +08:00
git_access_status.rb
git_access_wiki.rb Prefer guest_can_download_code? and fix typo 2016-12-06 21:10:27 +08:00
git_logger.rb
git_post_receive.rb replace `find_with_namespace` with `find_by_full_path` 2017-02-03 07:14:04 +07:00
git_ref_validator.rb
gl_id.rb
gon_helper.rb Add username to gon 2017-01-09 16:00:53 -06:00
highlight.rb
identifier.rb Use Commit#author so we share logic and cache 2016-11-24 02:33:55 +08:00
import_export.rb Use Namespace#full_path instead of Namespace#path 2017-02-14 18:38:20 +02:00
import_formatter.rb
import_sources.rb Rescue from ActiveRecord::UnknownAttributeError and fallback to fake settings 2017-01-23 16:58:13 +01:00
incoming_email.rb No strong reasons to freeze them 2017-02-07 01:28:58 +08:00
issues_labels.rb
job_waiter.rb Fix race conditions for AuthorizedProjectsWorker 2017-01-25 13:22:15 +01:00
key_fingerprint.rb
kubernetes.rb Introduce maximum session time for terminal websocket connection 2017-02-06 11:49:30 +01:00
lazy.rb
lfs_token.rb
logger.rb
mail_room.rb
markup_helper.rb
metrics.rb Update Rubocop to ruby 2.3 2017-02-07 15:16:46 +01:00
optimistic_locking.rb
other_markup.rb Merge branch 'fix-rdoc-xss' into 'security' 2017-02-15 10:41:57 -05:00
pages_transfer.rb Rename pages namespace or project path when changed 2017-01-31 22:53:56 +00:00
popen.rb Accept environment variables from the `pre-receive` script. 2016-12-16 23:32:25 +05:30
project_search_results.rb Search feature: redirects to commit page if query is commit sha and only commit found 2017-01-24 14:58:00 +03:00
project_transfer.rb Rename pages namespace or project path when changed 2017-01-31 22:53:56 +00:00
protocol_access.rb
recaptcha.rb Use reCaptcha when an issue identified as spam 2017-02-07 12:56:20 +01:00
redis.rb Allow to use ENV variables in redis config 2017-01-13 10:41:50 +05:00
reference_extractor.rb Create directly_addressed Todos when mentioned in beginning of a line 2017-02-08 21:53:34 +05:30
regex.rb Add GFM support to nested groups 2017-02-13 22:30:10 +02:00
repository_check_logger.rb
request_profiler.rb
route_map.rb Use stricter regex anchors 2017-02-07 14:26:00 -06:00
routing.rb Make it possible to mix `Gitlab::Routing` in 2016-12-13 14:51:23 +01:00
search_results.rb Search feature: redirects to commit page if query is commit sha and only commit found 2017-01-24 14:58:00 +03:00
seeder.rb
sentry.rb
shell.rb Merge branch 'fix/import-hooks' into 'master' 2017-02-16 15:00:40 +00:00
shell_adapter.rb Move Gitlab::Shell and Gitlab::ShellAdapter files to lib/ 2017-01-27 16:16:55 +01:00
sherlock.rb
sidekiq_logger.rb
sidekiq_status.rb Fix race conditions for AuthorizedProjectsWorker 2017-01-25 13:22:15 +01:00
sidekiq_throttler.rb
snippet_search_results.rb Reduce query count for snippet search 2017-02-16 08:47:48 +00:00
time_tracking_formatter.rb Add some API endpoints for time tracking. 2017-01-18 10:48:16 -06:00
timeless.rb
update_path_error.rb Fix error 500 renaming group. Also added specs and changelog. 2016-12-20 17:52:27 +01:00
upgrader.rb move "Install node modules" step before "Migrate DB" within update process 2017-02-16 13:18:43 -06:00
uploads_transfer.rb Rename pages namespace or project path when changed 2017-01-31 22:53:56 +00:00
url_builder.rb API: Endpoint to expose personal snippets as /snippets 2016-12-01 19:07:49 +01:00
url_sanitizer.rb
user_access.rb Allow creating protected branch when it doesn't exist 2017-01-13 10:53:59 -05:00
utils.rb
version_info.rb
visibility_level.rb List all groups/projects for admins on explore pages 2017-02-06 21:02:07 -06:00
workhorse.rb Introduce maximum session time for terminal websocket connection 2017-02-06 11:49:30 +01:00