Index: lib/DBIx/Class/Storage/DBI.pm =================================================================== --- lib/DBIx/Class/Storage/DBI.pm (revision 7824) +++ lib/DBIx/Class/Storage/DBI.pm (working copy) @@ -2147,8 +2147,15 @@ } sub select_single { - my $self = shift; - my ($rv, $sth, @bind) = $self->_select(@_); + my ($self, @rest) = @_; + + # redispatch to update method of storage we reblessed into, if necessary + if (not $self->_driver_determined) { + $self->_determine_driver; + goto $self->can('select_single'); + } + + my ($rv, $sth, @bind) = $self->_select(@rest); my @row = $sth->fetchrow_array; my @nextrow = $sth->fetchrow_array if @row; if(@row && @nextrow) {