[JBoss JIRA] (ELY-1327) System.currentTimeMillis() cannot be mocked on IBM JDK
by Martin Choma (JIRA)
Martin Choma created ELY-1327:
---------------------------------
Summary: System.currentTimeMillis() cannot be mocked on IBM JDK
Key: ELY-1327
URL: https://issues.jboss.org/browse/ELY-1327
Project: WildFly Elytron
Issue Type: Bug
Reporter: Martin Choma
Assignee: Peter Palaga
Fix For: 1.1.0.CR3
{{System.currentTimeMillis()}} is native in IBM JDK and at the same time, IBM JDK does not support java.lang.instrument API for native methods. Therefore, {{System.currentTimeMillis()}} cannot be mocked on IBM JDK using jmockit.
{code}
export JAVA_HOME=path/to/ibm/java8
$JAVA_HOME/bin/java -version
java version "1.8.0"
Java(TM) SE Runtime Environment (build pxa6480sr3fp12-20160919_01(SR3 FP12))
IBM J9 VM (build 2.8, JRE 1.8.0 Linux amd64-64 Compressed References 20160915_318796 (JIT enabled, AOT enabled)
J9VM - R28_Java8_SR3_20160915_0912_B318796
JIT - tr.r14.java.green_20160818_122998
GC - R28_Java8_SR3_20160915_0912_B318796_CMPRSS
J9CL - 20160915_318796)
JCL - 20160914_01 based on Oracle jdk8u101-b13
mvn clean test
{code}
Expected: the tests mocking {{System.currentTimeMillis()}} should pass
Actual: the tests mocking {{System.currentTimeMillis()}} throw the following exception or similar:
{code}
java.lang.UnsupportedOperationException: class redefinition failed: attempted to change method modifiers
at org.wildfly.security.audit.PeriodicRotatingFileAuditEndpointTest$1.<init>(PeriodicRotatingFileAuditEndpointTest.java:212)
at org.wildfly.security.audit.PeriodicRotatingFileAuditEndpointTest.mockTime(PeriodicRotatingFileAuditEndpointTest.java:212)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.lang.reflect.Method.invoke(Method.java:508)
at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:367)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:274)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:161)
at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:290)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:242)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:121)
{code}
This is the case with
* PeriodicRotatingFileAuditEndpointTest
* SizeRotatingFileAuditEndpointTest
* GssapiCompatibilitySuiteChild
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 10 months
[JBoss JIRA] (DROOLS-1665) Accumulator does not see bean property
by Mario Fusco (JIRA)
[ https://issues.jboss.org/browse/DROOLS-1665?page=com.atlassian.jira.plugi... ]
Mario Fusco resolved DROOLS-1665.
---------------------------------
Resolution: Duplicate Issue
Duplicate of https://issues.jboss.org/browse/DROOLS-1664
> Accumulator does not see bean property
> --------------------------------------
>
> Key: DROOLS-1665
> URL: https://issues.jboss.org/browse/DROOLS-1665
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 7.0.0.Final
> Reporter: Viacheslav Krot
> Assignee: Mario Fusco
>
> I'm not sure if it is a bug, but look like it. I have a simple rule like this
> {code:java}
> package test;
> import drools.Attr;
> import drools.Player;
> import drools.Ops;
> import java.lang.Number;
> import java.util.List;
> import java.util.Date;
> rule "failing"
> dialect "mvel"
> when
> pp : Player()
> Number(doubleValue <= 5) from accumulate(Attr(inHangar == true, $lv : getLevel()) from pp.attrs, max( $lv ))
> bat : Ops()
> res : List( )
> then
> System.out.println("works");
> end
> {code}
> It's execution fails with exception
> {noformat}
> java.lang.RuntimeException: Unknown property: level
> at org.drools.core.reteoo.PropertySpecificUtil.setPropertyOnMask(PropertySpecificUtil.java:105)
> at org.drools.core.reteoo.PropertySpecificUtil.calculatePatternMask(PropertySpecificUtil.java:97)
> at org.drools.core.reteoo.PropertySpecificUtil.calculatePositiveMask(PropertySpecificUtil.java:68)
> at org.drools.core.reteoo.LeftTupleSource.initDeclaredMask(LeftTupleSource.java:257)
> at org.drools.core.reteoo.BetaNode.initDeclaredMask(BetaNode.java:191)
> at org.drools.core.reteoo.LeftTupleSource.initMasks(LeftTupleSource.java:222)
> at org.drools.core.reteoo.BetaNode.<init>(BetaNode.java:139)
> at org.drools.core.reteoo.AccumulateNode.<init>(AccumulateNode.java:83)
> at org.drools.core.reteoo.builder.PhreakNodeFactory.buildAccumulateNode(PhreakNodeFactory.java:129)
> at org.drools.core.reteoo.builder.AccumulateBuilder.build(AccumulateBuilder.java:104)
> at org.drools.core.reteoo.builder.PatternBuilder.attachPattern(PatternBuilder.java:118)
> at org.drools.core.reteoo.builder.PatternBuilder.build(PatternBuilder.java:79)
> at org.drools.core.reteoo.builder.GroupElementBuilder$AndBuilder.build(GroupElementBuilder.java:108)
> at org.drools.core.reteoo.builder.GroupElementBuilder.build(GroupElementBuilder.java:68)
> at org.drools.core.reteoo.builder.ReteooRuleBuilder.addSubRule(ReteooRuleBuilder.java:164)
> at org.drools.core.reteoo.builder.ReteooRuleBuilder.addRule(ReteooRuleBuilder.java:136)
> at org.drools.core.reteoo.ReteooBuilder.addRule(ReteooBuilder.java:110)
> at org.drools.core.impl.KnowledgeBaseImpl.addRule(KnowledgeBaseImpl.java:1714)
> at org.drools.core.impl.KnowledgeBaseImpl.addRule(KnowledgeBaseImpl.java:1704)
> at org.drools.core.impl.KnowledgeBaseImpl.internalAddPackages(KnowledgeBaseImpl.java:976)
> at org.drools.core.impl.KnowledgeBaseImpl.access$000(KnowledgeBaseImpl.java:128)
> at org.drools.core.impl.KnowledgeBaseImpl$1.run(KnowledgeBaseImpl.java:764)
> at org.drools.core.impl.KnowledgeBaseImpl.enqueueModification(KnowledgeBaseImpl.java:772)
> at org.drools.core.impl.KnowledgeBaseImpl.addPackages(KnowledgeBaseImpl.java:761)
> at org.drools.core.impl.KnowledgeBaseImpl.addKnowledgePackages(KnowledgeBaseImpl.java:283)
> at org.drools.compiler.kie.builder.impl.KieContainerImpl.createKieBase(KieContainerImpl.java:639)
> at org.drools.compiler.kie.builder.impl.KieContainerImpl.getKieBase(KieContainerImpl.java:574)
> at org.drools.compiler.kie.builder.impl.KieContainerImpl.getKieBase(KieContainerImpl.java:555)
> {noformat}
> But, it I reorder the rule conditions, like this for example
> {code:java}
> package test;
> ...
> rule "failing"
> dialect "mvel"
> when
> pp : Player()
> bat : Ops()
> Number(doubleValue <= 5) from accumulate(Attr(inHangar == true, $lv : getLevel()) from pp.attrs, max( $lv ))
> res : List( )
> then
> System.out.println("works");
> end
> {code}
> It works. I just move condition with accum one line lower (after Ops condition) and it works.
> I guess this is a bug? Both version worked in drools 6.0 just fine.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 10 months
[JBoss JIRA] (DROOLS-1665) Accumulator does not see bean property
by Mario Fusco (JIRA)
[ https://issues.jboss.org/browse/DROOLS-1665?page=com.atlassian.jira.plugi... ]
Mario Fusco updated DROOLS-1665:
--------------------------------
Sprint: 2017 Week 32-33
> Accumulator does not see bean property
> --------------------------------------
>
> Key: DROOLS-1665
> URL: https://issues.jboss.org/browse/DROOLS-1665
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 7.0.0.Final
> Reporter: Viacheslav Krot
> Assignee: Mario Fusco
>
> I'm not sure if it is a bug, but look like it. I have a simple rule like this
> {code:java}
> package test;
> import drools.Attr;
> import drools.Player;
> import drools.Ops;
> import java.lang.Number;
> import java.util.List;
> import java.util.Date;
> rule "failing"
> dialect "mvel"
> when
> pp : Player()
> Number(doubleValue <= 5) from accumulate(Attr(inHangar == true, $lv : getLevel()) from pp.attrs, max( $lv ))
> bat : Ops()
> res : List( )
> then
> System.out.println("works");
> end
> {code}
> It's execution fails with exception
> {noformat}
> java.lang.RuntimeException: Unknown property: level
> at org.drools.core.reteoo.PropertySpecificUtil.setPropertyOnMask(PropertySpecificUtil.java:105)
> at org.drools.core.reteoo.PropertySpecificUtil.calculatePatternMask(PropertySpecificUtil.java:97)
> at org.drools.core.reteoo.PropertySpecificUtil.calculatePositiveMask(PropertySpecificUtil.java:68)
> at org.drools.core.reteoo.LeftTupleSource.initDeclaredMask(LeftTupleSource.java:257)
> at org.drools.core.reteoo.BetaNode.initDeclaredMask(BetaNode.java:191)
> at org.drools.core.reteoo.LeftTupleSource.initMasks(LeftTupleSource.java:222)
> at org.drools.core.reteoo.BetaNode.<init>(BetaNode.java:139)
> at org.drools.core.reteoo.AccumulateNode.<init>(AccumulateNode.java:83)
> at org.drools.core.reteoo.builder.PhreakNodeFactory.buildAccumulateNode(PhreakNodeFactory.java:129)
> at org.drools.core.reteoo.builder.AccumulateBuilder.build(AccumulateBuilder.java:104)
> at org.drools.core.reteoo.builder.PatternBuilder.attachPattern(PatternBuilder.java:118)
> at org.drools.core.reteoo.builder.PatternBuilder.build(PatternBuilder.java:79)
> at org.drools.core.reteoo.builder.GroupElementBuilder$AndBuilder.build(GroupElementBuilder.java:108)
> at org.drools.core.reteoo.builder.GroupElementBuilder.build(GroupElementBuilder.java:68)
> at org.drools.core.reteoo.builder.ReteooRuleBuilder.addSubRule(ReteooRuleBuilder.java:164)
> at org.drools.core.reteoo.builder.ReteooRuleBuilder.addRule(ReteooRuleBuilder.java:136)
> at org.drools.core.reteoo.ReteooBuilder.addRule(ReteooBuilder.java:110)
> at org.drools.core.impl.KnowledgeBaseImpl.addRule(KnowledgeBaseImpl.java:1714)
> at org.drools.core.impl.KnowledgeBaseImpl.addRule(KnowledgeBaseImpl.java:1704)
> at org.drools.core.impl.KnowledgeBaseImpl.internalAddPackages(KnowledgeBaseImpl.java:976)
> at org.drools.core.impl.KnowledgeBaseImpl.access$000(KnowledgeBaseImpl.java:128)
> at org.drools.core.impl.KnowledgeBaseImpl$1.run(KnowledgeBaseImpl.java:764)
> at org.drools.core.impl.KnowledgeBaseImpl.enqueueModification(KnowledgeBaseImpl.java:772)
> at org.drools.core.impl.KnowledgeBaseImpl.addPackages(KnowledgeBaseImpl.java:761)
> at org.drools.core.impl.KnowledgeBaseImpl.addKnowledgePackages(KnowledgeBaseImpl.java:283)
> at org.drools.compiler.kie.builder.impl.KieContainerImpl.createKieBase(KieContainerImpl.java:639)
> at org.drools.compiler.kie.builder.impl.KieContainerImpl.getKieBase(KieContainerImpl.java:574)
> at org.drools.compiler.kie.builder.impl.KieContainerImpl.getKieBase(KieContainerImpl.java:555)
> {noformat}
> But, it I reorder the rule conditions, like this for example
> {code:java}
> package test;
> ...
> rule "failing"
> dialect "mvel"
> when
> pp : Player()
> bat : Ops()
> Number(doubleValue <= 5) from accumulate(Attr(inHangar == true, $lv : getLevel()) from pp.attrs, max( $lv ))
> res : List( )
> then
> System.out.println("works");
> end
> {code}
> It works. I just move condition with accum one line lower (after Ops condition) and it works.
> I guess this is a bug? Both version worked in drools 6.0 just fine.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 10 months
[JBoss JIRA] (DROOLS-1610) Runtime Exception
by Mario Fusco (JIRA)
[ https://issues.jboss.org/browse/DROOLS-1610?page=com.atlassian.jira.plugi... ]
Mario Fusco resolved DROOLS-1610.
---------------------------------
Resolution: Cannot Reproduce Bug
I cannot reproduce this issue. Please provide one and if you do so feel free to reopen this ticket.
> Runtime Exception
> ------------------
>
> Key: DROOLS-1610
> URL: https://issues.jboss.org/browse/DROOLS-1610
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 6.5.0.Final
> Reporter: Salman Khan
> Assignee: Mario Fusco
>
> Getting the following exception while trying to implement Drools in Android.
> 06-08 12:25:41.660 19177-19177/com.example.admin23.droolstest W/System.err: java.lang.RuntimeException: Unable to instantiate object for class 'org.drools.android.DexPackageClassLoader' with constructor public org.drools.android.DexPackageClassLoader(org.drools.core.rule.JavaDialectRuntimeData,java.lang.ClassLoader)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.core.util.ClassUtils.instantiateObject(ClassUtils.java:272)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.core.rule.JavaDialectRuntimeData.makeClassLoader(JavaDialectRuntimeData.java:618)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.core.rule.JavaDialectRuntimeData.onAdd(JavaDialectRuntimeData.java:243)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.compiler.rule.builder.dialect.java.JavaDialect.<init>(JavaDialect.java:187)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.compiler.rule.builder.dialect.java.JavaDialectConfiguration.newDialect(JavaDialectConfiguration.java:91)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.compiler.builder.impl.KnowledgeBuilderConfigurationImpl.buildDialectRegistry(KnowledgeBuilderConfigurationImpl.java:392)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.compiler.compiler.PackageRegistry.<init>(PackageRegistry.java:55)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.newPackage(KnowledgeBuilderImpl.java:1571)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.initPackageRegistry(KnowledgeBuilderImpl.java:1044)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.createPackageRegistry(KnowledgeBuilderImpl.java:1015)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.initPackageRegistries(CompositeKnowledgeBuilderImpl.java:297)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.buildPackages(CompositeKnowledgeBuilderImpl.java:116)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:105)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.compiler.kie.builder.impl.AbstractKieModule.buildKnowledgePackages(AbstractKieModule.java:244)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.compiler.kie.builder.impl.AbstractKieProject.verify(AbstractKieProject.java:64)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildKieProject(KieBuilderImpl.java:230)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:198)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at com.example.admin23.droolstest.MainActivity.onCreate(MainActivity.java:143)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at android.app.Activity.performCreate(Activity.java:6876)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1135)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3206)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at android.app.ActivityThread.access$1100(ActivityThread.java:221)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at android.os.Handler.dispatchMessage(Handler.java:102)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at android.os.Looper.loop(Looper.java:158)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at android.app.ActivityThread.main(ActivityThread.java:7224)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at java.lang.reflect.Method.invoke(Native Method)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: Caused by: java.lang.reflect.InvocationTargetException
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at java.lang.reflect.Constructor.newInstance(Native Method)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.core.util.ClassUtils.instantiateObject(ClassUtils.java:270)
> 06-08 12:25:41.670 19177-19177/com.example.admin23.droolstest W/System.err: ... 29 more
> 06-08 12:25:41.680 19177-19177/com.example.admin23.droolstest W/System.err: Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.io.File.getAbsolutePath()' on a null object reference
> 06-08 12:25:41.680 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.android.MultiDexClassLoader.<init>(MultiDexClassLoader.java:70)
> 06-08 12:25:41.680 19177-19177/com.example.admin23.droolstest W/System.err: at org.drools.android.DexPackageClassLoader.<init>(DexPackageClassLoader.java:44)
> 06-08 12:25:41.680 19177-19177/com.example.admin23.droolstest W/System.err: ... 31 more
> Whenever I'm trying to call kieBuilder.buildAll(); method it's giving me the exception rather giving the result array. Please help to resolve this. Any help would be appreciable.
> Thanks in advance.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 10 months
[JBoss JIRA] (DROOLS-1685) Improve performance of rules using "or" in LHS
by Mario Fusco (JIRA)
[ https://issues.jboss.org/browse/DROOLS-1685?page=com.atlassian.jira.plugi... ]
Mario Fusco commented on DROOLS-1685:
-------------------------------------
[~rmorrise] Did you give a try to my suggestion? Did it fix the problem or do you still see the same perf difference? In this second case can you please provide a complete reproducer?
> Improve performance of rules using "or" in LHS
> ----------------------------------------------
>
> Key: DROOLS-1685
> URL: https://issues.jboss.org/browse/DROOLS-1685
> Project: Drools
> Issue Type: Enhancement
> Components: core engine, kie server
> Affects Versions: 6.5.0.Final
> Reporter: Russell Morrisey
> Assignee: Mario Fusco
>
> The following two rulesets produce the same output, but their performance differs dramatically.
> My understanding is that the two rulesets should be equivalent to one another. It seems like the 'or' operation must be handled inefficiently by the engine. Is there anything that can be improved the engine's performance in this case?
> Ruleset #1 takes ~3 seconds to execute on my local machine (for a dataset with 3 entities, 1 service ordered each). Ruleset #2 runs in ~200 ms.
> *Ruleset 1*
> {code:java}
> rule "Rule183"
> dialect "mvel"
> when
> $entity : Entity( )
> ( $service : ServiceOrdered( serviceId == "FORM" , entity == $entity , entity.entityTypeId in ( 291262, 291275, 291277 ) ) or $service : ServiceOrdered( serviceId == "DISSO" , entity == $entity , entity.entityTypeId in ( 291262 ) , stateId == 290864 ) )
> $r1 : QuestionDefinition( id == 590 )
> then
> Question fact0 = new Question();
> fact0.setQuestionDefinition( $r1 );
> fact0.setEntity( $entity );
> insert( fact0 );
> end
> {code}
> *Ruleset 2*
> {code:java}
> rule "Rule183"
> dialect "mvel"
> when
> $entity : Entity( )
> $service : ServiceOrdered( serviceId == "FORM" , entity == $entity , entity.entityTypeId in ( 291262, 291275, 291277 ) )
> $r1 : QuestionDefinition( id == 590 )
> then
> Question fact0 = new Question();
> fact0.setQuestionDefinition( $r1 );
> fact0.setEntity( $entity );
> insert( fact0 );
> end
> {code}
> {code}
> rule "Rule183-2"
> dialect "mvel"
> when
> $entity : Entity( )
> $service : ServiceOrdered( serviceId == "DISSO" , entity == $entity , entity.entityTypeId == 291262 , stateId == 290864 )
> $r1 : QuestionDefinition( id == 590 )
> then
> Question fact0 = new Question();
> fact0.setQuestionDefinition( $r1 );
> fact0.setEntity( $entity );
> insert( fact0 );
> end
> {code}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 10 months
[JBoss JIRA] (WFCORE-3171) Untrusted SSL certificate used for client authentication leads to Broken pipe IOException intermittently
by Jan Kalina (JIRA)
[ https://issues.jboss.org/browse/WFCORE-3171?page=com.atlassian.jira.plugi... ]
Jan Kalina moved JBEAP-12649 to WFCORE-3171:
--------------------------------------------
Project: WildFly Core (was: JBoss Enterprise Application Platform)
Key: WFCORE-3171 (was: JBEAP-12649)
Workflow: GIT Pull Request workflow (was: CDW with loose statuses v1)
Component/s: Security
Test Suite
(was: Security)
(was: Test Suite)
Affects Version/s: 3.0.0.Beta30
(was: 7.1.0.ER3)
> Untrusted SSL certificate used for client authentication leads to Broken pipe IOException intermittently
> ---------------------------------------------------------------------------------------------------------
>
> Key: WFCORE-3171
> URL: https://issues.jboss.org/browse/WFCORE-3171
> Project: WildFly Core
> Issue Type: Bug
> Components: Security, Test Suite
> Affects Versions: 3.0.0.Beta30
> Reporter: Jan Kalina
> Assignee: Jan Kalina
> Priority: Blocker
>
> Untrusted SSL certificate used for authentication leads to "IOException: Broken pipe" intermittently.
> *Description of problem:*
> ExternalMgmtSaslTestCase from wf-core fails intermittently (80%) on pure-ipv6 RHEL6 machines.
> The test configures two-way-SSL and try to use untrusted client certificate. IOException comes and the test checks if the cause is an SSLException (which is expected), but in some cases "IOException: Broken pipe" comes as the cause instead.
> *How reproducible:*
> 80% on pure-ipv6 RHEL6 machines
> *Steps to Reproduce:*
> {code}
> cd testsuite/elytron
> export PROXY_PARAMS="-DproxySet=true -DproxyHost=proxy-01-ipv6.mw.lab.eng.bos.redhat.com -DproxyPort=3128 -Dhttp.proxyHost=proxy-01-ipv6.mw.lab.eng.bos.redhat.com -Dhttp.proxyPort=3128 -Dhttps.proxyHost=proxy-01-ipv6.mw.lab.eng.bos.redhat.com -Dhttps.proxyPort=3128"
> mvn install -B -fae -llr -Dipv6 $PROXY_PARAMS -Dts.timeout.factor=300 -Dtimeout.factor=300 -Dtest=ExternalMgmtSaslTestCase
> {code}
> Failing test is *testUntrustedCertFails*, but looks like not reproducible without running whole testcase.
> *Actual results:*
> StackTrace:
> {noformat}
> 17:03:12 java.lang.AssertionError: SSLException was expected as the second cause when certificate authentication fails
> 17:03:12 Expected: is an instance of javax.net.ssl.SSLException
> 17:03:12 but: <java.io.IOException: Broken pipe> is a java.io.IOException
> 17:03:12 at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
> 17:03:12 at org.junit.Assert.assertThat(Assert.java:956)
> 17:03:12 at org.wildfly.test.integration.elytron.sasl.mgmt.ExternalMgmtSaslTestCase.assertCertAuthenticationFails(ExternalMgmtSaslTestCase.java:216)
> 17:03:12 at org.wildfly.test.integration.elytron.sasl.mgmt.ExternalMgmtSaslTestCase.lambda$testUntrustedCertFails$3(ExternalMgmtSaslTestCase.java:201)
> {noformat}
> Standard output:
> {noformat}
> [0m15:03:10,908 INFO [org.jboss.as] (MSC service thread 1-2) WFLYSRV0050: WildFly Core 3.0.0.Beta30-redhat-1 "Kenny" stopped in 39ms
> [0m[0m15:03:10,910 INFO [org.jboss.as] (MSC service thread 1-2) WFLYSRV0049: WildFly Core 3.0.0.Beta30-redhat-1 "Kenny" starting
> [0m[0m15:03:11,057 INFO [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0039: Creating http management service using socket-binding (management-http)
> [0m[33m15:03:11,132 WARN [org.jboss.as.domain.http.api.undertow] (MSC service thread 1-1) WFLYDMHTTP0003: Unable to load console module for slot main, disabling console
> [0m[0m15:03:11,146 INFO [org.jboss.as.patching] (MSC service thread 1-4) WFLYPAT0050: WildFly cumulative patch ID is: base, one-off patches include: none
> [0m[33m15:03:11,147 WARN [org.jboss.as.domain.management.security] (MSC service thread 1-4) WFLYDM0111: Keystore /mnt/hudson_workspace/eap-7x-as-testsuite-test-core-rhel-ipv6-broken-pipe/7a0f50f2/testsuite/elytron/target/wildfly-core/standalone/configuration/application.keystore not found, it will be auto generated on first use with a self signed certificate for host localhost
> [0m[0m15:03:11,252 INFO [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0212: Resuming server
> [0m[0m15:03:11,256 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0060: Http management interface listening on http://[::1]:9990/management
> [0m[0m15:03:11,256 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0051: Admin console listening on http://[::1]:9990
> [0m[0m15:03:11,260 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0025: WildFly Core 3.0.0.Beta30-redhat-1 "Kenny" started in 345ms - Started 83 of 86 services (17 services are lazy, passive or on-demand)
> [0m[0m15:03:11,369 INFO [org.jboss.as.server] (management-handler-thread - 3) WFLYSRV0236: Suspending server with no timeout.
> [0m[0m15:03:11,399 INFO [org.jboss.as.server] (Management Triggered Shutdown) WFLYSRV0241: Shutting down in response to management operation 'shutdown'
> [0m[0m15:03:11,474 INFO [org.jboss.as] (MSC service thread 1-1) WFLYSRV0050: WildFly Core 3.0.0.Beta30-redhat-1 "Kenny" stopped in 45ms
> [0m
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 10 months