SAMZA-2163: Add try-catch to get the version in MetricsSnapshotReporterFactory#992
Merged
Merged
Conversation
Contributor
Author
|
@lhaiesp : please take a look! |
lhaiesp
reviewed
Apr 11, 2019
| Option(Class.forName(taskClass).getPackage.getImplementationVersion).get | ||
| } catch { | ||
| case e: Exception => { | ||
| warn("Unable to find implementation version in jar's meta info. Defaulting to 0.0.1.") |
Contributor
There was a problem hiding this comment.
Should we log the exception? And we should document why we need to catch exception here (anonymous class..), so that we don't lose context in the codes.
Contributor
Author
There was a problem hiding this comment.
Seems the warning line should be good here, since mostly likely it will be NoSuchElementException if no class is found or no version is found. Currently we are mostly getting 0.0.1 right now.
lhaiesp
approved these changes
Apr 11, 2019
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Currently we relying on app.class or task.class to get the version. For beam the app.class is anonymous class which caused exception when loading the class of it. This patch will do a try catch for this exception and use 0.0.1 as default.