feat: Add fs.inode.lock_acquisition span to capture parent lock waiting time during lookup#4752
feat: Add fs.inode.lock_acquisition span to capture parent lock waiting time during lookup#4752kislaykishore wants to merge 2 commits into
Conversation
8ee9481 to
fa9adb0
Compare
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request enhances the observability of the file system by adding tracing support for inode lock acquisition. By measuring the duration of lock waiting periods during lookup operations, developers can more effectively distinguish between synchronization overhead and external network latency. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize the Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counterproductive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request introduces tracing for inode lock acquisition in the file system. Specifically, it adds a new span fs.inode.lock_acquisition to measure the time spent waiting to acquire parent locks during child inode lookup operations in lookUpOrCreateChildInode. There are no review comments, and I have no feedback to provide.
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #4752 +/- ##
==========================================
+ Coverage 83.64% 84.05% +0.40%
==========================================
Files 168 168
Lines 20775 20809 +34
==========================================
+ Hits 17378 17490 +112
+ Misses 2750 2665 -85
- Partials 647 654 +7
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:
|
|
/gemini review |
There was a problem hiding this comment.
Code Review
This pull request introduces tracing capabilities for GCS bucket operations and inode lock acquisitions using OpenTelemetry. The feedback highlights several critical issues, including potential nil pointer panics in internal/fs/fs.go when fs.traceHandle is nil, and consistency improvements in internal/monitor/bucket.go to use the TraceHandle abstraction. Additionally, a correction is suggested for the gcs.bucket.new_reader span, which currently tracks the entire reader lifetime instead of just its initialization.
|
Hi @vadlakondaswetha, your feedback is needed to move this pull request forward. This automated reminder was triggered because there has been no activity for over 24 hours. Please provide your input when you have a moment. Thank you! |
1 similar comment
|
Hi @vadlakondaswetha, your feedback is needed to move this pull request forward. This automated reminder was triggered because there has been no activity for over 24 hours. Please provide your input when you have a moment. Thank you! |
0dd1d64 to
20a79a1
Compare
|
/gemini review |
There was a problem hiding this comment.
Code Review
This pull request introduces tracing for inode lock acquisition during child inode lookup operations. It defines a new span name constant InodeLockAcquisition and adds a test suite to verify the lock acquisition tracing. The feedback suggests replacing hardcoded string literals in the test file with the newly introduced constant to maintain consistency and avoid potential issues if the span name changes.
|
Hi @vadlakondaswetha, your feedback is needed to move this pull request forward. This automated reminder was triggered because there has been no activity for over 24 hours. Please provide your input when you have a moment. Thank you! |
10 similar comments
|
Hi @vadlakondaswetha, your feedback is needed to move this pull request forward. This automated reminder was triggered because there has been no activity for over 24 hours. Please provide your input when you have a moment. Thank you! |
|
Hi @vadlakondaswetha, your feedback is needed to move this pull request forward. This automated reminder was triggered because there has been no activity for over 24 hours. Please provide your input when you have a moment. Thank you! |
|
Hi @vadlakondaswetha, your feedback is needed to move this pull request forward. This automated reminder was triggered because there has been no activity for over 24 hours. Please provide your input when you have a moment. Thank you! |
|
Hi @vadlakondaswetha, your feedback is needed to move this pull request forward. This automated reminder was triggered because there has been no activity for over 24 hours. Please provide your input when you have a moment. Thank you! |
|
Hi @vadlakondaswetha, your feedback is needed to move this pull request forward. This automated reminder was triggered because there has been no activity for over 24 hours. Please provide your input when you have a moment. Thank you! |
|
Hi @vadlakondaswetha, your feedback is needed to move this pull request forward. This automated reminder was triggered because there has been no activity for over 24 hours. Please provide your input when you have a moment. Thank you! |
|
Hi @vadlakondaswetha, your feedback is needed to move this pull request forward. This automated reminder was triggered because there has been no activity for over 24 hours. Please provide your input when you have a moment. Thank you! |
|
Hi @vadlakondaswetha, your feedback is needed to move this pull request forward. This automated reminder was triggered because there has been no activity for over 24 hours. Please provide your input when you have a moment. Thank you! |
|
Hi @vadlakondaswetha, your feedback is needed to move this pull request forward. This automated reminder was triggered because there has been no activity for over 24 hours. Please provide your input when you have a moment. Thank you! |
|
Hi @vadlakondaswetha, your feedback is needed to move this pull request forward. This automated reminder was triggered because there has been no activity for over 24 hours. Please provide your input when you have a moment. Thank you! |
Description
Add a new trace span named 'fs.inode.lock_acquisition' that measures the time spent waiting to acquire a parent directory lock during lookup operations. This helps diagnose and isolate lock contention latency from GCS network latency.
Link to the issue in case of a bug fix.
b/519449727
Testing details
Any backward incompatible change? If so, please explain.
No