Как я могу отключить эхо-запросы в Apache :: DBI? - PullRequest
3 голосов
/ 16 декабря 2010

У меня проблема с отключением проверки соединения в Apache::DBI.
Из perldoc :

Apache :: DBI-> setPingTimeOut ($ data_source,$ timeout)

Это настраивает использование метода ping для проверки соединения.Установка времени ожидания в 0 всегда будет проверять соединение с базой данных, используя метод ping (по умолчанию).Установка времени ожидания <0 деактивирует проверку дескриптора базы данных. </p>

Я попытался вызвать setPingTimeOut с тем же $ data_source, что и в connect(), но это не сработало.Кому-нибудь удалось отключить пинги?

1 Ответ

4 голосов
/ 16 декабря 2010

Чтобы уточнить, код имеет:

# use a DSN without attribute settings specified within !
sub setPingTimeOut {
    my $class       = shift;
    my $data_source = shift;
    my $timeout     = shift;

    # sanity check
    if ($data_source =~ /dbi:\w+:.*/ and $timeout =~ /\-*\d+/) {
        $PingTimeOut{$data_source} = $timeout;
    }
}

Обратите внимание на «проверку работоспособности».Следовательно, таймаут ping для имени источника данных с заглавными буквами DBI: будет игнорироваться.

...