Nevermind, problem fixed. I just changed how it finds the directories on restoreTransactions(), and made it ignore them in MessageLog.restore()
I'll commit after some testing. -David On Tue, 27 Nov 2001, David Jencks wrote: > On 2001.11.27 17:21:31 -0500 David Budworth wrote: > > So, why do we pre-restore the message queues? And not just restore them > > when a queue deploys? > > > > It seems to be a waste of memory to load an entire queue 'just in case' > > it gets deployed. > > > > Is there any reason why I couldn't just move the code from > > restoreTransactions() (which is called only by startService()) to > > restoreDestination() which currently seems to just take the messages out > > of the cache created by restoreTransactions(). > > Maybe you can make it work. I didn't see any way to, and I couldn't figure > out any way to test it either. So I tried to change it as little as > possible. You will definitely have to keep track of the recovered > transaction info until all queues are restored: detecting this may me > another trick. I thought it was way simpler to process it all at once when > the pm started. Why is this causing you problems? I don't see the > connection to the namespace issues. > > david jencks > > > > -david > > > > On Tue, 27 Nov 2001, David Jencks wrote: > > > > > On 2001.11.27 15:55:06 -0500 David Budworth wrote: > > > > Does anyone know if it's actually legal for JMS topics/queues to have > > > > structure? > > > > > > > > I was making the change for binding subcontexts automatically (using > > > > org.jboss.naming.Util). And it deploys fine. > > > > > > > > But, if I kill jboss and restart it (without my sar that defines the > > > > queue in deploy), it throws exceptions because it finds a directory > > in > > > > the db/messaging/QUEUE.mycompany/myqueue > > > > > > > > The queue was "mycompany/myqueue", which was created correctly as > > > > db/messaging/QUEUE.mycompany/myqueue/ > > > > > > > > I can only assume that the queue restoration only looks one level > > deep. > > > > And attempts to restore a queue (even though the queue is not in any > > DD > > > > anymore) > > > > > > > > I'm just trying to understand what all should be fixed. > > > > > > > > So, questions of the day are : > > > > > > > > 1) Can a queuename have depth? > > > > 2) Should all queues be restored at jboss startup regardless of if > > they > > > > are needed anymore? > > > > 2a) Or when the MBEAN descriptor is located? > > > > > > The startup is in 2 phases. When the pm is started, it "pre-restores" > > all > > > the queues it can find, figures out which messages weren't committed > > (btw > > > I'm not convinced it handles "prepared but not committed" properly), > > and > > > makes lists of undelivered messages. Then when each queue starts, it > > > registers with the pm and gets its list of messages. For topics, if I > > > remember correctly, the queue representing the topic asks the > > StateManager > > > for all the subscriber queues and restores each one individually. > > > > > > In regards to (2), there is no way to tell if a queue is needed > > anymore. > > > The mbeans for the queues are not necessarily in the same file as the > > mbean > > > for the pm, and could be deployed hours or days later. On the other > > hand, > > > the cleanup of uncommitted messages should happen as soon as the pm is > > > started, so you don't need to keep dead data around indefinitely. > > > > > > david jencks > > > > > > > > -David > > > > > > > > > > _______________________________________________ > > > Jboss-development mailing list > > > [EMAIL PROTECTED] > > > https://lists.sourceforge.net/lists/listinfo/jboss-development > > > > _______________________________________________ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
