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

Reply via email to