[NIDX-03 workstream] Replace the per-segment series index

Đã đóng
#14,003 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

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ó
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
20/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Sôi nổi
Lĩnh vực
databases

Hướng nghiên cứu

Điểm vào được nêu tên là banyand/internal/storage.newSeriesIndex; trước tiên hãy đọc BDB-NIDX-SPEC-001 revision 0.2 và chờ các giới hạn đã đo cùng các báo cáo của #14007. Sử dụng các giới hạn đó để xác định các leaf được sắp thứ tự của các caller đang hoạt động và các đường dẫn Measure/Stream/Trace được đặt tên của chúng. Công việc được hoàn tất khi vai trò native và đường dẫn replication đáp ứng các gate về tương thích, crash, race, sản phẩm, khởi động lại, truyền tải và từ vựng được liệt kê.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

bydb file compatible change database

[NIDX-03 workstream] Replace the per-segment series index

Parent: #13990
Blocked by: #14007

Tracking parent — do not apply Backlog. Split this workstream just in time after NIDX-02 closes; downstream RED contracts must be based on the writer and reader seams actually merged on main.

End-state boundary

banyand/internal/storage.newSeriesIndex selects native sidx for Measure, Stream, and Trace. The completed workstream owns field-set-aware insert/update/delete, projection, exact/prefix/wildcard identity, field dictionaries, composed filters, deterministic series/index/time sort, index-mode Measure, statistics, snapshots, cache reset, and mixed-version external segment receive.

Required behavior

  • Fixed product fixtures return independently declared series IDs, fields, timestamps, and versions.
  • Native and pinned legacy nodes exchange raw segments in both directions without replay or conversion.
  • Interrupted, invalid, and duplicate external transfers never become partially visible.
  • Restart selects a complete committed generation.
  • CRC32 fields remain layout-only and are never calculated or validated.

Just-in-time decomposition gate

After #14007 closes, use its measured boundaries and run reports to file ordered live-caller leaves. Each leaf adds one observable series capability and activates it through a named Measure/Stream/Trace path; no sidx core, codec, query helper, or receiver may merge solely for future use. Apply Backlog to one unblocked leaf only.

Completion criteria

All future leaves merge; the complete newSeriesIndex role and replication path are native; compatibility, crash, race, and product suites pass; and this workstream closes before NIDX-04 decomposition.

Lexical non-regression

Repository changes for every implementation leaf before the final removal may delete existing references but must add zero new case-insensitive bluge tokens and zero matching tracked paths. The gate includes imports and aliases, function/type/variable names, filenames and runtime names, strings, comments and messages, tests, fixture/provenance data, scripts, configuration, and generated assets. Compatibility evidence uses neutral legacy oracle or compatibility writer labels plus an immutable revision or content hash rather than adding a retired module name.

This lexical gate applies to repository changes, not to issue or archived-design prose that names the dependency in order to specify its removal.

Design

BDB-NIDX-SPEC-001 revision 0.2 — NIDX-03 behavior

Ngôn ngữ chính
Java
Star
25k
Fork
6.6k
Merge trung bình
14 giờ 17 phút
Pull request đã merge (30 ngày)
39

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. 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.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của apache/skywalking

Tất cả issue của apache/skywalking

Issue tương tự

Thêm issue về Java

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.