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