XML configuration: The element topic : Usage

2007-05-21 Thread MarkusJ

Hello,

for the startup configuration of topics, the xml configuration file contains
the element 'topic'. This element has got the element 'properties' (type:
spring bean). How do I use this element? I've tried this:

  topic physicalName=THE_TOPIC
properties
  bean
class=org.springframework.beans.factory.config.PropertiesFactoryBean
property name=topic.THE_TOPIC value=THE_TOPIC /
  /bean
/properties
   /topic 

Is it correct?

Thank you.


-- 
View this message in context: 
http://www.nabble.com/XML-configuration%3A-The-element-topic-%3A-Usage-tf3788528s2354.html#a10713776
Sent from the ActiveMQ - User mailing list archive at Nabble.com.



Activemq cpp for solaris compilation error

2007-05-21 Thread cppUser

Hi,

I was trying to compile the cpp client in solaris and got the following
compilation error. The compiler used was g++ 3.4.3

Undefined   first referenced
 symbol in file
vtable for
activemq::connector::openwire::marshal::v2::ActiveMQStreamMessageMarshaller../main/MarshallerFactory.o
typeinfo for
activemq::connector::openwire::marshal::v2::ActiveMQDestinationMarshaller../main/ActiveMQQueueMarshaller.o
vtable for
activemq::connector::openwire::marshal::v2::ActiveMQBytesMessageMarshaller../main/MarshallerFactory.o
activemq::connector::openwire::marshal::v2::ActiveMQDestinationMarshaller::tightMarshal2(activemq::connector::openwire::OpenWireFormat*,
activemq::connector::openwire::commands::DataStructure*,
activemq::io::DataOutputStream*,
activemq::connector::openwire::utils::BooleanStream*)../main/ActiveMQQueueMarshaller.o
activemq::connector::openwire::marshal::v2::ActiveMQDestinationMarshaller::tightUnmarshal(activemq::connector::openwire::OpenWireFormat*,
activemq::connector::openwire::commands::DataStructure*,
activemq::io::DataInputStream*,
activemq::connector::openwire::utils::BooleanStream*)../main/ActiveMQQueueMarshaller.o
activemq::connector::openwire::marshal::v2::ActiveMQDestinationMarshaller::looseUnmarshal(activemq::connector::openwire::OpenWireFormat*,
activemq::connector::openwire::commands::DataStructure*,
activemq::io::DataInputStream*)../main/ActiveMQQueueMarshaller.o
vtable for
activemq::connector::openwire::marshal::v2::NetworkBridgeFilterMarshaller../main/MarshallerFactory.o
activemq::connector::openwire::marshal::v2::ActiveMQDestinationMarshaller::tightMarshal1(activemq::connector::openwire::OpenWireFormat*,
activemq::connector::openwire::commands::DataStructure*,
activemq::connector::openwire::utils::BooleanStream*)../main/ActiveMQQueueMarshaller.o
vtable for
activemq::connector::openwire::marshal::v2::RemoveSubscriptionInfoMarshaller../main/MarshallerFactory.o
activemq::connector::openwire::marshal::v2::ActiveMQDestinationMarshaller::looseMarshal(activemq::connector::openwire::OpenWireFormat*,
activemq::connector::openwire::commands::DataStructure*,
activemq::io::DataOutputStream*)../main/ActiveMQQueueMarshaller.o
vtable for
activemq::connector::openwire::marshal::v2::ActiveMQTextMessageMarshaller../main/MarshallerFactory.o
ld: fatal: Symbol referencing errors. No output written to example
collect2: ld returned 1 exit status
*** Error code 1
make: Fatal error: Command failed for target `example'



Could somebody throw some light here? Many thanks in advance..
Cheers!
-- 
View this message in context: 
http://www.nabble.com/Activemq-cpp-for-solaris-compilation-error-tf370s2354.html#a10714775
Sent from the ActiveMQ - User mailing list archive at Nabble.com.



Re: Write to Topic when one is not created

2007-05-21 Thread camper

You were right, when i disabled advisory support those topics stopped showing
up.  I am getting Out of Memory errors and I thought that that might be a
problem, messages being queued but not consumed.  I am using a Snapshot
version of 4.2, are you aware of any known issues that would cause an java
heap out of memory problem?

Thank you


jlim wrote:
 
 Hi,
 
 I believe what you're seeing are advisory topics which are automatically 
 created by default by activemq to send advisory messages to monitor the 
 behavior of the system (ie. starting of connections, creation of 
 destinations, etc).
 
 http://activemq.apache.org/advisory-message.html
 
 Btw, you can also disable advisory support by setting it to false in 
 your broker configuration :
 
 broker brokerName=localhost   useJmx=true advisorySupport=false 
    
 
 
 Regards,
 Jonas
 
 
 
 camper wrote:
 I seem to be sending messages to a topic when in fact i'm not creating
 one.  
 If I run activemq-admin query, i see my queues that i've created but
 there
 also seems to be a topic created for each queue, that i've created in my
 code i never call createTopic, always createQueue.  I see the topics
 EnqueueCount grow, I have no idea why.

 Does anyone know what is going on?
   
 
 

-- 
View this message in context: 
http://www.nabble.com/Write-to-Topic-when-one-is-not-created-tf3788112s2354.html#a10716518
Sent from the ActiveMQ - User mailing list archive at Nabble.com.



Re: Write to Topic when one is not created

2007-05-21 Thread James Strachan

On 5/21/07, camper [EMAIL PROTECTED] wrote:


You were right, when i disabled advisory support those topics stopped showing
up.  I am getting Out of Memory errors and I thought that that might be a
problem, messages being queued but not consumed.  I am using a Snapshot
version of 4.2, are you aware of any known issues that would cause an java
heap out of memory problem?


Maybe you need to increase the heap size? Which heap is running out,
the broker or the jms client?

--
James
---
http://macstrac.blogspot.com/


Re: Write to Topic when one is not created

2007-05-21 Thread camper

in activemq.xml i have usageManager set to 4096 MB, this is the output when
it dies

Exception in thread ActiveMQ Transport: tcp:///192.168.2.184:52359
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.182:35570
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.182:35656
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.182:2719
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.182:3396
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.184:40448
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.182:3915
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.182:4249
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.182:4731
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.182:34827
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.184:45461
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.182:35276
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.184:46105
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.182:35594
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport Server: ssl://localhost:61617
Exception in thread ActiveMQ Transport Status Monitor: openwire Exception
in thread 
MulticastDiscovery: tcp://stan:61616 java.lang.OutOfMemoryError: Java heap
space
Exception in thread btpool0-0 java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.183:29306
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Scheduler java.lang.OutOfMemoryError: Java
heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.182:35782
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport Server: tcp://localhost:61616
java.lang.OutOfMemoryError: Java heap space
Exception in thread RMI RenewClean-[192.168.2.184:39024] Exception in
thread RMI LeaseChecker java.lang.OutOfMemoryError: Java heap space
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport Status Monitor: ssl Exception in
thread ActiveMQ Transport Server: stomp://localhost:61613
java.lang.OutOfMemoryEr
ror: Java heap space
Exception in thread ActiveMQ Transport: tcp:///192.168.2.182:2350
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport Status Monitor: xmpp
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Transport Server: xmpp://localhost:61222
Exception in thread ActiveMQ Transport Status Monitor: stomp
java.lang.OutOfMemoryE
rror: Java heap space
java.lang.OutOfMemoryError: Java heap space
Exception in thread ActiveMQ Scheduler java.lang.OutOfMemoryError: Java
heap space
Exception in thread ActiveMQ Scheduler java.lang.OutOfMemoryError: Java
heap space


James.Strachan wrote:
 
 On 5/21/07, camper [EMAIL PROTECTED] wrote:

 You were right, when i disabled advisory support those topics stopped
 showing
 up.  I am getting Out of Memory errors and I thought that that might be a
 problem, messages being queued but not consumed.  I am using a Snapshot
 version of 4.2, are you aware of any known issues that would cause an
 java
 heap out of memory problem?
 
 Maybe you need to increase the heap size? Which heap is running out,
 the broker or the jms client?
 
 -- 
 James
 ---
 http://macstrac.blogspot.com/
 
 

-- 
View this message in context: 
http://www.nabble.com/Write-to-Topic-when-one-is-not-created-tf3788112s2354.html#a10716734
Sent from the ActiveMQ - User mailing list archive at Nabble.com.



Re: Write to Topic when one is not created

2007-05-21 Thread James Strachan

On 5/21/07, camper [EMAIL PROTECTED] wrote:


in activemq.xml i have usageManager set to 4096 MB, this is the output when
it dies


Note that setting does not affect the JVM heap size; try changing that.

--
James
---
http://macstrac.blogspot.com/


Creating Network of Brokers

2007-05-21 Thread Vinod_mit

Hi 
I have just installed activemq, I have to start work with failover netowrk
brokers.I dont have
much idea about this can any one explain me regarding this.
I did like this iam not sure iam right.if wrong please help me.

1. I have created first broker like this ,
   In the activemq.xml i put these values 
 
transportConnectors 
  transportConnector uri=discovery:tcp://localhost:61617/ 
/transportConnectors 

networkConnectors 
  networkConnector uri=static:tcp://localhost:61618/ 
/networkConnectors 

after that i have started activemq it says activemq jms started.

2.I created second broker like this.

  I have modified the same activemq.xml by changing transportConnectors
and /networkConnectors  values like this.

   transportConnectors 
  transportConnector uri=discovery:tcp://localhost:61618/ 
/transportConnectors 

networkConnectors 
  networkConnector uri=static:tcp://localhost:61617/ 
/networkConnectors 
and started a activemq in another command window and got these message

INFO  faultPersistenceAdapterFactory - Journal is locked... waiting 10
seconds f
or the journal to be unlocked.

when i kill the first activemq process second gets activated.

but iam not understanding where i have to include failover detail ??? 
these details where i have to include ??

   networkConnectors 
  networkConnector 
uri=static:failover:tcp://localhost:61617/tcp://localhost:61617%22/ 
 
/networkConnectors 

is it in the client program like consumer ??? or in some file, please
expalin

Thanks
cinod
-- 
View this message in context: 
http://www.nabble.com/Creating-Network-of-Brokers-tf3790031s2354.html#a10718124
Sent from the ActiveMQ - User mailing list archive at Nabble.com.



Implementation of multithreading model on CMS ActiveMQ

2007-05-21 Thread Pravin Kundal

I am bit confused from the JMS specification.

I want to implement mutithreaded model for producer/consumer.

Now I am confused at the point where,

I have only one destination object (Queue). 

So should I create mutiple threads, each thread having one session and one
producer.

OR, multiple threads running (concurrency controled) single session and
single producer.

-- 
View this message in context: 
http://www.nabble.com/Implementation-of-multithreading-model-on-CMS-ActiveMQ-tf3790047s2354.html#a10718189
Sent from the ActiveMQ - User mailing list archive at Nabble.com.



How do I remove ActiveMQ.Advisory.Producer.Queue.xxxx

2007-05-21 Thread sparky2708

My ActiveMQ clients create TEMPORARY queues and I have been looking through
the active queues recently and I noticed a number of advisory queues are
sticking around that refer to the temporary queues that I created. It seems
that even though the temporary queues are gone the advisory topics are still
there. How and when do the advisory queues disappear? How can I remove them?
-- 
View this message in context: 
http://www.nabble.com/How-do-I-remove-ActiveMQ.Advisory.Producer.Queue.-tf3790271s2354.html#a10718846
Sent from the ActiveMQ - User mailing list archive at Nabble.com.



RE: Implementation of multithreading model on CMS ActiveMQ

2007-05-21 Thread Mittler, Nathan
The formal JMS/CMS definition of a Session implies that each thread
would get its own session.  The ActiveMQ-CPP implementation, however,
will allow you to share a session across threads.  

For consumers, it should be known that each session has a single message
dispatch thread, so a slow asynchronous consumer (one that processes
messages in the session's thread context) would slow down other
consumers of the same session. 

If you plan on using synchronous consumers (via the receive method), you
should not have multiple threads calling receive() on the same consumer.


Nate

 -Original Message-
 From: Pravin Kundal [mailto:[EMAIL PROTECTED] 
 Sent: Monday, May 21, 2007 8:55 AM
 To: users@activemq.apache.org
 Subject: Implementation of multithreading model on CMS ActiveMQ
 
 
 I am bit confused from the JMS specification.
 
 I want to implement mutithreaded model for producer/consumer.
 
 Now I am confused at the point where,
 
 I have only one destination object (Queue). 
 
 So should I create mutiple threads, each thread having one 
 session and one producer.
 
 OR, multiple threads running (concurrency controled) single 
 session and single producer.
 
 --
 View this message in context: 
 http://www.nabble.com/Implementation-of-multithreading-model-o
 n-CMS-ActiveMQ-tf3790047s2354.html#a10718189
 Sent from the ActiveMQ - User mailing list archive at Nabble.com.
 
 


How to test a failover netowork broker

2007-05-21 Thread Vinod_mit

Hi friends,

How i can test a activemq failover broker, i have created two brokers and i
want to test
with a simple program can any one help me

thanks
-- 
View this message in context: 
http://www.nabble.com/How-to-test-a-failover-netowork-broker-tf3790548s2354.html#a10719646
Sent from the ActiveMQ - User mailing list archive at Nabble.com.



RE: Implementation of multithreading model on CMS ActiveMQ

2007-05-21 Thread Mittler, Nathan
 
 
 In the case I will need to implement the concurrency control 
 over the session, so that only one thread can use the 
 session, as sessions are implemented for serial use? Rght?

Yes, you should add your own concurrency control for the session.

 
 I tried the first case in which i implemented the 
 multithreading, each thread running its own session and each 
 session having one producer. But the results were not even 
 close to our requriment (result in msges/sec).
 

Were you using openwire or stomp as the protocol?  We have seen cases
where small messages with openwire cause extra delay due to the naggle
algorithm and that message footprints are smaller than their stomp
counterpart.  If you're using openwire, I suggest you switch over to
stomp and see if you have different results.  If that does the trick,
our next release will allow a user-specified TCP-NODELAY socket option
that should fix the problem for openwire (for small messages).

 Do you think the other case can give us the better results 
 (i.e. The ActiveMQ-CPP implementation, however, will allow 
 you to share a session across threads.)
 

Without understanding your particular usage of the client, I would guess
that a different usage wouldn't help much.  Just to make sure, however,
you could slightly modify our example application
https://svn.apache.org/repos/asf/activemq/activemq-cpp/trunk/src/example
s/main.cpp and see if you can get it to meet your requirements.


Regards,
Nate


RE: Implementation of multithreading model on CMS ActiveMQ

2007-05-21 Thread Pravin Kundal

Sorry,
I missed the second line of link. I could access it. Thanks

Pravin Kundal wrote:
 
 I couldn't access the link below. 
 
 Is it the same example that Apache-ActiveMQ ship with the CMS library?
 
 Thanks a lot.
 
 
 Mittler, Nathan wrote:
 
  
 
 In the case I will need to implement the concurrency control 
 over the session, so that only one thread can use the 
 session, as sessions are implemented for serial use? Rght?
 
 Yes, you should add your own concurrency control for the session.
 
 
 I tried the first case in which i implemented the 
 multithreading, each thread running its own session and each 
 session having one producer. But the results were not even 
 close to our requriment (result in msges/sec).
 
 
 Were you using openwire or stomp as the protocol?  We have seen cases
 where small messages with openwire cause extra delay due to the naggle
 algorithm and that message footprints are smaller than their stomp
 counterpart.  If you're using openwire, I suggest you switch over to
 stomp and see if you have different results.  If that does the trick,
 our next release will allow a user-specified TCP-NODELAY socket option
 that should fix the problem for openwire (for small messages).
 
 Do you think the other case can give us the better results 
 (i.e. The ActiveMQ-CPP implementation, however, will allow 
 you to share a session across threads.)
 
 
 Without understanding your particular usage of the client, I would guess
 that a different usage wouldn't help much.  Just to make sure, however,
 you could slightly modify our example application
 https://svn.apache.org/repos/asf/activemq/activemq-cpp/trunk/src/example
 s/main.cpp and see if you can get it to meet your requirements.
 
 
 Regards,
 Nate
 
 
 
 

-- 
View this message in context: 
http://www.nabble.com/Implementation-of-multithreading-model-on-CMS-ActiveMQ-tf3790047s2354.html#a10721114
Sent from the ActiveMQ - User mailing list archive at Nabble.com.



Transport Exceptions close the connection

2007-05-21 Thread Adrian Tarau

Hello,

I have the following problem : A connection(embedded broker, vm transport)
is created and then a few sessions. I poll for messages, with my own threads
in order to do throttling. One thing that confuses me is : if an exception
occurs somewhere in the transport(for example an interrupt on the consuming
thread) , the connection is closed with all the sessions and
consumers/producers.

I was able to listen for such an exceptions(with
Connection.setExceptionListener(...)) and recreate the connection. I tried
also with connectionFactory.setBrokerURL(failover:vm://localhost) which
supposed to fix problems like this one, and to reconnect, but is not working
as espected.

I have Active MQ 4.0.2.

ActiveMQConnections fragments : 

protected void transportFailed(IOException error){
transportFailed.set(true);
if (firstFailureError == null) {
firstFailureError = error;
}
if (!closed.get()  !closing.get()) {
try{
cleanup(); close all sessions
}catch(JMSException e){
   log.warn(Cleanup failed,e);
}
}
}

 public void onException(final IOException error) {
onAsyncException(error);
asyncConnectionThread.execute(new Runnable(){
public void run() {
transportFailed(error);
ServiceSupport.dispose(ActiveMQConnection.this.transport);
brokerInfoReceived.countDown();

for (Iterator iter = transportListeners.iterator();
iter.hasNext();) {
TransportListener listener = (TransportListener)
iter.next();
listener.onException(error);
}
}
});
}

Thanks.
-- 
View this message in context: 
http://www.nabble.com/Transport-Exceptions-close-the-connection-tf3791363s2354.html#a10722140
Sent from the ActiveMQ - User mailing list archive at Nabble.com.



Re: Transport Exceptions close the connection

2007-05-21 Thread James Strachan

On 5/21/07, Adrian Tarau [EMAIL PROTECTED] wrote:


Hello,

I have the following problem : A connection(embedded broker, vm transport)
is created and then a few sessions. I poll for messages, with my own threads
in order to do throttling. One thing that confuses me is : if an exception
occurs somewhere in the transport(for example an interrupt on the consuming
thread) , the connection is closed with all the sessions and
consumers/producers.


AFAIK thread interupt exceptions won't close a
connection/session/transport. You sure its not some other underlying
excpetion?



I was able to listen for such an exceptions(with
Connection.setExceptionListener(...)) and recreate the connection. I tried
also with connectionFactory.setBrokerURL(failover:vm://localhost) which
supposed to fix problems like this one, and to reconnect, but is not working
as espected.


When using vm:// you should never really need failover, since the
broker is in the same JVM. Failover is intended for use with TCP where
a remote broker may fail.

Even if you were having a transport level exception (which shouldn't
really happen with vm:// but maybe there's a bug  we should catch 
handle InteruptedException better) then failover does the re-creation
of all the connection/sessions for you so there's no real point trying
to replicate that yourself (as you'll be opening all kinds of cans of
worms, like figuring out which messages, transactions 
acknowledgements were in progress  re-submitting them - all of which
failover: already handles.

BTW 4.0.2 is quite old, I'd recommend upgrading to 4.1.1
--
James
---
http://macstrac.blogspot.com/


RE: Implementation of multithreading model on CMS ActiveMQ

2007-05-21 Thread Mittler, Nathan
Sorry ... The url should be tcp://localhost:61613?wireFormat=stomp

See http://activemq.apache.org/cms/configuring.html 

 -Original Message-
 From: Pravin Kundal [mailto:[EMAIL PROTECTED] 
 Sent: Monday, May 21, 2007 12:34 PM
 To: users@activemq.apache.org
 Subject: RE: Implementation of multithreading model on CMS ActiveMQ
 
 
 I am trying to test it out using stomp.
 But it is giving me exceptions
 On Consumer Client: ActiveMQConnectionFactory - unknown 
 Transport Factory.
 
 I tried with following brokerURI's
 
 std::string brokerURI =   stomp://localhost:61613
  ?wireFormat=stomp
  transport.useAsyncSend=true;
 
 std::string brokerURI =   stomp://localhost:61613
 
 std::string brokerURI =   stomp://localhost:61616
 
 can you please help us out?
 
 Thanks.
 
 
 
 Mittler, Nathan wrote:
  
   
  
  In the case I will need to implement the concurrency 
 control over the 
  session, so that only one thread can use the session, as 
 sessions are 
  implemented for serial use? Rght?
  
  Yes, you should add your own concurrency control for the session.
  
  
  I tried the first case in which i implemented the multithreading, 
  each thread running its own session and each session having one 
  producer. But the results were not even close to our requriment 
  (result in msges/sec).
  
  
  Were you using openwire or stomp as the protocol?  We have 
 seen cases 
  where small messages with openwire cause extra delay due to 
 the naggle 
  algorithm and that message footprints are smaller than their stomp 
  counterpart.  If you're using openwire, I suggest you 
 switch over to 
  stomp and see if you have different results.  If that does 
 the trick, 
  our next release will allow a user-specified TCP-NODELAY 
 socket option 
  that should fix the problem for openwire (for small messages).
  
  Do you think the other case can give us the better results 
 (i.e. The 
  ActiveMQ-CPP implementation, however, will allow you to share a 
  session across threads.)
  
  
  Without understanding your particular usage of the client, I would 
  guess that a different usage wouldn't help much.  Just to 
 make sure, 
  however, you could slightly modify our example application 
  
 https://svn.apache.org/repos/asf/activemq/activemq-cpp/trunk/src/examp
  le s/main.cpp and see if you can get it to meet your requirements.
  
  
  Regards,
  Nate
  
  
 
 --
 View this message in context: 
 http://www.nabble.com/Implementation-of-multithreading-model-o
 n-CMS-ActiveMQ-tf3790047s2354.html#a10722340
 Sent from the ActiveMQ - User mailing list archive at Nabble.com.
 
 


Re: How to test a failover netowork broker

2007-05-21 Thread James Strachan

On 5/21/07, Vinod_mit [EMAIL PROTECTED] wrote:


Hi friends,

How i can test a activemq failover broker, i have created two brokers and i
want to test
with a simple program can any one help me


Try looking at some tests in ActiveMQ, we do similar things. Basically
just run mutliple brokers in one JUnit test and stop a broker


--
James
---
http://macstrac.blogspot.com/


Could not create directory on journal directory path

2007-05-21 Thread Garner, Shawn
ActiveMQ 4.1 on Windows 2003 with Java 1.5

 

I'm getting this in the error logs:

 

org.springframework.beans.factory.BeanCreationException: Error creating
bean with name
'org.apache.activemq.store.PersistenceAdapterFactoryBean': FactoryBean
threw exception on object creation; nested exception is
java.io.IOException: Could not create directory:
D:\apps\myproject\activemq_data\journal

 

 

I don't see why.  The directory exists already.

 

 

Shawn 

 


 
This email may contain material confidential to
Pearson.  If you were not an intended recipient, 
please notify the sender and delete all copies. 
We may monitor email to and from our network. 



RE: Implementation of multithreading model on CMS ActiveMQ

2007-05-21 Thread Pravin Kundal

Hey Sir, the string you sent WORKED..thanks!!

Stomp improved the results but still away from our target. posting some
results. Message was string of around size 50 to 70 characters. All with
Non_Persistent message relibility (i.e. atmost once)

Here are our readings:
A]
Using Openwire, Asynchronous Consumer. 
  1] Multi Threading : one session, one producer per Thread: 214
msges/sec.
  2] Multi Threading : one session, mutiple producers. concurrency
implemented in client: 122 
  msges/sec.

B] 
1) Using Stomp, Asynchronous Consumer. 

  1] Single Thread:  410 msges/sec.
  2] Multi Threading (2 Threads): one session, one producer per Thread:
357 msges/sec.
  3] Multi Threading (5 Threads): one session, one producer per Thread:
413 msges/sec.
  4] Multi Threading (5 Threads): one session, one producer per Thread:
387 msges/sec.

2) Using Stomp, Synchronous Consumer. 
 
  1] Single Thread:  367 msges/sec.

So from the above results maximum is 413 what we got. Our target is upto 600
to 650 msges/sec.

Also both producer and consumer are CMS ActiveMQ.

Our Java team tested using Java clients (producer and consumer) with
ActiveMQ broker with 10 threads running they are getting around 700
msges/sec. Is it because java supports internal multithreading or something
else. Or any other reason

I really appreciate for you quick and working out responses :) Thanks.




Mittler, Nathan wrote:
 
 Sorry ... The url should be tcp://localhost:61613?wireFormat=stomp
 
 See http://activemq.apache.org/cms/configuring.html 
 
 -Original Message-
 From: Pravin Kundal [mailto:[EMAIL PROTECTED] 
 Sent: Monday, May 21, 2007 12:34 PM
 To: users@activemq.apache.org
 Subject: RE: Implementation of multithreading model on CMS ActiveMQ
 
 
 I am trying to test it out using stomp.
 But it is giving me exceptions
 On Consumer Client: ActiveMQConnectionFactory - unknown 
 Transport Factory.
 
 I tried with following brokerURI's
 
 std::string brokerURI =   stomp://localhost:61613
  ?wireFormat=stomp
 transport.useAsyncSend=true;
 
 std::string brokerURI =   stomp://localhost:61613
 
 std::string brokerURI =   stomp://localhost:61616
 
 can you please help us out?
 
 Thanks.
 
 
 
 Mittler, Nathan wrote:
  
   
  
  In the case I will need to implement the concurrency 
 control over the 
  session, so that only one thread can use the session, as 
 sessions are 
  implemented for serial use? Rght?
  
  Yes, you should add your own concurrency control for the session.
  
  
  I tried the first case in which i implemented the multithreading, 
  each thread running its own session and each session having one 
  producer. But the results were not even close to our requriment 
  (result in msges/sec).
  
  
  Were you using openwire or stomp as the protocol?  We have 
 seen cases 
  where small messages with openwire cause extra delay due to 
 the naggle 
  algorithm and that message footprints are smaller than their stomp 
  counterpart.  If you're using openwire, I suggest you 
 switch over to 
  stomp and see if you have different results.  If that does 
 the trick, 
  our next release will allow a user-specified TCP-NODELAY 
 socket option 
  that should fix the problem for openwire (for small messages).
  
  Do you think the other case can give us the better results 
 (i.e. The 
  ActiveMQ-CPP implementation, however, will allow you to share a 
  session across threads.)
  
  
  Without understanding your particular usage of the client, I would 
  guess that a different usage wouldn't help much.  Just to 
 make sure, 
  however, you could slightly modify our example application 
  
 https://svn.apache.org/repos/asf/activemq/activemq-cpp/trunk/src/examp
  le s/main.cpp and see if you can get it to meet your requirements.
  
  
  Regards,
  Nate
  
  
 
 --
 View this message in context: 
 http://www.nabble.com/Implementation-of-multithreading-model-o
 n-CMS-ActiveMQ-tf3790047s2354.html#a10722340
 Sent from the ActiveMQ - User mailing list archive at Nabble.com.
 
 
 
 

-- 
View this message in context: 
http://www.nabble.com/Implementation-of-multithreading-model-on-CMS-ActiveMQ-tf3790047s2354.html#a10723703
Sent from the ActiveMQ - User mailing list archive at Nabble.com.



RE: Implementation of multithreading model on CMS ActiveMQ

2007-05-21 Thread Timothy Bish
You could try pulling the latest code from trunk to see what effect the
TCP_NODELAY option will have on performance on your machine.  The code
in trunk sets TCP_NODELAY on by default.

regards
Tim

On Mon, 2007-05-21 at 10:52 -0700, Pravin Kundal wrote:
 Hey Sir, the string you sent WORKED..thanks!!
 
 Stomp improved the results but still away from our target. posting some
 results. Message was string of around size 50 to 70 characters. All with
 Non_Persistent message relibility (i.e. atmost once)
 
 Here are our readings:
 A]
 Using Openwire, Asynchronous Consumer. 
   1] Multi Threading : one session, one producer per Thread: 214
 msges/sec.
   2] Multi Threading : one session, mutiple producers. concurrency
 implemented in client: 122 
   msges/sec.
 
 B] 
 1) Using Stomp, Asynchronous Consumer. 
 
   1] Single Thread:  410 msges/sec.
   2] Multi Threading (2 Threads): one session, one producer per Thread:
 357 msges/sec.
   3] Multi Threading (5 Threads): one session, one producer per Thread:
 413 msges/sec.
   4] Multi Threading (5 Threads): one session, one producer per Thread:
 387 msges/sec.
 
 2) Using Stomp, Synchronous Consumer. 
  
   1] Single Thread:  367 msges/sec.
 
 So from the above results maximum is 413 what we got. Our target is upto 600
 to 650 msges/sec.
 
 Also both producer and consumer are CMS ActiveMQ.
 
 Our Java team tested using Java clients (producer and consumer) with
 ActiveMQ broker with 10 threads running they are getting around 700
 msges/sec. Is it because java supports internal multithreading or something
 else. Or any other reason
 
 I really appreciate for you quick and working out responses :) Thanks.
 
 
 
 
 Mittler, Nathan wrote:
  
  Sorry ... The url should be tcp://localhost:61613?wireFormat=stomp
  
  See http://activemq.apache.org/cms/configuring.html 
  
  -Original Message-
  From: Pravin Kundal [mailto:[EMAIL PROTECTED] 
  Sent: Monday, May 21, 2007 12:34 PM
  To: users@activemq.apache.org
  Subject: RE: Implementation of multithreading model on CMS ActiveMQ
  
  
  I am trying to test it out using stomp.
  But it is giving me exceptions
  On Consumer Client: ActiveMQConnectionFactory - unknown 
  Transport Factory.
  
  I tried with following brokerURI's
  
  std::string brokerURI =   stomp://localhost:61613
   ?wireFormat=stomp
transport.useAsyncSend=true;
  
  std::string brokerURI =   stomp://localhost:61613
  
  std::string brokerURI =   stomp://localhost:61616
  
  can you please help us out?
  
  Thanks.
  
  
  
  Mittler, Nathan wrote:
   

   
   In the case I will need to implement the concurrency 
  control over the 
   session, so that only one thread can use the session, as 
  sessions are 
   implemented for serial use? Rght?
   
   Yes, you should add your own concurrency control for the session.
   
   
   I tried the first case in which i implemented the multithreading, 
   each thread running its own session and each session having one 
   producer. But the results were not even close to our requriment 
   (result in msges/sec).
   
   
   Were you using openwire or stomp as the protocol?  We have 
  seen cases 
   where small messages with openwire cause extra delay due to 
  the naggle 
   algorithm and that message footprints are smaller than their stomp 
   counterpart.  If you're using openwire, I suggest you 
  switch over to 
   stomp and see if you have different results.  If that does 
  the trick, 
   our next release will allow a user-specified TCP-NODELAY 
  socket option 
   that should fix the problem for openwire (for small messages).
   
   Do you think the other case can give us the better results 
  (i.e. The 
   ActiveMQ-CPP implementation, however, will allow you to share a 
   session across threads.)
   
   
   Without understanding your particular usage of the client, I would 
   guess that a different usage wouldn't help much.  Just to 
  make sure, 
   however, you could slightly modify our example application 
   
  https://svn.apache.org/repos/asf/activemq/activemq-cpp/trunk/src/examp
   le s/main.cpp and see if you can get it to meet your requirements.
   
   
   Regards,
   Nate
   
   
  
  --
  View this message in context: 
  http://www.nabble.com/Implementation-of-multithreading-model-o
  n-CMS-ActiveMQ-tf3790047s2354.html#a10722340
  Sent from the ActiveMQ - User mailing list archive at Nabble.com.
  
  
  
  
 


Re: Shared File System Master Slave with OCFS

2007-05-21 Thread James Strachan

On 5/19/07, Christopher G. Stach II [EMAIL PROTECTED] wrote:

James Strachan wrote:

 Thanks for the heads up! :)

 I guess we could make the locking strategy pluggable  we could have
 some implementation call the fcntl locking. e.g. maybe using Jtux

 http://www.basepath.com/aup/jtux/


Even though one could achieve this, I don't know what the benefit would
be.


Allow folks to run multiple broker instances on a shared file system
so that if one broker fails, another takes over.
http://activemq.apache.org/shared-file-system-master-slave.html



  It only shifts the responsibility down.  At least the user would
want a broker that is dependent on one or more brokers.  Each of those
brokers shouldn't be dependent on each other for locking, data, or
anything else.  I can appreciate that some people assume that shared
data is available, but shared data is just as easily corrupted, locked,
or unavailable.  Essentially, when you find a single responsibility and
divide it, it probably shouldn't converge somewhere down the line.  This
current pattern is most likely unusable for any HA situation.


Agreed - I'd much prefer a share nothing HA strategy where folks can
spin up and down brokers at any point in time and everything just
works (tm) with messages replicated onto multiple physical stores and
things auto-partitioning etc.

However we're not there yet, so its a question of trade-offs. Some
folks find it easier to rely on their shared file system / SAN to do
the HA; others can use the share-nothing approach in ActiveMQ (Pure
Master Slave)...
http://activemq.apache.org/masterslave.html

and live with the current limitations (no automatic fail-back of the
old master when it is brought back online).

Like many things in IT its a tradeoff. For now, today, the shared file
system approach is a pretty reasonable approach; if you already have a
reliable distributed file system (particularly if you have a SAN).

--
James
---
http://macstrac.blogspot.com/


Re: Creating Network of Brokers

2007-05-21 Thread Gaurav Hariani
It seems you are trying to run two instances of ActiveMQ from the same 
installation.
And they are both trying to write to the same journal ... change the 
configuration to use a different journal location for the second broker.



Vinod_mit wrote:
Hi 
I have just installed activemq, I have to start work with failover netowrk

brokers.I dont have
much idea about this can any one explain me regarding this.
I did like this iam not sure iam right.if wrong please help me.

1. I have created first broker like this ,
   In the activemq.xml i put these values 
 
transportConnectors 
  transportConnector uri=discovery:tcp://localhost:61617/ 
/transportConnectors 

networkConnectors 
  networkConnector uri=static:tcp://localhost:61618/ 
/networkConnectors 


after that i have started activemq it says activemq jms started.

2.I created second broker like this.

  I have modified the same activemq.xml by changing transportConnectors
and /networkConnectors  values like this.

   transportConnectors 
  transportConnector uri=discovery:tcp://localhost:61618/ 
/transportConnectors 

networkConnectors 
  networkConnector uri=static:tcp://localhost:61617/ 
/networkConnectors 
and started a activemq in another command window and got these message


INFO  faultPersistenceAdapterFactory - Journal is locked... waiting 10
seconds f
or the journal to be unlocked.

when i kill the first activemq process second gets activated.

but iam not understanding where i have to include failover detail ??? 
these details where i have to include ??


   networkConnectors 
  networkConnector 
uri=static:failover:tcp://localhost:61617/tcp://localhost:61617%22/ 
  
/networkConnectors 


is it in the client program like consumer ??? or in some file, please
expalin

Thanks
cinod
  




Re: Creating Network of Brokers

2007-05-21 Thread Bruce Snyder

On 5/21/07, Gaurav Hariani [EMAIL PROTECTED] wrote:

It seems you are trying to run two instances of ActiveMQ from the same
installation.
And they are both trying to write to the same journal ... change the
configuration to use a different journal location for the second broker.


Make sure your ports are not conflicting either. Currently I see that
you have clashing port numbers between the two brokers as well. You'll
need to rectify this to get two brokers running on the same machine.
This includes uncommenting the managementContext element and
specifying a different JMX port number for each broker.

Also, for ease of reading logs and debugging, assign each broker it's
own name in the brokerName attribute of the broker element.

Bruce
--
perl -e 'print unpack(u30,D0G)[EMAIL 
PROTECTED]5R\F)R=6-E+G-N61ED\!G;6%I;\YC;VT*
);'

Apache Geronimo - http://geronimo.apache.org/
Apache ActiveMQ - http://activemq.org/
Apache ServiceMix - http://servicemix.org/
Castor - http://castor.org/


Queue Recovery loads the entire data?

2007-05-21 Thread Pandey

Hi,

I am using JDBCPersistence (without journaling) in my product.
There are times when : 
- my broker goes down
- there are already some messages in the queue as they were not processed
yet.
- my broker comes up again and restores the queue(s)
On the third step, it seems to be executing a simple 'select id,msg from
activemq_msgs where container = ? orderby id' query to get ALL the enqueued
data.

This results in the loading of ENTIRE Data on my VM.

IS there a way to let that NOT happen? Is there a way to make the adapter
read queue data in chunks? (maybe ... 100 messages at a time .. read the
next 100 when 90 of the first 100 have been processed) ?

Any pointers would certainly help!

Thanks!
Vipul


-- 
View this message in context: 
http://www.nabble.com/Queue-Recovery-loads-the-entire-data--tf3793599s2354.html#a10729587
Sent from the ActiveMQ - User mailing list archive at Nabble.com.



[camel] Spring's SingleConnectionFactory

2007-05-21 Thread Jeff Gunther
We did some load testing today and noticed some performance issues  
with the JmsComponent. Based on some research, it appears that  
Spring's SingleConnectionFactory might improve performance.


Do you think that the SingleConnectionFactory can improve overall JMS  
performance? If so, how can the JmsComponent be configured to use a  
SingleConnectionFactory?


Re: How do I remove ActiveMQ.Advisory.Producer.Queue.xxxx

2007-05-21 Thread Jonas Lim

Hi,

You can disable advisory support in your broker config file :

broker brokerName=localhost   useJmx=true advisorySupport=false 
   


Regards,
Jonas

sparky2708 wrote:

My ActiveMQ clients create TEMPORARY queues and I have been looking through
the active queues recently and I noticed a number of advisory queues are
sticking around that refer to the temporary queues that I created. It seems
that even though the temporary queues are gone the advisory topics are still
there. How and when do the advisory queues disappear? How can I remove them?