Return-Path: X-Original-To: apmail-activemq-users-archive@www.apache.org Delivered-To: apmail-activemq-users-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 9A6A1103E8 for ; Fri, 8 Nov 2013 18:05:22 +0000 (UTC) Received: (qmail 89296 invoked by uid 500); 8 Nov 2013 18:05:20 -0000 Delivered-To: apmail-activemq-users-archive@activemq.apache.org Received: (qmail 89280 invoked by uid 500); 8 Nov 2013 18:05:20 -0000 Mailing-List: contact users-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@activemq.apache.org Delivered-To: mailing list users@activemq.apache.org Received: (qmail 89199 invoked by uid 99); 8 Nov 2013 18:05:11 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 08 Nov 2013 18:05:11 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of christian.posta@gmail.com designates 209.85.215.50 as permitted sender) Received: from [209.85.215.50] (HELO mail-la0-f50.google.com) (209.85.215.50) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 08 Nov 2013 18:05:06 +0000 Received: by mail-la0-f50.google.com with SMTP id eo20so2050852lab.37 for ; Fri, 08 Nov 2013 10:04:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; bh=vyDEiQAnst6wXtP2IpRah5THGQAF4icB1vXP9IcUzvM=; b=McvZBa3dB+MN+mnySBKuee8R/mImmj5UKhsz7AvgoDpewSSstHgI/kPng2Qbe8AY4c 9DGelZMuMuhYb6JzYZWwuIMC13ClKM6XxM/36rX26E2z2Nb88UvZ0rW0GOQDnWSVYUcN yOeZCIO61akAvo2eqsnModjuYyrSDqM4Qt9KJLTVGKU+y4ptOuDsK88ZDqmgMCEOplfr F8VJ0Okz84gWVnZQyurT37dY7jTW+voi7d/zfpS9RXdBX3bE5jwItBH8cdgofUhZIW4C YJQ1h1hSv3bSuZy4z8j01E0770FbGyJhuboQ79EpR5j+eKXOiNHSw6WWFaGQ5XgaW1W7 Tc9g== MIME-Version: 1.0 X-Received: by 10.112.52.33 with SMTP id q1mr11473068lbo.30.1383933885576; Fri, 08 Nov 2013 10:04:45 -0800 (PST) Received: by 10.114.243.139 with HTTP; Fri, 8 Nov 2013 10:04:45 -0800 (PST) In-Reply-To: <443BCE38E921434394B45FF0813FA578053DA4E2@MSGEXSV21106.ent.wfb.bank.corp> References: <443BCE38E921434394B45FF0813FA578053D96F0@MSGEXSV21106.ent.wfb.bank.corp> <443BCE38E921434394B45FF0813FA578053DA10C@MSGEXSV21106.ent.wfb.bank.corp> <443BCE38E921434394B45FF0813FA578053DA484@MSGEXSV21106.ent.wfb.bank.corp> <443BCE38E921434394B45FF0813FA578053DA4E2@MSGEXSV21106.ent.wfb.bank.corp> Date: Fri, 8 Nov 2013 11:04:45 -0700 Message-ID: Subject: Re: ActiveMQ.DLQ From: Christian Posta To: "users@activemq.apache.org" Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org Sure is :) AbstractRegion.java#send(): does a lookup of the destination... final Destination regionDestination =3D lookup(context, messageSend.getDestination(),false); in AbstractRegion#lookup() you have this: if (dest =3D=3D null) { if (isAutoCreateDestinations()) { // Try to auto create the destination... re-invoke broker // from the // top so that the proper security checks are performed. context.getBroker().addDestination(context, destination, createTemporary); dest =3D addDestination(context, destination, false); // We should now have the dest created. destinationsLock.readLock().lock(); try { dest =3D destinations.get(destination); } finally { destinationsLock.readLock().unlock(); } } if (dest =3D=3D null) { throw new JMSException("The destination " + destination + " does not exist."); } } On Fri, Nov 8, 2013 at 10:43 AM, wrote: > So there must be some code written in the broker to dynamically create th= at queue then, correct? And other system type queues? > > Regards, > > Barry Barnett > WMQ Enterprise Services & Solutions > Wells Fargo > Cell: 704-564-5501 > > > -----Original Message----- > From: Christian Posta [mailto:christian.posta@gmail.com] > Sent: Friday, November 08, 2013 12:21 PM > To: users@activemq.apache.org > Subject: Re: ActiveMQ.DLQ > > Well, it would be the same as a user-queue... ie.. if something tries to = send to the DLQ, it will be auto-created. So for example, when the broker c= hecks for expiring messages upon dispatch, if it finds any it will send the= m to the DLQ... if that queue, "ActiveMQ.DLQ" is not already in the system = (it's not on a fresh broker install, for example), then it will be auto-cre= ated just like a user queue is. > > On Fri, Nov 8, 2013 at 9:26 AM, wrote: >> After reading the wiki, I see the following: >> >> This means that a client can create a new Queue or Topic dynamically >> either by calling createQueue() or createTopic() on a JMS Session >> creating an instance of ActiveMQTopic or ActiveMQQueue and possibly >> registering them in JNDI >> >> This still isn't telling me how ActiveMQ knows when to create the Active= MQ.DLQ. Are you saying that the client would have to dynamically create it= , or again, is it something at the server side system config that's telling= it to create a DLQ if messages cant be delivered, expired, etc? >> >> Regards, >> >> Barry Barnett >> WMQ Enterprise Services & Solutions >> >> >> -----Original Message----- >> From: Christian Posta [mailto:christian.posta@gmail.com] >> Sent: Friday, November 08, 2013 9:57 AM >> To: users@activemq.apache.org >> Subject: Re: ActiveMQ.DLQ >> >> Nope :) >> >> http://activemq.apache.org/how-do-i-create-new-destinations.html >> >> But it's completely configurable.. ie, you can specify whether destinati= ons should be auto-created.. or you can use security to lockdown people fro= m creating destinations on demand... lots of ways to do it, but by default = the destinations are auto-created as described in the wiki above. >> >> If you want to have destinations created when the broker starts up, you = could do something like this in the activemq.xml file: >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> but it's not necessary.... >> >> On Fri, Nov 8, 2013 at 5:58 AM, wrote: >>> Thank you. But doesn't it have to be in some configuration file somewh= ere so that the broker knows how to create it when it's needed? I don't se= e it in the activemq.xml file. >>> >>> Regards, >>> >>> Barry Barnett >>> WMQ Enterprise Services & Solutions >>> >>> >>> >>> -----Original Message----- >>> From: Christian Posta [mailto:christian.posta@gmail.com] >>> Sent: Thursday, November 07, 2013 3:00 PM >>> To: users@activemq.apache.org >>> Subject: Re: ActiveMQ.DLQ >>> >>> Barry, >>> >>> ActiveMQ by default auto-creates destinations as it needs/requires them= . You don't have to define the DLQ explicitly. If a message goes to the Act= iveMQ.DLQ, or if a consumer listens to the ActiveMQ.DLQ queue, then the bro= ker will create it. >>> >>> You can set up queues ahead of time if you'd like, but it's not necessa= ry. >>> >>> >>> >>> On Thu, Nov 7, 2013 at 11:17 AM, wrote: >>>> It is my understanding that expired messages are stored on the ActiveM= Q.DLQ queue. When I start the ActiveMQ broker, I do not see the DLQ define= d. If this is where the expired messages go to, wouldn't it be a default q= ueue for the default configuration? If not, then do I need to define it us= ing that exact name? What other attributes would I define the queue with? >>>> >>>> I don't see this queue in my activemq.xml file or any config file out = of the box... >>>> >>>> >>>> Regards, >>>> >>>> Barry Barnett >>>> WMQ Enterprise Services & Solutions >>>> W >>>> >>>> >>>> >>> >>> >>> >>> -- >>> Christian Posta >>> http://www.christianposta.com/blog >>> twitter: @christianposta >> >> >> >> -- >> Christian Posta >> http://www.christianposta.com/blog >> twitter: @christianposta > > > > -- > Christian Posta > http://www.christianposta.com/blog > twitter: @christianposta --=20 Christian Posta http://www.christianposta.com/blog twitter: @christianposta