[JBoss JIRA] (WFLY-11034) Integration with grpc (high performance, open-source universal RPC framework)
by Rogerio Ferreira (Jira)
[ https://issues.redhat.com/browse/WFLY-11034?page=com.atlassian.jira.plugi... ]
Rogerio Ferreira commented on WFLY-11034:
-----------------------------------------
Hi! Sorry for resurrecting this topic, but I am in a project of a large bank interested in ratifying the gRPC, but we are stopping in the fact that most servlet webservers do not support this new technology. We are upgrading to ibm CloudPacks, which will likely come with WilldFly support, it would be interesting if it already supported gRPC ...
> Integration with grpc (high performance, open-source universal RPC framework)
> -----------------------------------------------------------------------------
>
> Key: WFLY-11034
> URL: https://issues.redhat.com/browse/WFLY-11034
> Project: WildFly
> Issue Type: Feature Request
> Components: Remoting
> Affects Versions: 14.0.0.Final
> Reporter: Brad Maxwell
> Priority: Major
>
> https://grpc.io/
> grpc should be seamlessly integrated into Wildfly as grpc support for EJB's and other EE components would make it very easy for microservices written in other languages to interact with Wildfly.
> grpc might be a good replacement candidate for corba (binary marshalling, efficiency, good community and support, modern, http/2, streaming, strong contract).
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 2 months
[JBoss JIRA] (WFLY-13484) JSF - submitting empty fields does not work
by Frank Heldt (Jira)
[ https://issues.redhat.com/browse/WFLY-13484?page=com.atlassian.jira.plugi... ]
Frank Heldt commented on WFLY-13484:
------------------------------------
I can now confirm that switching back from jboss-jsf-api_2.3_spec-3.0.0.SP02.jar (wildfly-19.1.0) to jboss-jsf-api_2.3_spec-3.0.0.SP01.jar (wildfly-19.0.0) fixes this issue.
> JSF - submitting empty fields does not work
> -------------------------------------------
>
> Key: WFLY-13484
> URL: https://issues.redhat.com/browse/WFLY-13484
> Project: WildFly
> Issue Type: Bug
> Components: JSF
> Affects Versions: 19.1.0.Final
> Reporter: Frank Heldt
> Assignee: Farah Juma
> Priority: Major
>
> A simple JSF webapp with an input field
> <p:inputMask value="#\{myCtrl.num\}" mask="?9999" slotChar="" size="4" maxlength="4"/>
> and in the controller
> private Short num; // + getter/setter
> When the input field is empty, the setter is never called on submit.
> The same webapp under WildFly 19.0.0 works as expected, in this case the setter is called with a null value.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 2 months
[JBoss JIRA] (WFLY-13444) Observing High CPU in EPollArrayWrapper.epollCtl default I/O thread
by Srinivas ev (Jira)
[ https://issues.redhat.com/browse/WFLY-13444?page=com.atlassian.jira.plugi... ]
Srinivas ev edited comment on WFLY-13444 at 5/19/20 4:51 AM:
-------------------------------------------------------------
Hi [~flavia.rainone], any update on this JIRA. Can you please have a look, as this is blocking one of our delivery.
was (Author: ev.srinivas):
Hi Flavia Rainone, any update on this JIRA. Can you please have a look, as this is blocking one of our delivery.
> Observing High CPU in EPollArrayWrapper.epollCtl default I/O thread
> -------------------------------------------------------------------
>
> Key: WFLY-13444
> URL: https://issues.redhat.com/browse/WFLY-13444
> Project: WildFly
> Issue Type: Bug
> Components: Remoting
> Affects Versions: 10.1.0.Final
> Reporter: Srinivas ev
> Assignee: Flavia Rainone
> Priority: Critical
> Attachments: IO thread memory.PNG, IO thread.PNG, Thread consuming high CPU.PNG, ThreadDump1set.zip, ThreadDump2set.zip, default IO thread 73.PNG, default io consuming snapshot.PNG, default io consuming.PNG, stack trace from snapshot.PNG, stack trace in thread dump.PNG, threaddump-1589514505334.tdump, top command output.PNG
>
>
> Facing high CPU by one of the default I/O thread In Wildfly 10.1.0 Final. Looks none of our application component thread is consuming.
> Can somebody check what is triggering this issue? I attached the thread stack to this Jira. This is blocking our releases. When the CPU cores are high in number, multiple default I/O threads will kick in consuming the CPU in 90~100% range continuously.
> Wildfly 10.1.0 Final
> Java -
> openjdk version "1.8.0_232"
> OpenJDK Runtime Environment (build 1.8.0_232-b09)
> OpenJDK 64-Bit Server VM (build 25.232-b09, mixed mode
> ---------------------------------------------------------------------------------------------------
> at java.lang.Throwable.fillInStackTrace(Native Method)
> at java.lang.Throwable.fillInStackTrace(Throwable.java:784)
> at java.lang.Throwable.<init>(Throwable.java:251)
> at java.lang.Exception.<init>(Exception.java:54)
> at java.io.IOException.<init>(IOException.java:47)
> at java.nio.channels.ClosedChannelException.<init>(ClosedChannelException.java:52)
> at org.xnio.ssl.JsseStreamConduit.write(JsseStreamConduit.java:1022)
> at org.xnio.conduits.ConduitStreamSinkChannel.write(ConduitStreamSinkChannel.java:150)
> at org.xnio.http.HttpUpgrade$HttpUpgradeState$StringWriteListener.handleEvent(HttpUpgrade.java:385)
> at org.xnio.http.HttpUpgrade$HttpUpgradeState$StringWriteListener.handleEvent(HttpUpgrade.java:372)
> at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
> at org.xnio.conduits.WriteReadyHandler$ChannelListenerHandler.writeReady(WriteReadyHandler.java:65)
> at org.xnio.ssl.JsseStreamConduit.run(JsseStreamConduit.java:393)
> at org.xnio.ssl.JsseStreamConduit.readReady(JsseStreamConduit.java:547)
> at org.xnio.ssl.JsseStreamConduit$2.readReady(JsseStreamConduit.java:319)
> at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:89)
> at org.xnio.nio.WorkerThread.run(WorkerThread.java:567)
> -------------------------------------------------------------------------------------------
> at sun.nio.ch.EPollArrayWrapper.epollCtl(Native Method)
> at sun.nio.ch.EPollArrayWrapper.updateRegistrations(EPollArrayWrapper.java:299)
> at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:268)
> at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93)
> at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
> at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
> at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:101)
> at org.xnio.nio.WorkerThread.run(WorkerThread.java:515)
> -----------------------------------------------------------------------------------
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 2 months
[JBoss JIRA] (WFLY-13444) Observing High CPU in EPollArrayWrapper.epollCtl default I/O thread
by Srinivas ev (Jira)
[ https://issues.redhat.com/browse/WFLY-13444?page=com.atlassian.jira.plugi... ]
Srinivas ev commented on WFLY-13444:
------------------------------------
Hi Flavia Rainone, any update on this JIRA. Can you please have a look, as this is blocking one of our delivery.
> Observing High CPU in EPollArrayWrapper.epollCtl default I/O thread
> -------------------------------------------------------------------
>
> Key: WFLY-13444
> URL: https://issues.redhat.com/browse/WFLY-13444
> Project: WildFly
> Issue Type: Bug
> Components: Remoting
> Affects Versions: 10.1.0.Final
> Reporter: Srinivas ev
> Assignee: Flavia Rainone
> Priority: Critical
> Attachments: IO thread memory.PNG, IO thread.PNG, Thread consuming high CPU.PNG, ThreadDump1set.zip, ThreadDump2set.zip, default IO thread 73.PNG, default io consuming snapshot.PNG, default io consuming.PNG, stack trace from snapshot.PNG, stack trace in thread dump.PNG, threaddump-1589514505334.tdump, top command output.PNG
>
>
> Facing high CPU by one of the default I/O thread In Wildfly 10.1.0 Final. Looks none of our application component thread is consuming.
> Can somebody check what is triggering this issue? I attached the thread stack to this Jira. This is blocking our releases. When the CPU cores are high in number, multiple default I/O threads will kick in consuming the CPU in 90~100% range continuously.
> Wildfly 10.1.0 Final
> Java -
> openjdk version "1.8.0_232"
> OpenJDK Runtime Environment (build 1.8.0_232-b09)
> OpenJDK 64-Bit Server VM (build 25.232-b09, mixed mode
> ---------------------------------------------------------------------------------------------------
> at java.lang.Throwable.fillInStackTrace(Native Method)
> at java.lang.Throwable.fillInStackTrace(Throwable.java:784)
> at java.lang.Throwable.<init>(Throwable.java:251)
> at java.lang.Exception.<init>(Exception.java:54)
> at java.io.IOException.<init>(IOException.java:47)
> at java.nio.channels.ClosedChannelException.<init>(ClosedChannelException.java:52)
> at org.xnio.ssl.JsseStreamConduit.write(JsseStreamConduit.java:1022)
> at org.xnio.conduits.ConduitStreamSinkChannel.write(ConduitStreamSinkChannel.java:150)
> at org.xnio.http.HttpUpgrade$HttpUpgradeState$StringWriteListener.handleEvent(HttpUpgrade.java:385)
> at org.xnio.http.HttpUpgrade$HttpUpgradeState$StringWriteListener.handleEvent(HttpUpgrade.java:372)
> at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
> at org.xnio.conduits.WriteReadyHandler$ChannelListenerHandler.writeReady(WriteReadyHandler.java:65)
> at org.xnio.ssl.JsseStreamConduit.run(JsseStreamConduit.java:393)
> at org.xnio.ssl.JsseStreamConduit.readReady(JsseStreamConduit.java:547)
> at org.xnio.ssl.JsseStreamConduit$2.readReady(JsseStreamConduit.java:319)
> at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:89)
> at org.xnio.nio.WorkerThread.run(WorkerThread.java:567)
> -------------------------------------------------------------------------------------------
> at sun.nio.ch.EPollArrayWrapper.epollCtl(Native Method)
> at sun.nio.ch.EPollArrayWrapper.updateRegistrations(EPollArrayWrapper.java:299)
> at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:268)
> at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93)
> at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
> at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
> at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:101)
> at org.xnio.nio.WorkerThread.run(WorkerThread.java:515)
> -----------------------------------------------------------------------------------
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 2 months
[JBoss JIRA] (DROOLS-5346) Enhance unit test to detect non-externalized lambda widely
by Toshiya Kobayashi (Jira)
[ https://issues.redhat.com/browse/DROOLS-5346?page=com.atlassian.jira.plug... ]
Toshiya Kobayashi updated DROOLS-5346:
--------------------------------------
Summary: Enhance unit test to detect non-externalized lambda widely (was: Enhance unit test to detect non-externalized lambda easier)
> Enhance unit test to detect non-externalized lambda widely
> ----------------------------------------------------------
>
> Key: DROOLS-5346
> URL: https://issues.redhat.com/browse/DROOLS-5346
> Project: Drools
> Issue Type: Sub-task
> Components: executable model
> Affects Versions: 7.37.0.Final
> Reporter: Toshiya Kobayashi
> Assignee: Toshiya Kobayashi
> Priority: Major
>
> Currently "lambda is not externalized" issue is not widely detected in unit tests. We need to write a specific assertion like this:
> {code:java}
> @Test
> public void testExternalizeBindingVariableLambda() throws Exception {
> String str =
> "package defaultpkg;\n" +
> "import " + Person.class.getCanonicalName() + ";" +
> "global java.util.List list;\n" +
> "rule R when\n" +
> " $p : Person($n : name == \"Mario\")\n" +
> "then\n" +
> " list.add($n);\n" +
> "end";
> KieModuleModel kieModuleModel = KieServices.get().newKieModuleModel();
> kieModuleModel.setConfigurationProperty("drools.externaliseCanonicalModelLambda", Boolean.TRUE.toString());
> KieSession ksession = getKieSession(kieModuleModel, str );
> final List<String> list = new ArrayList<>();
> ksession.setGlobal("list", list);
> if (testRunType == RUN_TYPE.FLOW_DSL || testRunType == RUN_TYPE.PATTERN_DSL) {
> RuleImpl rule = (RuleImpl)ksession.getKieBase().getRule("defaultpkg", "R");
> Pattern pattern = (Pattern)rule.getLhs().getChildren().get(0);
> Declaration declaration = pattern.getDeclarations().get("$n");
> LambdaReadAccessor lambdaReadAccessor = (LambdaReadAccessor)declaration.getExtractor();
> Field field = LambdaReadAccessor.class.getDeclaredField("lambda");
> field.setAccessible(true);
> Function1.Impl function1 = (Function1.Impl)field.get(lambdaReadAccessor);
> Object lambda = function1.getLambda();
> assertThat(lambda.getClass().getName(), containsString("LambdaExtractor")); // materialized Lambda
> }
> Person me = new Person( "Mario", 40 );
> ksession.insert( me );
> ksession.fireAllRules();
> Assertions.assertThat(list).containsExactlyInAnyOrder("Mario");
> }
> {code}
> This JIRA is to enhance unit tests to assert it widely.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 2 months
[JBoss JIRA] (DROOLS-5346) Enhance unit test to ditect non-externalized lambda easier
by Toshiya Kobayashi (Jira)
[ https://issues.redhat.com/browse/DROOLS-5346?page=com.atlassian.jira.plug... ]
Toshiya Kobayashi reassigned DROOLS-5346:
-----------------------------------------
Assignee: Toshiya Kobayashi (was: Luca Molteni)
> Enhance unit test to ditect non-externalized lambda easier
> ----------------------------------------------------------
>
> Key: DROOLS-5346
> URL: https://issues.redhat.com/browse/DROOLS-5346
> Project: Drools
> Issue Type: Sub-task
> Components: executable model
> Affects Versions: 7.37.0.Final
> Reporter: Toshiya Kobayashi
> Assignee: Toshiya Kobayashi
> Priority: Major
>
> Currently "lambda is not externalized" issue is not widely detected in unit tests. We need to write a specific assertion like this:
> {code:java}
> @Test
> public void testExternalizeBindingVariableLambda() throws Exception {
> String str =
> "package defaultpkg;\n" +
> "import " + Person.class.getCanonicalName() + ";" +
> "global java.util.List list;\n" +
> "rule R when\n" +
> " $p : Person($n : name == \"Mario\")\n" +
> "then\n" +
> " list.add($n);\n" +
> "end";
> KieModuleModel kieModuleModel = KieServices.get().newKieModuleModel();
> kieModuleModel.setConfigurationProperty("drools.externaliseCanonicalModelLambda", Boolean.TRUE.toString());
> KieSession ksession = getKieSession(kieModuleModel, str );
> final List<String> list = new ArrayList<>();
> ksession.setGlobal("list", list);
> if (testRunType == RUN_TYPE.FLOW_DSL || testRunType == RUN_TYPE.PATTERN_DSL) {
> RuleImpl rule = (RuleImpl)ksession.getKieBase().getRule("defaultpkg", "R");
> Pattern pattern = (Pattern)rule.getLhs().getChildren().get(0);
> Declaration declaration = pattern.getDeclarations().get("$n");
> LambdaReadAccessor lambdaReadAccessor = (LambdaReadAccessor)declaration.getExtractor();
> Field field = LambdaReadAccessor.class.getDeclaredField("lambda");
> field.setAccessible(true);
> Function1.Impl function1 = (Function1.Impl)field.get(lambdaReadAccessor);
> Object lambda = function1.getLambda();
> assertThat(lambda.getClass().getName(), containsString("LambdaExtractor")); // materialized Lambda
> }
> Person me = new Person( "Mario", 40 );
> ksession.insert( me );
> ksession.fireAllRules();
> Assertions.assertThat(list).containsExactlyInAnyOrder("Mario");
> }
> {code}
> This JIRA is to enhance unit tests to assert it widely.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 2 months
[JBoss JIRA] (DROOLS-5346) Enhance unit test to detect non-externalized lambda easier
by Toshiya Kobayashi (Jira)
[ https://issues.redhat.com/browse/DROOLS-5346?page=com.atlassian.jira.plug... ]
Toshiya Kobayashi updated DROOLS-5346:
--------------------------------------
Summary: Enhance unit test to detect non-externalized lambda easier (was: Enhance unit test to ditect non-externalized lambda easier)
> Enhance unit test to detect non-externalized lambda easier
> ----------------------------------------------------------
>
> Key: DROOLS-5346
> URL: https://issues.redhat.com/browse/DROOLS-5346
> Project: Drools
> Issue Type: Sub-task
> Components: executable model
> Affects Versions: 7.37.0.Final
> Reporter: Toshiya Kobayashi
> Assignee: Toshiya Kobayashi
> Priority: Major
>
> Currently "lambda is not externalized" issue is not widely detected in unit tests. We need to write a specific assertion like this:
> {code:java}
> @Test
> public void testExternalizeBindingVariableLambda() throws Exception {
> String str =
> "package defaultpkg;\n" +
> "import " + Person.class.getCanonicalName() + ";" +
> "global java.util.List list;\n" +
> "rule R when\n" +
> " $p : Person($n : name == \"Mario\")\n" +
> "then\n" +
> " list.add($n);\n" +
> "end";
> KieModuleModel kieModuleModel = KieServices.get().newKieModuleModel();
> kieModuleModel.setConfigurationProperty("drools.externaliseCanonicalModelLambda", Boolean.TRUE.toString());
> KieSession ksession = getKieSession(kieModuleModel, str );
> final List<String> list = new ArrayList<>();
> ksession.setGlobal("list", list);
> if (testRunType == RUN_TYPE.FLOW_DSL || testRunType == RUN_TYPE.PATTERN_DSL) {
> RuleImpl rule = (RuleImpl)ksession.getKieBase().getRule("defaultpkg", "R");
> Pattern pattern = (Pattern)rule.getLhs().getChildren().get(0);
> Declaration declaration = pattern.getDeclarations().get("$n");
> LambdaReadAccessor lambdaReadAccessor = (LambdaReadAccessor)declaration.getExtractor();
> Field field = LambdaReadAccessor.class.getDeclaredField("lambda");
> field.setAccessible(true);
> Function1.Impl function1 = (Function1.Impl)field.get(lambdaReadAccessor);
> Object lambda = function1.getLambda();
> assertThat(lambda.getClass().getName(), containsString("LambdaExtractor")); // materialized Lambda
> }
> Person me = new Person( "Mario", 40 );
> ksession.insert( me );
> ksession.fireAllRules();
> Assertions.assertThat(list).containsExactlyInAnyOrder("Mario");
> }
> {code}
> This JIRA is to enhance unit tests to assert it widely.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 2 months
[JBoss JIRA] (DROOLS-5346) Enhance unit test to ditect non-externalized lambda easier
by Toshiya Kobayashi (Jira)
Toshiya Kobayashi created DROOLS-5346:
-----------------------------------------
Summary: Enhance unit test to ditect non-externalized lambda easier
Key: DROOLS-5346
URL: https://issues.redhat.com/browse/DROOLS-5346
Project: Drools
Issue Type: Sub-task
Components: executable model
Affects Versions: 7.37.0.Final
Reporter: Toshiya Kobayashi
Assignee: Luca Molteni
Currently "lambda is not externalized" issue is not widely detected in unit tests. We need to write a specific assertion like this:
{code:java}
@Test
public void testExternalizeBindingVariableLambda() throws Exception {
String str =
"package defaultpkg;\n" +
"import " + Person.class.getCanonicalName() + ";" +
"global java.util.List list;\n" +
"rule R when\n" +
" $p : Person($n : name == \"Mario\")\n" +
"then\n" +
" list.add($n);\n" +
"end";
KieModuleModel kieModuleModel = KieServices.get().newKieModuleModel();
kieModuleModel.setConfigurationProperty("drools.externaliseCanonicalModelLambda", Boolean.TRUE.toString());
KieSession ksession = getKieSession(kieModuleModel, str );
final List<String> list = new ArrayList<>();
ksession.setGlobal("list", list);
if (testRunType == RUN_TYPE.FLOW_DSL || testRunType == RUN_TYPE.PATTERN_DSL) {
RuleImpl rule = (RuleImpl)ksession.getKieBase().getRule("defaultpkg", "R");
Pattern pattern = (Pattern)rule.getLhs().getChildren().get(0);
Declaration declaration = pattern.getDeclarations().get("$n");
LambdaReadAccessor lambdaReadAccessor = (LambdaReadAccessor)declaration.getExtractor();
Field field = LambdaReadAccessor.class.getDeclaredField("lambda");
field.setAccessible(true);
Function1.Impl function1 = (Function1.Impl)field.get(lambdaReadAccessor);
Object lambda = function1.getLambda();
assertThat(lambda.getClass().getName(), containsString("LambdaExtractor")); // materialized Lambda
}
Person me = new Person( "Mario", 40 );
ksession.insert( me );
ksession.fireAllRules();
Assertions.assertThat(list).containsExactlyInAnyOrder("Mario");
}
{code}
This JIRA is to enhance unit tests to assert it widely.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 2 months