[jboss-jira] [JBoss JIRA] (WFLY-12924) MP FT fallback metric is incremented wrongly
Ivan Straka (Jira)
issues at jboss.org
Sat Jan 4 14:54:04 EST 2020
[ https://issues.redhat.com/browse/WFLY-12924?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ivan Straka updated WFLY-12924:
-------------------------------
Description:
When method annotated with @Fallback and @Retry fails, MP FT fallback counter metric (fallback.calls.total) is incremented by 2. Meaning if the method fails N times (due to @Retry) fallback is invoked and the metric is 2.
The issue is only in the metric. Fallback method is invoked only once as expected.
Reproducer:
https://github.com/istraka/eap-microprofile-test-suite/blob/mp-ft-metrics-reproducer/microprofile-health/src/test/java/org/jboss/eap/qe/microprofile/health/integration/Reproducers.java#L111
CDI Bean:
{code:java}
@Fallback(fallbackMethod = "isReadyFallback")
@Retry(maxRetries = MAX_RETRIES)
public boolean isReady() throws IOException {
service.simulateOpeningResources();
return ready.get();
}
public boolean isReadyFallback() {
return readyInMainenance.get();
}
@Counted(name = "simulation-count", absolute = true, displayName = "Simulation Count", description = "Number of simulateOpeningResources invocations", reusable = true)
public void simulateOpeningResources() throws IOException {
if (inMaintanance.get()) {
throw new IOException("In maintanance");
}
}
{code}
https://github.com/istraka/eap-microprofile-test-suite/blob/mp-ft-metrics-reproducer/microprofile-health/src/main/java/org/jboss/eap/qe/microprofile/health/integration/FailSafeDummyService.java#L47
was:
When method annotated with @Fallback and @Retry fails, MP FT fallback counter metric (fallback.calls.total) is incremented by 2. Meaning if the method fails N times (due to @Retry) fallback is invoked and the metric is 2.
The issue is only in the metric. Fallback method is invoked only once as expected.
Reproducer:
https://github.com/istraka/eap-microprofile-test-suite/blob/mp-ft-metrics-reproducer/microprofile-health/src/test/java/org/jboss/eap/qe/microprofile/health/integration/Reproducers.java#L111
CDI Bean:
https://github.com/istraka/eap-microprofile-test-suite/blob/mp-ft-metrics-reproducer/microprofile-health/src/main/java/org/jboss/eap/qe/microprofile/health/integration/FailSafeDummyService.java#L47
> MP FT fallback metric is incremented wrongly
> --------------------------------------------
>
> Key: WFLY-12924
> URL: https://issues.redhat.com/browse/WFLY-12924
> Project: WildFly
> Issue Type: Bug
> Components: MP Fault Tolerance
> Affects Versions: 19.0.0.Beta1
> Reporter: Ivan Straka
> Assignee: Radoslav Husar
> Priority: Blocker
>
> When method annotated with @Fallback and @Retry fails, MP FT fallback counter metric (fallback.calls.total) is incremented by 2. Meaning if the method fails N times (due to @Retry) fallback is invoked and the metric is 2.
> The issue is only in the metric. Fallback method is invoked only once as expected.
> Reproducer:
> https://github.com/istraka/eap-microprofile-test-suite/blob/mp-ft-metrics-reproducer/microprofile-health/src/test/java/org/jboss/eap/qe/microprofile/health/integration/Reproducers.java#L111
> CDI Bean:
> {code:java}
> @Fallback(fallbackMethod = "isReadyFallback")
> @Retry(maxRetries = MAX_RETRIES)
> public boolean isReady() throws IOException {
> service.simulateOpeningResources();
> return ready.get();
> }
> public boolean isReadyFallback() {
> return readyInMainenance.get();
> }
> @Counted(name = "simulation-count", absolute = true, displayName = "Simulation Count", description = "Number of simulateOpeningResources invocations", reusable = true)
> public void simulateOpeningResources() throws IOException {
> if (inMaintanance.get()) {
> throw new IOException("In maintanance");
> }
> }
> {code}
> https://github.com/istraka/eap-microprofile-test-suite/blob/mp-ft-metrics-reproducer/microprofile-health/src/main/java/org/jboss/eap/qe/microprofile/health/integration/FailSafeDummyService.java#L47
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
More information about the jboss-jira
mailing list