-
Notifications
You must be signed in to change notification settings - Fork 105
Implement group inspection to display deletion details #947
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This pull request implements group inspection functionality to display detailed information about groups including schema info, data statistics, and liaison node status. The implementation supports both standalone and distributed modes.
Changes:
- Added comprehensive integration tests for inspect functionality in standalone and distributed modes
- Implemented data collection infrastructure across trace, stream, and measure services
- Added new gRPC
Inspectendpoint to the group registry service - Fixed a critical bug in stream write liaison where shard ID matching was missing
Reviewed changes
Copilot reviewed 37 out of 37 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| test/integration/standalone/inspect/inspect_suite_test.go | New integration tests for inspect in standalone mode |
| test/integration/distributed/inspect/inspect_suite_test.go | New integration tests for inspect in distributed mode |
| pkg/index/inverted/inverted.go | Added Stats() method to return index statistics |
| pkg/index/index.go | Added Stats() to Store interface |
| banyand/internal/storage/storage.go | Added Stats() to IndexDB interface |
| banyand/internal/storage/index.go | Implemented Stats() for seriesIndex |
| banyand/metadata/schema/schema.go | Added data and liaison info collector interfaces |
| banyand/metadata/schema/etcd.go | Implemented data/liaison info collection with broadcasting |
| banyand/metadata/metadata.go | Extended Service interface with collector methods |
| banyand/metadata/client.go | Implemented collector registration and broadcaster setup |
| api/data/*.go | Added new topics for data and liaison info collection |
| banyand/trace/*.go | Implemented trace service data/liaison collection |
| banyand/stream/*.go | Implemented stream service data/liaison collection |
| banyand/measure/*.go | Implemented measure service data/liaison collection |
| banyand/liaison/grpc/registry.go | Implemented Inspect gRPC endpoint |
| banyand/internal/wqueue/wqueue.go | Added Shards() method for queue inspection |
| banyand/stream/write_liaison.go | Fixed critical bug: added shardID matching |
| banyand/**/tstable.go | Added pendingDataCount tracking |
| banyand/**/introducer.go | Decremented pendingDataCount on introduction |
| banyand/trace/merger.go | Added tf.reset() after merge to prevent memory leak |
| pkg/cmdsetup/liaison.go | Registered broadcasters for liaison setup |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
banyand/stream/metadata.go
Outdated
| return db.(storage.TSDB[*tsTable, option]), nil | ||
| } | ||
|
|
||
| // CollectDataInfo collects data info for a specific. |
Copilot
AI
Jan 17, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment is incomplete. It should say "collects data info for a specific group" instead of "collects data info for a specific."
| // CollectDataInfo collects data info for a specific. | |
| // CollectDataInfo collects data info for a specific group. |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #947 +/- ##
==========================================
+ Coverage 45.97% 46.54% +0.56%
==========================================
Files 328 385 +57
Lines 55505 60549 +5044
==========================================
+ Hits 25520 28183 +2663
- Misses 27909 29729 +1820
- Partials 2076 2637 +561
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
|
||
| var _ Registry = (*etcdSchemaRegistry)(nil) | ||
|
|
||
| type etcdSchemaRegistry struct { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
etcd will become optional soon. Please do not add any new functionality to it. Instead, create a new struct to implement these features.
| if tsdb == nil { | ||
| return 0, fmt.Errorf("TSDB is nil for group %s", groupName) | ||
| } | ||
| segments, segmentsErr := tsdb.SelectSegments(timestamp.TimeRange{ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Invoke segment.DecRef() to release them.
CHANGESlog.