diff options
author | Michael Kozono <mkozono@gmail.com> | 2019-02-20 23:08:03 +0300 |
---|---|---|
committer | Michael Kozono <mkozono@gmail.com> | 2019-02-21 21:25:08 +0300 |
commit | 09f7d53ff2723719a7641204941efaefc6aabd36 (patch) | |
tree | d584bc73fb3e864493004e8457cf3980ec1c11f7 /doc | |
parent | ee0a007f8f47ba1c8117f2e9130663461181a145 (diff) |
Add "Seeding an empty database" section
Diffstat (limited to 'doc')
-rw-r--r-- | doc/development/performance.md | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/doc/development/performance.md b/doc/development/performance.md index 32970152911..2a287611bdf 100644 --- a/doc/development/performance.md +++ b/doc/development/performance.md @@ -410,6 +410,21 @@ there's nothing stopping somebody from doing this elsewhere in the code: SOME_CONSTANT = 'bar' ``` +## How to seed a database with millions of rows + +You might want millions of project rows in your local database, for example, +in order to compare relative query performance, or to reproduce a bug. You could +do this by hand with SQL commands, but since you have ActiveRecord models, you +might find using these gems more convenient: + +- [BulkInsert gem](https://github.com/jamis/bulk_insert) +- [ActiveRecord::PgGenerateSeries gem](https://github.com/ryu39/active_record-pg_generate_series) + +### Examples + +You may find some useful examples in this snippet: +https://gitlab.com/gitlab-org/gitlab-ce/snippets/33946 + [#15607]: https://gitlab.com/gitlab-org/gitlab-ce/issues/15607 [yorickpeterse]: https://gitlab.com/yorickpeterse [anti-pattern]: https://en.wikipedia.org/wiki/Anti-pattern |