<< Back to previous view

[GLASSFISH-20998] JMS messages lose message properties when sent via JMSContext. Selector's don't work. Created: 01/Mar/14  Updated: 03/Mar/14

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 4.0
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: pranahata Assignee: David Zhao
Resolution: Unresolved Votes: 1
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: David Zhao, Nigel Deakin and pranahata

 Description   

When sending a message via JMSContext, none of the properties sent on the message arrive at the client, making jms message selectors unusable.

You can use the same test case as here, https://java.net/jira/browse/GLASSFISH-20973



 Comments   
Comment by Nigel Deakin [ 03/Mar/14 10:03 AM ]

Seems to work for me. Can you please paste the exact code you used to set the property?

I tried these two variants:

setting it directly on the Message:

try (JMSContext context = connectionFactory.createContext()){
   TextMessage textMessage = context.createTextMessage("Hello world");
   textMessage.setStringProperty("MyProperty", "Koala");
   context.createProducer().send(inboundQueue,m);
}

and setting it via the JMSProducer

try (JMSContext context = connectionFactory.createContext()){
   context.createProducer().setProperty("MyProperty", "Wombat").send(inboundQueue,"Hello world");
}

and checked the property was set on the received message using

String myProp = message.getStringProperty("MyProperty");

and confirmed that the expected property value was set.





[GLASSFISH-7279] receiveNoWait should poll broker Created: 09/Mar/09  Updated: 18/Jun/13

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: v2.1
Fix Version/s: future release

Type: Improvement Priority: Critical
Reporter: rahulbiswas Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issue Links:
Dependency
depends on JMS_SPEC-85 Clarify how Message.receiveNoWait() i... Open
Issuezilla Id: 7,279
Tags: bj-reviewed-out
Participants: David Zhao, kumara, rahulbiswas and Tom Mueller

 Description   

Need an option for the client to poll the broker for new messages, for the
receiveNoWait api implementation. Currently the impl returns null even if there
are messages on the broker. This scenario been described in the following closed
bug – https://glassfish.dev.java.net/issues/show_bug.cgi?id=3011

With this option the client should poll the broker for new messages and return a
message if available on broker. If none are available, it should not block for
new messages to arrive on the broker.



 Comments   
Comment by kumara [ 01/Sep/09 01:09 AM ]

Changing version from 9.1.1 to v2.1 to reflect new name/version.

Comment by Tom Mueller [ 06/Mar/12 09:56 PM ]

Bulk update to change fix version to "not determined" for all issues still open but with a fix version for a released version.





[GLASSFISH-4151] Integrated OpenMQ/glassfish admin console Created: 11/Feb/08  Updated: 08/Mar/12

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: V3
Fix Version/s: future release

Type: New Feature Priority: Major
Reporter: rampsarathy Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 4,151
Status Whiteboard:

v3-prd-item

Tags:
Participants: David Zhao, rampsarathy and Tom Mueller

 Description   

This issue has been created to track the task of integrating the open mq admin
console with glassfish V3



 Comments   
Comment by rampsarathy [ 11/Feb/08 01:10 AM ]

Tagged as v3-prd-item

Comment by rampsarathy [ 29/May/08 11:13 PM ]

Assigning to Satish as he will be working on JMS features in V3

Comment by Tom Mueller [ 06/Mar/12 09:56 PM ]

Bulk update to change fix version to "not determined" for all issues still open but with a fix version for a released version.

Comment by David Zhao [ 08/Mar/12 06:45 AM ]

Need more detail information about the enhancement.





[GLASSFISH-13691] Provide way to disable JMS via command line Created: 29/Sep/10  Updated: 19/Oct/12

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 3.1
Fix Version/s: 4.0.1

Type: Improvement Priority: Major
Reporter: Tom Mueller Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 13,691
Tags: bj-reviewed-t1
Participants: bqin, David Zhao and Tom Mueller

 Description   

The JMS functionality in the GlassFish server can be disabled by editing the
domain.xml to have an empty or missing <jms-service> element. However, there
isn't any way to do this from the asadmin command line. This RFE is a request for
being able to do this for asadmin.



 Comments   
Comment by bqin [ 19/Oct/12 05:44 AM ]

This is not a must for the release 4.0, defer it to 4.0.1.





[GLASSFISH-15675] Win2008, the machines had 2 interfaces & resolve a hostname to different IP addresses, MQ cluster is not configured to start correctly Created: 24/Jan/11  Updated: 08/May/13

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: None
Fix Version/s: 4.0.1

Type: Bug Priority: Major
Reporter: easarina Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

File Attachments: File domain.xml.asqe-oblade-15.das     File domain.xml.asqe-oblade-15.in3     File domain.xml.bigapp-oblade-1.in1     File domain.xml.bigapp-oblade-2.in2     Text File log.asqe-oblade-15     Text File log.bigapp-oblade-1     Text File log.bigapp-oblade-2     File log.txt.asqe-oblade-15.in3     File log.txt.bigapp-oblade-2.in2     File log.txt.bigapp-onlade-1.in1     File server.log.asaqe-oblade-15.das     File server.log.asqe-oblade-15.in3     File server.log.bigapp-oblade-2.in2     File server.log.bigapp-oblsde=1.in1    
Tags: 3_1_1-next 3_1_1-scrubbed 3_1_x-exclude bj-reviewed
Participants: amyk, David Zhao, easarina, Ed Bratt, Harshad Vilekar, Nazrul, Satish Kumar, scatari and Scott Fordin

 Description   

Installed b39 01/24 on three Windows 2008 machines and created a cluster with three instances.
On machine asqe-oblade-15 was DAS + in3
On bigapp-oblade-1 was in1
On bigapp-oblade-2 was in2

All machines had two interfaces:
====================================================
asqe-oblade-15:

Ethernet adapter Local Area Connection 4:

Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::45ab:2b84:5a4b:5573%17
Autoconfiguration IPv4 Address. . : 169.254.85.115
Subnet Mask . . . . . . . . . . . : 255.255.0.0
Default Gateway . . . . . . . . . :

Ethernet adapter Local Area Connection 3:

Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::c534:cb5:b3d0:c360%15
IPv4 Address. . . . . . . . . . . : 10.133.184.219
Subnet Mask . . . . . . . . . . . : 255.255.248.0
Default Gateway . . . . . . . . . : 10.133.184.1
==============================================================
bigapp-oblade-1

Ethernet adapter Local Area Connection 4:

Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::7019:1cf8:a9d8:5bf%15
Autoconfiguration IPv4 Address. . : 169.254.5.191
Subnet Mask . . . . . . . . . . . : 255.255.0.0
Default Gateway . . . . . . . . . :

Ethernet adapter Local Area Connection 3:

Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::952f:b761:6e84:9806%13
IPv4 Address. . . . . . . . . . . : 10.133.184.150
Subnet Mask . . . . . . . . . . . : 255.255.248.0
Default Gateway . . . . . . . . . : 10.133.184.1
=======================================================

bigapp-oblade-2

Ethernet adapter Local Area Connection 4:

Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::9470:82fc:3090:bca1%17
Autoconfiguration IPv4 Address. . : 169.254.188.161
Subnet Mask . . . . . . . . . . . : 255.255.0.0
Default Gateway . . . . . . . . . :

Ethernet adapter Local Area Connection 3:

Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::5520:3687:8953:eadc%15
IPv4 Address. . . . . . . . . . . : 10.133.184.174
Subnet Mask . . . . . . . . . . . : 255.255.248.0
Default Gateway . . . . . . . . . : 10.133.184.1
============================================================

Because of the configuration with two interfaces, MQ brokers did not start correctly, can not connect with master broker and so on.

Please see MQ logs.

I believe we either need to find how to configure MQ, to be able to start brokers correctly on Win machines with two interfaces, or to document that we don't support such configuration.



 Comments   
Comment by amyk [ 26/Jan/11 01:08 PM ]

1 of the machines resolved a same hostname to different IP addresses from the other 2 machines. Either the machines need to setup to resolve a hostname to the same IP address or GlassFish/JMS should be configured to use explicit IP addresses (if supported)

Comment by Ed Bratt [ 26/Jan/11 05:48 PM ]

All machines should be configured to resolve hostnames the same way. Can you fix the machine setup and retest? If not, can you show how this has been tested successfully in the past?

Comment by easarina [ 26/Jan/11 06:18 PM ]

1) How I should configure the machines please specify?
2) How to configure JMS to use the explicit IP address?

Comment by Satish Kumar [ 27/Jan/11 07:33 AM ]

I tried this on a Windows Vista machine with both the LAN and Wireless adapters enabled but I was not able to reproduce this issue.

Comment by Nazrul [ 27/Jan/11 01:26 PM ]

Getting help from Amy.

Comment by Ed Bratt [ 27/Jan/11 04:03 PM ]

Direct IP setup is described here:
(Sorry, it's an internal link at the moment)
http://icon.red.iplanet.com/export7/mq4.5/demo/admingui/glassfish-cluster-mq-default-mode-explicit-ip/gf31-mq45-defaultmode-cluster-explicit-ip-demo.html

Comment by amyk [ 27/Jan/11 09:57 PM ]

Explicitly set network interface to be used on multi-homed computers is documented in MQ Administration Guide on configuring broker conventional cluster. If explicit network interface is not set, "connections between brokers might not succeed and as a result, the cluster will not be established"
http://download.oracle.com/docs/cd/E19798-01/821-1794/aeoia/index.html

Comment by easarina [ 28/Jan/11 11:49 AM ]

I've followed the provided instruction. Only I setup the correct IP addresses under nodes not node agents. WAs used Local JMS mode

Then I've restarted several times domain and cluster. But then saw the same MQ issue and, for example, richAccess was not deployed correctly. I've attached domain.xml files, server.log files, mq log files

Comment by amyk [ 28/Jan/11 06:53 PM ]

Reassign back to Satish to provide updated instruction to QE to configure GlassFish/JMS to use explicit IP addresses for a cluster running on multiple machines.

Comment by Nazrul [ 01/Feb/11 11:11 AM ]

We need to document the steps for customer to use GlassFish 3.1 (JMS in this case) on a multi-home machine. In 3.2, we may improve the out-of-the-box experience.

Comment by Harshad Vilekar [ 02/Feb/11 07:35 AM ]

The instructions are updated to use default (EMBEDDED) mode broker, rather than using LOCAL mode.

Use explicit IP address on multi-homed computer having multiple interface cards. GlassFish JMS module needs to set the property "imq.hostname" - and pass it on to the MQ broker in embedded / local mode. Currently, explicit IP address is not handled end to end. The workaround is to edit Message Queue configuration file, and assign the IP address to "imq.hostname" property for each clustered broker. Please document / release note this until this issue is fixed.

-------------------------
1. For Multi Node cluster with MQ EMBEDDED mode: Assign explicit IP address to "imq.hostname" property for each clustered broker. The setup steps are documented at:
http://icon.red.iplanet.com/export7/mq4.5/demo/admingui/glassfish-cluster-mq-default-mode-explicit-ip/gf31-mq45-defaultmode-cluster-explicit-ip-demo.html

2. For MQ in REMOTE mode:

  • Use explicit ip addresses when setting these broker properties: imq.hostname, imq.cluster.masterbroker, imq.cluster.brokerlist
  • Also, when using JMS Connection Factory, use explicit IP addresses for "AddressList" property

For details, see Configuring and Managing Broker Clusters: http://download.oracle.com/docs/cd/E19798-01/821-1794/6nmolieds/index.html

3. If using LOCAL mode, the brokers start up OK when configured to explicit IP (and imq.hostname is set). However, the broker shutdown is not handled properly - and this leaves the MQ brokers running when GlassFish cluster is shutdown. So, it is best not to use LOCAL mode when deploying GlassFish On a multi-homed computer.
-------------------------

Comment by Nazrul [ 02/Feb/11 11:24 AM ]

We expect a segment of users to use LOCAL mode. So, we need a fix for this issue.

Comment by Nazrul [ 04/Feb/11 10:54 AM ]

This will not make the RC2 cutoff. So, marking it to be release noted.

Based on conversation with Satish and Sudipa, when the Win 2008 setup is available, we may try imq commands to see if we can come up with manual steps for users. Please update the bug when ready so that the information can be included in the release note.

Comment by Scott Fordin [ 24/Mar/11 03:15 PM ]

Need more info to include in the Release Notes.

Comment by Nazrul [ 21/Apr/11 10:50 AM ]

It would be useful to take a look at this during 3.1.1.

Comment by scatari [ 29/Apr/11 12:11 PM ]

Approved.

Comment by Satish Kumar [ 27/Jun/11 07:44 AM ]

Not targeting this for 3.1.1 since it requires critical changes and needs adequate QE support to test this on various platforms. The changes required to support multi-homed setups can also cause regressions.

Comment by Satish Kumar [ 08/Jul/11 01:04 PM ]

Downgrading the priority of this issue to Major since this is not critical for the 3.1.1 release. We plan to fix this in the next release.

Comment by easarina [ 18/Jul/11 09:18 PM ]

I believe we need to document a work around.

Comment by Satish Kumar [ 08/Dec/11 10:27 AM ]

As stated before this issue requires critical changes and needs adequate QE support to test this on various platforms. The changes required to support multi-homed setups can also cause regressions. Hence, not targeting this for 3.1.2





[GLASSFISH-16464] Message-store migration Created: 27/Apr/11  Updated: 10/Oct/12

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 4.0
Fix Version/s: future release

Type: New Feature Priority: Major
Reporter: Satish Kumar Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: David Zhao and Satish Kumar

 Description   

In conventional MQ clusters, before a broker can be removed from the cluster, the message store of the broker needs to be migrated over to another broker to prevent loss of messages. This feature is required to support elasticity of MQ clusters.






[GLASSFISH-16466] Integrating MQ monitoring statistics with GF monitoring framework Created: 27/Apr/11  Updated: 19/Oct/12

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 4.0
Fix Version/s: 4.0.1

Type: New Feature Priority: Major
Reporter: Satish Kumar Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: bqin, David Zhao and Satish Kumar

 Description   

The MQ broker provides a rich set of monitoring statistics that are currently not accessible through GF. A majority of these stats are implemented as JMX MBeans while a smaller number of them are only accessible through the MQ command line. In this release, we plan to provide access to these MQ monitoring statistics through the GF monitoring framework. The GF JMS module will implement the StatsProvider interface and will act as a proxy for these JMX MBeans. The primary focus will be on providing accessibility to the JMX enabled stats. Access to the non-JMX metrics will require code changes from MQ by either making these available through JMX or providing an alternative interface.



 Comments   
Comment by bqin [ 19/Oct/12 05:52 AM ]

This is not a must for 4.0 releaase,defer it with other monitoring issues to 4.0.1.





[GLASSFISH-16467] Support for conventional peer broker clusters with Berkeley DB Created: 27/Apr/11  Updated: 23/Oct/12

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 4.0
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: Satish Kumar Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: jms4candidate
Participants: David Zhao and Satish Kumar

 Description   

MQ 4.6 is introducing support for Oracle Berkeley DB as a persistent store type to address the elasticity requirements. BDB is a light-weight, highly scalable, embeddable, transactional database with a very low memory foot-print.

This requires changes to the configure-jms-cluster CLI command to enable users to configure this option and to the broker start-up properties that are passed in from the ActiveJMSResourceAdapter at start-up time.






[GLASSFISH-15934] Add support for multi-homed machines when using JMS Created: 10/Feb/11  Updated: 19/Oct/12

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 3.1_b41
Fix Version/s: 4.0.1

Type: Improvement Priority: Major
Reporter: Nigel Deakin Assignee: David Zhao
Resolution: Unresolved Votes: 1
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: bj-reviewed-t3
Participants: bqin, David Zhao, jthoennes and Nigel Deakin

 Description   

GlassFish users need to be able to deploy GlassFish instances which use managed MQ brokers on multi-homed machines. The following use cases need to be supported:

1. Standalone and clustered (conventional using master broker, conventional using shared config db, and enhanced) brokers

2. EMBEDDED (for conventional and standalone) and LOCAL (for conventional, enhanced and standalone) brokers

3. Where the administrator wishes to configure the MQ broker to accept connections on ALL network interfaces for all broker services including the port mapper and the JMS service, and irrespective of whether port mapper connections are being handled by a Grizzly proxy or by the broker itself.

4. Where the administrator wishes to configure the MQ broker to SPECIFY the network interface used by all broker services including the port mapper and the JMS service, and irrespective of whether port mapper connections are being handled by a Grizzly proxy or by the broker itself.

It should be possible to perform all necessary configuration using asadmin or the GlassFish admin console, and perform remote deployment using "nodes" in the normal way.

In case (3) above, the comment made by user Foobartender in issue 11254 needs to be addressed:
http://java.net/jira/browse/GLASSFISH-11254?focusedCommentId=299711&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_299711



 Comments   
Comment by jthoennes [ 06/Jun/12 07:14 AM ]

Will this be corrected for GF 4.0?

Comment by bqin [ 19/Oct/12 05:49 AM ]

Defer it to 4.0.1 so we can focus on other issues targeted for 4.0.





[GLASSFISH-16811] JMS - connection refused on 7676 when domain uses 6767 Created: 06/Jun/11  Updated: 06/Jun/13

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: None
Fix Version/s: 4.0.1

Type: Bug Priority: Major
Reporter: amyk Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to GLASSFISH-20606 create-domain subcommand doesn't writ... Open
Tags: 3_1-next 3_1_1-scrubbed 3_1_2-exclude
Participants: amyk, David Zhao, Satish Kumar and scatari

 Description   

The following is reported from admin@glassfish.java.net
http://java.net/projects/glassfish/lists/admin/archive/2011-06/message/9

--------------------------------
Hi everyone,

We have an application (J2EE) which is JMS based. In order to isolate it from other applications - we always set up a new domain with following port configuration:

ADMIN_PORT=4949

JMX_PORT=6868

JMS_PORT=6767

HTTP_PORT=8585

HTTPS_PORT=1818

ORB_PORT=7300

ORBS_PORT=8302

ORBM_PORT=9302

It turns out that sometimes I see JMS component trying to connect on JMS default port (7676) instead of configured one (6767):

[#|2011-05-23T11:48:29.917-0300|INFO|sun-appserver2.1|javax.resourceadapter.mqjmsra.lifecycle|_ThreadID=10;_ThreadName=main;|MQJMSRA_RA1101: SJSMQ JMS Resource Adapter starting...|#]
[#|2011-05-23T11:48:29.964-0300|INFO|sun-appserver2.1|javax.resourceadapter.mqjmsra.lifecycle|_ThreadID=10;_ThreadName=main;|MQJMSRA_LB1101: Looking for Broker Running at:localhost:6767|#]

[#|2011-05-23T11:49:44.529-0300|WARNING|sun-appserver2.1|javax.jms|_ThreadID=23;_ThreadName=p: thread-pool-1; w: 4;_RequestID=138cb0fe-ad3f-42c1-a11f-88d16c111043;|[C4003]: Error occurred on connection creation [localhost:7676]. - cause: java.net.ConnectException: Connection refused: connect|#]
[#|2011-05-23T11:49:50.576-0300|WARNING|sun-appserver2.1|javax.jms|_ThreadID=23;_ThreadName=p: thread-pool-1; w: 4;_RequestID=138cb0fe-ad3f-42c1-a11f-88d16c111043;|[C4003]: Error occurred on connection creation [localhost:7676]. - cause: java.net.ConnectException: Connection refused: connect|#]
[#|2011-05-23T11:49:56.482-0300|WARNING|sun-appserver2.1|javax.jms|_ThreadID=23;_ThreadName=p: thread-pool-1; w: 4;_RequestID=138cb0fe-ad3f-42c1-a11f-88d16c111043;|[C4003]: Error occurred on connection creation [localhost:7676]. - cause: java.net.ConnectException: Connection refused: connect|#]

Sometimes there are many messages like that in a row (Log file is attached).

I´m wondering if this something internal from Glassfish or something that application does - like a producer which is being initialized with wrong attibuttes.
Even within this error appearing our application communicate with other part.

Anyone already had similar situation?
Thanks in advance,

Márcio Geovani Jasinski
Blumenau, Santa Catarina
Fone: +55 47 9653 4899



 Comments   
Comment by amyk [ 14/Jun/11 01:32 PM ]

From Márcio Geovani Jasinski:

"Until now this seems to have no impact on JMS communication. We have another issue which is openmq shutdown. But I don't think both issues are related. Anyway, this is the discussion link just in case you would like to read and consider whether it is might be related:
http://www.java.net/forum/topic/glassfish/glassfish/openmq-unexpected-shutdown"

Comment by scatari [ 25/Jun/11 07:14 PM ]

Marking as to be considered for next release as according to the submitted report the functionality is not lost.

Comment by Satish Kumar [ 18/Nov/11 07:17 PM ]

It is difficult to diagnose what exactly is happening here without looking at the domain.xml. Please ensure that the jms-service entry is correct for server-config and should be as follows:
<jms-service default-jms-host="default_JMS_host" type="EMBEDDED">
<jms-host host="localhost" port="${JMS_PROVIDER_PORT}" name="default_JMS_host"></jms-host>
</jms-service>

The only time it will try and connect to 7676 is if the jms-host.port is not specified. then it defaults to 7676.

Comment by David Zhao [ 06/Jun/13 02:29 AM ]

I cannot reproduce it with glassfish4 for the defect which was reported against a pretty old version. But I do see that create-domain subcommand doesn't deal with jms.port correctly, so default jms port 7676 could be used for a new domain with different jms.port property. Issue GLASSFISH-20606 was filed for that.





[GLASSFISH-17049] glassfish-resources.xml: jms-connection-factory and jms-destination Created: 15/Jul/11  Updated: 19/Oct/12

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 3.1.1_b11
Fix Version/s: 4.0.1

Type: Improvement Priority: Major
Reporter: mkarg Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Win7 Pro SP1 64 Bit de_DE


Tags:
Participants: David Zhao, Hong Zhang, Jagadish and mkarg

 Description   

The browser based admin GUI allows the creation of JMS Connection Factory and JMS Destination Resoury with very few clicks and by provision of minimum values.

The glassfish-resource.xml file has no such comfort, and forces deployers to scan the manuals for the names of the jmsra properties for learn how to configure the same resources using the descriptor file.

It would be much more comfortable to have the following possibility:

<jms-connection-factory pool-name="MyPool" resource-type="javax.jms.ConnectionFactory" max-pool-size="1000" />

<jms-destination jndi-name="MyTopic" physical-destination-name="MyTopic" resource-type="javax.jms.Topic" />



 Comments   
Comment by Hong Zhang [ 15/Jul/11 01:11 PM ]

assign to jagadish for evaluation

Comment by Jagadish [ 15/Jul/11 01:19 PM ]

glassfish-resources.xml's configuration is based on <resources> configuration in domain.xml.

The configuration of jms-resource should be defined by jms team. Transferring to jms category.





[GLASSFISH-17051] Show JMS status Created: 15/Jul/11  Updated: 19/Oct/12

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 3.1.1_b11
Fix Version/s: 4.0.1

Type: New Feature Priority: Major
Reporter: mkarg Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Win7 Pro SP1 64 Bit de_DE


Tags:
Participants: Anissa Lam, bqin, David Zhao and mkarg

 Description   

Sometimes we would be glad if the admin gui would show the status of JMS objects. For example, how many connections are currently open and what client IP address opened it. Or, what length has a queue? Or whether a particular message is getting re-sent lots of times. Or, how long a queue is. Or whether the DMQ is empty or not and if not, what the content is.



 Comments   
Comment by Anissa Lam [ 19/Oct/12 05:36 AM ]

Assign to JMS team. When this is implemented and the statistics is available, please transfer to admingui to finish the UI work.

Comment by bqin [ 19/Oct/12 05:50 AM ]

Defer it with other related monitoring issues to 4.0.1.





[GLASSFISH-18147] Allow bundled JMS provider JMX mbeans to be available via DAS Created: 07/Jan/12  Updated: 10/Oct/12

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 3.1.1, 4.0
Fix Version/s: 4.0.1

Type: New Feature Priority: Major
Reporter: Sanjeeb Sahoo Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: David Zhao and Sanjeeb Sahoo

 Description   

I don't understand why this has not been done so far. Is it not expected that an administrator should be able to connect to DAS JMX interface and reach all components managed by the same? Bundled JMS provider is one such managed component.



 Comments   
Comment by Sanjeeb Sahoo [ 10/Oct/12 10:50 AM ]

You may like to fix it in some future versions, but that does not change the fact that it applies to GF 3.1.x.





[GLASSFISH-18715] Cannot deny user(s) from producing messages for queues Created: 10/May/12  Updated: 06/Jun/13

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 3.1.2
Fix Version/s: 4.0.1

Type: Bug Priority: Major
Reporter: ashie1287 Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

RHEL5, OpenMQ 4.5, PostgreSQL as persistent store, OpenLDAP as user repository


Issue Links:
Dependency
depends on MQ-307 username/password parameters in Conne... Open
depends on MQ-308 accesscontrol: produce.allow with '*'... Resolved
Tags:
Participants: ashie1287 and David Zhao

 Description   

My broker has the following in etc/accesscontrol.properties

###
version=JMQFileAccessControlModel/100
connection.NORMAL.allow.user=*
connection.ADMIN.allow.group=admins

queue..produce.allow.user=
queue..consume.allow.user=

queue.queuename.produce.deny.user=someone
###

What happens:

  • the user 'someone' is allowed to create a producer for queue 'queuename'

What was expected:

  • the user 'someone' should be denied when trying to create a producer for queue 'queuename'

Other notes:

  • if this same type of scenario is repeated for a topic, things work as expected
  • if instead we deny consuming of a queue (e.g. queue.queuename.consume.deny.user=someone) instead of producing of a queue, things work as expected

Seems odd that just this one scenario causes a problem, so it may be worth trying similar ones.



 Comments   
Comment by ashie1287 [ 10/May/12 02:49 PM ]

Did not know that the summary field of the bug uses some kind of markup. Here is what I meant for the accesscontrol.properties file:

###
version=JMQFileAccessControlModel/100
connection.NORMAL.allow.user=*
connection.ADMIN.allow.group=admins

queue.*.produce.allow.user=*
queue.*.consume.allow.user=*

queue.queuename.produce.deny.user=someone
###

Comment by David Zhao [ 06/Jun/13 06:56 AM ]

This partially depends on MQ-307 for applying custom username/password to create connection/producer.

Comment by David Zhao [ 06/Jun/13 08:27 AM ]

Add dependency on MQ-308





[GLASSFISH-19737] Provide default properties in create-jms-resource for admin gui Created: 28/Feb/13  Updated: 28/Feb/13

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 4.0
Fix Version/s: future release

Type: Improvement Priority: Major
Reporter: David Zhao Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: David Zhao

 Description   

Currently when creating new jms connection factory via the admin gui, it makes REST calls to create-connector-connection-pool and create-connector-resource separately. It is expected to be changed to call create-jms-resource REST service. But now the REST service of create-jms-resource doesn't return all the default values of create-connector-connection-pool and create-connector-resource. We need find a way to allow it for the admin gui use.






[GLASSFISH-20430] JMS set to Local with start arguments having Xmx results in 2 Xmx args being passed to jvm Created: 29/Apr/13  Updated: 09/May/13

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: None
Fix Version/s: 4.0.1

Type: Bug Priority: Major
Reporter: pbelbin Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

jdk 7u17 on solaris and windows


Issue Links:
Dependency
depends on MQ-300 Remove default -Xmx property if it is... Open
Tags: fishcat
Participants: David Zhao and pbelbin

 Description   

I have the JMS broker set as 'LOCAL' and have specified the following in the start arguments:

-vmargs -Xmx512m

however, I see the jvm for the broker was started with:

-Xms192m -Xmx192m -Xss192k -Xmx512m

there shouldn't be two Xmx options should there??






[GLASSFISH-20707] GlassFish V3 Embedded Broker fails to use DAS GF JMX port (RmiRegistry) when its secured Created: 18/Jul/13  Updated: 15/Aug/13

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: gfuser9999 Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:
  • GFv3122
  • OS any
  • JDK any

Issue Links:
Dependency
depends on MQ-326 Support external secured RMI Registry Open
blocks GLASSFISH-20714 GlassFish Broker's Use Of An RMI Regi... Open
Tags: MQ GF RMIRegistry extra port jms jmx
Participants: David Zhao and gfuser9999

 Description   

In GFv3, for the Admin-Connector (JMX connector) enable security-enable from false to true. When this is done, the the GlassFish MQ JMX will dynamically create a new RMIRegistry and unable to use GlassFish JMX port (8888)

Testcase:
---------
[Baseline]
1. Use a stock GF with embedded MQ.
2. Enable logger for javax.enterprise.resource.resourceadapter
& javax.enterprise.resource.jms.level to be FINE
3. Access the MQ by say "telneting to the MQ portmapper port 7676)
(since by default MQ is lazy initialized)
4. Now, you can see the MQ JMX port

  1. imq list jmx -b :7676
    should give you something like
    "service:jmx:rmi://<host>/jndi/rmi://<host>:8888/<host>/7676/jmxrmi"
    • Notice that the GF DAS RMI registry 8888 is used.

[JMX Admin-service security enabled] Now, secure the GF JMX connector

1. Restart, and redo step 3 & 4
2. # imq list jmx -b :7676 shows
"service:jmx:rmi://<host>/jndi/rmi://<host>:7776/<host>/7676/jmxrmi"

      • Note port 7776 (which is 7676+100 is created for the MQ rmi registry)

Concerns:
----------
a) More ports are used than needed.
b) The MQ port itself is +100 of the MQ portmapper (not changeable unless
using undocumented option).
Not settable too (always default to +100)

====
Logs:
====
[#|2013-07-17T12:17:55.167+0000|FINE|oracle-glassfish3.1.2|javax.enterprise.resource.jms.com.sun.enterprise.connectors.jms.system|_ThreadID=29;_ThreadName=Grizzly-kernel-thread(1);ClassName=com.sun.enterprise.connectors.jms.system.ActiveJmsResourceAdapter;MethodName=logFine;|isASRmiRegistryPortAvailable - JMSService Type:EMBEDDED|#]

[#|2013-07-17T12:17:55.170+0000|FINE|oracle-glassfish3.1.2|javax.enterprise.resource.jms.com.sun.enterprise.connectors.jms.system|_ThreadID=29;_ThreadName=Grizzly-kernel-thread(1);ClassName=com.sun.enterprise.connectors.jms.system.ActiveJmsResourceAdapter;MethodName=isASRmiRegistryPortAvailable;|Attempting to list rmi://0.0.0.0:8888|#]

[#|2013-07-17T12:17:55.181+0000|FINE|oracle-glassfish3.1.2|javax.enterprise.resource.jms.com.sun.enterprise.connectors.jms.system|_ThreadID=29;_ThreadName=Grizzly-kernel-thread(1);ClassName=com.sun.enterprise.connectors.jms.system.ActiveJmsResourceAdapter;MethodName=isASRmiRegistryPortAvailable;|non-JRMP server at remote endpoint rmi://0.0.0.0:8888|#]

      • Due to securing GFv3.x RMIRegistry, the testing of this fails
        with non-JRMP hence MQ create a new RMIRegistry for the MQ JMX.





[GLASSFISH-20714] GlassFish Broker's Use Of An RMI Registry Port Must Be Configurable And Documented Created: 19/Jul/13  Updated: 15/Aug/13

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 3.1.2.2
Fix Version/s: None

Type: Bug Priority: Major
Reporter: tecknobabble Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Generic


Issue Links:
Dependency
depends on GLASSFISH-20707 GlassFish V3 Embedded Broker fails to... Open
depends on GLASSFISH-20708 GlassFish V3 Broker fails to use the ... Resolved
Tags:
Participants: David Zhao and tecknobabble

 Description   

This issue is related to GLASSFISH-20707 and GLASSFISH-20708.

The MQ broker's use of an RMI Registry port, in both embedded and local mode, needs to be something that can be controlled and configured by the end user, rather than having the resource adapter pick an arbitrary port of its own choosing - even if the value used can be predicted (mq broker port + 100).

The use of the RMI port also needs to be documented and explained and absolutely MUST be included in the list of known ports.

See: http://docs.oracle.com/cd/E26576_01/doc.312/e24939/release-notes.htm#ggpoq

which lists the MQ port mapper, admin and jms ports, and how the admin and jms ports can be configured. The same level of detail will be needed with the RMI Registry port.






[GLASSFISH-20945] Glassfish 3.1.1 enhanced broker cluster Created: 08/Jan/14  Updated: 23/Feb/14

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 3.1.2.2
Fix Version/s: None

Type: Bug Priority: Major
Reporter: sp88 Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: amyk, David Zhao and sp88

 Description   

Hi,

This is regarding glassfish IMQ JMS enhanced broker cluster.

The official documentation says that a enhanced broker cluster can be made by running the below command.

asadmin --passwordfile password-file configure-jms-cluster --clustertype=enhanced --configstoretype=shareddb --messagestoretype=jdbc --dbvendor database-vendor-name --dbuser database-user-name --dburl database-url
--property list-of-database-specific-properties glassfish-cluster-name

But it throws this error while running. "remote failure: configstoretype option is not configurable for Enhanced clusters."

Creating an enhanced broker cluster without starting glassfish at all is working fine. But then am doing that with imq commands. But i want my glassfish cluster to use this imq brokers.

The official documentation also says to start the imqbroker for the first time so that it creates the file glassfish/domains/domain1/imq/instances/imqbroker/props/config.properties. I have modified that config.properties file with the below stuff for db and broker id details.

imq.persist.jdbc.mysql.user=root
imq.cluster.ha=true
imq.persist.jdbc.dbVendor=mysql
imq.brokerid=broker1
imq.persist.jdbc.mysql.password=password
imq.persist.jdbc.vendorName.tableoption=CHARSET\=latin1
imq.persist.jdbc.mysql.property.url=jdbc\:mysql\://dbhost\:3306/mydb
imq.cluster.clusterid=mycluster
imq.persist.store=jdbc

But after starting glassfish and trying to do a imqcmd list bkr, am getting the following.

Error while connecting to the broker on host 'localhost' and port '7676'.
com.sun.messaging.jms.JMSException: [C4098]: Unknown broker service: admin
Please verify that there is a broker running on the specified host and port or
use the '-b' option to specify the correct broker host and port.

Please help me out in getting a glassfish IMQ enhanced broker cluster (where brokers are on different hosts) running. Please let me know if am doing something wrong here.

Regards
Sarath



 Comments   
Comment by David Zhao [ 09/Jan/14 02:16 AM ]

You are talking about 2 things here.

For the first one, it is like a doc defect to me about configure-jms-cluster. But the configstoretype and messagestoretype are ignored if clustertype is set to enhanced according to the command description (http://docs.oracle.com/cd/E26576_01/doc.312/e24938/configure-jms-cluster.htm#GSRFM00008). So you can just ignore those options when you are creating enhanced local broker cluster as a workaround.

For the second one, please make sure you are changing the correct imqbroker property files. In general, glassfish/domains/domain1/imq/instances/imqbroker/props/config.properties is for default server's use unless you add the server to the cluster specifically.

Normally, the steps to create a jms cluster of glassfish is as follows:

asadmin start-domain
asadmin create-cluster
asadmin configure-jms-cluster
asadmin create-local-instance --cluster ...
asadmin create-local-instance --cluster ...
asadmin start-cluster

Comment by sp88 [ 09/Jan/14 08:47 AM ]

HI David Zhao,

Thanks for your response.

So the thing am trying to achieve is this. I need a glassfish cluster with two instances (one local and one remote instance on another host). And this cluster must be enahanced broker cluster. Similar to instances, one broker must be on local instance and the other broker must be on the another host.

How am trying to do this. First am trying to create the config.properties file by starting imqbroker by using imqbrokerd command (this is official documented in glassfish)

Once the config.properties file is created, am modifying it with the following content so that a shareddb can be used by all brokers in the cluster (as soon as a new broker is added with the same DB config, it automatically gets detected)

imq.persist.jdbc.mysql.user=root
imq.cluster.ha=true
imq.persist.jdbc.dbVendor=mysql
imq.brokerid=broker1
imq.persist.jdbc.mysql.password=password
imq.persist.jdbc.vendorName.tableoption=CHARSET\=latin1
imq.persist.jdbc.mysql.property.url=jdbc\:mysql\://mydb.mydomain.com\:3306/vidispine
imq.cluster.clusterid=vsha
imq.persist.store=jdbc

But after adding the above stuff to the config file glassfish/domains/domain1/imq/instances/imqbroker/props/config.properties. Restarting glassfish domain is working fine. But am getting an error while listing the brokers locally.

Username: admin
Password:
Listing all the brokers in the cluster that the following broker is a member of:

-------------------------
Host Primary Port
-------------------------
localhost 7676

Error while connecting to the broker on host 'localhost' and port '7676'.
com.sun.messaging.jms.JMSException: [C4098]: Unknown broker service: admin
Please verify that there is a broker running on the specified host and port or
use the '-b' option to specify the correct broker host and port.

Listing the brokers in the cluster failed.

Can u help me get this done..Or am i doing some mistake here...

Thanks & Regards
sarath

Comment by David Zhao [ 10/Jan/14 08:37 AM ]

According to the error message, it seems no broker is running on port 7676. You can check the imq logs to see the broker status.

Comment by amyk [ 23/Feb/14 05:51 PM ]

If you start broker with imqbrokerd, then you need to configure the GlassFish JMS service to use REMOTE type, otherwise GlassFish instance will start its own broker instance on self-generated port if you didn't configure the port
http://docs.oracle.com/cd/E18930_01/html/821-2416/beaof.html#scrolltoc





[GLASSFISH-20973] annotated JMS ConnectionFactory doesn't enroll in container managed transaction Created: 07/Feb/14  Updated: 03/Mar/14

Status: Reopened
Project: glassfish
Component/s: jms
Affects Version/s: 4.0
Fix Version/s: 4.0.1

Type: Bug Priority: Major
Reporter: pranahata Assignee: David Zhao
Resolution: Unresolved Votes: 3
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

GF v4.0


File Attachments: Zip Archive JmsNoEnroleInTransaction.zip     File JmsNoEnroleInTransaction.zip.exe    
Issue Links:
Duplicate
is duplicated by GLASSFISH-20975 JMS doesn't enrol in container manage... Resolved
Tags:
Participants: amyk, David Zhao, Nigel Deakin and pranahata

 Description   

On the attached example, a 12 messages are sent via 1.1 and 2.0 style to 2 destinations and then ctx.setRollbackOnly() is invoked. All messages arrive at two destinations, one outside the EJB container (Java SE) and on MDBs inside the container.



 Comments   
Comment by pranahata [ 07/Feb/14 10:24 AM ]

Can't attach file, so pasting here

package ejbs;
/*
 *  Copyright © - 2014 Anahata Technologies.
 */

import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import javax.ejb.EJBContext;
import javax.ejb.Stateless;
import javax.ejb.TransactionManagement;
import javax.ejb.TransactionManagementType;
import javax.inject.Inject;
import javax.jms.*;

/**
 *
 * @author Pablo Rodriguez Pina <pablo@anahata-it.com.au>
 */
@JMSConnectionFactoryDefinition(
        name = "java:module/jms/annotationCF",
        maxPoolSize = 30,
        minPoolSize = 20,
        interfaceName = "javax.jms.TopicXAConnectionFactory",
        properties = {
            "addressList=mq://localhost:7676",
            "reconnectEnabled=true"
        }
)
@JMSDestinationDefinition(
        name = "java:module/jms/annotationTopic",
        interfaceName = "javax.jms.Topic",
        description = "Yam Dms Event Topic",
        destinationName = "annotationTopic"
)
@Stateless
@TransactionManagement(TransactionManagementType.CONTAINER)
public class JmsBean {
    @Resource(lookup = "java:module/jms/annotationCF")
    private ConnectionFactory annotationCF;

    @Inject
    @JMSConnectionFactory("java:module/jms/annotationCF")
    @JMSSessionMode(JMSContext.SESSION_TRANSACTED)
    private JMSContext annotationInjectedContext;

    @Resource(lookup = "java:module/jms/annotationTopic")
    private Topic annotationTopic;

    @Resource(lookup = "jms/gf-resourcesCF")
    private ConnectionFactory resourcesCF;
//

    @Inject
    @JMSConnectionFactory("jms/gf-resourcesCF")
    private JMSContext resourcesInjectedContext;
//

    @Resource(lookup = "jms/resourcesTopic")
    private Topic resourcesTopic;

    @Resource
    private EJBContext ctx;

    @PostConstruct
    public void postConstruct() {
        System.out.println("annotationCF=" + annotationCF);
        System.out.println("resourcesCF=" + resourcesCF);
    }

    public void sendMessages() {
        sendMessage11(annotationCF, annotationTopic, "annotationCF + annotationTopic 1.1");
        sendMessage11(annotationCF, resourcesTopic, "annotationCF + resourcesTopic 1.1");
        sendMessage11(resourcesCF, resourcesTopic, "resourcesCF + annotationTopic 1.1");
        sendMessage11(resourcesCF, annotationTopic, "resourcesCF + annotationTopic 1.1");

        sendMessage20CreateContext(annotationCF, annotationTopic, "annotationCF + annotationTopic + created context 2.0");
        sendMessage20CreateContext(annotationCF, resourcesTopic, "annotationCF + resourcesTopic + created context 2.0");
        sendMessage20CreateContext(resourcesCF, resourcesTopic, "resourcesCF + resourcesTopic + created context 2.0");
        sendMessage20CreateContext(resourcesCF, annotationTopic, "resourcesCF + annotationTopic + created context 2.0");

        sendMessage20(annotationInjectedContext, annotationTopic, "annotationInjectedContext + annotationTopic 2.0");
        sendMessage20(annotationInjectedContext, resourcesTopic, "annotationInjectedContext + annotationTopic 2.0");
        sendMessage20(resourcesInjectedContext, resourcesTopic, "resourcesInjectedContext + resourcesTopic 2.0");
        sendMessage20(resourcesInjectedContext, annotationTopic, "resourcesInjectedContext + resourcesTopic 2.0");
        System.out.println("rolling back on sendMessages()");
        ctx.setRollbackOnly();
    }

    private void sendMessage20CreateContext(ConnectionFactory cf, Topic topic, String message) {
        try (JMSContext ctx = cf.createContext()) {
            sendMessage20(ctx, topic, message);
        }
    }

    private void sendMessage20(JMSContext context, Topic topic, String message) {
        JMSProducer producer = context.createProducer();
        producer.send(topic, message);
    }

    private void sendMessage11(ConnectionFactory cf, Topic topic, String message) {
        try {
            try (Connection con = cf.createConnection()) {
                try (Session s = con.createSession(true, 0)) {
                    MessageProducer mp = s.createProducer(topic);
                    TextMessage om = s.createTextMessage();
                    om.setText(message);
                    mp.send(om);
                }
            }

        } catch (JMSException e) {
            e.printStackTrace();
        }

    }
}


---------------------------------------------------------------------------------------------



/*
 *  Copyright © - 2014 Anahata Technologies.
 */
package javase;

//import com.sun.messaging.ConnectionConfiguration;
import static java.lang.StrictMath.*;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.annotation.Resource;
import javax.ejb.EJBContext;
import javax.enterprise.context.ApplicationScoped;
import javax.jms.*;

/**
 *
 * @author Pablo Rodriguez Pina <pablo@anahata-it.com.au>
 */
public class JMSListener {
    private Connection connection;

    private Session session;

    private Topic topic;

    public void init(String topicName) throws Exception {
        long ts = System.currentTimeMillis();
        com.sun.messaging.ConnectionFactory cf = new com.sun.messaging.ConnectionFactory();
        cf.setProperty(ConnectionConfiguration.imqAddressList, "localhost:7676");
        cf.setProperty(ConnectionConfiguration.imqReconnectEnabled, "true");
        connection = cf.createConnection("guest", "guest");
        connection.setExceptionListener(new ExceptionListener() {
            @Override
            public void onException(JMSException exception) {
                System.out.println("exception: " + exception);
            }
        });
        session = connection.createSession(true, Session.SESSION_TRANSACTED);
        topic = session.createTopic(topicName);
        connection.start();
        MessageConsumer messageConsumer = session.createConsumer(topic);
        messageConsumer.setMessageListener(new MessageListener() {
            @Override
            public void onMessage(Message message) {
                try {
                    System.out.println("Got message " + ((TextMessage)message).getText());
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }

    public static void main(String[] args) throws Exception {
        new JMSListener().init("annotationTopic");
        new JMSListener().init("resourcesTopic");
    }

}

Comment by David Zhao [ 17/Feb/14 02:58 AM ]

Duplicate to GLASSFISH-20975.

Comment by amyk [ 27/Feb/14 07:32 AM ]

With following simplified test case, it shows the one that has issue is annotated JMS ConnectionFactory (Summary changed accordingly),

1. Use 2 components: a) application client component to invoke the b) stateless session bean JmsBean.sendMessages()
2. Change the test to use Queues instead of Topics so that messages will be retained in its Queue after test (no consumer)
3. Modify JmsBean to set a property on each message sent to indicate how the message is sent, e.g.
SEND_HOW="annotationCF + annotationTopic 1.1"
4. When the test completes, run 'imqcmd list dst' to see any messages in the 2 Queues and use 'imqcmd list/query msg' (a GlassFish MQ unofficial feature) to examine each message's SEND_HOW property in the Queues

[also the original test case should specify the interfaceName in JMSConnectionFactoryDefinition with a permitted value, see http://docs.oracle.com/javaee/7/api/javax/jms/JMSConnectionFactoryDefinition.html]

After 1-4 steps, the result indicated following (see details below) sendMessage11/20 operations are not enrolled in the transaction, whereas other sendMessage11/20 operations are rolled back as expected.

sendMessage11(annotationCF, annotationQueue, "annotationCF + annotationQueue 1.1");
sendMessage11(annotationCF, resourcesQueue, "annotationCF + resourcesQueue 1.1");

sendMessage20CreateContext(annotationCF, annotationQueue, "annotationCF + annotationQueue + created context 2.0");
sendMessage20CreateContext(annotationCF, resourcesQueue, "annotationCF + resourcesQueue + created context 2.0");

sendMessage20(annotationInjectedContext, annotationQueue, "annotationInjectedContext + annotationQueue 2.0");
sendMessage20(annotationInjectedContext, resourcesQueue, "annotationInjectedContext + annotationQueue 2.0");

========'imqcmd list/query msg' outputs after the test, notices the SEND_HOW property values

imqcmd list msg -t q -n annotationQueue -u admin -pw admin -nocheck
Listing messages for the destination
------------------------------------
Destination Name Destination Type
------------------------------------
annotationQueue Queue

On the broker specified by:

-------------------------
Host Primary Port
-------------------------
localhost 7676

------------------------------------------------------------------------------------------------
Message # Message IDs Priority Body Type
------------------------------------------------------------------------------------------------
0 ID:189-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374749 4 TextMessage
1 ID:219-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374874 4 TextMessage
2 ID:249-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374889 4 TextMessage

Successfully listed messages.

imqcmd query msg -t q -n annotationQueue -msgID "ID:189-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374749" -nocheck

Querying message:
-----------------------------------------------------------
Message ID
-----------------------------------------------------------
ID:189-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374749

In the destination
------------------------------------
Destination Name Destination Type
------------------------------------
annotationQueue Queue

On the broker specified by:

-------------------------
Host Primary Port
-------------------------
localhost 7676

--------------------------
Message Header Information
--------------------------
Message ID ID:189-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374749
Correlation ID
Destination Name annotationQueue
Destination Type Queue
Delivery Mode PERSISTENT (2)
Priority 4
Redelivered false
Timestamp 2/26/14 10:09:34 PM
Type
Expiration 12/31/69 4:00:00 PM
ReplyTo Destination Name
ReplyTo Destination Type

------------------------------
Message Properties Information
------------------------------
SEND_HOW annotationCF + annotationQueue 1.1

------------------------
Message Body Information
------------------------
Body Type TextMessage (1)

Successfully queried message.

imqcmd query msg -t q -n annotationQueue -msgID "ID:219-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374874" -nocheck

Querying message:
-----------------------------------------------------------
Message ID
-----------------------------------------------------------
ID:219-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374874

In the destination
------------------------------------
Destination Name Destination Type
------------------------------------
annotationQueue Queue

On the broker specified by:

-------------------------
Host Primary Port
-------------------------
localhost 7676

--------------------------
Message Header Information
--------------------------
Message ID ID:219-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374874
Correlation ID
Destination Name annotationQueue
Destination Type Queue
Delivery Mode PERSISTENT (2)
Priority 4
Redelivered false
Timestamp 2/26/14 10:09:34 PM
Type
Expiration 12/31/69 4:00:00 PM
ReplyTo Destination Name
ReplyTo Destination Type

------------------------------
Message Properties Information
------------------------------
SEND_HOW annotationCF + annotationQueue + created context 2.0

------------------------
Message Body Information
------------------------
Body Type TextMessage (1)

Successfully queried message.

imqcmd query msg -t q -n annotationQueue -msgID "ID:249-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374889" -nocheck

Querying message:
-----------------------------------------------------------
Message ID
-----------------------------------------------------------
ID:249-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374889

In the destination
------------------------------------
Destination Name Destination Type
------------------------------------
annotationQueue Queue

On the broker specified by:

-------------------------
Host Primary Port
-------------------------
localhost 7676

--------------------------
Message Header Information
--------------------------
Message ID ID:249-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374889
Correlation ID
Destination Name annotationQueue
Destination Type Queue
Delivery Mode PERSISTENT (2)
Priority 4
Redelivered false
Timestamp 2/26/14 10:09:34 PM
Type
Expiration 12/31/69 4:00:00 PM
ReplyTo Destination Name
ReplyTo Destination Type

------------------------------
Message Properties Information
------------------------------
SEND_HOW annotationInjectedContext + annotationQueue 2.0

------------------------
Message Body Information
------------------------
Body Type TextMessage (1)

Successfully queried message.

imqcmd list msg -t q -n resourcesQueue -nocheck

Listing messages for the destination
------------------------------------
Destination Name Destination Type
------------------------------------
resourcesQueue Queue

On the broker specified by:

-------------------------
Host Primary Port
-------------------------
localhost 7676

------------------------------------------------------------------------------------------------
Message # Message IDs Priority Body Type
------------------------------------------------------------------------------------------------
0 ID:203-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374764 4 TextMessage
1 ID:233-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374878 4 TextMessage
2 ID:255-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374890 4 TextMessage

Successfully listed messages.

imqcmd query msg -t q -n resourcesQueue -msgID "ID:203-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374764" -nocheck

Querying message:
-----------------------------------------------------------
Message ID
-----------------------------------------------------------
ID:203-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374764

In the destination
------------------------------------
Destination Name Destination Type
------------------------------------
resourcesQueue Queue

On the broker specified by:

-------------------------
Host Primary Port
-------------------------
localhost 7676

--------------------------
Message Header Information
--------------------------
Message ID ID:203-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374764
Correlation ID
Destination Name resourcesQueue
Destination Type Queue
Delivery Mode PERSISTENT (2)
Priority 4
Redelivered false
Timestamp 2/26/14 10:09:34 PM
Type
Expiration 12/31/69 4:00:00 PM
ReplyTo Destination Name
ReplyTo Destination Type

------------------------------
Message Properties Information
------------------------------
SEND_HOW annotationCF + resourcesQueue 1.1

------------------------
Message Body Information
------------------------
Body Type TextMessage (1)

Successfully queried message.

imqcmd query msg -t q -n resourcesQueue -msgID "ID:233-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374878" -nocheck

Querying message:
-----------------------------------------------------------
Message ID
-----------------------------------------------------------
ID:233-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374878

In the destination
------------------------------------
Destination Name Destination Type
------------------------------------
resourcesQueue Queue

On the broker specified by:

-------------------------
Host Primary Port
-------------------------
localhost 7676

--------------------------
Message Header Information
--------------------------
Message ID ID:233-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374878
Correlation ID
Destination Name resourcesQueue
Destination Type Queue
Delivery Mode PERSISTENT (2)
Priority 4
Redelivered false
Timestamp 2/26/14 10:09:34 PM
Type
Expiration 12/31/69 4:00:00 PM
ReplyTo Destination Name
ReplyTo Destination Type

------------------------------
Message Properties Information
------------------------------
SEND_HOW annotationCF + resourcesQueue + created context 2.0

------------------------
Message Body Information
------------------------
Body Type TextMessage (1)

Successfully queried message.

imqcmd query msg -t q -n resourcesQueue -msgID "ID:255-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374890" -nocheck

Querying message:
-----------------------------------------------------------
Message ID
-----------------------------------------------------------
ID:255-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374890

In the destination
------------------------------------
Destination Name Destination Type
------------------------------------
resourcesQueue Queue

On the broker specified by:

-------------------------
Host Primary Port
-------------------------
localhost 7676

--------------------------
Message Header Information
--------------------------
Message ID ID:255-10.133.184.56(be:d9:f1:7e:86:f3)-55441-1393481374890
Correlation ID
Destination Name resourcesQueue
Destination Type Queue
Delivery Mode PERSISTENT (2)
Priority 4
Redelivered false
Timestamp 2/26/14 10:09:34 PM
Type
Expiration 12/31/69 4:00:00 PM
ReplyTo Destination Name
ReplyTo Destination Type

------------------------------
Message Properties Information
------------------------------
SEND_HOW annotationInjectedContext + annotationQueue 2.0

------------------------
Message Body Information
------------------------
Body Type TextMessage (1)

Successfully queried message.
=============================================================

Comment by Nigel Deakin [ 03/Mar/14 10:09 AM ]

We confirm that there is a bug when a connection factory is defined using the @JMSConnectionFactory annotation which prevents resources being enlisted in the Java EE transaction. Many thanks for reporting this.

Comment by Nigel Deakin [ 03/Mar/14 10:13 AM ]

There is a workaround which is to create the connection factory the "old" way, which is to define it in glassfish-resources.xml, or using the GlassFish admin console or asadmin, and then inject it into the application using @Resource.

Since there is a workaround this is a "major bug" rather than a "blocker". Adjusting priority accordingly.





[GLASSFISH-20983] Deadlock when creating a JMS connection when Glassfish is starting Created: 13/Feb/14  Updated: 05/Mar/14

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 4.0
Fix Version/s: None

Type: Bug Priority: Major
Reporter: electricsam Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux, jdk 1.7.0_45


Tags:
Participants: David Zhao and electricsam

 Description   

Note: This is not reproducible in a standalone environment using the embedded broker.

In my environment I have a cluster with 2 nodes, using enhanced local brokers. I have also tried enhanced remote brokers with the same effect.

When glassfish is starting, but not completed, if an application tries to send a message deadlock occurs when creating the JMS connection. This can easily be reproduced by trying to send a message in a @Singleton @Startup bean.

Producer:

@ApplicationScoped
public class PerformanceLoggingProducer {

    private static final Logger logger = Logger.getLogger(PerformanceLoggingProducer.class.getName());

//    @Resource(mappedName = "jms/ConnectionFactory")
    private ConnectionFactory connectionFactory;
//    @Resource(name = "jms/PerformanceLoggingQueue")
    private Queue queue;

    public PerformanceLoggingProducer() {
        try {
            connectionFactory = (ConnectionFactory) new InitialContext().lookup("jms/ConnectionFactory");
            queue = (Queue) new InitialContext().lookup("jms/PerformanceLoggingQueue");
        } catch (NamingException ex) {
            logger.log(Level.SEVERE, null, ex);
        }
    }

    public void log(final PerformanceLogTracker tracker) {

       if (tracker != null) {

        try (Connection connection = connectionFactory.createConnection()) {
			Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
            MessageProducer producer = session.createProducer(queue);
            ObjectMessage message = session.createObjectMessage(tracker);
            producer.send(message);
         } catch (Exception ex) {
                logger.log(Level.SEVERE, "An error occurred when logging message: " + tracker, ex);
         }
  

       }
    }

}

Thread dump:

Notice this:

"main" prio=10 tid=0x00007f5d5c00d000 nid=0xb04 in Object.wait() [0x00007f5d63f61000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000755814468> (a com.sun.jts.CosTransactions.EventSemaphore)
	at java.lang.Object.wait(Object.java:503)
	at com.sun.jts.CosTransactions.EventSemaphore.waitEvent(EventSemaphore.java:133)
	- locked <0x0000000755814468> (a com.sun.jts.CosTransactions.EventSemaphore)
	at com.sun.jts.CosTransactions.RecoveryManager.waitForResync(RecoveryManager.java:1455)
	at com.sun.jts.CosTransactions.TransactionFactoryImpl.localCreate(TransactionFactoryImpl.java:180)
2014-02-12 11:04:05
Full thread dump Java HotSpot(TM) 64-Bit Server VM (24.45-b08 mixed mode):

"__ejb-thread-pool16" daemon prio=10 tid=0x00007f5d08302000 nid=0xc18 waiting on condition [0x00007f5d045ae000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool15" daemon prio=10 tid=0x00007f5d08300000 nid=0xc17 waiting on condition [0x00007f5d046af000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool14" daemon prio=10 tid=0x00007f5d082fe000 nid=0xc16 waiting on condition [0x00007f5d047b0000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool13" daemon prio=10 tid=0x00007f5d08063000 nid=0xc15 waiting on condition [0x00007f5d048b1000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool12" daemon prio=10 tid=0x00007f5d08061000 nid=0xc14 waiting on condition [0x00007f5d049b2000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool11" daemon prio=10 tid=0x00007f5d0805e800 nid=0xc13 waiting on condition [0x00007f5d04ab3000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool10" daemon prio=10 tid=0x00007f5d0805c800 nid=0xc12 waiting on condition [0x00007f5d04bb4000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool9" daemon prio=10 tid=0x00007f5d08752800 nid=0xc11 waiting on condition [0x00007f5d04cb5000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool8" daemon prio=10 tid=0x00007f5d08447000 nid=0xc10 waiting on condition [0x00007f5d04db6000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool7" daemon prio=10 tid=0x00007f5d08446000 nid=0xc0f waiting on condition [0x00007f5d04eb7000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool6" daemon prio=10 tid=0x00007f5d08496000 nid=0xc0e waiting on condition [0x00007f5d04fb8000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool5" daemon prio=10 tid=0x00007f5d0865a800 nid=0xc0d waiting on condition [0x00007f5d052bb000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool4" daemon prio=10 tid=0x00007f5d08659000 nid=0xc0c waiting on condition [0x00007f5d050b9000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool3" daemon prio=10 tid=0x00007f5d08657800 nid=0xc0b waiting on condition [0x00007f5d383c4000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool2" daemon prio=10 tid=0x00007f5d083d5800 nid=0xc0a waiting on condition [0x00007f5d385c6000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"__ejb-thread-pool1" daemon prio=10 tid=0x00007f5d083d4800 nid=0xc09 waiting on condition [0x00007f5d15e6a000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755f3e2a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"Attach Listener" daemon prio=10 tid=0x00007f5d10022000 nid=0xc03 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"GMS-isConnected-Group-myproject-thread-3" daemon prio=10 tid=0x00007f5d541ee000 nid=0xbbc waiting on condition [0x00007f5d15c68000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000767174f80> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"GMS-isConnected-Group-myproject-thread-2" daemon prio=10 tid=0x00007f5d541ed000 nid=0xbbb waiting on condition [0x00007f5d384c5000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000767174f80> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"GMS-isConnected-Group-myproject-thread-1" daemon prio=10 tid=0x00007f5d541ec000 nid=0xbba waiting on condition [0x00007f5d386c7000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000767174f80> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"Thread-52" daemon prio=10 tid=0x00007f5d3001d800 nid=0xbad runnable [0x00007f5d051ba000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.read(SocketInputStream.java:152)
	at java.net.SocketInputStream.read(SocketInputStream.java:122)
	at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
	at java.io.BufferedInputStream.read1(BufferedInputStream.java:275)
	at java.io.BufferedInputStream.read(BufferedInputStream.java:334)
	- locked <0x000000075b302158> (a java.io.BufferedInputStream)
	at com.sun.jndi.ldap.Connection.run(Connection.java:853)
	at java.lang.Thread.run(Thread.java:744)

"JTS Resync Thread" daemon prio=10 tid=0x00007f5d5e5d8800 nid=0xbab in Object.wait() [0x00007f5d053bc000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000755814448> (a com.sun.jts.CosTransactions.EventSemaphore)
	at java.lang.Object.wait(Object.java:503)
	at com.sun.jts.CosTransactions.EventSemaphore.waitEvent(EventSemaphore.java:133)
	- locked <0x0000000755814448> (a com.sun.jts.CosTransactions.EventSemaphore)
	at com.sun.jts.CosTransactions.RecoveryManager.proceedWithXARecovery(RecoveryManager.java:948)
	at com.sun.jts.CosTransactions.RecoveryManager.recover(RecoveryManager.java:492)
	at com.sun.jts.CosTransactions.ResyncThread.run(RecoveryManager.java:1881)

"Recovery Helper Thread" daemon prio=10 tid=0x00007f5d5e5d7800 nid=0xbaa in Object.wait() [0x00007f5d054bd000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x000000075184dd10> (a org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:134)
	- locked <0x000000075184dd10> (a org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext)
	at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2204)
	at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:579)
	at org.jvnet.hk2.internal.IterableProviderImpl.get(IterableProviderImpl.java:87)
	at com.sun.enterprise.resource.recovery.ConnectorsRecoveryResourceHandler.loadXAResourcesAndItsConnections(ConnectorsRecoveryResourceHandler.java:220)
	at com.sun.enterprise.transaction.jts.ResourceRecoveryManagerImpl.getAllRecoverableResources(ResourceRecoveryManagerImpl.java:212)
	at com.sun.enterprise.transaction.jts.ResourceRecoveryManagerImpl.recoverXAResources(ResourceRecoveryManagerImpl.java:240)
	at com.sun.enterprise.transaction.jts.ResourceRecoveryManagerImpl.recoverXAResources(ResourceRecoveryManagerImpl.java:337)
	at com.sun.enterprise.transaction.jts.ResourceRecoveryManagerImpl.postConstruct(ResourceRecoveryManagerImpl.java:108)
	at org.jvnet.hk2.internal.ClazzCreator.postConstructMe(ClazzCreator.java:281)
	at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:328)
	at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:448)
	at org.jvnet.hk2.internal.SingletonContext.findOrCreate(SingletonContext.java:118)
	at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2204)
	at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:579)
	at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:566)
	at com.sun.jts.jta.TransactionServiceProperties$RecoveryHelperThread.run(TransactionServiceProperties.java:361)

"iMQReadChannel-3" daemon prio=10 tid=0x00007f5d5e74b800 nid=0xba9 runnable [0x00007f5d055be000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.read(SocketInputStream.java:152)
	at java.net.SocketInputStream.read(SocketInputStream.java:122)
	at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
	at java.io.BufferedInputStream.read1(BufferedInputStream.java:275)
	at java.io.BufferedInputStream.read(BufferedInputStream.java:334)
	- locked <0x000000075b302b18> (a java.io.BufferedInputStream)
	at com.sun.messaging.jmq.io.Packet.readFully(Packet.java:1836)
	at com.sun.messaging.jmq.io.Packet.readFully(Packet.java:1804)
	at com.sun.messaging.jmq.io.Packet.readPacket(Packet.java:1731)
	- locked <0x000000075b302b40> (a com.sun.messaging.jmq.io.ReadWritePacket)
	at com.sun.messaging.jmq.io.ReadOnlyPacket.readPacket(ReadOnlyPacket.java:115)
	at com.sun.messaging.jmq.io.ReadWritePacket.readPacket(ReadWritePacket.java:70)
	- locked <0x000000075b302b40> (a com.sun.messaging.jmq.io.ReadWritePacket)
	at com.sun.messaging.jmq.jmsclient.protocol.SocketConnectionHandler.readPacket(SocketConnectionHandler.java:72)
	at com.sun.messaging.jmq.jmsclient.ProtocolHandler.readPacket(ProtocolHandler.java:1830)
	at com.sun.messaging.jmq.jmsclient.ReadChannel.run(ReadChannel.java:1275)
	at java.lang.Thread.run(Thread.java:744)

"imqConnectionFlowControl-3" daemon prio=10 tid=0x00007f5d5e74a000 nid=0xba7 in Object.wait() [0x00007f5d056bf000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x000000075b302de0> (a com.sun.messaging.jmq.jmsclient.FlowControl)
	at com.sun.messaging.jmq.jmsclient.FlowControl.run(FlowControl.java:307)
	- locked <0x000000075b302de0> (a com.sun.messaging.jmq.jmsclient.FlowControl)
	at java.lang.Thread.run(Thread.java:744)

"ContainerBackgroundProcessor[StandardEngine[glassfish-web].StandardHost[server].StandardContext[/ejb-timer-service-app]]" daemon prio=10 tid=0x00007f5d5e495800 nid=0xba5 waiting on condition [0x00007f5d05882000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1801)
	at java.lang.Thread.run(Thread.java:744)

"imqConsumerReader-2-563587832198206464-1" daemon prio=10 tid=0x00007f5d5e7be800 nid=0xba4 in Object.wait() [0x00007f5d05983000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x000000075d9000e0> (a com.sun.messaging.jmq.jmsclient.SessionQueue)
	at com.sun.messaging.jmq.jmsclient.SessionQueue.dequeueWait(SessionQueue.java:257)
	- locked <0x000000075d9000e0> (a com.sun.messaging.jmq.jmsclient.SessionQueue)
	at com.sun.messaging.jmq.jmsclient.ConsumerReader.run(ConsumerReader.java:168)
	at java.lang.Thread.run(Thread.java:744)

"iMQReadChannel-2" daemon prio=10 tid=0x00007f5d5e1c8800 nid=0xba3 runnable [0x00007f5d15f6b000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.read(SocketInputStream.java:152)
	at java.net.SocketInputStream.read(SocketInputStream.java:122)
	at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
	at java.io.BufferedInputStream.read1(BufferedInputStream.java:275)
	at java.io.BufferedInputStream.read(BufferedInputStream.java:334)
	- locked <0x000000075d900a50> (a java.io.BufferedInputStream)
	at com.sun.messaging.jmq.io.Packet.readFully(Packet.java:1836)
	at com.sun.messaging.jmq.io.Packet.readFully(Packet.java:1804)
	at com.sun.messaging.jmq.io.Packet.readPacket(Packet.java:1731)
	- locked <0x000000075d900a78> (a com.sun.messaging.jmq.io.ReadWritePacket)
	at com.sun.messaging.jmq.io.ReadOnlyPacket.readPacket(ReadOnlyPacket.java:115)
	at com.sun.messaging.jmq.io.ReadWritePacket.readPacket(ReadWritePacket.java:70)
	- locked <0x000000075d900a78> (a com.sun.messaging.jmq.io.ReadWritePacket)
	at com.sun.messaging.jmq.jmsclient.protocol.SocketConnectionHandler.readPacket(SocketConnectionHandler.java:72)
	at com.sun.messaging.jmq.jmsclient.ProtocolHandler.readPacket(ProtocolHandler.java:1830)
	at com.sun.messaging.jmq.jmsclient.ReadChannel.run(ReadChannel.java:1275)
	at java.lang.Thread.run(Thread.java:744)

"imqConnectionFlowControl-2" daemon prio=10 tid=0x00007f5d5e1c7800 nid=0xba2 in Object.wait() [0x00007f5d15d69000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x000000075d900d18> (a com.sun.messaging.jmq.jmsclient.FlowControl)
	at com.sun.messaging.jmq.jmsclient.FlowControl.run(FlowControl.java:307)
	- locked <0x000000075d900d18> (a com.sun.messaging.jmq.jmsclient.FlowControl)
	at java.lang.Thread.run(Thread.java:744)

"ContainerBackgroundProcessor[StandardEngine[glassfish-web].StandardHost[server].StandardContext[/smb-access-svc]]" daemon prio=10 tid=0x00007f5d5e16c800 nid=0xb9b waiting on condition [0x00007f5d05ad9000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1801)
	at java.lang.Thread.run(Thread.java:744)

"imqConsumerReader-1-563587832187488512-0" daemon prio=10 tid=0x00007f5d5d645000 nid=0xb9a in Object.wait() [0x00007f5d05bda000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007675442c0> (a com.sun.messaging.jmq.jmsclient.SessionQueue)
	at com.sun.messaging.jmq.jmsclient.SessionQueue.dequeueWait(SessionQueue.java:257)
	- locked <0x00000007675442c0> (a com.sun.messaging.jmq.jmsclient.SessionQueue)
	at com.sun.messaging.jmq.jmsclient.ConsumerReader.run(ConsumerReader.java:168)
	at java.lang.Thread.run(Thread.java:744)

"iMQReadChannel-1" daemon prio=10 tid=0x00007f5d5db24000 nid=0xb99 runnable [0x00007f5d05cdb000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.read(SocketInputStream.java:152)
	at java.net.SocketInputStream.read(SocketInputStream.java:122)
	at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
	at java.io.BufferedInputStream.read1(BufferedInputStream.java:275)
	at java.io.BufferedInputStream.read(BufferedInputStream.java:334)
	- locked <0x0000000767544bd8> (a java.io.BufferedInputStream)
	at com.sun.messaging.jmq.io.Packet.readFully(Packet.java:1836)
	at com.sun.messaging.jmq.io.Packet.readFully(Packet.java:1804)
	at com.sun.messaging.jmq.io.Packet.readPacket(Packet.java:1731)
	- locked <0x0000000767544c58> (a com.sun.messaging.jmq.io.ReadWritePacket)
	at com.sun.messaging.jmq.io.ReadOnlyPacket.readPacket(ReadOnlyPacket.java:115)
	at com.sun.messaging.jmq.io.ReadWritePacket.readPacket(ReadWritePacket.java:70)
	- locked <0x0000000767544c58> (a com.sun.messaging.jmq.io.ReadWritePacket)
	at com.sun.messaging.jmq.jmsclient.protocol.SocketConnectionHandler.readPacket(SocketConnectionHandler.java:72)
	at com.sun.messaging.jmq.jmsclient.ProtocolHandler.readPacket(ProtocolHandler.java:1830)
	at com.sun.messaging.jmq.jmsclient.ReadChannel.run(ReadChannel.java:1275)
	at java.lang.Thread.run(Thread.java:744)

"imqConnectionFlowControl-1" daemon prio=10 tid=0x00007f5d5db1e800 nid=0xb98 in Object.wait() [0x00007f5d05ddc000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000767544ef8> (a com.sun.messaging.jmq.jmsclient.FlowControl)
	at com.sun.messaging.jmq.jmsclient.FlowControl.run(FlowControl.java:307)
	- locked <0x0000000767544ef8> (a com.sun.messaging.jmq.jmsclient.FlowControl)
	at java.lang.Thread.run(Thread.java:744)

"GMS-DistributedStateCache-Group-myproject-thread-1" daemon prio=10 tid=0x00007f5d0d867800 nid=0xb97 waiting on condition [0x00007f5d05edd000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f68b90> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"GMS-validateMasterChangeEvents-Group-myproject-thread-1" daemon prio=10 tid=0x00007f5d1c01d000 nid=0xb96 waiting on condition [0x00007f5d05fde000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f68c40> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"GMS-processNotify-Group-myproject-thread-2" daemon prio=10 tid=0x000000000078a000 nid=0xb95 waiting on condition [0x00007f5d060df000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f65c98> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"GMS-processNotify-Group-myproject-thread-1" daemon prio=10 tid=0x0000000000789000 nid=0xb94 waiting on condition [0x00007f5d071f0000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f65c98> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"GMS-McastMsgProcessor-Group-myproject-thread-10" daemon prio=10 tid=0x00007f5d2c042000 nid=0xb91 waiting on condition [0x00007f5d061e0000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f65d48> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"Timer-3" daemon prio=10 tid=0x00007f5d48016000 nid=0xb90 in Object.wait() [0x00007f5d062e1000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007675452e8> (a java.util.TaskQueue)
	at java.util.TimerThread.mainLoop(Timer.java:552)
	- locked <0x00000007675452e8> (a java.util.TaskQueue)
	at java.util.TimerThread.run(Timer.java:505)

"GMS-McastMsgProcessor-Group-myproject-thread-9" daemon prio=10 tid=0x00007f5d2c040000 nid=0xb8f waiting on condition [0x00007f5d063e2000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f65d48> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"GMS-McastMsgProcessor-Group-myproject-thread-8" daemon prio=10 tid=0x00007f5d2c03d800 nid=0xb8e waiting on condition [0x00007f5d064e3000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f65d48> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"Thread-27" prio=10 tid=0x00007f5d5d89e800 nid=0xb8d in Object.wait() [0x00007f5d065e4000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000767545468> (a com.sun.corba.ee.impl.javax.rmi.CORBA.KeepAlive)
	at java.lang.Object.wait(Object.java:503)
	at com.sun.corba.ee.impl.javax.rmi.CORBA.KeepAlive.run(Util.java:818)
	- locked <0x0000000767545468> (a com.sun.corba.ee.impl.javax.rmi.CORBA.KeepAlive)

"GMS-McastMsgProcessor-Group-myproject-thread-7" daemon prio=10 tid=0x00007f5d2c03b800 nid=0xb8c waiting on condition [0x00007f5d066e5000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f65d48> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"SelectorThread" daemon prio=10 tid=0x00007f5d5da26000 nid=0xb8b runnable [0x00007f5d067e6000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
	at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
	at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:79)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x0000000767545690> (a sun.nio.ch.Util$2)
	- locked <0x00000007675456a0> (a java.util.Collections$UnmodifiableSet)
	- locked <0x0000000767545648> (a sun.nio.ch.EPollSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at com.sun.corba.ee.impl.transport.SelectorImpl.run(SelectorImpl.java:303)

"GMS-McastMsgProcessor-Group-myproject-thread-6" daemon prio=10 tid=0x00007f5d2c039800 nid=0xb8a waiting on condition [0x00007f5d068e7000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f65d48> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"GMS-McastMsgProcessor-Group-myproject-thread-5" daemon prio=10 tid=0x00007f5d2c038000 nid=0xb89 waiting on condition [0x00007f5d069e8000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f65d48> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"GMS-McastMsgProcessor-Group-myproject-thread-4" daemon prio=10 tid=0x00007f5d2c02b800 nid=0xb88 waiting on condition [0x00007f5d06ae9000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f65d48> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"GMS-McastMsgProcessor-Group-myproject-thread-3" daemon prio=10 tid=0x00007f5d2c029800 nid=0xb87 waiting on condition [0x00007f5d06bea000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f65d48> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"GMS-McastMsgProcessor-Group-myproject-thread-2" daemon prio=10 tid=0x00007f5d2c027800 nid=0xb86 waiting on condition [0x00007f5d06ceb000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f65d48> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"GMS-McastMsgProcessor-Group-myproject-thread-1" daemon prio=10 tid=0x00007f5d2c04b000 nid=0xb85 waiting on condition [0x00007f5d06dec000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f65d48> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"GMS FailureVerifier Thread for Group-myproject" daemon prio=10 tid=0x00007f5d5cd84800 nid=0xb84 in Object.wait() [0x00007f5d06eed000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f68e88> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at com.sun.enterprise.mgmt.HealthMonitor$FailureVerifier.run(HealthMonitor.java:1430)
	- locked <0x0000000752f68e88> (a java.lang.Object)
	at java.lang.Thread.run(Thread.java:744)

"GMS InDoubtPeerDetector Thread for Group-myproject" daemon prio=10 tid=0x00007f5d5cd82000 nid=0xb83 in Object.wait() [0x00007f5d06fee000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f68f18> (a java.lang.Object)
	at com.sun.enterprise.mgmt.HealthMonitor$InDoubtPeerDetector.run(HealthMonitor.java:1290)
	- locked <0x0000000752f68f18> (a java.lang.Object)
	at java.lang.Thread.run(Thread.java:744)

"GMS HealthMonitor for Group-myproject" daemon prio=10 tid=0x00007f5d5cd80000 nid=0xb82 in Object.wait() [0x00007f5d070ef000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f68fa8> (a java.lang.Object)
	at com.sun.enterprise.mgmt.HealthMonitor.run(HealthMonitor.java:817)
	- locked <0x0000000752f68fa8> (a java.lang.Object)
	at java.lang.Thread.run(Thread.java:744)

"GMS MasterNode processOutstandingChangeEvents Group-myproject" daemon prio=10 tid=0x00007f5d5d247800 nid=0xb80 in Object.wait() [0x00007f5d072f1000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f690b0> (a java.util.TreeSet)
	at java.lang.Object.wait(Object.java:503)
	at com.sun.enterprise.mgmt.MasterNode$ProcessOutstandingMessagesTask.run(MasterNode.java:1859)
	- locked <0x0000000752f690b0> (a java.util.TreeSet)
	at java.lang.Thread.run(Thread.java:744)

"Timer-2" daemon prio=10 tid=0x00007f5d5d23e800 nid=0xb7f in Object.wait() [0x00007f5d073f2000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f69140> (a java.util.TaskQueue)
	at java.lang.Object.wait(Object.java:503)
	at java.util.TimerThread.mainLoop(Timer.java:526)
	- locked <0x0000000752f69140> (a java.util.TaskQueue)
	at java.util.TimerThread.run(Timer.java:505)

"IP Multicast Listener for /228.9.219.87:9336" daemon prio=10 tid=0x00007f5d5d279000 nid=0xb7e runnable [0x00007f5d074f3000]
   java.lang.Thread.State: RUNNABLE
	at java.net.PlainDatagramSocketImpl.receive0(Native Method)
	- locked <0x0000000752f691d8> (a java.net.PlainDatagramSocketImpl)
	at java.net.AbstractPlainDatagramSocketImpl.receive(AbstractPlainDatagramSocketImpl.java:145)
	- locked <0x0000000752f691d8> (a java.net.PlainDatagramSocketImpl)
	at java.net.DatagramSocket.receive(DatagramSocket.java:786)
	- locked <0x00000007694c5448> (a java.net.DatagramPacket)
	- locked <0x0000000752f69208> (a java.net.MulticastSocket)
	at com.sun.enterprise.mgmt.transport.BlockingIOMulticastSender.run(BlockingIOMulticastSender.java:254)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(20)" daemon prio=10 tid=0x00007f5d5d259800 nid=0xb7d in Object.wait() [0x00007f5d075f4000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(19)" daemon prio=10 tid=0x00007f5d5d257800 nid=0xb7c in Object.wait() [0x00007f5d076f5000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(18)" daemon prio=10 tid=0x00007f5d5d255800 nid=0xb7b in Object.wait() [0x00007f5d077f6000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(17)" daemon prio=10 tid=0x00007f5d5d2be800 nid=0xb7a in Object.wait() [0x00007f5d078f7000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(16)" daemon prio=10 tid=0x00007f5d5d2bc800 nid=0xb79 in Object.wait() [0x00007f5d079f8000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(15)" daemon prio=10 tid=0x00007f5d5d2ba800 nid=0xb78 in Object.wait() [0x00007f5d07af9000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(14)" daemon prio=10 tid=0x00007f5d5d2b8800 nid=0xb77 in Object.wait() [0x00007f5d07bfa000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(13)" daemon prio=10 tid=0x00007f5d5d2b6800 nid=0xb76 in Object.wait() [0x00007f5d07cfb000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(12)" daemon prio=10 tid=0x00007f5d5d2b4800 nid=0xb75 in Object.wait() [0x00007f5d07dfc000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(11)" daemon prio=10 tid=0x00007f5d5d2b2000 nid=0xb74 in Object.wait() [0x00007f5d07efd000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(10)" daemon prio=10 tid=0x00007f5d5d2b0000 nid=0xb73 in Object.wait() [0x00007f5d07ffe000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(9)" daemon prio=10 tid=0x00007f5d5d2ae000 nid=0xb72 in Object.wait() [0x00007f5d141d8000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(8)" daemon prio=10 tid=0x00007f5d5d2ac000 nid=0xb71 in Object.wait() [0x00007f5d142d9000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(7)" daemon prio=10 tid=0x00007f5d5d2aa000 nid=0xb70 in Object.wait() [0x00007f5d143da000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(6)" daemon prio=10 tid=0x00007f5d5d2a7800 nid=0xb6f in Object.wait() [0x00007f5d144db000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(5)" daemon prio=10 tid=0x00007f5d5d2a5800 nid=0xb6e in Object.wait() [0x00007f5d145dc000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(4)" daemon prio=10 tid=0x00007f5d5d2a3800 nid=0xb6d in Object.wait() [0x00007f5d146dd000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(3)" daemon prio=10 tid=0x00007f5d5d2a1800 nid=0xb6c in Object.wait() [0x00007f5d147de000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(2)" daemon prio=10 tid=0x00007f5d5d29f800 nid=0xb6b in Object.wait() [0x00007f5d148df000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS-GrizzlyControllerThreadPool-Group-myproject(1)" daemon prio=10 tid=0x00007f5d5d75a000 nid=0xb6a in Object.wait() [0x00007f5d149e0000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752f65f90> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000752f65f90> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"Grizzly-kernel(2) SelectorRunner" daemon prio=10 tid=0x00007f5d5d758800 nid=0xb69 runnable [0x00007f5d14ae1000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
	at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
	at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:79)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x0000000752f66618> (a sun.nio.ch.Util$2)
	- locked <0x0000000752f66628> (a java.util.Collections$UnmodifiableSet)
	- locked <0x0000000752f665d0> (a sun.nio.ch.EPollSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at org.glassfish.grizzly.nio.DefaultSelectorHandler.select(DefaultSelectorHandler.java:112)
	at org.glassfish.grizzly.nio.SelectorRunner.doSelect(SelectorRunner.java:333)
	at org.glassfish.grizzly.nio.SelectorRunner.run(SelectorRunner.java:274)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"Grizzly-kernel(1) SelectorRunner" daemon prio=10 tid=0x00007f5d5d757000 nid=0xb68 runnable [0x00007f5d14be2000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
	at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
	at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:79)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x0000000752f667e0> (a sun.nio.ch.Util$2)
	- locked <0x0000000752f667f0> (a java.util.Collections$UnmodifiableSet)
	- locked <0x0000000752f66798> (a sun.nio.ch.EPollSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at org.glassfish.grizzly.nio.DefaultSelectorHandler.select(DefaultSelectorHandler.java:112)
	at org.glassfish.grizzly.nio.SelectorRunner.doSelect(SelectorRunner.java:333)
	at org.glassfish.grizzly.nio.SelectorRunner.run(SelectorRunner.java:274)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"GMS ViewWindowThread Group-myproject" daemon prio=10 tid=0x00007f5d5d744800 nid=0xb67 waiting on condition [0x00007f5d14ce3000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f668e8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at com.sun.enterprise.ee.cms.impl.base.ViewWindowImpl.run(ViewWindowImpl.java:189)
	at java.lang.Thread.run(Thread.java:744)

"GMS MessageWindowThread Group-myproject" daemon prio=10 tid=0x00007f5d5d747000 nid=0xb66 waiting on condition [0x00007f5d14de4000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f669d0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at com.sun.enterprise.ee.cms.impl.base.MessageWindow.run(MessageWindow.java:108)
	at java.lang.Thread.run(Thread.java:744)

"GMS SignalHandler for Group-myproject thread" daemon prio=10 tid=0x00007f5d5d2e1000 nid=0xb65 waiting on condition [0x00007f5d14ee5000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000752f69a40> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at com.sun.enterprise.ee.cms.impl.common.SignalHandler.run(SignalHandler.java:90)
	at java.lang.Thread.run(Thread.java:744)

"process reaper" daemon prio=10 tid=0x00007f5d1000a000 nid=0xb62 runnable [0x00007f5d14f1e000]
   java.lang.Thread.State: RUNNABLE
	at java.lang.UNIXProcess.waitForProcessExit(Native Method)
	at java.lang.UNIXProcess.access$200(UNIXProcess.java:54)
	at java.lang.UNIXProcess$3.run(UNIXProcess.java:174)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"process reaper" daemon prio=10 tid=0x00007f5d10008800 nid=0xb5e runnable [0x00007f5d14f57000]
   java.lang.Thread.State: RUNNABLE
	at java.lang.UNIXProcess.waitForProcessExit(Native Method)
	at java.lang.UNIXProcess.access$200(UNIXProcess.java:54)
	at java.lang.UNIXProcess$3.run(UNIXProcess.java:174)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"process reaper" daemon prio=10 tid=0x00007f5d10007000 nid=0xb5a runnable [0x00007f5d3806f000]
   java.lang.Thread.State: RUNNABLE
	at java.lang.UNIXProcess.waitForProcessExit(Native Method)
	at java.lang.UNIXProcess.access$200(UNIXProcess.java:54)
	at java.lang.UNIXProcess$3.run(UNIXProcess.java:174)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"process reaper" daemon prio=10 tid=0x00007f5d10005800 nid=0xb56 runnable [0x00007f5d380a8000]
   java.lang.Thread.State: RUNNABLE
	at java.lang.UNIXProcess.waitForProcessExit(Native Method)
	at java.lang.UNIXProcess.access$200(UNIXProcess.java:54)
	at java.lang.UNIXProcess$3.run(UNIXProcess.java:174)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"connector-timer-proxy" daemon prio=10 tid=0x00007f5d5d80f800 nid=0xb54 in Object.wait() [0x00007f5d15058000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007563003f8> (a java.util.TaskQueue)
	at java.util.TimerThread.mainLoop(Timer.java:552)
	- locked <0x00000007563003f8> (a java.util.TaskQueue)
	at java.util.TimerThread.run(Timer.java:505)

"Timer-1" daemon prio=10 tid=0x00007f5d5d814000 nid=0xb53 in Object.wait() [0x00007f5d15159000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007563004c8> (a java.util.TaskQueue)
	at java.lang.Object.wait(Object.java:503)
	at java.util.TimerThread.mainLoop(Timer.java:526)
	- locked <0x00000007563004c8> (a java.util.TaskQueue)
	at java.util.TimerThread.run(Timer.java:505)

"p: thread-pool-1; w: 5" daemon prio=10 tid=0x00007f5d5d4ea000 nid=0xb52 in Object.wait() [0x00007f5d15460000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x000000075440c200> (a com.sun.corba.ee.impl.threadpool.WorkQueueImpl)
	at com.sun.corba.ee.impl.threadpool.WorkQueueImpl.requestWork(WorkQueueImpl.java:124)
	- locked <0x000000075440c200> (a com.sun.corba.ee.impl.threadpool.WorkQueueImpl)
	at com.sun.corba.ee.impl.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:518)

"p: thread-pool-1; w: 4" daemon prio=10 tid=0x00007f5d5d4e8000 nid=0xb51 in Object.wait() [0x00007f5d15561000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x000000075440c200> (a com.sun.corba.ee.impl.threadpool.WorkQueueImpl)
	at com.sun.corba.ee.impl.threadpool.WorkQueueImpl.requestWork(WorkQueueImpl.java:124)
	- locked <0x000000075440c200> (a com.sun.corba.ee.impl.threadpool.WorkQueueImpl)
	at com.sun.corba.ee.impl.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:518)

"p: thread-pool-1; w: 3" daemon prio=10 tid=0x00007f5d5d4e6000 nid=0xb50 in Object.wait() [0x00007f5d15662000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x000000075440c200> (a com.sun.corba.ee.impl.threadpool.WorkQueueImpl)
	at com.sun.corba.ee.impl.threadpool.WorkQueueImpl.requestWork(WorkQueueImpl.java:124)
	- locked <0x000000075440c200> (a com.sun.corba.ee.impl.threadpool.WorkQueueImpl)
	at com.sun.corba.ee.impl.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:518)

"p: thread-pool-1; w: 2" daemon prio=10 tid=0x00007f5d5d4e3800 nid=0xb4f runnable [0x00007f5d15763000]
   java.lang.Thread.State: RUNNABLE
	at java.net.PlainSocketImpl.socketAccept(Native Method)
	at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:398)
	at java.net.ServerSocket.implAccept(ServerSocket.java:530)
	at sun.security.ssl.SSLServerSocketImpl.accept(SSLServerSocketImpl.java:317)
	at com.sun.corba.ee.impl.transport.AcceptorImpl.getAcceptedSocket(AcceptorImpl.java:148)
	at com.sun.corba.ee.impl.transport.ListenerThreadImpl.doWork(ListenerThreadImpl.java:114)
	at com.sun.corba.ee.impl.threadpool.ThreadPoolImpl$WorkerThread.performWork(ThreadPoolImpl.java:497)
	at com.sun.corba.ee.impl.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:540)

"p: thread-pool-1; w: 1" daemon prio=10 tid=0x00007f5d5d4ed000 nid=0xb4e runnable [0x00007f5d15864000]
   java.lang.Thread.State: RUNNABLE
	at java.net.PlainSocketImpl.socketAccept(Native Method)
	at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:398)
	at java.net.ServerSocket.implAccept(ServerSocket.java:530)
	at sun.security.ssl.SSLServerSocketImpl.accept(SSLServerSocketImpl.java:317)
	at com.sun.corba.ee.impl.transport.AcceptorImpl.getAcceptedSocket(AcceptorImpl.java:148)
	at com.sun.corba.ee.impl.transport.ListenerThreadImpl.doWork(ListenerThreadImpl.java:114)
	at com.sun.corba.ee.impl.threadpool.ThreadPoolImpl$WorkerThread.performWork(ThreadPoolImpl.java:497)
	at com.sun.corba.ee.impl.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:540)

"dol-jar-scanner" daemon prio=10 tid=0x00007f5d5d0d0800 nid=0xb4d waiting on condition [0x00007f5d15965000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000075276f448> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"dol-jar-scanner" daemon prio=10 tid=0x00007f5d5d0c7800 nid=0xb4c waiting on condition [0x00007f5d15a66000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000075276f448> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"Timer-0" daemon prio=10 tid=0x00007f5d5d28a800 nid=0xb4b in Object.wait() [0x00007f5d15b67000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000755f002e8> (a java.util.TaskQueue)
	at java.util.TimerThread.mainLoop(Timer.java:552)
	- locked <0x0000000755f002e8> (a java.util.TaskQueue)
	at java.util.TimerThread.run(Timer.java:505)

"pool-11-thread-1" daemon prio=10 tid=0x00007f5d5d376000 nid=0xb46 waiting on condition [0x00007f5d1606c000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000007522dfeb8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at org.jvnet.hk2.config.Transactions$Notifier$1.run(Transactions.java:162)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"pool-10-thread-1" daemon prio=10 tid=0x00007f5d5d374000 nid=0xb45 waiting on condition [0x00007f5d1616d000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000007518ea718> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at org.jvnet.hk2.config.Transactions$Notifier$1.run(Transactions.java:162)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"pool-9-thread-1" daemon prio=10 tid=0x00007f5d5cd01000 nid=0xb44 waiting on condition [0x00007f5d381c2000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000007522df948> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at org.jvnet.hk2.config.Transactions$Notifier$1.run(Transactions.java:162)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"pool-8-thread-1" daemon prio=10 tid=0x00007f5d5c877000 nid=0xb43 waiting on condition [0x00007f5d382c3000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000007522dfb48> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at org.jvnet.hk2.config.Transactions$Notifier$1.run(Transactions.java:162)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"ContainerBackgroundProcessor[StandardEngine[glassfish-web].StandardHost[server].StandardContext[/highcharts-export-web]]" daemon prio=10 tid=0x00007f5d5d1fd800 nid=0xb3d waiting on condition [0x00007f5d388df000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1801)
	at java.lang.Thread.run(Thread.java:744)

"pool-2-thread-1" prio=10 tid=0x00007f5d5d1fc000 nid=0xb3c waiting on condition [0x00007f5d389e0000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000753b00068> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1090)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"ContainerBackgroundProcessor[StandardEngine[glassfish-web]]" daemon prio=10 tid=0x00007f5d5cee6800 nid=0xb3b waiting on condition [0x00007f5d38ae1000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1801)
	at java.lang.Thread.run(Thread.java:744)

"ContainerBackgroundProcessor[StandardEngine[glassfish-web].StandardHost[server].StandardContext[]]" daemon prio=10 tid=0x00007f5d5ceb4800 nid=0xb3a waiting on condition [0x00007f5d38be2000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1801)
	at java.lang.Thread.run(Thread.java:744)

"deployment-jar-scanner" daemon prio=10 tid=0x00007f5d5c937800 nid=0xb39 waiting on condition [0x00007f5d39487000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000007558ce390> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"deployment-jar-scanner" daemon prio=10 tid=0x00007f5d5c92e000 nid=0xb38 waiting on condition [0x00007f5d39588000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000007558ce390> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"transaction-manager" daemon prio=10 tid=0x00007f5d5c899000 nid=0xb37 in Object.wait() [0x00007f5d39689000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000755500308> (a java.util.TaskQueue)
	at java.lang.Object.wait(Object.java:503)
	at java.util.TimerThread.mainLoop(Timer.java:526)
	- locked <0x0000000755500308> (a java.util.TaskQueue)
	at java.util.TimerThread.run(Timer.java:505)

"admin-listener-kernel(1) SelectorRunner" daemon prio=10 tid=0x00007f5d5c7c9800 nid=0xb36 runnable [0x00007f5d3978a000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
	at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
	at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:79)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x00000007555012d0> (a sun.nio.ch.Util$2)
	- locked <0x00000007555012e0> (a java.util.Collections$UnmodifiableSet)
	- locked <0x0000000755501288> (a sun.nio.ch.EPollSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at org.glassfish.grizzly.nio.DefaultSelectorHandler.select(DefaultSelectorHandler.java:112)
	at org.glassfish.grizzly.nio.SelectorRunner.doSelect(SelectorRunner.java:333)
	at org.glassfish.grizzly.nio.SelectorRunner.run(SelectorRunner.java:274)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"admin-listener-0" daemon prio=10 tid=0x00007f5d5c7c8000 nid=0xb35 in Object.wait() [0x00007f5d3988b000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007555003a0> (a java.lang.Object)
	at org.glassfish.grizzly.utils.DelayedExecutor$DelayedRunnable.run(DelayedExecutor.java:172)
	- locked <0x00000007555003a0> (a java.lang.Object)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"admin-listener(5)" daemon prio=10 tid=0x00007f5d5c7c5800 nid=0xb34 in Object.wait() [0x00007f5d3998c000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007555004b8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x00000007555004b8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"admin-listener(4)" daemon prio=10 tid=0x00007f5d5c7c3800 nid=0xb33 in Object.wait() [0x00007f5d39a8d000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007555004b8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x00000007555004b8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"admin-listener(3)" daemon prio=10 tid=0x00007f5d5c7c1800 nid=0xb32 in Object.wait() [0x00007f5d39b8e000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007555004b8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x00000007555004b8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"admin-listener(2)" daemon prio=10 tid=0x00007f5d5c7bc800 nid=0xb31 in Object.wait() [0x00007f5d39c8f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007555004b8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x00000007555004b8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"admin-listener(1)" daemon prio=10 tid=0x00007f5d5c7ba800 nid=0xb30 in Object.wait() [0x00007f5d39d90000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007555004b8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x00000007555004b8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"http-listener-2-kernel(1) SelectorRunner" daemon prio=10 tid=0x00007f5d5c79e800 nid=0xb2f runnable [0x00007f5d39e91000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
	at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
	at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:79)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x0000000755501600> (a sun.nio.ch.Util$2)
	- locked <0x0000000755501610> (a java.util.Collections$UnmodifiableSet)
	- locked <0x00000007555015b8> (a sun.nio.ch.EPollSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at org.glassfish.grizzly.nio.DefaultSelectorHandler.select(DefaultSelectorHandler.java:112)
	at org.glassfish.grizzly.nio.SelectorRunner.doSelect(SelectorRunner.java:333)
	at org.glassfish.grizzly.nio.SelectorRunner.run(SelectorRunner.java:274)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"http-listener-2-0" daemon prio=10 tid=0x00007f5d5c79d000 nid=0xb2e in Object.wait() [0x00007f5d39f92000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007555006c0> (a java.lang.Object)
	at org.glassfish.grizzly.utils.DelayedExecutor$DelayedRunnable.run(DelayedExecutor.java:172)
	- locked <0x00000007555006c0> (a java.lang.Object)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"http-listener-2(5)" daemon prio=10 tid=0x00007f5d5c79a000 nid=0xb2d in Object.wait() [0x00007f5d3a093000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007555007d8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x00000007555007d8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"http-listener-2(4)" daemon prio=10 tid=0x00007f5d5c798000 nid=0xb2c in Object.wait() [0x00007f5d3a194000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007555007d8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x00000007555007d8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"http-listener-2(3)" daemon prio=10 tid=0x00007f5d5c796000 nid=0xb2b in Object.wait() [0x00007f5d3a295000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007555007d8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x00000007555007d8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"http-listener-2(2)" daemon prio=10 tid=0x00007f5d5c794000 nid=0xb2a in Object.wait() [0x00007f5d5815b000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007555007d8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x00000007555007d8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"http-listener-2(1)" daemon prio=10 tid=0x00007f5d5c782000 nid=0xb29 in Object.wait() [0x00007f5d5825c000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007555007d8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x00000007555007d8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"http-listener-1-kernel(1) SelectorRunner" daemon prio=10 tid=0x00007f5d5c75e800 nid=0xb28 runnable [0x00007f5d5835d000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
	at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
	at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:79)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x0000000755501918> (a sun.nio.ch.Util$2)
	- locked <0x0000000755501928> (a java.util.Collections$UnmodifiableSet)
	- locked <0x00000007555018d0> (a sun.nio.ch.EPollSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at org.glassfish.grizzly.nio.DefaultSelectorHandler.select(DefaultSelectorHandler.java:112)
	at org.glassfish.grizzly.nio.SelectorRunner.doSelect(SelectorRunner.java:333)
	at org.glassfish.grizzly.nio.SelectorRunner.run(SelectorRunner.java:274)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"http-listener-1-0" daemon prio=10 tid=0x00007f5d5c757800 nid=0xb27 in Object.wait() [0x00007f5d5845e000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007555009e0> (a java.lang.Object)
	at org.glassfish.grizzly.utils.DelayedExecutor$DelayedRunnable.run(DelayedExecutor.java:172)
	- locked <0x00000007555009e0> (a java.lang.Object)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"http-listener-1(5)" daemon prio=10 tid=0x00007f5d5c754800 nid=0xb26 in Object.wait() [0x00007f5d5855f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000755500af8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000755500af8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"http-listener-1(4)" daemon prio=10 tid=0x00007f5d5c752800 nid=0xb25 in Object.wait() [0x00007f5d58660000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000755500af8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000755500af8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"http-listener-1(3)" daemon prio=10 tid=0x00007f5d5c750800 nid=0xb24 in Object.wait() [0x00007f5d58761000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000755500af8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000755500af8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"http-listener-1(2)" daemon prio=10 tid=0x00007f5d5c74e800 nid=0xb23 in Object.wait() [0x00007f5d58862000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000755500af8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000755500af8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"http-listener-1(1)" daemon prio=10 tid=0x00007f5d5c73a800 nid=0xb22 in Object.wait() [0x00007f5d58963000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000755500af8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:503)
	at org.glassfish.grizzly.threadpool.SyncThreadPool$SyncThreadWorker.getTask(SyncThreadPool.java:198)
	- locked <0x0000000755500af8> (a java.lang.Object)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:556)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)

"Grizzly-HttpSession-Expirer" daemon prio=10 tid=0x00007f5d5c707000 nid=0xb21 waiting on condition [0x00007f5d58c6c000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x0000000755500c40> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1090)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"Thread-4" daemon prio=10 tid=0x00007f5d5c5d0000 nid=0xb20 waiting on condition [0x00007f5d58d6d000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000075184d880> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at com.sun.common.util.logging.LoggingOutputStream.log(LoggingOutputStream.java:146)
	at com.sun.common.util.logging.LoggingOutputStream$1.run(LoggingOutputStream.java:125)

"Thread-3" daemon prio=10 tid=0x00007f5d5c5bd800 nid=0xb1f waiting on condition [0x00007f5d58e6e000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000075184d990> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at com.sun.common.util.logging.LoggingOutputStream.log(LoggingOutputStream.java:146)
	at com.sun.common.util.logging.LoggingOutputStream$1.run(LoggingOutputStream.java:125)

"Thread-2" daemon prio=10 tid=0x00007f5d5c5ca000 nid=0xb1e waiting on condition [0x00007f5d58f6f000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000075184daa0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at com.sun.enterprise.server.logging.GFFileHandler.log(GFFileHandler.java:825)
	at com.sun.enterprise.server.logging.GFFileHandler$3.run(GFFileHandler.java:540)

"pool-1-thread-1" daemon prio=10 tid=0x00007f5d5c49e800 nid=0xb1d waiting on condition [0x00007f5d591c4000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000075184dc00> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1090)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

"FelixStartLevel" daemon prio=10 tid=0x00007f5d5c2f2800 nid=0xb1c in Object.wait() [0x00007f5d59e66000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x000000075094af88> (a java.util.ArrayList)
	at java.lang.Object.wait(Object.java:503)
	at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:279)
	- locked <0x000000075094af88> (a java.util.ArrayList)
	at java.lang.Thread.run(Thread.java:744)

"FelixDispatchQueue" daemon prio=10 tid=0x00007f5d08152800 nid=0xb18 in Object.wait() [0x00007f5d59d65000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752880f40> (a java.util.ArrayList)
	at java.lang.Object.wait(Object.java:503)
	at org.apache.felix.framework.util.EventDispatcher.run(EventDispatcher.java:1063)
	- locked <0x0000000752880f40> (a java.util.ArrayList)
	at org.apache.felix.framework.util.EventDispatcher.access$000(EventDispatcher.java:54)
	at org.apache.felix.framework.util.EventDispatcher$1.run(EventDispatcher.java:101)
	at java.lang.Thread.run(Thread.java:744)

"Service Thread" daemon prio=10 tid=0x00007f5d5c195000 nid=0xb15 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread1" daemon prio=10 tid=0x00007f5d5c192800 nid=0xb14 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" daemon prio=10 tid=0x00007f5d5c190000 nid=0xb13 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" daemon prio=10 tid=0x00007f5d5c114800 nid=0xb12 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Surrogate Locker Thread (Concurrent GC)" daemon prio=10 tid=0x00007f5d5c113000 nid=0xb11 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" daemon prio=10 tid=0x00007f5d5c0f2000 nid=0xb10 in Object.wait() [0x00007f5d5a5e4000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007528814e8> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135)
	- locked <0x00000007528814e8> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151)
	at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:189)

"Reference Handler" daemon prio=10 tid=0x00007f5d5c0ee000 nid=0xb0f in Object.wait() [0x00007f5d5a6e5000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000752881580> (a java.lang.ref.Reference$Lock)
	at java.lang.Object.wait(Object.java:503)
	at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133)
	- locked <0x0000000752881580> (a java.lang.ref.Reference$Lock)

"main" prio=10 tid=0x00007f5d5c00d000 nid=0xb04 in Object.wait() [0x00007f5d63f61000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0000000755814468> (a com.sun.jts.CosTransactions.EventSemaphore)
	at java.lang.Object.wait(Object.java:503)
	at com.sun.jts.CosTransactions.EventSemaphore.waitEvent(EventSemaphore.java:133)
	- locked <0x0000000755814468> (a com.sun.jts.CosTransactions.EventSemaphore)
	at com.sun.jts.CosTransactions.RecoveryManager.waitForResync(RecoveryManager.java:1455)
	at com.sun.jts.CosTransactions.TransactionFactoryImpl.localCreate(TransactionFactoryImpl.java:180)
	at com.sun.jts.CosTransactions.CurrentImpl.begin(CurrentImpl.java:428)
	at com.sun.jts.jta.TransactionManagerImpl.begin(TransactionManagerImpl.java:296)
	at com.sun.enterprise.transaction.jts.JavaEETransactionManagerJTSDelegate.beginJTS(JavaEETransactionManagerJTSDelegate.java:498)
	at com.sun.enterprise.transaction.jts.JavaEETransactionManagerJTSDelegate.startJTSTx(JavaEETransactionManagerJTSDelegate.java:401)
	at com.sun.enterprise.transaction.JavaEETransactionManagerSimplified.startJTSTx(JavaEETransactionManagerSimplified.java:429)
	at com.sun.enterprise.transaction.jts.JavaEETransactionManagerJTSDelegate.enlistLAOResource(JavaEETransactionManagerJTSDelegate.java:318)
	at com.sun.enterprise.transaction.JavaEETransactionManagerSimplified.enlistResource(JavaEETransactionManagerSimplified.java:356)
	at com.sun.enterprise.resource.rm.ResourceManagerImpl.registerResource(ResourceManagerImpl.java:152)
	at com.sun.enterprise.resource.rm.ResourceManagerImpl.enlistResource(ResourceManagerImpl.java:112)
	at com.sun.enterprise.resource.pool.PoolManagerImpl.getResource(PoolManagerImpl.java:211)
	at com.sun.enterprise.connectors.ConnectionManagerImpl.getResource(ConnectionManagerImpl.java:354)
	at com.sun.enterprise.connectors.ConnectionManagerImpl.internalGetConnection(ConnectionManagerImpl.java:307)
	at com.sun.enterprise.connectors.ConnectionManagerImpl.allocateConnection(ConnectionManagerImpl.java:196)
	at com.sun.enterprise.connectors.ConnectionManagerImpl.allocateConnection(ConnectionManagerImpl.java:171)
	at com.sun.enterprise.connectors.ConnectionManagerImpl.allocateConnection(ConnectionManagerImpl.java:166)
	at com.sun.messaging.jms.ra.ConnectionFactoryAdapter._allocateConnection(ConnectionFactoryAdapter.java:212)
	at com.sun.messaging.jms.ra.ConnectionFactoryAdapter.createConnection(ConnectionFactoryAdapter.java:170)
	at com.sun.messaging.jms.ra.ConnectionFactoryAdapter.createConnection(ConnectionFactoryAdapter.java:152)
	at com.me.myproject.logging.performance.PerformanceLoggingProducer.log(PerformanceLoggingProducer.java:45)
	at com.me.myproject.logging.performance.PerformanceLoggingProducer$Proxy$_$$_WeldClientProxy.log(Unknown Source)
	at com.me.myproject.ejbinterface.common.RemoteBeanProducer$1.invoke(RemoteBeanProducer.java:128)
	at com.sun.proxy.$Proxy446.getProperty(Unknown Source)
	at com.me.myproject.releasedocuments.basedirectory.BaseDirectoryPropertyInterface.getAppPropertyForBaseDirectory(BaseDirectoryPropertyInterface.java:74)
	at com.me.myproject.releasedocuments.basedirectory.BaseDirectoryPropertyInterface.getBaseDirectory(BaseDirectoryPropertyInterface.java:42)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.glassfish.ejb.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1081)
	at org.glassfish.ejb.security.application.EJBSecurityManager.invoke(EJBSecurityManager.java:1153)
	at com.sun.ejb.containers.BaseContainer.invokeBeanMethod(BaseContainer.java:4695)
	at com.sun.ejb.EjbInvocation.invokeBeanMethod(EjbInvocation.java:630)
	at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
	at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:582)
	at org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:46)
	at sun.reflect.GeneratedMethodAccessor69.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)
	at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
	at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:582)
	at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doCall(SystemInterceptorProxy.java:163)
	at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.aroundInvoke(SystemInterceptorProxy.java:140)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)
	at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
	at com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:369)
	at com.sun.ejb.containers.BaseContainer.__intercept(BaseContainer.java:4667)
	at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:4655)
	at com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:212)
	at com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate.invoke(EJBLocalObjectInvocationHandlerDelegate.java:88)
	at com.sun.proxy.$Proxy444.getBaseDirectory(Unknown Source)
	at com.me.myproject.releasedocuments.basedirectory.__EJB31_Generated__BaseDirectoryPropertyInterface__Intf____Bean__.getBaseDirectory(Unknown Source)
	at com.me.myproject.releasedocuments.ReleaseDocumentsInit.initialize(ReleaseDocumentsInit.java:37)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at com.sun.ejb.containers.interceptors.BeanCallbackInterceptor.intercept(InterceptorManager.java:1035)
	at com.sun.ejb.containers.interceptors.CallbackChainImpl.invokeNext(CallbackChainImpl.java:72)
	at com.sun.ejb.containers.interceptors.CallbackInvocationContext.proceed(CallbackInvocationContext.java:205)
	at org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:55)
	at sun.reflect.GeneratedMethodAccessor69.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at com.sun.ejb.containers.interceptors.CallbackInterceptor.intercept(InterceptorManager.java:986)
	at com.sun.ejb.containers.interceptors.CallbackChainImpl.invokeNext(CallbackChainImpl.java:72)
	at com.sun.ejb.containers.interceptors.CallbackInvocationContext.proceed(CallbackInvocationContext.java:205)
	at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doCall(SystemInterceptorProxy.java:163)
	at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.init(SystemInterceptorProxy.java:125)
	at sun.reflect.GeneratedMethodAccessor83.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at com.sun.ejb.containers.interceptors.CallbackInterceptor.intercept(InterceptorManager.java:986)
	at com.sun.ejb.containers.interceptors.CallbackChainImpl.invokeNext(CallbackChainImpl.java:72)
	at com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:412)
	at com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:375)
	at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:1949)
	at com.sun.ejb.containers.AbstractSingletonContainer.createSingletonEJB(AbstractSingletonContainer.java:475)
	at com.sun.ejb.containers.AbstractSingletonContainer.access$000(AbstractSingletonContainer.java:81)
	at com.sun.ejb.containers.AbstractSingletonContainer$SingletonContextFactory.create(AbstractSingletonContainer.java:654)
	at com.sun.ejb.containers.AbstractSingletonContainer.instantiateSingletonInstance(AbstractSingletonContainer.java:396)
	- locked <0x000000075b3830d8> (a com.sun.ejb.containers.CMCSingletonContainer)
	at org.glassfish.ejb.startup.SingletonLifeCycleManager.initializeSingleton(SingletonLifeCycleManager.java:219)
	at org.glassfish.ejb.startup.SingletonLifeCycleManager.initializeSingleton(SingletonLifeCycleManager.java:180)
	- locked <0x000000075b383358> (a org.glassfish.ejb.startup.SingletonLifeCycleManager)
	at org.glassfish.ejb.startup.SingletonLifeCycleManager.doStartup(SingletonLifeCycleManager.java:158)
	at org.glassfish.ejb.startup.EjbApplication.start(EjbApplication.java:166)
	at org.glassfish.internal.data.EngineRef.start(EngineRef.java:122)
	at org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:291)
	- locked <0x000000075b383478> (a org.glassfish.internal.data.ModuleInfo)
	at org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:352)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:497)
	at com.sun.enterprise.v3.server.ApplicationLoaderService.processApplication(ApplicationLoaderService.java:407)
	at com.sun.enterprise.v3.server.ApplicationLoaderService.postConstruct(ApplicationLoaderService.java:243)
	at org.jvnet.hk2.internal.ClazzCreator.postConstructMe(ClazzCreator.java:281)
	at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:328)
	at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:448)
	at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:163)
	at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2204)
	at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:93)
	- locked <0x000000075003f270> (a java.lang.Object)
	at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.oneJob(CurrentTaskFuture.java:673)
	at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.run(CurrentTaskFuture.java:660)
	at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$UpOneJob.run(CurrentTaskFuture.java:490)
	at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$UpAllTheWay.go(CurrentTaskFuture.java:362)
	at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$UpAllTheWay.access$100(CurrentTaskFuture.java:279)
	at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture.go(CurrentTaskFuture.java:113)
	at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.proceedTo(AsyncRunLevelContext.java:296)
	at org.glassfish.hk2.runlevel.internal.RunLevelControllerImpl.proceedTo(RunLevelControllerImpl.java:66)
	at com.sun.enterprise.v3.server.AppServerStartup.proceedTo(AppServerStartup.java:532)
	at com.sun.enterprise.v3.server.AppServerStartup.run(AppServerStartup.java:329)
	at com.sun.enterprise.v3.server.AppServerStartup.doStart(AppServerStartup.java:226)
	at com.sun.enterprise.v3.server.AppServerStartup.start(AppServerStartup.java:217)
	- locked <0x000000075184dd50> (a com.sun.enterprise.v3.server.AppServerStartup)
	at com.sun.enterprise.glassfish.bootstrap.GlassFishImpl.start(GlassFishImpl.java:79)
	- locked <0x000000075184ddc0> (a com.sun.enterprise.glassfish.bootstrap.GlassFishImpl)
	at com.sun.enterprise.glassfish.bootstrap.GlassFishDecorator.start(GlassFishDecorator.java:63)
	at com.sun.enterprise.glassfish.bootstrap.osgi.EmbeddedOSGiGlassFishImpl.start(EmbeddedOSGiGlassFishImpl.java:75)
	at com.sun.enterprise.glassfish.bootstrap.GlassFishDecorator.start(GlassFishDecorator.java:63)
	at com.sun.enterprise.glassfish.bootstrap.osgi.OSGiGlassFishImpl.start(OSGiGlassFishImpl.java:71)
	at com.sun.enterprise.glassfish.bootstrap.GlassFishMain$Launcher.launch(GlassFishMain.java:117)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at com.sun.enterprise.glassfish.bootstrap.GlassFishMain.main(GlassFishMain.java:97)
	at com.sun.enterprise.glassfish.bootstrap.ASMain.main(ASMain.java:54)

"VM Thread" prio=10 tid=0x00007f5d5c0eb800 nid=0xb0e runnable 

"Gang worker#0 (Parallel GC Threads)" prio=10 tid=0x00007f5d5c021800 nid=0xb07 runnable 

"Gang worker#1 (Parallel GC Threads)" prio=10 tid=0x00007f5d5c023800 nid=0xb08 runnable 

"G1 Main Concurrent Mark GC Thread" prio=10 tid=0x00007f5d5c033800 nid=0xb0c runnable 

"Gang worker#0 (G1 Parallel Marking Threads)" prio=10 tid=0x00007f5d5c03d800 nid=0xb0d runnable 

"G1 Concurrent Refinement Thread#0" prio=10 tid=0x00007f5d5c029800 nid=0xb0b runnable 

"G1 Concurrent Refinement Thread#1" prio=10 tid=0x00007f5d5c027800 nid=0xb0a runnable 

"G1 Concurrent Refinement Thread#2" prio=10 tid=0x00007f5d5c026000 nid=0xb09 runnable 


"VM Periodic Task Thread" prio=10 tid=0x00007f5d5c1a0000 nid=0xb16 waiting on condition 

JNI global references: 427


Workaround:

There is a workaround. If the connection and send logic is run in a separate thread, the thread will lock until glassfish is started, then unlock and send the message

@ApplicationScoped
public class PerformanceLoggingProducer {

    private static final Logger logger = Logger.getLogger(PerformanceLoggingProducer.class.getName());

//    @Resource(mappedName = "jms/ConnectionFactory")
    private ConnectionFactory connectionFactory;
//    @Resource(name = "jms/PerformanceLoggingQueue")
    private Queue queue;

    public PerformanceLoggingProducer() {
        try {
            connectionFactory = (ConnectionFactory) new InitialContext().lookup("jms/ConnectionFactory");
            queue = (Queue) new InitialContext().lookup("jms/PerformanceLoggingQueue");
        } catch (NamingException ex) {
            logger.log(Level.SEVERE, null, ex);
        }
    }

    public void log(final PerformanceLogTracker tracker) {

        if (tracker != null) {
      
            Thread t = new Thread(new Runnable() {

                @Override
                public void run() {
                    try (Connection connection = connectionFactory.createConnection()) {
                        Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
                        MessageProducer producer = session.createProducer(queue);
                        ObjectMessage message = session.createObjectMessage(tracker);
                        producer.send(message);
                    } catch (Exception ex) {
                        logger.log(Level.SEVERE, "An error occurred when logging message: " + tracker, ex);
                    }
                }
            });
            
            t.start();

        }
    }

}


 Comments   
Comment by David Zhao [ 05/Mar/14 07:46 AM ]

Is it a timing issue? If sleeping a while (for example, 10 - 60 seconds) before creating connection in the @Singleton @Startup bean helps?





[GLASSFISH-21034] Glassfish randomly swaps queues Created: 08/Apr/14  Updated: 09/Apr/14

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 4.0_b89_RC5
Fix Version/s: None

Type: Bug Priority: Major
Reporter: enschedem Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

MacOS


Tags:
Participants: David Zhao and enschedem

 Description   

I the following example I using 2 JMS queues in Glassfish 4.0. The first class sends a message to queue 1, this is picked up by a second bean which forwards the message to a next queue. From there it is picked up to the last bean. Schematically:

Creator -> jms/q1 -> QueueBean1 -> jms/q2 -> QueueBean2.

Problem is that QueueBean1 and QueueBean2 are receiving messages randomly from q1 and q2. It seems to me that q1 and q2 are just one queue and the MessageBeans a looking to that queue.



 Comments   
Comment by David Zhao [ 09/Apr/14 05:48 AM ]

How did you create jms/q1 and jms/q2? Please check if they are pointing to the same physical destination in MQ. If true, then the 2 MDBs are listening to the same Queue actually.





[GLASSFISH-20999] description attribute on Topic doesn't get set Created: 01/Mar/14  Updated: 18/Apr/14

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 4.0
Fix Version/s: 4.0.1

Type: New Feature Priority: Major
Reporter: pranahata Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: amyk, David Zhao and pranahata

 Description   

When setting the description attribute of a Topic via @JMSDestinationDefinition or glassfish-resources, it doesn't show either on the client or on the server when doing a toString of the Topic object.



 Comments   
Comment by amyk [ 16/Apr/14 03:02 AM ]

Hi David, please evaluate this to see where the 'description' should be displayed for a JMSDestinationDefinition annotation as a GlassFish JMS resource. Neither Java EE specification nor JMS specification specifies this 'description' be a description for the associated JMS provider's Destination object, further JMS API javadoc only says following for Queue.toString() and Topic.toString(), hence this is not a bug in Topic.toString() from spec conformance point of view

/** Returns a string representation of this object.
 *
 * @return the provider-specific identity values for this topic
 */
Comment by David Zhao [ 16/Apr/14 08:51 AM ]

The JMS admin objects created via admin console or asadmin can take and show the description property. But the property is not included in Queue.toString() either.

Currently the JMS resources defined by annotations like @JMSDestinationDefinition are not shown in the admin gui although it is global scoped. So now the description property will not be seen anywhere in the admin gui, except it is in the codes to be as comments.

To summarize it,

1) It is same as normal JMS resources which are created traditionally that the description is not shown in the toString().
2) If it is decided that the resources defined by annotations are shown in admin gui in the funture, then the description will appear there.

Question to Amy,

Should the description go to Queue.imqDestinationDescription?

Comment by amyk [ 16/Apr/14 02:01 PM ]

>Should the description go to Queue.imqDestinationDescription?

Yes.

Comment by David Zhao [ 17/Apr/14 03:10 AM ]

Update:

create-jms-resource maps property Description to imqDestinationDescription, so it is included in dest.toString():

Oracle GlassFish(tm) Server MQ Destination
getName(): myQueue
Class: com.sun.messaging.Queue
getVERSION(): 3.0
isReadonly(): false
getProperties(): {imqDestinationName=myQueue, imqDestinationDescription=abcde}

create-admin-object is a JCA general command, so it doesn't do the property mapping for JMS. Admin console is using this command as REST endpoint too, so if the JMS destination is created in this way, the description will not be shown in dest.toString(). But the Description property might be stored in MQ destination's properties map, because it can be persisted/restored.

@JMSDestinationDefinition doesn't map Description <-> imqDestinationDescription, so it is not included in toString().





[GLASSFISH-7717] Wrong handling of RuntimeExceptions in JMS cluster Created: 14/Apr/09  Updated: 02/Nov/12

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 9.1peur2
Fix Version/s: 4.0

Type: Bug Priority: Minor
Reporter: friedeks Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: All


Issuezilla Id: 7,717
Status Whiteboard:

v3_exclude, v2.1.1_exclude

Tags: bj-reviewed
Participants: David Zhao, Ed Bratt, friedeks, Satish Kumar, Simon Meng and Tom Mueller

 Description   

I installed a v2.1 cluster with two nodes and set up a default jms
ConnectionFactory and logical + physical queue.
I composed a testcase with one MDB doing nothing but throwing a RuntimeException.
The MDB was configured with "EndpointExceptionRedeliveryAttempts=5" and deployed
to the cluster.
A JavaSE Client uses JNDI to send 10000 transactional messages to the queue.
The load gets distributed evenly between the two cluster instances. Instance one
behaves as expected and retries 5 times before moving the messages to DMQ.
Instance two instead seems to ignore EndpointExceptionRedeliveryAttempts and
keeps trying to deliver the bad messages. Instance two loops forever using a lot
of CPU. The Queue shows around 5000 "Not ACK" messages.

The same testcase runs flawlessly in a non-clustered environment.



 Comments   
Comment by Satish Kumar [ 09/Sep/09 04:25 AM ]

This is a v2.1 issue not relevant for V3. Hence adding 'v3_exclude' in the
status whiteboard.

Comment by Ed Bratt [ 15/Oct/09 04:26 PM ]

Will not fix in v2.1.1

Comment by Tom Mueller [ 06/Mar/12 09:55 PM ]

Bulk update to change fix version to "not determined" for all issues still open but with a fix version for a released version.

Comment by Simon Meng [ 24/Oct/12 09:16 AM ]

I can't reproduce the described issue. The expected RuntimeException appeared. There is no infinite loop.

But I found other issue in my testing. When sending a message from the standalone java client to queue, the MDB behaves as expected and retries 5 times, we can see 6 RuntimeExceptions. Then the message was moved to DMQ. It looks everything works fine at this point. But when I restart domain and server, the MDB throws 6 RuntimeExceptions again. The message also enters queue and marked as "UnAck". Each time I retart domain, the MDB still throws 6 RuntimeExceptions. It looks to me the behavior is not correct. The message has been moved to the DMQ, why it is delivered again and again when domain restart?

Comment by Simon Meng [ 02/Nov/12 02:56 AM ]

The "other issue" that simeng_oracle noticed in his testing as mentioned in his above comment - that involves a transacted sender client and restart domain is a MQ bug MQ-227.





[GLASSFISH-19037] Invalid characters can be entered for Name in New Admin Object Resource screen Created: 27/Aug/12  Updated: 18/Apr/14

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 4.0_b45
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: tak09 Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows


File Attachments: PNG File New Admin Object Resource.png    
Tags:
Participants: David Zhao, Jagadish and tak09

 Description   

In the New Admin Object Resource screen, an invalid characters can be entered for name property.

To reproduce the issue:
1. From the GUI, open Resources > Connectors > Admin Object Resources.
2. Then, click New to open the 'New Admin Object Resource'.
3. Enter an invalid character in the Name property. For example !abc. Please see the screenshot.
4. When you click OK, it is created with the invalid property name.

According to the imqcmd manual, the valid characters for the physical destination name are as follows:

"The destination name destName may contain only alphanumeric characters (no spaces) and must begin with an alphabetic character or the underscore (_) or dollar sign ($) character. It may not begin with the characters mq."

http://docs.oracle.com/cd/E26576_01/doc.312/e24943/command-line-reference.htm#aeonj

Please see the related issue GLASSFISH-19033 as well.



 Comments   
Comment by David Zhao [ 09/Jul/13 02:43 AM ]

Forward it to connector team for further investigation about the create-admin-object command issue.

Comment by Jagadish [ 18/Apr/14 09:18 AM ]

I think JMS RA need to validate the value of the property being set.
eg: the method "setName" in the use-case stated must do validation and throw exception in case the value is not valid.
(You can do validation in the setName or use bean validation). Transferring to JMS team for the fix.





[GLASSFISH-20866] jmsra.upgrade_check_failed WARNING on Glassfish startup Created: 23/Oct/13  Updated: 23/Oct/13

Status: Open
Project: glassfish
Component/s: jms
Affects Version/s: 4.0
Fix Version/s: None

Type: Bug Priority: Trivial
Reporter: Andrew_Scully Assignee: David Zhao
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Glassfish 4.0 with embedded OpenMQ


Issue Links:
Duplicate
is duplicated by MQ-346 jmsra.upgrade_check_failed WARNING on... Closed
Tags: mq jms ra glassfish4 startup log warning
Participants: Andrew_Scully and David Zhao

 Description   

[Originally raised against MQ: https://java.net/jira/browse/MQ-346]

During startup, the following entry is written to the log...

2013-10-22 15:27:12,442 WARNING glassfish 4.0 javax.enterprise.resource.resourceadapter.com.sun.enterprise.connectors.jms.util _ThreadID=15;_ThreadName=WrapperSimpleAppMain; jmsra.upgrade_check_failed

...despite this, all of the JMS functionality seems to work fine.

This post...

https://forums.oracle.com/thread/1520247

...appears to suggest that the WARN level is inappropriate.






Generated at Sun Apr 20 00:02:31 UTC 2014 using JIRA 4.0.2#472.