Skip to content

Added new scan executor metric#5986

Open
ArbaazKhan1 wants to merge 4 commits intoapache:2.1from
ArbaazKhan1:accumulo-5057
Open

Added new scan executor metric#5986
ArbaazKhan1 wants to merge 4 commits intoapache:2.1from
ArbaazKhan1:accumulo-5057

Conversation

@ArbaazKhan1
Copy link
Contributor

Closes issue #5057

Introduced a new metric to track the number of exceptions that occur within the scan executor. Allows for users to monitor exceptions thrown from the iterator stack, instead of relying on parsing logs.

Copy link
Contributor

@keith-turner keith-turner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would be nice to add an IT for this. Could look at the ITs that use the class TestStatsDSink for examples of how to create an IT that reads metrics.

Looked around for an IT that exercises scan executors and did not see one, its a purely performance feature and hard to test. Can look at these docs for info on setting up scan executors. Need to do something like the following in the IT.

  • Before the cluster starts set some tserver.scan.executors.<executor name>.threads=<num> props in the site config to create different named scan executors.
  • Create a few tables and set them to have different scan executors by setting the table.scan.dispatcher.opts.executor=<executor name> props.
  • Run a scan against a table w/ an iterator that will throw an exception. Check the metrics for errors for the executor the table was configured to use.

In a way this test will also help us verify that scan dispatching is working correctly and sending things to the expected executor on the server side.

@keith-turner
Copy link
Contributor

Not a change for this PR, but its interesting how this PR is tagging a metric w/ the scan executor name. Could potentially tag all scan metrics w/ the executor name.

@dlmarion
Copy link
Contributor

Be sure to run the MetricsIT and other Metrics-related ITs.

Copy link
Contributor

@dlmarion dlmarion left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is looking better. A few minor comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants