[TASK] Postman and Karate test stacks sleep 3 s after every write
メンテナーはふだん 2 日以内に返信
関連するプルリクエストがすでにマージされています。
- #38226 @swicken による — マージ済み
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 74/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- docker-compose, java, postman
- 領域
- ci-cd, performance, testing
調査の方向性
指定された3つの設定ファイルを確認します: dotcms-postman/pom.xml、dotcms-postman/docker-compose.yml、test-karate/pom.xml。キャッシュフラッシュの遅延設定を、統合テストスタックの短い遅延と比較します。コミットリスナーは同期のままにします。Postman と Karate の CI ジョブでタイミング競合がないか確認し、以前より速く完了することを確認します。
索引モデルが issue の本文から書いたものです。
説明
Description
The Postman and Karate test stacks set DOT_ASYNC_COMMIT_LISTENERS=false and leave NETWORK_CACHE_FLUSH_DELAY at its default of 3000 ms. With synchronous commit listeners, HibernateUtil.finalizeCommitListeners runs the cache flushers on the request thread, sleeps for that delay, and then flushes again. Nearly every write registers a flusher through CommitListenerCacheWrapper, so nearly every write request waits 3 seconds before it returns.
The affected files are:
dotcms-postman/pom.xmldotcms-postman/docker-compose.ymltest-karate/pom.xml
The E2E stack had the same problem and was fixed in #38218. The integration tests already use a short delay.
Part of epic #34645 (CI/CD pipeline stability).
Evidence
In CI run 39993994634, newman request times fall into two groups. Reads finish in under a second, and writes take 3, 6 or 9 seconds. Rounding each request down to a multiple of 3 seconds gives these upper bounds on the time spent sleeping:
| Job | Sleep, at most | Job length |
|---|---|---|
| Category Content | 26 min | 36.5 min |
| GraphQL | 21.6 min | 37.9 min |
| Default and Default Split, combined | 49 min |
These four are the slowest Postman jobs in PR CI.
Acceptance Criteria
- The Postman and Karate stacks set a short cache-flush delay. The commit listeners stay synchronous, so tests still see committed state before a response returns.
- Any timing races that the shorter delay exposes are fixed.
- The Postman and Karate jobs pass in CI and take less time than before.
- 主要言語
- Java
- スター
- 972
- フォーク
- 489
- 平均マージ
- 2日 12時間
- マージ済み PR(30日)
- 188
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
dotCMS/core のほかの issue
-
dotCMS : UVE OKR : Customer Support Team : Maintenance Type : Defect
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
dotCMS/core#38260 · コメント 1 件 ·
メンテナーはふだん 2 日以内に返信
-
Enable the Add to Bundle action in the Pages portlet row menu (hard-coded disabled since PR 34715)オープンdotCMS : Push Publishing OKR : Customer Support Team : Maintenance Type : Defect
難易度 2/5 1〜3時間 初心者へのやさしさ 77/100
メンテナーはふだん 2 日以内に返信
-
[TASK] Postman: collections hard-code localhost:8080 instead of {{serverURL}}対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンTeam : Platform Type : Test Automation
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
dotCMS/core#38221 · コメント 2 件 ·
メンテナーはふだん 2 日以内に返信
-
OKR : Customer Support Team : Falcon Type : Defect
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 2 日以内に返信
-
Triage
難易度 2/5 1〜3時間 初心者へのやさしさ 83/100
メンテナーはふだん 2 日以内に返信
似ている issue
-
Update samples to Citrus 5.1.0対応中かも @asuruceanu が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
snowflakedb/snowflake-kafka-connector#1610 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
swagger-api/swagger-petstore#245 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
liquid-java/liquidjava#443 ·
メンテナーはふだん 2 日以内に返信