Thanks.
However, change false to true will cause:
2010-07-13 10:52:14,515 [Thread-2 ] INFO
ResourceXmlApplicationContext - Refreshing
org.apache.xbean.spring.context.ResourceXmlApplicationContext@96b5c2:
display name
[org.apache.xbean.spring.context.ResourceXmlApplicationContext@96b5c2];
startup date [Tue Jul 13 10:52:14 EDT 2010]; parent:
org.springframework.web.context.support.XmlWebApplicationContext@b51404
2010-07-13 10:52:14,515 [Thread-2 ] INFO XBeanXmlBeanDefinitionReader
- Loading XML bean definitions from ServletContext resource
[/WEB-INF/activemq.xml]
2010-07-13 10:52:14,671 [Thread-2 ] INFO
ResourceXmlApplicationContext - Bean factory for application context
[org.apache.xbean.spring.context.ResourceXmlApplicationContext@96b5c2]:
org.springframework.beans.factory.support.DefaultListableBeanFactory@10d9151
2010-07-13 10:52:14,765 [Thread-2 ] INFO BrokerService
- Successfully deleted temporary storage
2010-07-13 10:52:14,781 [Thread-2 ] INFO BrokerService
- Using Persistence Adapter:
JDBCPersistenceAdapter(org.apache.commons.dbcp.BasicDataSource@c017e9)
2010-07-13 10:52:15,265 [Thread-2 ] INFO JDBCPersistenceAdapter
- Database adapter driver override not found for :
[microsoft_sql_server_jdbc_driver_2_0]. Will use default implementation.
2010-07-13 10:52:15,359 [Thread-2 ] INFO JDBCPersistenceAdapter
- Database lock driver override not found for :
[microsoft_sql_server_jdbc_driver_2_0]. Will use default implementation.
2010-07-13 10:52:15,359 [Thread-2 ] INFO DefaultDatabaseLocker
- Attempting to acquire the exclusive lock to become the Master broker
2010-07-13 10:52:15,375 [Thread-2 ] INFO DefaultDatabaseLocker
- Failed to acquire lock. Sleeping for 1000 milli(s) before trying again...
2010-07-13 10:52:16,375 [Thread-2 ] INFO DefaultDatabaseLocker
- Failed to acquire lock. Sleeping for 1000 milli(s) before trying again...
on both brokers.
sqljdbc4.jar is used. Also the embedded activemq-web-console-5.3.2.war is
used as the broker instead of the standalone one.
Thanks,
cobrien wrote:
>
> Hi:
> Set useDatabaseLock=true.
>
> -Clark
>
> www.ttmsolutions.com
> ActiveMQ reference guide at
> http://bit.ly/AMQRefGuide
>
>
>
>
>
>
> test4john wrote:
>>
>> Client code start producing msg OK, but if stop broker A in the middle of
>> the loop (expect broker B will take over and continue to produce),
>> exception occurred:
>>
>> Violation of PRIMARY KEY constraint 'PK__ACTIVEMQ_MSGS__7A521F79'. Cannot
>> insert duplicate key in object 'dbo.ACTIVEMQ_MSGS'.
>> at
>> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:49)
>> at
>> org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1273)
>> at org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1754)
>> at
>> org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:231)
>> at
>> org.apache.activemq.ActiveMQMessageProducerSupport.send(ActiveMQMessageProducerSupport.java:241)
>> at com.verizon.ams.esme.TestJMS.main(TestJMS.java:91)
>>
>>
>> Suspect it is a MS Sql specific problem but not sure ..
>>
>> Any suggestion appreciated !
>>
>> -----------------------------------
>> Client code:
>>
>> ConnectionFactory connectionFactory = new
>> ActiveMQConnectionFactory(ActiveMQConnection.DEFAULT_USER,
>> ActiveMQConnection.DEFAULT_PASSWORD,
>> "failover:(tcp://A:61616,tcp://B:61616)?randomize=false");
>> Connection connection = connectionFactory.createConnection();
>> connection.start();
>> Session session = connection.createSession(false,
>> Session.AUTO_ACKNOWLEDGE);
>> Queue testQueue = session.createQueue("MYTest");
>> MessageProducer producer = session.createProducer(testQueue);
>> producer.setDeliveryMode( DeliveryMode.PERSISTENT );
>>
>> Message testMessage = session.createMessage();
>> for(int i = 0; i < 30; i++){
>> testMessage.setStringProperty("testKey" + i, "testValue" + i);
>> producer.send(testMessage);
>> System.out.println("Now " + i + "th msg is produced.");
>> Thread.sleep(1000);
>> }
>>
>>
>>
>> Two brokers configured as:
>>
>>
>> <beans
>>
>> <bean id="mssql-ds" class="org.apache.commons.dbcp.BasicDataSource"
>> destroy-method="close">
>> <property name="driverClassName"
>> value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
>> <property name="url"
>> value="jdbc:sqlserver://dbserver:1433;databaseName=dbn;user=user;password=pwd"
>> />
>> <property name="username" value="user" />
>> <property name="password" value="pwd" />
>> </bean>
>>
>> <broker useJmx="false" xmlns="http://activemq.apache.org/schema/core">
>>
>> <!-- In ActiveMQ 4, you can setup destination policies -->
>> <destinationPolicy>
>> <policyMap>
>> <policyEntries>
>>
>> <policyEntry topic="FOO.>">
>> <dispatchPolicy>
>> <strictOrderDispatchPolicy/>
>> </dispatchPolicy>
>> <subscriptionRecoveryPolicy>
>> <lastImageSubscriptionRecoveryPolicy/>
>> </subscriptionRecoveryPolicy>
>> </policyEntry>
>>
>> </policyEntries>
>> </policyMap>
>> </destinationPolicy>
>>
>>
>>
>> <persistenceAdapter>
>> <jdbcPersistenceAdapter dataDirectory="activemq-data"
>> dataSource="#mssql-ds" useDatabaseLock="false"/>
>> </persistenceAdapter>
>>
>>
>>
>> <transportConnectors>
>> <transportConnector name="openwire" uri="tcp://0.0.0.0:61616"
>> discoveryUri="multicast://default"/>
>> <transportConnector name="stomp" uri="stomp://localhost:61613"/>
>> <transportConnector name="xmpp" uri="xmpp://localhost:61222"/>
>> </transportConnectors>
>>
>> <networkConnectors>
>> <!-- by default just auto discover the other brokers -->
>> <!-- networkConnector name="defaultNetwork"
>> uri="multicast://default"/ -->
>> <!--
>> <networkConnector name="host1 and host2"
>> uri="static://(tcp://host1:61616,tcp://host2:61616)" failover="true"/>
>> -->
>> </networkConnectors>
>>
>> </broker>
>>
>> <!-- lets create a command agent to respond to admin commands over JMS
>> or XMPP on the ActiveMQ.Agent topic -->
>> <commandAgent xmlns="http://activemq.apache.org/schema/core"/>
>>
>> </beans>
>>
>>
>>
>
>
--
View this message in context: http://old.nabble.com/MS-Sql-server-Master-Slave-problem-tp29144656p29151523.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.
|