Skip to content
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

Improve Ample logging for rejected conditional mutations. #5202

Closed
keith-turner opened this issue Dec 19, 2024 · 1 comment · Fixed by #5219
Closed

Improve Ample logging for rejected conditional mutations. #5202

keith-turner opened this issue Dec 19, 2024 · 1 comment · Fixed by #5219
Assignees
Labels
enhancement This issue describes a new feature, improvement, or optimization.
Milestone

Comments

@keith-turner
Copy link
Contributor

keith-turner commented Dec 19, 2024

Is your feature request related to a problem? Please describe.

In situations where conditional mutations to update the metadata table are rejected this code will log a debug line. The debug line does not offer enough information to determine what operation was rejected. For example if there are concurrent bulk imports and compaction contending to update the same tablet and failing the debug message will show which tablet had contention, but looking at the message there is no way to know if it was the bulk import updates or compaction updates that were rejected. It is possible to detemine this by turning on trace logging for the class, but that is extremely verbose and not suitable for leaving on to investigate an occasional problem.

Describe the solution you'd like

Add a short bit of information to the debug statement that gives some details about the operation. This could be done by adding an overloaded version of this method that includes a short description of the operation like :

void submit(RejectionHandler rejectionHandler, String description);
@keith-turner keith-turner added the enhancement This issue describes a new feature, improvement, or optimization. label Dec 19, 2024
@keith-turner keith-turner added this to the 4.0.0 milestone Dec 19, 2024
@keith-turner
Copy link
Contributor Author

Since the description will only be needed in the rejection case constructing it using a supplier would avoid creating it when its not used.

void submit(RejectionHandler rejectionHandler, Supplier<String> descriptionSupplier);

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement This issue describes a new feature, improvement, or optimization.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants