converted replicant to a role so that we can apply it after ensure_connected properly...
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Storage / DBI / mysql.pm
CommitLineData
843f8ecd 1package DBIx::Class::Storage::DBI::mysql;
2
3use strict;
4use warnings;
5
6use base qw/DBIx::Class::Storage::DBI/;
7
8# __PACKAGE__->load_components(qw/PK::Auto/);
9
d4f16b21 10sub _dbh_last_insert_id {
11 my ($self, $dbh, $source, $col) = @_;
12 $dbh->{mysql_insertid};
843f8ecd 13}
14
e8d293df 15sub sqlt_type {
16 return 'MySQL';
17}
18
adb3554a 19sub _svp_begin {
eeb8cfeb 20 my ($self, $name) = @_;
adb3554a 21
eeb8cfeb 22 $self->dbh->do("SAVEPOINT $name");
adb3554a 23}
24
25sub _svp_release {
eeb8cfeb 26 my ($self, $name) = @_;
adb3554a 27
eeb8cfeb 28 $self->dbh->do("RELEASE SAVEPOINT $name");
adb3554a 29}
30
31sub _svp_rollback {
eeb8cfeb 32 my ($self, $name) = @_;
adb3554a 33
eeb8cfeb 34 $self->dbh->do("ROLLBACK TO SAVEPOINT $name")
adb3554a 35}
36
106d5f3b 37sub is_replicating {
38 my $self = shift @_;
39}
40
41sub lag_behind_master {
42 my $self = shift @_;
de5dc9ef 43 return $self->dbh->selectrow_hashref('show slave status');
106d5f3b 44}
45
843f8ecd 461;
47
75d07914 48=head1 NAME
843f8ecd 49
50DBIx::Class::Storage::DBI::mysql - Automatic primary key class for MySQL
51
52=head1 SYNOPSIS
53
54 # In your table classes
55 __PACKAGE__->load_components(qw/PK::Auto Core/);
56 __PACKAGE__->set_primary_key('id');
57
58=head1 DESCRIPTION
59
60This class implements autoincrements for MySQL.
61
62=head1 AUTHORS
63
64Matt S. Trout <mst@shadowcatsystems.co.uk>
65
66=head1 LICENSE
67
68You may distribute this code under the same terms as Perl itself.
69
70=cut