discourse/app/models
David Taylor 32db976156 FIX: Stop race condition when topic notification jobs are scheduled during a database transaction
This was not picked up by tests because scheduled jobs are run immediately
and in the current thread (and therefore the current database transaction).

This particular case sometimes occurs inside multiple nested transactions,
so simply moving the offending line outside of the transaction is not enough.

Implemented TransactionHelper, which allows us to use `TransactionHelper.after_commit`
to define code to be run after the current transaction has been committed.
2018-07-18 22:04:43 +01:00
..
concerns FEATURE: shows remaining backup codes in user preferences 2018-07-04 10:45:42 +02:00
about.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
admin_dashboard_data.rb FIX: if s3 set via global setting bypass config check in UI 2018-07-09 15:38:06 +10:00
admin_dashboard_next_data.rb FIX: improves durability display check 2018-06-20 23:15:11 +02:00
api_key.rb Fix all the errors to get our tests green on Rails 5.1. 2017-09-25 13:48:58 +08:00
application_request.rb FEATURE: control which web crawlers can access using a whitelist or blacklist 2018-03-22 15:41:02 -04:00
auto_track_duration_site_setting.rb
backup.rb FEATURE: allow specifying s3 config via globals 2017-10-06 16:20:01 +11:00
badge_grouping.rb Update annotations. 2018-02-20 14:28:58 +08:00
badge_type.rb Update annotations. 2018-02-20 14:28:58 +08:00
badge.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
category_and_topic_lists.rb
category_custom_field.rb
category_featured_topic.rb refinement and test for batch mode on feature_topics 2017-12-20 13:58:05 +11:00
category_group.rb FEATURE: move staff tags setting to tag group settings 2018-04-20 15:34:23 -04:00
category_list.rb Make rubocop happy again. 2018-06-07 13:28:18 +08:00
category_page_style.rb FEATURE: New "Categories and Top" homepage style 2018-03-03 14:26:57 -05:00
category_search_data.rb Update annotations. 2018-07-16 14:19:07 +08:00
category_tag_group.rb Update annotations. 2018-02-20 14:28:58 +08:00
category_tag_stat.rb Update annotations. 2018-07-16 14:19:07 +08:00
category_tag.rb Update annotations. 2018-02-20 14:28:58 +08:00
category_user.rb DEV: remove all calls to SqlBuilder use DB.build instead 2018-06-20 17:53:49 +10:00
category.rb FEATURE: support filter_auto_bump_topics event 2018-07-18 10:56:09 +10:00
child_theme.rb Update annotations. 2018-02-20 14:28:58 +08:00
color_scheme_color.rb Update annotations. 2018-02-20 14:28:58 +08:00
color_scheme.rb FEATURE: Groundwork for user-selectable theme components 2018-07-12 14:18:21 +10:00
custom_emoji.rb
developer.rb
digest_email_site_setting.rb
directory_item.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
discourse_single_sign_on.rb FEATURE: add website field to SSO 2018-06-25 16:09:39 +10:00
discourse_version_check.rb REFACTOR: Avoid duplicated logic on server and client. 2017-11-21 17:10:04 +08:00
draft_sequence.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
draft.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
email_change_request.rb
email_log.rb REFACTOR: Don't load entire AR object just to get a column. 2018-07-18 13:53:57 +08:00
email_token.rb Review Changes for f4f8a293e7. 2018-02-21 14:55:49 +08:00
embeddable_host.rb Make rubocop happy again. 2018-06-07 13:28:18 +08:00
embedding.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
emoji_set_site_setting.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
emoji.rb FEATURE: adds emoji search aliases 2018-05-01 15:43:49 +02:00
facebook_user_info.rb Update annotations. 2018-07-16 14:19:07 +08:00
github_user_info.rb Update annotations. 2018-02-20 14:28:58 +08:00
given_daily_like.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
global_setting.rb rollback changes 2018-07-06 17:16:40 -05:00
google_user_info.rb Update annotations. 2018-02-20 14:28:58 +08:00
group_archived_message.rb Make rubocop happy again. 2018-06-07 13:28:18 +08:00
group_custom_field.rb
group_history.rb
group_manager.rb
group_mention.rb Update annotations. 2018-02-20 14:28:58 +08:00
group_user.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
group.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
incoming_domain.rb FIX: If the host can't be extracted don't raise an error 2017-05-04 13:26:37 -04:00
incoming_email.rb FEATURE: Use Message-ID for detecting email replies to group 2018-04-05 11:00:38 +02:00
incoming_link.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
incoming_links_report.rb FIX: don't use PMs in Incoming Links reports 2018-05-16 16:55:54 +02:00
incoming_referer.rb
instagram_user_info.rb
invite_redeemer.rb FIX: better handling of invite links after they are redeemed 2018-05-08 20:17:57 +05:30
invite.rb DEV: Rails 5.2 upgrade and global gem upgrade 2018-06-07 14:21:33 +10:00
invited_group.rb
like_notification_frequency_site_setting.rb
locale_site_setting.rb FEATURE: Allow plugins to register a new locale 2018-01-25 14:57:41 +01:00
mailing_list_mode_site_setting.rb Remove daily mailing mode option as it doesn't scale. 2017-05-05 12:21:50 +08:00
muted_user.rb Update annotations. 2018-02-20 14:28:58 +08:00
new_topic_duration_site_setting.rb
notification_level_when_replying_site_setting.rb FEATURE: Add normal as a preference for topic subscription state when replying to a topic 2017-04-20 22:33:10 -04:00
notification.rb Update annotations. 2018-07-16 14:19:07 +08:00
oauth2_user_info.rb Update annotations. 2018-02-20 14:28:58 +08:00
onceoff_log.rb
optimized_image.rb Better logging when optimizing image fails. 2018-07-18 14:11:23 +08:00
permalink.rb Remove use of rescue nil. 2018-04-02 13:52:51 +08:00
plugin_store_row.rb Update annotations. 2018-02-20 14:28:58 +08:00
plugin_store.rb REFACTOR: Instance methods added to 'PluginStore' model for easy access (#5315) 2017-11-15 10:10:20 -05:00
post_action_type.rb Remove legacy vote post action code. (#6009) 2018-07-09 16:54:18 +08:00
post_action.rb Update annotations. 2018-07-16 14:19:07 +08:00
post_analyzer.rb FEATURE: New site setting, whitelisted_link_domains 2018-06-13 16:11:22 -04:00
post_custom_field.rb Update annotations. 2018-07-16 14:19:07 +08:00
post_detail.rb Update annotations. 2018-02-20 14:28:58 +08:00
post_mover.rb Fix the build. 2018-07-18 14:03:27 +08:00
post_reply.rb
post_revision.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
post_search_data.rb Update annotations. 2018-07-16 14:19:07 +08:00
post_stat.rb Update annotations. 2018-02-20 14:28:58 +08:00
post_timing.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
post_upload.rb
post.rb Update annotations. 2018-07-16 14:19:07 +08:00
previous_replies_site_setting.rb
push_subscription.rb Update annotations. 2018-07-16 14:19:07 +08:00
queued_post.rb Make rubocop happy again. 2018-06-07 13:28:18 +08:00
quoted_post.rb FIX: ignore self-quotes from the same post when saving (#6082) 2018-07-10 16:17:28 +08:00
remote_theme.rb add more safety 2018-03-16 11:19:06 +11:00
report.rb minor cleanup 2018-06-29 10:30:22 +10:00
s3_region_site_setting.rb Add S3 region eu-west-3 (Paris) 2018-07-09 14:18:35 +10:00
scheduler_stat.rb purge scheduler_stats every 1 month instead of 3 2017-04-28 15:05:15 -07:00
screened_email.rb Update annotations. 2018-02-20 14:28:58 +08:00
screened_ip_address.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
screened_url.rb Update annotations. 2018-02-20 14:28:58 +08:00
search_log.rb SearchLog: fix specs 2018-06-20 10:44:11 +10:00
shared_draft.rb Update annotations. 2018-07-16 14:19:07 +08:00
single_sign_on_record.rb Update annotations. 2018-05-09 07:52:45 +08:00
site_setting.rb FEATURE: Add custom S3 Endpoint and DigitalOcean Spaces/Minio support for Backups (#6045) 2018-07-16 14:44:55 +10:00
site.rb FEATURE: add category suppress from latest 2018-02-22 09:56:35 +11:00
slug_setting.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
stylesheet_cache.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
tag_group_membership.rb Update annotations. 2018-02-20 14:28:58 +08:00
tag_group_permission.rb Update annotations. 2018-07-16 14:19:07 +08:00
tag_group.rb FIX: tags in a 'visible by everyone but usable only by staff' group weren't visible by everyone 2018-05-16 09:48:19 +02:00
tag_search_data.rb Update annotations. 2018-07-16 14:19:07 +08:00
tag_user.rb DEV: remove all calls to SqlBuilder use DB.build instead 2018-06-20 17:53:49 +10:00
tag.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
theme_field.rb FIX: theme JS should only run when needed global objects exist (#6098) 2018-07-18 15:13:47 +10:00
theme_setting.rb Update annotations. 2018-07-16 14:19:07 +08:00
theme.rb FEATURE: Groundwork for user-selectable theme components 2018-07-12 14:18:21 +10:00
top_lists.rb
top_menu_item.rb
top_topic.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
topic_allowed_group.rb
topic_allowed_user.rb
topic_converter.rb FIX: update categories topic_count when converting topic to a PM and vice versa 2018-04-04 12:01:56 +05:30
topic_custom_field.rb Update annotations. 2018-07-16 14:19:07 +08:00
topic_embed.rb FIX: TopicEmbed.import should update title and author 2018-05-02 17:12:31 +10:00
topic_featured_users.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
topic_invite.rb
topic_link_click.rb FIX: TopicLinkClick: do not log IP of logged in users 2018-05-22 16:05:38 +10:00
topic_link.rb FIX: do not show links with 0 click on topic map 2018-07-18 10:50:01 +05:30
topic_list.rb FIX: Shared draft performance fix + missing avatars 2018-03-28 16:11:43 -04:00
topic_notifier.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
topic_participants_summary.rb
topic_poster.rb
topic_posters_summary.rb Require dependency otherwise it causes Sidekiq to lock up in development. 2017-09-25 13:48:59 +08:00
topic_search_data.rb Update annotations. 2018-07-16 14:19:07 +08:00
topic_tag.rb FIX: automatically in/decrement topic_tags.pm_topic_count 2018-05-15 16:05:48 +02:00
topic_timer.rb Update annotations. 2018-07-16 14:19:07 +08:00
topic_tracking_state.rb DEV: remove all calls to SqlBuilder use DB.build instead 2018-06-20 17:53:49 +10:00
topic_user.rb DEV: remove all calls to SqlBuilder use DB.build instead 2018-06-20 17:53:49 +10:00
topic_view_item.rb DEV: remove all calls to SqlBuilder use DB.build instead 2018-06-20 17:53:49 +10:00
topic.rb FIX: Stop race condition when topic notification jobs are scheduled during a database transaction 2018-07-18 22:04:43 +01:00
translation_override.rb Fix the build 2018-03-16 22:55:42 +01:00
trust_level_and_staff_setting.rb FEATURE: Support disabling tag creation for non-staff users. 2018-06-27 07:15:02 +08:00
trust_level_setting.rb
trust_level3_requirements.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
twitter_user_info.rb Update annotations. 2018-07-16 14:19:07 +08:00
unsubscribe_key.rb Make rubocop happy again. 2018-06-07 13:28:18 +08:00
upload.rb FIX: Discourse.S3BaseUrl did not account for subfolder bucket names. 2018-07-06 15:53:57 +08:00
user_action.rb make linter happy 2018-06-20 18:03:27 +10:00
user_api_key.rb Update annotations. 2018-02-20 14:28:58 +08:00
user_archived_message.rb Make rubocop happy again. 2018-06-07 13:28:18 +08:00
user_auth_token_log.rb
user_auth_token.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
user_avatar.rb Remove use of rescue nil. 2018-04-02 13:52:51 +08:00
user_badge.rb Update annotations. 2018-07-16 14:19:07 +08:00
user_badges.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
user_custom_field.rb
user_email.rb Update annotations. 2018-07-16 14:19:07 +08:00
user_export.rb FIX: Clean up stale UserExport records daily. 2018-06-05 09:43:40 +08:00
user_field_option.rb Update annotations. 2018-02-20 14:28:58 +08:00
user_field.rb Update annotations. 2018-02-20 14:28:58 +08:00
user_history.rb FEATURE: Log user merge in staff logs 2018-06-11 18:43:56 +02:00
user_open_id.rb Update annotations. 2018-02-20 14:28:58 +08:00
user_option.rb FEATURE: Groundwork for user-selectable theme components 2018-07-12 14:18:21 +10:00
user_profile_view.rb DEV: remove all calls to SqlBuilder use DB.build instead 2018-06-20 17:53:49 +10:00
user_profile.rb FIX: handle bad user profile website 2018-05-17 13:21:24 +05:30
user_search_data.rb Update annotations. 2018-07-16 14:19:07 +08:00
user_search.rb DEV: remove all calls to SqlBuilder use DB.build instead 2018-06-20 17:53:49 +10:00
user_second_factor.rb PERF: Add missing index on user_id for user_second_factors table. 2018-07-16 14:21:07 +08:00
user_stat.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
user_summary.rb FEATURE: show topics viewed on user summary 2017-11-17 17:53:30 -05:00
user_visit.rb DEV: remove exec_sql and replace with mini_sql 2018-06-19 16:13:36 +10:00
user_warning.rb Update annotations. 2018-02-20 14:28:58 +08:00
user.rb FEATURE: selectable avatars 2018-07-18 12:57:43 +02:00
username_validator.rb Revert "FIX: Username uniqueness check should not happen to current user_id" 2018-04-03 00:44:04 +08:00
watched_word.rb Update annotations. 2018-02-20 14:28:58 +08:00
web_crawler_request.rb Update annotations. 2018-07-16 14:19:07 +08:00
web_hook_event_type.rb FEATURE: webhook for flag events 2018-04-13 07:47:58 +05:30
web_hook_event.rb Update annotations. 2018-02-20 14:28:58 +08:00
web_hook.rb Make rubocop happy again. 2018-06-07 13:28:18 +08:00