support archiving/replaying completed tasks/slabs for longer-term disaster recovery
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 30/100
Hướng nghiên cứu
Bắt đầu bằng cách đọc src/clj_commons/durable_queue.clj quanh logic loại bỏ slab ở dòng 530 và phần xử lý khởi động quanh dòng 580, bao gồm cả hành vi của hàm :complete?. Xác định cách hoạt động của việc lưu trữ và phát lại slab do người dùng kiểm soát, bao gồm việc bảo toàn các task đã hoàn tất, sau đó xác định các bài kiểm thử cần thiết để xác minh việc phát lại sau disaster recovery.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
durable-queue does a great job already of recovering from application restart. however, it cannot handle longer-term disaster recovery very well for a couple of reasons:
- empty slabs (i.e. slabs with all
:completed tasks) get removed fairly frequently; and - on startup, slab tasks in the
:completestate are skipped over even if you provide a:complete?fn
as it stands now, when using durable-queue a secondary storage solution is necessary to be able to replay events in the case that downstream repairs are required.
it would be nice if durable-queue could handle being able to archive/replay slabs at the user's discretion.
- Ngôn ngữ chính
- Clojure
- Star
- 407
- Fork
- 30
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
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 clj-commons/durable-queue
-
Slabs can grow larger than max-queue-sizeCó thể làm lại được @seancorfield đã nhận 426 ngày trước và không có pull request nào đang mở. Đang mởneeds analysis
clj-commons/durable-queue#18 · 1 bình luận · 1 người được giao ·
-
Thread safety of take!, put!Có thể làm lại được @seancorfield đã nhận 426 ngày trước và không có pull request nào đang mở. Đang mởneeds analysis
clj-commons/durable-queue#16 · 7 bình luận · 1 người được giao ·
-
When can a statistic be negative?Có thể làm lại được @seancorfield đã nhận 426 ngày trước và không có pull request nào đang mở. Đang mởneeds analysis
clj-commons/durable-queue#12 · 6 bình luận · 1 người được giao ·
-
calling complete! on already completed task messes up statsCó thể làm lại được @seancorfield đã nhận 426 ngày trước và không có pull request nào đang mở. Đang mởneeds analysis
clj-commons/durable-queue#3 · 2 bình luận · 1 người được giao ·
Tất cả issue của clj-commons/durable-queue
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
calcit-lang/calcit#2538 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
-
comment above the first :require-macros libspec is hoisted onto the formCó thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mởbug namespace v1 blocker
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
oakmac/standard-clojure-style-js#268 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Bug: server save errors never reach the form (on-save-failed-expr unwraps the mutation result twice)Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 80/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 1 ngày