[JBoss JIRA] (JGRP-2234) Unlocked locks stay locked forever
by Bela Ban (JIRA)
[ https://issues.jboss.org/browse/JGRP-2234?page=com.atlassian.jira.plugin.... ]
Bela Ban updated JGRP-2234:
---------------------------
Fix Version/s: 4.0.11
(was: 4.0.10)
> Unlocked locks stay locked forever
> ----------------------------------
>
> Key: JGRP-2234
> URL: https://issues.jboss.org/browse/JGRP-2234
> Project: JGroups
> Issue Type: Bug
> Reporter: Bram Klein Gunnewiek
> Assignee: Bela Ban
> Fix For: 4.0.11
>
> Attachments: ClusterSplitLockTest.java, jg_clusterlock_output_testfail.txt
>
>
> As discussed in the mailing list we have issues where locks from the central lock protocol stay locked forever when the coordinator of the cluster disconnects. We can reproduce this with the attached ClusterSplitLockTest.java. Its a race condition and we need to run the test a lot of times (sometimes > 20) before we encounter a failure.
> What we think is happening:
> In a three node cluster (node A, B and C where node A is the coordinator) unlock requests from B and/or C can be missed when node A leaves and B and/or C don't have the new view installed yet. When, for example, node B takes over coordination it creates the lock table based on the back-ups. Lets say node C has locked the lock with name 'lockX'. Node C performs an unlock of 'lockX' just after node A (gracefully) leaves and sends the unlock request to node A since node C doesn't have the correct view installed yet. Node B has and recreated the lock table where 'lockX' is locked by Node C. Node C doesn't resend the unlock request so 'lockX' gets locked forever.
> Attached is the testng test we wrote and the output of a test failure.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 11 months
[JBoss JIRA] (JGRP-2235) ConcurrentModificationException when resend pending lock requests
by Bela Ban (JIRA)
[ https://issues.jboss.org/browse/JGRP-2235?page=com.atlassian.jira.plugin.... ]
Bela Ban updated JGRP-2235:
---------------------------
Fix Version/s: 4.0.11
(was: 4.0.10)
> ConcurrentModificationException when resend pending lock requests
> -----------------------------------------------------------------
>
> Key: JGRP-2235
> URL: https://issues.jboss.org/browse/JGRP-2235
> Project: JGroups
> Issue Type: Bug
> Reporter: Bram Klein Gunnewiek
> Assignee: Bela Ban
> Fix For: 4.0.11
>
>
> While testing JGRP-2234 we saw a ConcurrentModificationException in the locking protocol in some (rare) situations:
> {noformat}
> 09:46:42.856 [jgroups-7,TEST,B] ERROR org.jgroups.protocols.pbcast.GMS - JGRP000027: failed passing message up
> java.util.ConcurrentModificationException: null
> at java.util.HashMap$ValueSpliterator.forEachRemaining(HashMap.java:1630) ~[?:1.8.0_151]
> at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) ~[?:1.8.0_151]
> at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) ~[?:1.8.0_151]
> at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151) ~[?:1.8.0_151]
> at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174) ~[?:1.8.0_151]
> at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:1.8.0_151]
> at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418) ~[?:1.8.0_151]
> at org.jgroups.protocols.Locking$ClientLockTable.lambda$resendPendingLockRequests$3(Locking.java:1085) ~[classes/:?]
> at java.util.concurrent.ConcurrentHashMap$ValuesView.forEach(ConcurrentHashMap.java:4707) ~[?:1.8.0_151]
> at org.jgroups.protocols.Locking$ClientLockTable.resendPendingLockRequests(Locking.java:1084) ~[classes/:?]
> at org.jgroups.protocols.CENTRAL_LOCK.handleView(CENTRAL_LOCK.java:147) ~[classes/:?]
> at org.jgroups.protocols.Locking.up(Locking.java:218) ~[classes/:?]
> at org.jgroups.protocols.FRAG2.up(FRAG2.java:163) ~[classes/:?]
> at org.jgroups.protocols.pbcast.GMS.installView(GMS.java:702) ~[classes/:?]
> at org.jgroups.protocols.pbcast.ParticipantGmsImpl.handleViewChange(ParticipantGmsImpl.java:135) ~[classes/:?]
> at org.jgroups.protocols.pbcast.GMS.up(GMS.java:918) ~[classes/:?]
> at org.jgroups.stack.Protocol.up(Protocol.java:364) [classes/:?]
> at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:293) [classes/:?]
> at org.jgroups.protocols.UNICAST3.up(UNICAST3.java:428) [classes/:?]
> at org.jgroups.protocols.pbcast.NAKACK2.deliverBatch(NAKACK2.java:962) [classes/:?]
> at org.jgroups.protocols.pbcast.NAKACK2.removeAndDeliver(NAKACK2.java:896) [classes/:?]
> at org.jgroups.protocols.pbcast.NAKACK2.handleMessages(NAKACK2.java:870) [classes/:?]
> at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:690) [classes/:?]
> at org.jgroups.stack.Protocol.up(Protocol.java:372) [classes/:?]
> at org.jgroups.protocols.TP.passBatchUp(TP.java:1255) [classes/:?]
> at org.jgroups.util.MaxOneThreadPerSender$BatchHandlerLoop.passBatchUp(MaxOneThreadPerSender.java:284) [classes/:?]
> at org.jgroups.util.SubmitToThreadPool$BatchHandler.run(SubmitToThreadPool.java:136) [classes/:?]
> at org.jgroups.util.MaxOneThreadPerSender$BatchHandlerLoop.run(MaxOneThreadPerSender.java:273) [classes/:?]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_151]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_151]
> at java.lang.Thread.run(Thread.java:748) [?:1.8.0_151]
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 11 months
[JBoss JIRA] (JGRP-2239) AUTH + ASYM_ENCRYPT causes problem with re-joining cluster (MERGE)
by Bela Ban (JIRA)
[ https://issues.jboss.org/browse/JGRP-2239?page=com.atlassian.jira.plugin.... ]
Bela Ban updated JGRP-2239:
---------------------------
Fix Version/s: 4.0.11
(was: 4.0.10)
> AUTH + ASYM_ENCRYPT causes problem with re-joining cluster (MERGE)
> ------------------------------------------------------------------
>
> Key: JGRP-2239
> URL: https://issues.jboss.org/browse/JGRP-2239
> Project: JGroups
> Issue Type: Bug
> Affects Versions: 4.0.6
> Environment: Infinispan 9.1.1 + JGroups 4.0.6.Final + Vert.x 3.5.0
> Reporter: Boris Sh
> Assignee: Bela Ban
> Fix For: 4.0.11
>
>
> Hello,
> I am using the following configuration:
> {code:java}
> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns="urn:org:jgroups" xsi:schemaLocation="urn:org:jgroups http://www.jgroups.org/schema/jgroups.xsd">
> <UDP />
> <PING />
> <MERGE3 />
> <FD />
> <VERIFY_SUSPECT />
> <ASYM_ENCRYPT encrypt_entire_message="true" sym_keylength="128"
> sym_algorithm="AES/ECB/PKCS5Padding" asym_keylength="2048"
> asym_algorithm="RSA" />
> <pbcast.NAKACK2 />
> <UNICAST3 />
> <pbcast.STABLE />
> <FRAG2 />
> <AUTH auth_class="org.jgroups.auth.X509Token" auth_value="auth"
> keystore_path="keystore.jks" keystore_password="pwd" cert_alias="alias"
> cipher_type="RSA" />
> <pbcast.GMS />
> </config>
> {code}
> I have 7 services, but will try to show logs for 2 ones, coordinator and some random node, and all the other nodes behave similarly.
> Initially, when these nodes join the cluster, everything is fine.
> The server is a shared machine with slow CPU and also slow HDD, so sometimes, when other applications are busy with their tasks, whole my cluster can get frozen for 3-5 minutes. During/in the end of this freeze, some service may tell me the following (in logs):
> {code:java}
> org.jgroups.protocols.FD up
> WARNING: node-26978: I was suspected by node-27291; ignoring the SUSPECT message and sending back a HEARTBEAT_ACK
> WARNING: node-26978: unrecognized cipher; discarding message from node-27291
> org.jgroups.protocols.Encrypt handleEncryptedMessage
> WARNING: node-26978: unrecognized cipher; discarding message from node-27291
> org.jgroups.protocols.Encrypt handleEncryptedMessage
> WARNING: node-26978: unrecognized cipher; discarding message from node-36734
> org.jgroups.protocols.Encrypt handleEncryptedMessage
> {code}
> so the node was kicked out from the cluster, as it became "suspect", but the node doesn't agree with that fact. Cluster coordinator has already changed sym private key, so in the further logs of this server I see "unrecognized cipher".
> In cluster coordinator logs I see the following:
> {code:java}
> INFO: ISPN100000: Node node-26978 joined the cluster
> ****
> WARN: node-27291: unrecognized cipher; discarding message from node-26978
> org.jgroups.logging.Slf4jLogImpl error
> ERROR: key requester node-26978 is not in current view [***]; ignoring key request
> org.jgroups.logging.Slf4jLogImpl warn
> WARN: node-27291: unrecognized cipher; discarding message from node-26978
> INFO: ISPN000093: Received new, MERGED cluster view for channel ISPN: MergeView::[node-26978|8] (7) [node-26978, node-12721, node-17625, node-45936, node-56674, node-36734, node-27291], 2 subgroups: [node-27291|7] (6) [node-27291, node-12721, node-17625, node-45936, node-56674, node-36734], [node-27291|6] (7) [node-27291, node-26978, node-12721, node-17625, node-45936, node-56674, node-36734]
> {code}
> My understanding of what has happened:
> For example I have 3 nodes {A, B, C} in the cluster. The cluster gets frozen for some minutes, so node {C} becomes suspected, and kicked out from the cluster by coordinator. For some reason {C} ignores that fact. Later, after cluster is up again, it becomes ignoring messages from {C}, because it is using ASYM encryption and private key has been re-generated by coordinator. Also, for some reason MERGE operation doesn't work, and {C} can not join back to cluster, and now cluster has 2 subgroups, that don't communicate to each other, and I don't fully understand why this happens.
> How I temporary resolved this issue: changed ASYM_ENCRYPT to SYM_ENCRYPT, and now any node can come back to the cluster successfully after freeze, as the key doesn't change.
> Also, I didn't test, but think change_key_on_leave="false" will help, but this is not the way I want to use.
> So looks like this a problem with AUTH + ASYM_ENCRYPT protocol combination, when node in some cases can not rejoin the cluster.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 11 months
[JBoss JIRA] (JGRP-2248) SASL protocol should not pass null callbackhandlers to Factories
by Bela Ban (JIRA)
[ https://issues.jboss.org/browse/JGRP-2248?page=com.atlassian.jira.plugin.... ]
Bela Ban commented on JGRP-2248:
--------------------------------
I'll release 4.0.10 today, and push the remaining issues into 4.0.11
> SASL protocol should not pass null callbackhandlers to Factories
> ----------------------------------------------------------------
>
> Key: JGRP-2248
> URL: https://issues.jboss.org/browse/JGRP-2248
> Project: JGroups
> Issue Type: Enhancement
> Affects Versions: 4.0.9
> Reporter: Ryan Emerson
> Assignee: Ryan Emerson
> Fix For: 4.0.10
>
>
> Currently it's possible for the client and server callback handlers to be null when passed to the respective Sasl Factory. When utilising the Elytron Sasl factories this results in an IllegalArgumentException being thrown. To avoid this we should ensure that the callback handlers are non-null when passed to the factory implementations, e.g. pass a NoOpCallbackHandler.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 11 months
[JBoss JIRA] (DROOLS-2287) Creating KIE Container with Externally Location Drool Files
by Kunal Kishan (JIRA)
[ https://issues.jboss.org/browse/DROOLS-2287?page=com.atlassian.jira.plugi... ]
Kunal Kishan updated DROOLS-2287:
---------------------------------
Description:
When Creating Container getting the Following Issue
@Bean(name = "kieContainer")
public KieContainer kieContainer(@Qualifier("rulesProvider") RulesProvider rulesProvider) {
KieContainer kieContainer = null;
try {
KieServices kieServices = KieServices.Factory.get();
KieFileSystem kFileSystem = kieServices.newKieFileSystem();
Resource resource = kieServices.getResources().newFileSystemResource(rulesProvider.getRuleFile())
.setResourceType(ResourceType.DRL);
kFileSystem.write(resource);
KieBuilder kbuilder = kieServices.newKieBuilder(kFileSystem);
kbuilder.buildAll();
if (kbuilder.getResults().hasMessages(org.kie.api.builder.Message.Level.ERROR)) {
throw new RuntimeException("Build time Errors: " + kbuilder.getResults().toString());
}
kieContainer = kieServices.newKieContainer(kbuilder.getKieModule().getReleaseId());
**********
Causes failure @ * kbuilder.buildAll();*
Caused by: java.lang.NoSuchMethodError: org/codehaus/plexus/DefaultPlexusContainer.<init>(Lorg/codehaus/plexus/ContainerConfiguration;)V (loaded from file:/C:/.m2/org/codehaus/plexus/plexus-container-default/1.0-alpha-9-stable-1/plexus-container-default-1.0-alpha-9-stable-1.jar by java.net.URLClassLoader@ec8dd793) called from class org.appformer.maven.integration.embedder.MavenEmbedderUtils (loaded from file:/C:/.m2/org/kie/soup/kie-soup-maven-integration/7.5.0.Final/kie-soup-maven-integration-7.5.0.Final.jar by java.net.URLClassLoader@ec8dd793).
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:167)
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:141)
at org.appformer.maven.integration.embedder.PlexusComponentProvider.<init>(PlexusComponentProvider.java:37)
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildComponentProvider(MavenEmbedderUtils.java:57)
at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:87)
at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:81)
at org.appformer.maven.integration.embedder.MavenProjectLoader.newMavenEmbedder(MavenProjectLoader.java:77)
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:61)
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:55)
at org.appformer.maven.integration.MavenPomModelGenerator.parse(MavenPomModelGenerator.java:34)
at org.appformer.maven.support.PomModel$Parser.parse(PomModel.java:110)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildPomModel(KieBuilderImpl.java:684)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.getPomModel(KieBuilderImpl.java:661)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.init(KieBuilderImpl.java:282)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:330)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:317)
at com.foo.client.droolsengine.config.DroolEngineConfig.kieContainer(DroolEngineConfig.java:42)
at com.foo.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38.CGLIB$kieContainer$0(<generated>)
at com.foo.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38$$FastClassBySpringCGLIB$$3d6004b0.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:356)
at com.foo.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38.kieContainer(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:508)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
... 52 more
was:
When Creating Container getting the Following Issue
@Bean(name = "kieContainer")
public KieContainer kieContainer(@Qualifier("rulesProvider") RulesProvider rulesProvider) {
KieContainer kieContainer = null;
try {
KieServices kieServices = KieServices.Factory.get();
KieFileSystem kFileSystem = kieServices.newKieFileSystem();
Resource resource = kieServices.getResources().newFileSystemResource(rulesProvider.getRuleFile())
.setResourceType(ResourceType.DRL);
kFileSystem.write(resource);
KieBuilder kbuilder = kieServices.newKieBuilder(kFileSystem);
kbuilder.buildAll();
if (kbuilder.getResults().hasMessages(org.kie.api.builder.Message.Level.ERROR)) {
throw new RuntimeException("Build time Errors: " + kbuilder.getResults().toString());
}
kieContainer = kieServices.newKieContainer(kbuilder.getKieModule().getReleaseId());
**********
Causes failure @ * kbuilder.buildAll();*
Caused by: java.lang.NoSuchMethodError: org/codehaus/plexus/DefaultPlexusContainer.<init>(Lorg/codehaus/plexus/ContainerConfiguration;)V (loaded from file:/C:/.m2/org/codehaus/plexus/plexus-container-default/1.0-alpha-9-stable-1/plexus-container-default-1.0-alpha-9-stable-1.jar by java.net.URLClassLoader@ec8dd793) called from class org.appformer.maven.integration.embedder.MavenEmbedderUtils (loaded from file:/C:/.m2/org/kie/soup/kie-soup-maven-integration/7.5.0.Final/kie-soup-maven-integration-7.5.0.Final.jar by java.net.URLClassLoader@ec8dd793).
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:167)
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:141)
at org.appformer.maven.integration.embedder.PlexusComponentProvider.<init>(PlexusComponentProvider.java:37)
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildComponentProvider(MavenEmbedderUtils.java:57)
at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:87)
at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:81)
at org.appformer.maven.integration.embedder.MavenProjectLoader.newMavenEmbedder(MavenProjectLoader.java:77)
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:61)
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:55)
at org.appformer.maven.integration.MavenPomModelGenerator.parse(MavenPomModelGenerator.java:34)
at org.appformer.maven.support.PomModel$Parser.parse(PomModel.java:110)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildPomModel(KieBuilderImpl.java:684)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.getPomModel(KieBuilderImpl.java:661)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.init(KieBuilderImpl.java:282)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:330)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:317)
at com.foo.client.droolsengine.config.DroolEngineConfig.kieContainer(DroolEngineConfig.java:42)
at com.foo.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38.CGLIB$kieContainer$0(<generated>)
at com.citizens.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38$$FastClassBySpringCGLIB$$3d6004b0.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:356)
at com.foo.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38.kieContainer(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:508)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
... 52 more
> Creating KIE Container with Externally Location Drool Files
> -----------------------------------------------------------
>
> Key: DROOLS-2287
> URL: https://issues.jboss.org/browse/DROOLS-2287
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 7.5.0.Final
> Reporter: Kunal Kishan
> Assignee: Mario Fusco
> Fix For: 7.5.0.Final
>
>
> When Creating Container getting the Following Issue
> @Bean(name = "kieContainer")
> public KieContainer kieContainer(@Qualifier("rulesProvider") RulesProvider rulesProvider) {
> KieContainer kieContainer = null;
> try {
> KieServices kieServices = KieServices.Factory.get();
> KieFileSystem kFileSystem = kieServices.newKieFileSystem();
> Resource resource = kieServices.getResources().newFileSystemResource(rulesProvider.getRuleFile())
> .setResourceType(ResourceType.DRL);
> kFileSystem.write(resource);
> KieBuilder kbuilder = kieServices.newKieBuilder(kFileSystem);
> kbuilder.buildAll();
> if (kbuilder.getResults().hasMessages(org.kie.api.builder.Message.Level.ERROR)) {
> throw new RuntimeException("Build time Errors: " + kbuilder.getResults().toString());
> }
> kieContainer = kieServices.newKieContainer(kbuilder.getKieModule().getReleaseId());
> **********
> Causes failure @ * kbuilder.buildAll();*
> Caused by: java.lang.NoSuchMethodError: org/codehaus/plexus/DefaultPlexusContainer.<init>(Lorg/codehaus/plexus/ContainerConfiguration;)V (loaded from file:/C:/.m2/org/codehaus/plexus/plexus-container-default/1.0-alpha-9-stable-1/plexus-container-default-1.0-alpha-9-stable-1.jar by java.net.URLClassLoader@ec8dd793) called from class org.appformer.maven.integration.embedder.MavenEmbedderUtils (loaded from file:/C:/.m2/org/kie/soup/kie-soup-maven-integration/7.5.0.Final/kie-soup-maven-integration-7.5.0.Final.jar by java.net.URLClassLoader@ec8dd793).
> at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:167)
> at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:141)
> at org.appformer.maven.integration.embedder.PlexusComponentProvider.<init>(PlexusComponentProvider.java:37)
> at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildComponentProvider(MavenEmbedderUtils.java:57)
> at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:87)
> at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:81)
> at org.appformer.maven.integration.embedder.MavenProjectLoader.newMavenEmbedder(MavenProjectLoader.java:77)
> at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:61)
> at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:55)
> at org.appformer.maven.integration.MavenPomModelGenerator.parse(MavenPomModelGenerator.java:34)
> at org.appformer.maven.support.PomModel$Parser.parse(PomModel.java:110)
> at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildPomModel(KieBuilderImpl.java:684)
> at org.drools.compiler.kie.builder.impl.KieBuilderImpl.getPomModel(KieBuilderImpl.java:661)
> at org.drools.compiler.kie.builder.impl.KieBuilderImpl.init(KieBuilderImpl.java:282)
> at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:330)
> at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:317)
> at com.foo.client.droolsengine.config.DroolEngineConfig.kieContainer(DroolEngineConfig.java:42)
> at com.foo.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38.CGLIB$kieContainer$0(<generated>)
> at com.foo.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38$$FastClassBySpringCGLIB$$3d6004b0.invoke(<generated>)
> at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
> at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:356)
> at com.foo.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38.kieContainer(<generated>)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
> at java.lang.reflect.Method.invoke(Method.java:508)
> at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
> ... 52 more
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 11 months
[JBoss JIRA] (DROOLS-2287) Creating KIE Container with Externally Location Drool Files
by Kunal Kishan (JIRA)
[ https://issues.jboss.org/browse/DROOLS-2287?page=com.atlassian.jira.plugi... ]
Kunal Kishan updated DROOLS-2287:
---------------------------------
Description:
When Creating Container getting the Following Issue
@Bean(name = "kieContainer")
public KieContainer kieContainer(@Qualifier("rulesProvider") RulesProvider rulesProvider) {
KieContainer kieContainer = null;
try {
KieServices kieServices = KieServices.Factory.get();
KieFileSystem kFileSystem = kieServices.newKieFileSystem();
Resource resource = kieServices.getResources().newFileSystemResource(rulesProvider.getRuleFile())
.setResourceType(ResourceType.DRL);
kFileSystem.write(resource);
KieBuilder kbuilder = kieServices.newKieBuilder(kFileSystem);
kbuilder.buildAll();
if (kbuilder.getResults().hasMessages(org.kie.api.builder.Message.Level.ERROR)) {
throw new RuntimeException("Build time Errors: " + kbuilder.getResults().toString());
}
kieContainer = kieServices.newKieContainer(kbuilder.getKieModule().getReleaseId());
**********
Causes failure @ * kbuilder.buildAll();*
Caused by: java.lang.NoSuchMethodError: org/codehaus/plexus/DefaultPlexusContainer.<init>(Lorg/codehaus/plexus/ContainerConfiguration;)V (loaded from file:/C:/.m2/org/codehaus/plexus/plexus-container-default/1.0-alpha-9-stable-1/plexus-container-default-1.0-alpha-9-stable-1.jar by java.net.URLClassLoader@ec8dd793) called from class org.appformer.maven.integration.embedder.MavenEmbedderUtils (loaded from file:/C:/.m2/org/kie/soup/kie-soup-maven-integration/7.5.0.Final/kie-soup-maven-integration-7.5.0.Final.jar by java.net.URLClassLoader@ec8dd793).
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:167)
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:141)
at org.appformer.maven.integration.embedder.PlexusComponentProvider.<init>(PlexusComponentProvider.java:37)
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildComponentProvider(MavenEmbedderUtils.java:57)
at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:87)
at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:81)
at org.appformer.maven.integration.embedder.MavenProjectLoader.newMavenEmbedder(MavenProjectLoader.java:77)
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:61)
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:55)
at org.appformer.maven.integration.MavenPomModelGenerator.parse(MavenPomModelGenerator.java:34)
at org.appformer.maven.support.PomModel$Parser.parse(PomModel.java:110)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildPomModel(KieBuilderImpl.java:684)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.getPomModel(KieBuilderImpl.java:661)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.init(KieBuilderImpl.java:282)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:330)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:317)
at com.foo.client.droolsengine.config.DroolEngineConfig.kieContainer(DroolEngineConfig.java:42)
at com.foo.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38.CGLIB$kieContainer$0(<generated>)
at com.citizens.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38$$FastClassBySpringCGLIB$$3d6004b0.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:356)
at com.foo.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38.kieContainer(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:508)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
... 52 more
was:
When Creating Container getting the Following Issue
@Bean(name = "kieContainer")
public KieContainer kieContainer(@Qualifier("rulesProvider") RulesProvider rulesProvider) {
KieContainer kieContainer = null;
try {
KieServices kieServices = KieServices.Factory.get();
KieFileSystem kFileSystem = kieServices.newKieFileSystem();
Resource resource = kieServices.getResources().newFileSystemResource(rulesProvider.getRuleFile())
.setResourceType(ResourceType.DRL);
kFileSystem.write(resource);
KieBuilder kbuilder = kieServices.newKieBuilder(kFileSystem);
kbuilder.buildAll();
if (kbuilder.getResults().hasMessages(org.kie.api.builder.Message.Level.ERROR)) {
throw new RuntimeException("Build time Errors: " + kbuilder.getResults().toString());
}
kieContainer = kieServices.newKieContainer(kbuilder.getKieModule().getReleaseId());
**********
Causes failure @ * kbuilder.buildAll();*
Caused by: java.lang.NoSuchMethodError: org/codehaus/plexus/DefaultPlexusContainer.<init>(Lorg/codehaus/plexus/ContainerConfiguration;)V (loaded from file:/C:/.m2/org/codehaus/plexus/plexus-container-default/1.0-alpha-9-stable-1/plexus-container-default-1.0-alpha-9-stable-1.jar by java.net.URLClassLoader@ec8dd793) called from class org.appformer.maven.integration.embedder.MavenEmbedderUtils (loaded from file:/C:/.m2/org/kie/soup/kie-soup-maven-integration/7.5.0.Final/kie-soup-maven-integration-7.5.0.Final.jar by java.net.URLClassLoader@ec8dd793).
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:167)
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:141)
at org.appformer.maven.integration.embedder.PlexusComponentProvider.<init>(PlexusComponentProvider.java:37)
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildComponentProvider(MavenEmbedderUtils.java:57)
at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:87)
at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:81)
at org.appformer.maven.integration.embedder.MavenProjectLoader.newMavenEmbedder(MavenProjectLoader.java:77)
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:61)
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:55)
at org.appformer.maven.integration.MavenPomModelGenerator.parse(MavenPomModelGenerator.java:34)
at org.appformer.maven.support.PomModel$Parser.parse(PomModel.java:110)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildPomModel(KieBuilderImpl.java:684)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.getPomModel(KieBuilderImpl.java:661)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.init(KieBuilderImpl.java:282)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:330)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:317)
at com.citizens.client.droolsengine.config.DroolEngineConfig.kieContainer(DroolEngineConfig.java:42)
at com.citizens.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38.CGLIB$kieContainer$0(<generated>)
at com.citizens.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38$$FastClassBySpringCGLIB$$3d6004b0.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:356)
at com.citizens.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38.kieContainer(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:508)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
... 52 more
> Creating KIE Container with Externally Location Drool Files
> -----------------------------------------------------------
>
> Key: DROOLS-2287
> URL: https://issues.jboss.org/browse/DROOLS-2287
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 7.5.0.Final
> Reporter: Kunal Kishan
> Assignee: Mario Fusco
> Fix For: 7.5.0.Final
>
>
> When Creating Container getting the Following Issue
> @Bean(name = "kieContainer")
> public KieContainer kieContainer(@Qualifier("rulesProvider") RulesProvider rulesProvider) {
> KieContainer kieContainer = null;
> try {
> KieServices kieServices = KieServices.Factory.get();
> KieFileSystem kFileSystem = kieServices.newKieFileSystem();
> Resource resource = kieServices.getResources().newFileSystemResource(rulesProvider.getRuleFile())
> .setResourceType(ResourceType.DRL);
> kFileSystem.write(resource);
> KieBuilder kbuilder = kieServices.newKieBuilder(kFileSystem);
> kbuilder.buildAll();
> if (kbuilder.getResults().hasMessages(org.kie.api.builder.Message.Level.ERROR)) {
> throw new RuntimeException("Build time Errors: " + kbuilder.getResults().toString());
> }
> kieContainer = kieServices.newKieContainer(kbuilder.getKieModule().getReleaseId());
> **********
> Causes failure @ * kbuilder.buildAll();*
> Caused by: java.lang.NoSuchMethodError: org/codehaus/plexus/DefaultPlexusContainer.<init>(Lorg/codehaus/plexus/ContainerConfiguration;)V (loaded from file:/C:/.m2/org/codehaus/plexus/plexus-container-default/1.0-alpha-9-stable-1/plexus-container-default-1.0-alpha-9-stable-1.jar by java.net.URLClassLoader@ec8dd793) called from class org.appformer.maven.integration.embedder.MavenEmbedderUtils (loaded from file:/C:/.m2/org/kie/soup/kie-soup-maven-integration/7.5.0.Final/kie-soup-maven-integration-7.5.0.Final.jar by java.net.URLClassLoader@ec8dd793).
> at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:167)
> at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:141)
> at org.appformer.maven.integration.embedder.PlexusComponentProvider.<init>(PlexusComponentProvider.java:37)
> at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildComponentProvider(MavenEmbedderUtils.java:57)
> at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:87)
> at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:81)
> at org.appformer.maven.integration.embedder.MavenProjectLoader.newMavenEmbedder(MavenProjectLoader.java:77)
> at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:61)
> at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:55)
> at org.appformer.maven.integration.MavenPomModelGenerator.parse(MavenPomModelGenerator.java:34)
> at org.appformer.maven.support.PomModel$Parser.parse(PomModel.java:110)
> at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildPomModel(KieBuilderImpl.java:684)
> at org.drools.compiler.kie.builder.impl.KieBuilderImpl.getPomModel(KieBuilderImpl.java:661)
> at org.drools.compiler.kie.builder.impl.KieBuilderImpl.init(KieBuilderImpl.java:282)
> at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:330)
> at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:317)
> at com.foo.client.droolsengine.config.DroolEngineConfig.kieContainer(DroolEngineConfig.java:42)
> at com.foo.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38.CGLIB$kieContainer$0(<generated>)
> at com.citizens.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38$$FastClassBySpringCGLIB$$3d6004b0.invoke(<generated>)
> at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
> at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:356)
> at com.foo.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38.kieContainer(<generated>)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
> at java.lang.reflect.Method.invoke(Method.java:508)
> at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
> ... 52 more
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 11 months
[JBoss JIRA] (DROOLS-2287) Creating KIE Container with Externally Location Drool Files
by Kunal Kishan (JIRA)
Kunal Kishan created DROOLS-2287:
------------------------------------
Summary: Creating KIE Container with Externally Location Drool Files
Key: DROOLS-2287
URL: https://issues.jboss.org/browse/DROOLS-2287
Project: Drools
Issue Type: Bug
Components: core engine
Affects Versions: 7.5.0.Final
Reporter: Kunal Kishan
Assignee: Mario Fusco
Fix For: 7.5.0.Final
When Creating Container getting the Following Issue
@Bean(name = "kieContainer")
public KieContainer kieContainer(@Qualifier("rulesProvider") RulesProvider rulesProvider) {
KieContainer kieContainer = null;
try {
KieServices kieServices = KieServices.Factory.get();
KieFileSystem kFileSystem = kieServices.newKieFileSystem();
Resource resource = kieServices.getResources().newFileSystemResource(rulesProvider.getRuleFile())
.setResourceType(ResourceType.DRL);
kFileSystem.write(resource);
KieBuilder kbuilder = kieServices.newKieBuilder(kFileSystem);
kbuilder.buildAll();
if (kbuilder.getResults().hasMessages(org.kie.api.builder.Message.Level.ERROR)) {
throw new RuntimeException("Build time Errors: " + kbuilder.getResults().toString());
}
kieContainer = kieServices.newKieContainer(kbuilder.getKieModule().getReleaseId());
**********
Causes failure @ * kbuilder.buildAll();*
Caused by: java.lang.NoSuchMethodError: org/codehaus/plexus/DefaultPlexusContainer.<init>(Lorg/codehaus/plexus/ContainerConfiguration;)V (loaded from file:/C:/.m2/org/codehaus/plexus/plexus-container-default/1.0-alpha-9-stable-1/plexus-container-default-1.0-alpha-9-stable-1.jar by java.net.URLClassLoader@ec8dd793) called from class org.appformer.maven.integration.embedder.MavenEmbedderUtils (loaded from file:/C:/.m2/org/kie/soup/kie-soup-maven-integration/7.5.0.Final/kie-soup-maven-integration-7.5.0.Final.jar by java.net.URLClassLoader@ec8dd793).
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:167)
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:141)
at org.appformer.maven.integration.embedder.PlexusComponentProvider.<init>(PlexusComponentProvider.java:37)
at org.appformer.maven.integration.embedder.MavenEmbedderUtils.buildComponentProvider(MavenEmbedderUtils.java:57)
at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:87)
at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:81)
at org.appformer.maven.integration.embedder.MavenProjectLoader.newMavenEmbedder(MavenProjectLoader.java:77)
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:61)
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:55)
at org.appformer.maven.integration.MavenPomModelGenerator.parse(MavenPomModelGenerator.java:34)
at org.appformer.maven.support.PomModel$Parser.parse(PomModel.java:110)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildPomModel(KieBuilderImpl.java:684)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.getPomModel(KieBuilderImpl.java:661)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.init(KieBuilderImpl.java:282)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:330)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:317)
at com.citizens.client.droolsengine.config.DroolEngineConfig.kieContainer(DroolEngineConfig.java:42)
at com.citizens.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38.CGLIB$kieContainer$0(<generated>)
at com.citizens.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38$$FastClassBySpringCGLIB$$3d6004b0.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:356)
at com.citizens.client.droolsengine.config.DroolEngineConfig$$EnhancerBySpringCGLIB$$12222c38.kieContainer(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:508)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
... 52 more
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 11 months