discourse/spec
Alan Guo Xiang Tan 0478b45fd3
DEV: Print out backtraces of all threads when spec times out on CI (#25356)
Why this change?

We have been seeing specs time out on GitHub CI but the problem is that
we are unable to debug those timeouts due to a lack of information. This
change seeks to print out the backtraces of all threads right before a
spec times out on CI.

What does this change do?

1. Starts a thread on CI which will wait for a spec to start running.
1. Once a spec starts running, the thread will sleep for
   `PER_SPEC_TIMEOUT_SECONDS -1` seconds.
1. After sleeping, the thread checks if the spec is still running and
   prints out the backtraces of all threads if it is. Otherwise, the
thread does nothing and runs the next loop.
1. At the end of each spec run, we ensure that the thread is in a
   waiting state for the next spec run to start.

Note that there is no need for us to teardown or cleanup the thread
since the process terminates after running all the tests.
2024-01-23 06:55:49 +08:00
..
fabricators DEV: Convert min_trust_to_post_links to groups (#25298) 2024-01-18 14:08:40 +08:00
fixtures DEV: Add skip_migrations param when importing remote theme (#25218) 2024-01-11 14:04:02 +08:00
generator DEV: Custom generator for move setting from tl to groups (#24912) 2023-12-19 10:52:28 +11:00
helpers FEATURE: Add support for custom site name in Open Graph metadata (#25373) 2024-01-22 13:57:52 -04:00
import_export DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
initializers DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
integration Revert "DEV: Convert min_trust_level_to_tag_topics to groups (#25258)" (#25262) 2024-01-15 11:33:47 -05:00
integrity Enable Embroider/Webpack code spliting for Wizard (#24919) 2023-12-20 13:15:06 +00:00
jobs Revert "DEV: Convert min_trust_level_to_tag_topics to groups (#25258)" (#25262) 2024-01-15 11:33:47 -05:00
lib FIX: Allow sanitized-HTML in GH issues and categories oneboxes. (#25374) 2024-01-22 15:25:29 -03:00
mailers DEV: Convert min_trust_level_to_allow_invite to groups (#24893) 2023-12-18 12:07:36 +08:00
migrations DEV: Switch over category settings to new table - Part 3 (#20657) 2023-09-12 09:51:49 +08:00
models FIX: User group check should return true for system user for auto groups (#25357) 2024-01-22 14:40:29 +10:00
multisite DEV: Add S3 upload system specs using minio (#22975) 2023-08-23 11:18:33 +10:00
requests DEV: Convert min_trust_level_for_user_api_key to groups (#25299) 2024-01-19 11:25:24 +08:00
script/import_scripts DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
serializers DEV: Convert min_trust_to_post_links to groups (#25298) 2024-01-18 14:08:40 +08:00
services DEV: Trigger DiscourseEvent on push notification send (#25375) 2024-01-22 15:30:35 -06:00
support FEATURE: Prefer topic_embed's cached content when summarizing (#25190) 2024-01-09 14:00:01 -03:00
system DEV: add system test for topic map (#25242) 2024-01-17 19:25:18 +08:00
tasks DEV: Add file_size_restriction site setting type (#24704) 2023-12-13 16:22:48 -07:00
views FIX: Use subfolder-safe url for category in html view (#24595) 2023-11-28 19:08:14 +08:00
rails_helper.rb DEV: Print out backtraces of all threads when spec times out on CI (#25356) 2024-01-23 06:55:49 +08:00
regenerate_swagger_docs
swagger_helper.rb DEV: Bump rswag-specs from 2.11.0 to 2.13.0 (#24654) 2023-12-07 08:16:47 +08:00