Parallel Stache warming produces inconsistent Stache `_indexes`
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 45/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Ít trao đổi
- Công nghệ
- php
- Lĩnh vực
- backend, performance
Hướng nghiên cứu
Start by reading the parallel Stache warming change in PR #12894, then enable parallel_processing with the fork concurrency driver and run the Stache warm command. Compare storage/framework/cache/data/stache/indexes/**/_indexes across repeated runs and with the v5.69.0 output. Done means the indexes are consistent between runs and the reported difference is addressed; the performance concern may need to be treated separately.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Bug description
After enabling the new parallel Stache warming (introduced in v5.70.0), the generated Stache _indexes become inconsistent between runs and differ from the output produced in the versions before the PR.
How to reproduce
- Enable parallel Stache warming (e.g. parallel_processing = true, concurrency_driver = fork) on 5.70.0.
- Run the Stache warm command and check
storage/framework/cache/data/stache/indexes/**/_indexes
v5.69.0:
Indexes are not changing when running the stache warm command multiple times.
9999999999a:1:{i:0;s:4:"path";}
v5.70.0:
Indexes are changing when running the stache warm command multiple times.
9999999999a:2:{i:0;s:4:"path";i:1;s:2:"id";}
Logs
Environment
5.70.0
Installation
Fresh statamic/statamic site via CLI
Additional details
Also it seems parallel processing does not improve stache warm performance (I don't see any significant difference in all of my projects). Because most entries live in collections, and collections are warmed in a single process (one store per process), the parallelization provides little / no real concurrency. The smaller stores finish quickly, leaving most cores idle while the main collection store warms sequentially..
- Ngôn ngữ chính
- PHP
- Star
- 4.9k
- Fork
- 647
- Merge trung bình
- 1 ngày 7 giờ
- Pull request đã merge (30 ngày)
- 103
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của statamic/cms
-
preferences
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 1 ngày
-
There's a default crop when cropping imagesCó thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mởassets
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
statamic/cms#15567 · 1 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Make native filesystem directory permissions configurable to support shared POSIX ACL accessĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
Maintainer thường phản hồi trong vòng 1 ngày
-
accessibility
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
Maintainer thường phản hồi trong vòng 1 ngày
-
antlers
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 66/100
Maintainer thường phản hồi trong vòng 1 ngày
Issue tương tự
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 85/100
-
cloning objets from planningĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
glpi-project/glpi#25922 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
Automattic/safe-publish#726 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Translation TwigBridge
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
symfony/symfony-docs#23308 ·
Maintainer thường phản hồi trong vòng 3 ngày
-
sync-en
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 84/100
Maintainer thường phản hồi trong vòng 1 ngày