about summary refs log tree commit diff
path: root/db
AgeCommit message (Collapse)Author
2018-08-22Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2018-08-21Add missing indices for ON DELETE CASCADE constraints (#8332)Eugen Rochko
Fix #8327
2018-08-19Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2018-08-19Do not use WHERE NOT IN in CopyStatusStats migration (#8281)Eugen Rochko
Fix #8275 As the batch operation progresses, the statuses_stats table grows, and the WHERE NOT IN subquery becomes more expensive
2018-08-18Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
Conflicts: .circleci/config.yml app/controllers/authorize_follows_controller.rb app/javascript/packs/public.js Moved new stuff from packs/public.js to core/public.js. Added appropriate use_pack in new controllers.
2018-08-18Make CopyStatusStats migration use batches of 1000 to avoid locks (#8256)Eugen Rochko
2018-08-17Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
Conflicts: app/models/status.rb db/migrate/20180528141303_fix_accounts_unique_index.rb db/schema.rb Resolved by taking upstream changes (no real conflicts, just glitch-soc specific code too close to actual changes).
2018-08-16Split custom filter migration script using the post-deployment migration systemThibaut Girka
There were some concerns with the custom filter migration script dropping a table, thus making it unsafe to run in a zero-downtime setting. Upstream introduced a way to run migrations after deployment, so revisit the old migration script to make use of this.
2018-08-15Fix FixAccountsUniqueIndex migration (#8212)ThibG
2018-08-14Upgrade Doorkeeper to 4.4.1 (#8197)Eugen Rochko
2018-08-14Fix null constraint violation in copy status stats migration (#8198)Eugen Rochko
2018-08-14Move status counters to separate table, count replies (#8104)Eugen Rochko
* Move status counters to separate table, count replies * Migration to remove old counter columns from statuses table * Fix schema file
2018-08-13Add post-deployment migration system (#8182)Eugen Rochko
Adopted from GitLab CE. Generate new migration with: rails g post_deployment_migration name_of_migration_here By default they are run together with db:migrate. To not run them, the env variable SKIP_POST_DEPLOYMENT_MIGRATIONS must be set Code by Yorick Peterse <yorickpeterse@gmail.com>, see also: https://gitlab.com/gitlab-org/gitlab-ce/commit/83c8241160ed48ab066e2c5bd58d0914a745197c
2018-08-13Expect relays to answer with accept/reject (#8179)Eugen Rochko
2018-08-13Make some migration script more robust (fixes #8007) (#8170)ThibG
Include a dummy Account class in the migration script containing only the attributes relevant to the migration in order to not rely as much on the codebase being in sync with the database schema.
2018-08-13Add post-deployment migration system (#8182)Eugen Rochko
Adopted from GitLab CE. Generate new migration with: rails g post_deployment_migration name_of_migration_here By default they are run together with db:migrate. To not run them, the env variable SKIP_POST_DEPLOYMENT_MIGRATIONS must be set Code by Yorick Peterse <yorickpeterse@gmail.com>, see also: https://gitlab.com/gitlab-org/gitlab-ce/commit/83c8241160ed48ab066e2c5bd58d0914a745197c
2018-08-12Expect relays to answer with accept/reject (#8179)Eugen Rochko
2018-08-11Make some migration script more robust (fixes #8007) (#8170)ThibG
Include a dummy Account class in the migration script containing only the attributes relevant to the migration in order to not rely as much on the codebase being in sync with the database schema.
2018-08-10Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
Conflicts: app/controllers/accounts_controller.rb app/javascript/mastodon/locales/pl.json app/views/about/more.html.haml Conflicts in `accounts_controller.rb` resolved by taking upstream's version + our `use_pack`. Conflicts in `pl.json` resolved by taking upstream's changes. Conflicts in `aboute/more.html.haml` resolved by taking upstream's changes.
2018-08-09Public profile endorsements (accounts picked by profile owner) (#8146)Eugen Rochko
2018-07-16Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
Conflicts: Dockerfile app/javascript/packs/common.js config/webpack/loaders/sass.js config/webpack/shared.js db/schema.rb package.json yarn.lock A lot of the conflicts come from updating webpack. Even though upstream deleted app/javascript/packs/common.js, I kept glitch-soc's version as it unifies JS/CSS packs behavior across flavours. Ported glitch changes to webpack 4.x
2018-07-15Fix index detection a migration to revert index change (#8026)Akihiko Odaki
2018-07-13Add federation relay support (#7998)Eugen Rochko
* Add federation relay support * Add admin UI for managing relays * Include actor on relay-related activities * Fix i18n
2018-07-09Migrate glitch-soc keyword mutes to Mastodon'sThibaut Girka
Completely remove glitch-soc's Keyword Mutes, migrate existing database records to CustomFilters. Handling of client-side filters is still not implemented in the glitch-soc front-end.
2018-07-09Merge branch 'master' into glitch-soc/tentative-mergeThibaut Girka
Conflicts: README.md app/controllers/statuses_controller.rb app/lib/feed_manager.rb config/navigation.rb spec/lib/feed_manager_spec.rb Conflicts were resolved by taking both versions for each change. This means the two filter systems (glitch-soc's keyword mutes and tootsuite's custom filters) are in place, which will be changed in a follow-up commit.
2018-07-09Add option to not consider word boundaries when processing keyword filtering ↵ThibG
(#7975) * Add option to not consider word boundaries when filtering phrases * Add a few tests for keyword/phrase filtering
2018-06-29Keyword/phrase filtering (#7905)Eugen Rochko
* Add keyword filtering GET|POST /api/v1/filters GET|PUT|DELETE /api/v1/filters/:id - Irreversible filters can drop toots from home or notifications - Other filters can hide toots through the client app - Filters use a phrase valid in particular contexts, expiration * Make sure expired filters don't get applied client-side * Add missing API methods * Remove "regex filter" from column settings * Add tests * Add test for FeedManager * Add CustomFilter test * Add UI for managing filters * Add streaming API event to allow syncing filters * Fix tests
2018-06-24Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2018-06-21fix : Disable reverted index changes (#7871)takayamaki
2018-06-21Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
Conflicts: app/models/user.rb Resolved by adding :default_language to user settings fields
2018-06-17Remove unused indexes (#7829)Eugen Rochko
2018-06-17Change language opt-out to language opt-in (#7823)Eugen Rochko
* Switch filtered_languages to chosen_languages * Adjust interface * Remove unused translations
2018-06-15Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
Conflicts: app/javascript/mastodon/initial_state.js db/schema.rb Upstream added a new field to initial_state. Not too sure about what happened with db/schema.rb though…
2018-06-15Add autofollow option to invites (#7805)Eugen Rochko
* Add autofollow option to invites * Trigger CodeClimate rebuild
2018-06-12Merge branch 'master' into 454-allow-keyword-mutes-to-skip-mentionsDavid Yip
2018-06-12Merge remote-tracking branch 'tootsuite/master' into glitchsoc/masterJenkins
2018-06-10Migration to cleanup blocked users that are still following (#7773)nightpool
* Migration to cleanup blocked users that are still following * use follow directly, commit schema
2018-06-09Migrate old web push subscriptions to ensure deliveries (#7764)Eugen Rochko
2018-06-03Thread scopes through #matches?. #454.David Yip
Also add an apply_to_mentions attribute on Glitch::KeywordMute, which is used to calculate scope. Next up: additions to the test suite to demonstrate how scoping works.
2018-06-02Merge remote-tracking branch 'origin/master' into gs-masterDavid Yip
Conflicts: app/javascript/mastodon/locales/en.json app/javascript/mastodon/locales/ja.json app/javascript/mastodon/locales/pl.json The above conflicts appear to be a text conflict introduced by glitch-soc's additional level of columns (i.e. moving a bunch of columns under the Misc option). They were resolved via accept-ours.
2018-05-31Wrong exception class: ActiveRecord::RecordNotUnique, not ↵Eugen Rochko
PG::UniqueViolation (#7688) * Wrong exception class: ActiveRecord::RecordNotUnique, not PG::UniqueViolation It's completely not obvious but PG::UniqueViolation is just a string inside the exception message, not the actual class of the exception * Favourite does not have target_account_id
2018-05-31Improve account index migration (#7684)Eugen Rochko
* Improve account index migration - Display more progress in stdout - Catch PG::UniqueViolation when re-attributing favourites - Skip callbacks and validations when re-attributing other relationships * Use in_batches to reduce table lock-up during account merge * Use #say_with_time to benchmark each deduplication
2018-05-31Merge remote-tracking branch 'tootsuite/master' into glitchsoc/masterJenkins
2018-05-31Fix nil error in migration (#7680)Eugen Rochko
Under rare circumstances the user record could have already been deleted before...
2018-05-30Fix broken migrate (regression from #7658) (#7674)Yamagishi Kazutoshi
2018-05-30Deduplicate accounts and make unique username/domain index case-insensitive ↵Eugen Rochko
(#7658) Fix #6937 Fix #6837 Fix #6667
2018-05-14Merge branch 'master' into glitch-soc/mergeThibaut Girka
2018-05-14Revert index change on statuses for api/v1/accounts account_id statuses (#7484)Akihiko Odaki
2018-05-14Improve index on statuses for api/v1/accounts account_id statuses (#7476)Akihiko Odaki
Queries with the combination of account_id, id, and visibility can be categorized in three types: 1. Querying for public and unlisted to enumerate statuses visible to anyone. 2. Querying for public, unlisted, and private to enumerate statuses visible to follower. 3. Querying for direct to enumerate own direct statuses. 1 and 2 is covered by the index with condition 'visibility IN (0, 1, 2)'. It would bring better performance in case that there are many direct statuses. The index with condition 'visibility = 3' is just for 3. It would be much faster to query direct statuses thanks to this query. The total size of those two indexes are expected to be smaller than the deleted one because they are partial and does not have to cover all the table.
2018-05-11Merge branch 'master' into glitch-soc/mergeThibaut Girka
Conflicts: app/controllers/invites_controller.rb app/serializers/initial_state_serializer.rb config/locales/ko.yml