You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Rob Bugh (JIRA)" <ji...@apache.org> on 2008/04/10 21:29:46 UTC
[jira] Created: (AMQ-1660) Scheduled Failover
Scheduled Failover
------------------
Key: AMQ-1660
URL: https://issues.apache.org/activemq/browse/AMQ-1660
Project: ActiveMQ
Issue Type: Improvement
Components: Broker
Affects Versions: 5.0.0, 4.1.1
Environment: all platforms that support a running standalone broker
Reporter: Rob Bugh
I am using a JDBC Master/Slave topology. I'm using Postgres as the db and noticed that due to the long running transaction of the master holding the lock on the activemq_lock table my vacuums are not cleaning as many dead tuples as they could. If you are familiar with postgres then you know that vacuum can only recover dead tuples up to the point of the oldest transaction. My activemq database is on the same db server as my production db.
So I would like to regularly failover the master to the slave to keep the lock transaction timestamp moving forward in time.
Is there any facility built into activemq that would allow me to schedule a restart of a broker? For example, it would be nice to have the ability to specify in the broker.xml a TTL value that would mean run for this much time then restart yourself (or shutdown).
Rob
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Assigned: (AMQ-1660) Scheduled Failover
Posted by "Rob Davies (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/activemq/browse/AMQ-1660?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rob Davies reassigned AMQ-1660:
-------------------------------
Assignee: Hiram Chirino
> Scheduled Failover
> ------------------
>
> Key: AMQ-1660
> URL: https://issues.apache.org/activemq/browse/AMQ-1660
> Project: ActiveMQ
> Issue Type: Improvement
> Components: Broker
> Affects Versions: 4.1.1, 5.0.0
> Environment: all platforms that support a running standalone broker
> Reporter: Rob Bugh
> Assignee: Hiram Chirino
> Fix For: 5.3.0
>
>
> I am using a JDBC Master/Slave topology. I'm using Postgres as the db and noticed that due to the long running transaction of the master holding the lock on the activemq_lock table my vacuums are not cleaning as many dead tuples as they could. If you are familiar with postgres then you know that vacuum can only recover dead tuples up to the point of the oldest transaction. My activemq database is on the same db server as my production db.
> So I would like to regularly failover the master to the slave to keep the lock transaction timestamp moving forward in time.
> Is there any facility built into activemq that would allow me to schedule a restart of a broker? For example, it would be nice to have the ability to specify in the broker.xml a TTL value that would mean run for this much time then restart yourself (or shutdown).
> Rob
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (AMQ-1660) Scheduled Failover
Posted by "Hiram Chirino (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/activemq/browse/AMQ-1660?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=42434#action_42434 ]
Hiram Chirino commented on AMQ-1660:
------------------------------------
Perhaps it would be better if we try to work around this problem with postgress so that you don't have to restart your broker. (and if you did I would recommend you just use a cron job to do that).
Wonder if we use 2 lock statements in 2 different transactions. After some time we commit transaction 1 and get the lock again. Then we do the same with the 2nd transaction. and keep alternating. This should avoid the old transaction problem.
We just need to deal with new brokers coming online and getting 1 of the locks while the master is re-newing the lock. So a salve need to release that lock fast if it can't get the 2nd lock.
Make sense?
> Scheduled Failover
> ------------------
>
> Key: AMQ-1660
> URL: https://issues.apache.org/activemq/browse/AMQ-1660
> Project: ActiveMQ
> Issue Type: Improvement
> Components: Broker
> Affects Versions: 4.1.1, 5.0.0
> Environment: all platforms that support a running standalone broker
> Reporter: Rob Bugh
>
> I am using a JDBC Master/Slave topology. I'm using Postgres as the db and noticed that due to the long running transaction of the master holding the lock on the activemq_lock table my vacuums are not cleaning as many dead tuples as they could. If you are familiar with postgres then you know that vacuum can only recover dead tuples up to the point of the oldest transaction. My activemq database is on the same db server as my production db.
> So I would like to regularly failover the master to the slave to keep the lock transaction timestamp moving forward in time.
> Is there any facility built into activemq that would allow me to schedule a restart of a broker? For example, it would be nice to have the ability to specify in the broker.xml a TTL value that would mean run for this much time then restart yourself (or shutdown).
> Rob
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.