Automatic reconnection to failed over database

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Automatic reconnection to failed over database

Jorge Gonzalez
Hi all,

I am in the process of migrating several production apps using  
DBIx::Class to a clustered mysql database (HA).

When my apps try to connect to the DB and can't, they fail (die,  
return errors, etc.). Since the cluster has a (very small) downtime  
during the failover process (node failure), I'd like that my apps just  
retried the connection in case it fails, stepping over the short  
downtime and reconnecting to the new cluster node which runs the DB  
after the failure.

I have seen the DBIx::RetryOverDisconnects module and it seems it  
could serve the purpose, but I have googled and haven't seen any  
comments on using it on DBIx::Class models.

Has anyone managed to integrate both modules (and use them!)? Or is  
there an easy way of doing what I want, that I'm missing?

Thanks in advance
BR
J.




_______________________________________________
List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
Searchable Archive: http://www.grokbase.com/group/dbix-class@...
Reply | Threaded
Open this post in threaded view
|

Re: Automatic reconnection to failed over database

Hailin Hu
http://search.cpan.org/~capttofu/DBD-mysql-4.022/lib/DBD/mysql.pm#DATABASE_HANDLES
Does mysql_auto_reconnect not work?

On Thu, Aug 23, 2012 at 12:26 AM, Jorge Gonzalez
<[hidden email]> wrote:

> Hi all,
>
> I am in the process of migrating several production apps using DBIx::Class
> to a clustered mysql database (HA).
>
> When my apps try to connect to the DB and can't, they fail (die, return
> errors, etc.). Since the cluster has a (very small) downtime during the
> failover process (node failure), I'd like that my apps just retried the
> connection in case it fails, stepping over the short downtime and
> reconnecting to the new cluster node which runs the DB after the failure.
>
> I have seen the DBIx::RetryOverDisconnects module and it seems it could
> serve the purpose, but I have googled and haven't seen any comments on using
> it on DBIx::Class models.
>
> Has anyone managed to integrate both modules (and use them!)? Or is there an
> easy way of doing what I want, that I'm missing?
>
> Thanks in advance
> BR
> J.
>
>
>
>
> _______________________________________________
> List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
> IRC: irc.perl.org#dbix-class
> SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
> Searchable Archive:
> http://www.grokbase.com/group/dbix-class@...

_______________________________________________
List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
Searchable Archive: http://www.grokbase.com/group/dbix-class@...