Issue Type: Bug Bug
Affects Versions: 4.1.5.SP1
Assignee: Unassigned
Created: 24/Jul/12 11:27 AM
Description:

The toString ValueHolder in NaturalIdCacheKey is declared transient but initialized in the constructor. Since there is no special deserialization handling this results in the reference being null after deserialization and toString on a deserialized objects throws the following NPE

java.lang.NullPointerException
	at org.hibernate.cache.spi.NaturalIdCacheKey.toString(NaturalIdCacheKey.java:123)
	at org.slf4j.helpers.MessageFormatter.safeObjectAppend(MessageFormatter.java:304)
	at org.slf4j.helpers.MessageFormatter.deeplyAppendParameter(MessageFormatter.java:276)
	at org.slf4j.helpers.MessageFormatter.arrayFormat(MessageFormatter.java:230)
	at org.slf4j.helpers.MessageFormatter.format(MessageFormatter.java:152)
	at org.slf4j.impl.JCLLoggerAdapter.trace(JCLLoggerAdapter.java:112)
	at net.sf.ehcache.distribution.jgroups.JGroupsCacheReceiver.handleEhcacheNotification(JGroupsCacheReceiver.java:170)
	at net.sf.ehcache.distribution.jgroups.JGroupsCacheReceiver.handleJGroupNotification(JGroupsCacheReceiver.java:145)
	at net.sf.ehcache.distribution.jgroups.JGroupsCacheReceiver.safeHandleJGroupNotification(JGroupsCacheReceiver.java:109)
	at net.sf.ehcache.distribution.jgroups.JGroupsCacheReceiver.receive(JGroupsCacheReceiver.java:82)
	at org.jgroups.JChannel.invokeCallback(JChannel.java:757)
	at org.jgroups.JChannel.up(JChannel.java:718)
	at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:1020)
	at org.jgroups.protocols.pbcast.STATE_TRANSFER.up(STATE_TRANSFER.java:178)
	at org.jgroups.protocols.RSVP.up(RSVP.java:192)
	at org.jgroups.protocols.FRAG2.up(FRAG2.java:181)
	at org.jgroups.protocols.FlowControl.up(FlowControl.java:400)
	at org.jgroups.protocols.FlowControl.up(FlowControl.java:418)
	at org.jgroups.protocols.pbcast.GMS.up(GMS.java:899)
	at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:244)
	at org.jgroups.protocols.UNICAST.up(UNICAST.java:414)
	at org.jgroups.protocols.pbcast.NAKACK2.handleMessage(NAKACK2.java:735)
	at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:536)
	at org.jgroups.protocols.BARRIER.up(BARRIER.java:126)
	at org.jgroups.protocols.VERIFY_SUSPECT.up(VERIFY_SUSPECT.java:143)
	at org.jgroups.protocols.FD_ALL.up(FD_ALL.java:177)
	at org.jgroups.protocols.FD_SOCK.up(FD_SOCK.java:288)
	at org.jgroups.protocols.MERGE2.up(MERGE2.java:205)
	at org.jgroups.protocols.Discovery.up(Discovery.java:359)
	at org.jgroups.protocols.TP.passMessageUp(TP.java:1211)
	at org.jgroups.protocols.TP$IncomingPacket.handleMyMessage(TP.java:1775)
	at org.jgroups.protocols.TP$IncomingPacket.run(TP.java:1743)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:680)
Fix Versions: 4.1.6
Project: Hibernate ORM
Priority: Major Major
Reporter: Eric Dalquist
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators.
For more information on JIRA, see: http://www.atlassian.com/software/jira