|
|
|
I saw a commit on this in uP2HEAD to enhance
org.jasig.portal.channels.error.CError to implement receiveEvent() and pass received events to underlying channels when they are present. I think org.jasig.portal.channels.CError, the legacy delegating stub in the I can make this change to org.jasig.portal.channels.CError in the HEAD if desired. This is how I was able to reproduce the CError bug using uP 2.4.1
1) deploy uP 2) remove all the portlet webapps (this will force all the portlets to instead render the CError channel) 3) login as admin (they had the example portlet tab as their default) 4) logout, force GC, take a memory snapshot using yourkit profiler On each logout, you should see +1 ChannelManager objects. Bill,
I've verified that adding the receiveEvent method to CError channel fixes public void receiveEvent(PortalEvent ev) { Let me know if that works for you too. -nick Ok. I was able verified both the bug and your fix. Nice work!
later. My bad, my previous post was wrong. The legacy CError stub already passes
events along to its delegate. Nick's commit was exactly correct. Congratulations on plugging this leak. [I saw a commit on this in uP2HEAD to enhance I think org.jasig.portal.channels.CError, the legacy delegating stub in the I can make this change to org.jasig.portal.channels.CError in the HEAD if desired.] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
implement receiveEvent and pass events they receive along to the channels they
hold.