• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
RFC : Fresh data / ERChangeNotification
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RFC : Fresh data / ERChangeNotification


  • Subject: RFC : Fresh data / ERChangeNotification
  • From: Jean-François Veillette <email@hidden>
  • Date: Tue, 10 Jan 2006 16:01:47 -0500

Long story short ...
We have many application collaborating in one system.
Many work units apps (many instances). One admin app (many instances).
The admin app should show status of work units. Work unit status depend on many objects and need a calculation based on 2 level of to-many relations.
When we start the admin app, it take long time to fetch the objects and show the first page, after that (once cached) it's very fast.

We had to ensure the admin app had fresh data, we simply used ERChangeNotification, and it worked !
We are now facing dead-lock issues on the admin app. Attached is stack of a locked app.
Reports point to ERChangeNotification as a possible source for our sudden problem : http://lists.apple.com/archives/webobjects-dev/2005/Oct/msg00560.html .

Any idea of what we can do (short term and long term) to get fresh data in our system ?
Long term, we already intend to pre-calculate some values so that we do not need to load all objects just to perform calculation and get status.
Any other idea ?

Note :
We are speaking mid 4k of work units, but should handle up to 80k by next year. In that context, reloading the object graph every time we render that page imply too many to-many relationship fetches. Changes on the clients are not that frequent, few per minutes (100 per days), so we thought that a change notification could serve us well.

We are looking for short/middle/long term suggestions.

Thanks,

- jfv


> where all
RMI LeaseChecker:
Current thread isn't suspended.
RMI Reaper:
[1] java.lang.Object.wait (native method)
[2] java.lang.ref.ReferenceQueue.remove (ReferenceQueue.java:111)
[3] java.lang.ref.ReferenceQueue.remove (ReferenceQueue.java:127)
[4] sun.rmi.transport.ObjectTable$Reaper.run (ObjectTable.java:330)
[5] java.lang.Thread.run (Thread.java:552)
RMI TCP Accept-0:
[1] java.net.PlainSocketImpl.socketAccept (native method)
[2] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:353)
[3] java.net.ServerSocket.implAccept (ServerSocket.java:448)
[4] java.net.ServerSocket.accept (ServerSocket.java:419)
[5] sun.rmi.transport.tcp.TCPTransport.run (TCPTransport.java:334)
[6] java.lang.Thread.run (Thread.java:552)
EventManagerThread:
[1] java.lang.Object.wait (native method)
[2] java.lang.Object.wait (Object.java:429)
[3] org.exolab.jms.events.BasicEventManager.run (BasicEventManager.java:258)
[4] java.lang.Thread.run (Thread.java:552)
PingThread-11379670:
[1] java.lang.Thread.sleep (native method)
[2] org.exolab.jms.client.rmi.RmiJmsConnectionStub$PingThread.run (RmiJmsConnectionStub.java:249)
Clock Daemon:
[1] java.lang.Thread.sleep (native method)
[2] org.exolab.jms.util.Clock.run (Clock.java:210)
Thread-3:
[1] java.lang.Object.wait (native method)
[2] java.lang.Object.wait (Object.java:429)
[3] java.util.TimerThread.mainLoop (Timer.java:403)
[4] java.util.TimerThread.run (Timer.java:382)
GC Daemon:
[1] java.lang.Object.wait (native method)
[2] sun.misc.GC$Daemon.run (GC.java:100)
RMI RenewClean-[192.168.20.2:49316]:
[1] java.lang.Object.wait (native method)
[2] java.lang.ref.ReferenceQueue.remove (ReferenceQueue.java:111)
[3] sun.rmi.transport.DGCClient$EndpointEntry$RenewCleanThread.run (DGCClient.java:500)
[4] java.lang.Thread.run (Thread.java:552)
WorkerThread15:
[1] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:351)
[2] java.net.ServerSocket.implAccept (ServerSocket.java:448)
[3] java.net.ServerSocket.accept (ServerSocket.java:419)
[4] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:238)
[5] java.lang.Thread.run (Thread.java:552)
WorkerThread14:
[1] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:351)
[2] java.net.ServerSocket.implAccept (ServerSocket.java:448)
[3] java.net.ServerSocket.accept (ServerSocket.java:419)
[4] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:238)
[5] java.lang.Thread.run (Thread.java:552)
WorkerThread13:
[1] java.lang.Object.wait (native method)
[2] java.lang.Object.wait (Object.java:429)
[3] com.webobjects.foundation.NSRecursiveLock.lock (NSRecursiveLock.java:72)
[4] com.webobjects.eocontrol.EOObjectStoreCoordinator.lock (EOObjectStoreCoordinator.java:466)
[5] com.webobjects.eocontrol.EOEditingContext.lockObjectStore (EOEditingContext.java:4,675)
[6] com.webobjects.eocontrol.EOCustomObject.willReadRelationship (EOCustomObject.java:1,293)
[7] com.webobjects.eocontrol._EOMutableKnownKeyDictionary$Initializer$_LazyGenericRecordBinding.valueInObject (_EOMutableKnownKeyDictionary.java:560)
[8] com.webobjects.eocontrol.EOCustomObject.storedValueForKey (EOCustomObject.java:1,736)
[9] com.polyprotec.logique._Utilisateur.organisation (_Utilisateur.java:75)
[10] com.polyprotec.logique.Mandat.estCreateur (Mandat.java:1,513)
[11] com.polyprotec.interfaceweb.SectionMandat.estLectureCreateur (SectionMandat.java:145)
[12] sun.reflect.GeneratedMethodAccessor154.invoke (null)
[13] sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25)
[14] java.lang.reflect.Method.invoke (Method.java:324)
[15] com.webobjects.foundation.NSKeyValueCoding$1.methodValue (NSKeyValueCoding.java:684)
[16] com.webobjects.foundation.NSKeyValueCoding$_MethodBinding.valueInObject (NSKeyValueCoding.java:1,160)
[17] com.webobjects.foundation.NSKeyValueCoding$DefaultImplementation.valueForKey (NSKeyValueCoding.java:1,268)
[18] com.webobjects.appserver.WOComponent.valueForKey (WOComponent.java:1,539)
[19] com.webobjects.foundation.NSKeyValueCoding$Utility.valueForKey (NSKeyValueCoding.java:498)
[20] com.webobjects.foundation.NSKeyValueCodingAdditions$DefaultImplementation.valueForKeyPath (NSKeyValueCodingAdditions.java:212)
[21] com.webobjects.appserver.WOComponent.valueForKeyPath (WOComponent.java:1,600)
[22] ca.os.utilitaires.OSComponent.valueForKeyPath (OSComponent.java:399)
[23] com.webobjects.appserver._private.WOKeyValueAssociation.valueInComponent (WOKeyValueAssociation.java:46)
[24] com.webobjects.appserver.WOAssociation.booleanValueInComponent (WOAssociation.java:278)
[25] com.webobjects.appserver._private.WOConditional.appendToResponse (WOConditional.java:62)
[26] com.webobjects.appserver._private.WODynamicGroup.appendChildrenToResponse (WODynamicGroup.java:121)
[27] com.webobjects.appserver._private.WOConditional.appendToResponse (WOConditional.java:70)
[28] com.webobjects.appserver._private.WODynamicGroup.appendChildrenToResponse (WODynamicGroup.java:121)
[29] com.webobjects.appserver._private.WODynamicGroup.appendToResponse (WODynamicGroup.java:130)
[30] com.webobjects.appserver.WOComponent.appendToResponse (WOComponent.java:992)
[31] ca.os.utilitaires.OSComponent.appendToResponse (OSComponent.java:126)
[32] com.webobjects.appserver._private.WOComponentReference.appendToResponse (WOComponentReference.java:111)
[33] com.webobjects.appserver._private.WODynamicGroup.appendChildrenToResponse (WODynamicGroup.java:121)
[34] com.webobjects.appserver._private.WOForm.appendChildrenToResponse (WOForm.java:124)
[35] com.webobjects.appserver._private.WOHTMLDynamicElement.appendToResponse (WOHTMLDynamicElement.java:424)
[36] com.webobjects.appserver._private.WOForm.appendToResponse (WOForm.java:118)
[37] com.webobjects.appserver._private.WOComponentContent.appendToResponse (WOComponentContent.java:43)
[38] com.webobjects.appserver._private.WODynamicGroup.appendChildrenToResponse (WODynamicGroup.java:121)
[39] com.webobjects.appserver._private.WODynamicGroup.appendToResponse (WODynamicGroup.java:130)
[40] com.webobjects.appserver.WOComponent.appendToResponse (WOComponent.java:992)
[41] ca.os.utilitaires.OSComponent.appendToResponse (OSComponent.java:126)
[42] com.webobjects.appserver._private.WOComponentReference.appendToResponse (WOComponentReference.java:111)
[43] com.webobjects.appserver._private.WODynamicGroup.appendChildrenToResponse (WODynamicGroup.java:121)
[44] com.webobjects.appserver._private.WODynamicGroup.appendToResponse (WODynamicGroup.java:130)
[45] com.webobjects.appserver.WOComponent.appendToResponse (WOComponent.java:992)
[46] ca.os.utilitaires.OSComponent.appendToResponse (OSComponent.java:126)
[47] com.webobjects.appserver.WOSession.appendToResponse (WOSession.java:1,198)
[48] com.webobjects.appserver.WOApplication.appendToResponse (WOApplication.java:1,418)
[49] com.polyprotec.interfaceweb.PPApplication.appendToResponse (PPApplication.java:89)
[50] com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedPage (WOComponentRequestHandler.java:230)
[51] com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedSession (WOComponentRequestHandler.java:287)
[52] com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedApplication (WOComponentRequestHandler.java:322)
[53] com.webobjects.appserver._private.WOComponentRequestHandler._handleRequest (WOComponentRequestHandler.java:358)
[54] com.webobjects.appserver._private.WOComponentRequestHandler.handleRequest (WOComponentRequestHandler.java:435)
[55] com.webobjects.appserver.WOApplication.dispatchRequest (WOApplication.java:1,306)
[56] com.webobjects.appserver._private.WOWorkerThread.runOnce (WOWorkerThread.java:173)
[57] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:254)
[58] java.lang.Thread.run (Thread.java:552)
WorkerThread12:
[1] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:351)
[2] java.net.ServerSocket.implAccept (ServerSocket.java:448)
[3] java.net.ServerSocket.accept (ServerSocket.java:419)
[4] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:238)
[5] java.lang.Thread.run (Thread.java:552)
WorkerThread11:
[1] java.lang.Object.wait (native method)
[2] java.lang.Object.wait (Object.java:429)
[3] com.webobjects.foundation.NSRecursiveLock.lock (NSRecursiveLock.java:72)
[4] com.webobjects.eocontrol.EOEditingContext.lock (EOEditingContext.java:4,624)
[5] com.polyprotec.interfaceweb.PageEdition.awake (PageEdition.java:125)
[6] com.webobjects.appserver.WOComponent._awakeInContext (WOComponent.java:862)
[7] com.webobjects.appserver.WOSession.restorePageForContextID (WOSession.java:710)
[8] com.webobjects.appserver._private.WOComponentRequestHandler._restorePageForContextID (WOComponentRequestHandler.java:156)
[9] com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedSession (WOComponentRequestHandler.java:277)
[10] com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedApplication (WOComponentRequestHandler.java:322)
[11] com.webobjects.appserver._private.WOComponentRequestHandler._handleRequest (WOComponentRequestHandler.java:358)
[12] com.webobjects.appserver._private.WOComponentRequestHandler.handleRequest (WOComponentRequestHandler.java:435)
[13] com.webobjects.appserver.WOApplication.dispatchRequest (WOApplication.java:1,306)
[14] com.webobjects.appserver._private.WOWorkerThread.runOnce (WOWorkerThread.java:173)
[15] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:254)
[16] java.lang.Thread.run (Thread.java:552)
WorkerThread10:
[1] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:351)
[2] java.net.ServerSocket.implAccept (ServerSocket.java:448)
[3] java.net.ServerSocket.accept (ServerSocket.java:419)
[4] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:238)
[5] java.lang.Thread.run (Thread.java:552)
WorkerThread9:
[1] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:351)
[2] java.net.ServerSocket.implAccept (ServerSocket.java:448)
[3] java.net.ServerSocket.accept (ServerSocket.java:419)
[4] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:238)
[5] java.lang.Thread.run (Thread.java:552)
WorkerThread8:
[1] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:351)
[2] java.net.ServerSocket.implAccept (ServerSocket.java:448)
[3] java.net.ServerSocket.accept (ServerSocket.java:419)
[4] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:238)
[5] java.lang.Thread.run (Thread.java:552)
WorkerThread7:
[1] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:351)
[2] java.net.ServerSocket.implAccept (ServerSocket.java:448)
[3] java.net.ServerSocket.accept (ServerSocket.java:419)
[4] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:238)
[5] java.lang.Thread.run (Thread.java:552)
WorkerThread6:
[1] java.net.PlainSocketImpl.socketAccept (native method)
[2] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:353)
[3] java.net.ServerSocket.implAccept (ServerSocket.java:448)
[4] java.net.ServerSocket.accept (ServerSocket.java:419)
[5] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:238)
[6] java.lang.Thread.run (Thread.java:552)
WorkerThread5:
[1] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:351)
[2] java.net.ServerSocket.implAccept (ServerSocket.java:448)
[3] java.net.ServerSocket.accept (ServerSocket.java:419)
[4] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:238)
[5] java.lang.Thread.run (Thread.java:552)
WorkerThread4:
[1] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:351)
[2] java.net.ServerSocket.implAccept (ServerSocket.java:448)
[3] java.net.ServerSocket.accept (ServerSocket.java:419)
[4] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:238)
[5] java.lang.Thread.run (Thread.java:552)
WorkerThread3:
[1] java.lang.Object.wait (native method)
[2] java.lang.Object.wait (Object.java:429)
[3] com.webobjects.foundation.NSRecursiveLock.lock (NSRecursiveLock.java:72)
[4] com.webobjects.eocontrol.EOEditingContext.lock (EOEditingContext.java:4,624)
[5] com.polyprotec.interfaceweb.PageEdition.awake (PageEdition.java:125)
[6] com.webobjects.appserver.WOComponent._awakeInContext (WOComponent.java:862)
[7] com.webobjects.appserver.WOSession.restorePageForContextID (WOSession.java:710)
[8] com.webobjects.appserver._private.WOComponentRequestHandler._restorePageForContextID (WOComponentRequestHandler.java:156)
[9] com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedSession (WOComponentRequestHandler.java:277)
[10] com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedApplication (WOComponentRequestHandler.java:322)
[11] com.webobjects.appserver._private.WOComponentRequestHandler._handleRequest (WOComponentRequestHandler.java:358)
[12] com.webobjects.appserver._private.WOComponentRequestHandler.handleRequest (WOComponentRequestHandler.java:435)
[13] com.webobjects.appserver.WOApplication.dispatchRequest (WOApplication.java:1,306)
[14] com.webobjects.appserver._private.WOWorkerThread.runOnce (WOWorkerThread.java:173)
[15] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:254)
[16] java.lang.Thread.run (Thread.java:552)
WorkerThread2:
[1] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:351)
[2] java.net.ServerSocket.implAccept (ServerSocket.java:448)
[3] java.net.ServerSocket.accept (ServerSocket.java:419)
[4] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:238)
[5] java.lang.Thread.run (Thread.java:552)
WorkerThread1:
[1] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:351)
[2] java.net.ServerSocket.implAccept (ServerSocket.java:448)
[3] java.net.ServerSocket.accept (ServerSocket.java:419)
[4] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:238)
[5] java.lang.Thread.run (Thread.java:552)
WorkerThread0:
[1] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:351)
[2] java.net.ServerSocket.implAccept (ServerSocket.java:448)
[3] java.net.ServerSocket.accept (ServerSocket.java:419)
[4] com.webobjects.appserver._private.WOWorkerThread.run (WOWorkerThread.java:238)
[5] java.lang.Thread.run (Thread.java:552)
Thread-1:
[1] java.lang.Thread.sleep (native method)
[2] org.apache.log4j.helpers.FileWatchdog.run (FileWatchdog.java:95)
Thread-0:
[1] java.lang.Thread.sleep (native method)
[2] com.webobjects.appserver.WOApplication$_LifebeatThread.run (WOApplication.java:1,233)
Session Timeout Thread:
Current thread isn't suspended.
Signal Dispatcher:
Finalizer:
[1] java.lang.Object.wait (native method)
[2] java.lang.Object.wait (Object.java:429)
[3] com.webobjects.foundation.NSRecursiveLock.lock (NSRecursiveLock.java:72)
[4] com.webobjects.eocontrol.EOObjectStoreCoordinator.lock (EOObjectStoreCoordinator.java:466)
[5] com.webobjects.eocontrol.EOEditingContext.lockObjectStore (EOEditingContext.java:4,675)
[6] com.webobjects.eocontrol.EOEditingContext._dispose (EOEditingContext.java:1,047)
[7] com.webobjects.eocontrol.EOEditingContext.finalize (EOEditingContext.java:1,113)
[8] java.lang.ref.Finalizer.invokeFinalizeMethod (native method)
[9] java.lang.ref.Finalizer.runFinalizer (Finalizer.java:83)
[10] java.lang.ref.Finalizer.access$100 (Finalizer.java:14)
[11] java.lang.ref.Finalizer$FinalizerThread.run (Finalizer.java:160)
Reference Handler:
[1] java.lang.Object.wait (native method)
[2] java.lang.Object.wait (Object.java:429)
[3] java.lang.ref.Reference$ReferenceHandler.run (Reference.java:115)
main:
[1] java.lang.Object.wait (native method)
[2] com.webobjects.appserver._WORunLoop._acceptInputBeforeDate (_WORunLoop.java:217)
[3] com.webobjects.appserver._WORunLoop.runBeforeDate (_WORunLoop.java:71)
[4] com.webobjects.appserver.WOApplication._runOnce (WOApplication.java:775)
[5] com.webobjects.appserver.WOApplication.run (WOApplication.java:900)
[6] com.webobjects.appserver.WOApplication.main (WOApplication.java:324)
[7] com.polyprotec.fct.Application.main (Application.java:27)
[8] sun.reflect.NativeMethodAccessorImpl.invoke0 (native method)
[9] sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39)
[10] sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25)
[11] java.lang.reflect.Method.invoke (Method.java:324)
[12] com.webobjects._bootstrap.WOBootstrap.main (WOBootstrap.java:71)
RMI TCP Connection(727)-192.168.20.2:
[1] java.lang.Object.wait (native method)
[2] java.lang.Object.wait (Object.java:429)
[3] com.webobjects.foundation.NSMultiReaderLock$ConditionLock.await (NSMultiReaderLock.java:505)
[4] com.webobjects.foundation.NSMultiReaderLock._lockForWriting (NSMultiReaderLock.java:204)
[5] com.webobjects.foundation.NSMultiReaderLock.lockForWriting (NSMultiReaderLock.java:165)
[6] com.webobjects.eocontrol.EOSharedEditingContext.lock (EOSharedEditingContext.java:700)
[7] com.webobjects.eocontrol.EOEditingContext.lockObjectStore (EOEditingContext.java:4,673)
[8] com.webobjects.eocontrol.EOEditingContext._processReferenceQueue (EOEditingContext.java:4,769)
[9] com.webobjects.eocontrol.EOEditingContext._processRecentChanges (EOEditingContext.java:1,869)
[10] com.webobjects.eocontrol.EOEditingContext.processRecentChanges (EOEditingContext.java:1,890)
[11] com.webobjects.eocontrol.EOEditingContext._processObjectStoreChanges (EOEditingContext.java:3,475)
[12] sun.reflect.GeneratedMethodAccessor168.invoke (null)
[13] sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25)
[14] java.lang.reflect.Method.invoke (Method.java:324)
[15] com.webobjects.foundation.NSSelector.invoke (NSSelector.java:354)
[16] com.webobjects.foundation.NSSelector._safeInvokeSelector (NSSelector.java:108)
[17] com.webobjects.eocontrol.EOEditingContext._processNotificationQueue (EOEditingContext.java:4,750)
[18] com.webobjects.eocontrol.EOEditingContext.lock (EOEditingContext.java:4,627)
[19] com.webobjects.eocontrol.EOEditingContext.tryLock (EOEditingContext.java:4,639)
[20] com.webobjects.eocontrol.EOEditingContext._sendOrEnqueueNotification (EOEditingContext.java:4,714)
[21] com.webobjects.eocontrol.EOEditingContext._objectsChangedInStore (EOEditingContext.java:3,537)
[22] sun.reflect.GeneratedMethodAccessor167.invoke (null)
[23] sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25)
[24] java.lang.reflect.Method.invoke (Method.java:324)
[25] com.webobjects.foundation.NSSelector._safeInvokeMethod (NSSelector.java:120)
[26] com.webobjects.foundation.NSNotificationCenter$_Entry.invokeMethod (NSNotificationCenter.java:598)
[27] com.webobjects.foundation.NSNotificationCenter.postNotification (NSNotificationCenter.java:542)
[28] com.webobjects.foundation.NSNotificationCenter.postNotification (NSNotificationCenter.java:572)
[29] com.webobjects.eocontrol.EOObjectStoreCoordinator._objectsChangedInSubStore (EOObjectStoreCoordinator.java:744)
[30] sun.reflect.GeneratedMethodAccessor65.invoke (null)
[31] sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25)
[32] java.lang.reflect.Method.invoke (Method.java:324)
[33] com.webobjects.foundation.NSSelector._safeInvokeMethod (NSSelector.java:120)
[34] com.webobjects.foundation.NSNotificationCenter$_Entry.invokeMethod (NSNotificationCenter.java:598)
[35] com.webobjects.foundation.NSNotificationCenter.postNotification (NSNotificationCenter.java:542)
[36] com.webobjects.foundation.NSNotificationCenter.postNotification (NSNotificationCenter.java:572)
[37] com.webobjects.eoaccess.EODatabaseContext._snapshotsChangedInDatabase (EODatabaseContext.java:3,812)
[38] sun.reflect.GeneratedMethodAccessor64.invoke (null)
[39] sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25)
[40] java.lang.reflect.Method.invoke (Method.java:324)
[41] com.webobjects.foundation.NSSelector._safeInvokeMethod (NSSelector.java:120)
[42] com.webobjects.foundation.NSNotificationCenter$_Entry.invokeMethod (NSNotificationCenter.java:598)
[43] com.webobjects.foundation.NSNotificationCenter.postNotification (NSNotificationCenter.java:542)
[44] com.webobjects.foundation.NSNotificationCenter.postNotification (NSNotificationCenter.java:572)
[45] com.webobjects.eoaccess.EODatabase.forgetSnapshotForGlobalID (EODatabase.java:915)
[46] er.changenotification.ERCNSubscriber._processUpdates (ERCNSubscriber.java:166)
[47] er.changenotification.ERCNSubscriber.onMessage (ERCNSubscriber.java:100)
[48] org.exolab.jms.client.JmsMessageConsumer.onMessage (JmsMessageConsumer.java:292)
[49] org.exolab.jms.client.JmsSession.execute (JmsSession.java:669)
[50] org.exolab.jms.client.JmsSession.onMessage (JmsSession.java:607)
[51] org.exolab.jms.client.rmi.RmiJmsSessionStub.onMessage (RmiJmsSessionStub.java:539)
[52] sun.reflect.GeneratedMethodAccessor9.invoke (null)
[53] sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25)
[54] java.lang.reflect.Method.invoke (Method.java:324)
[55] sun.rmi.server.UnicastServerRef.dispatch (UnicastServerRef.java:261)
[56] sun.rmi.transport.Transport$1.run (Transport.java:148)
[57] java.security.AccessController.doPrivileged (native method)
[58] sun.rmi.transport.Transport.serviceCall (Transport.java:144)
[59] sun.rmi.transport.tcp.TCPTransport.handleMessages (TCPTransport.java:460)
[60] sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run (TCPTransport.java:701)
[61] java.lang.Thread.run (Thread.java:552)
RMI ConnectionExpiration-[192.168.20.2:49316]:
[1] java.lang.Thread.sleep (native method)
[2] sun.rmi.transport.tcp.TCPChannel$Reaper.run (TCPChannel.java:447)
[3] java.lang.Thread.run (Thread.java:552)
> exit

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Prev by Date: Re: Deployment of multiple instance on two host [solved]
  • Next by Date: Accessing a string from a display group.
  • Previous by thread: Re: Deployment of multiple instance on two host [solved]
  • Next by thread: Accessing a string from a display group.
  • Index(es):
    • Date
    • Thread