FHEM Forum

FHEM - Hausautomations-Systeme => 1Wire => Thema gestartet von: erwin am 11 April 2013, 12:54:06

Titel: OWServer - DbLog Problem
Beitrag von: erwin am 11 April 2013, 12:54:06
Hi All,
ich habe gestern versucht OWserver mit attr nonblocking zu betreiben.
Es kommen jedesmal, wenn OWserver forked - die folgenden Fehler:
2013.04.11 12:00:20 2: DbLog: Failed to insert new readings into database: DBD::mysql::db begin_work failed: Turning off AutoCommit failed at ./FHEM/93_DbLogMH.pm line 330.
ich hab mich jetzt an einen älteren Thread erinnert, wo das schon mal Thema war (in Zusammmenhang mit PRESENCE):
http://forum.fhem.de/index.php?t=msg&th=11246&goto=65953&rid=0#msg_65953
Die Fehlermeldungen waren damals andere, aber inzwischen hat sich in DbLog ja einiges getan...
Es ist eindeutig reproduzierbar - Atrr nonblocking löschen - alles läuft!
Konfig:
define my_OWServer OWServer localhost:4304
attr my_OWServer nonblocking 1
define DS18S20_75EEDC010800 OWDevice 10.75EEDC010800 120
attr DS18S20_75EEDC010800 IODev my_OWServer
attr DS18S20_75EEDC010800 model DS18S20


l.g. erwin
Titel: Aw: OWServer - DbLog Problem
Beitrag von: fstreffer am 04 Mai 2013, 11:57:13
Hallo Zusammen,
ich hatte das gleiche Problem. Ich habe nach der Lösung in Blocking.pm geschaut und eine Änderung in 10_OWServer.pm Zeile 265 vorgenommen. Bei mir funktioniert es.

@Matrin & Boris: Bitte schaut es Euch an und checkt es bei gelegenheit ein, wenn es passt.

Beste Grüße,
Frieder  

    256  InternalTimer(gettimeofday()+20, "OWServer_TimeoutChild", $pid, 0);
    257     if($pid == 0) {
    258       close READER;
    259       $ret= OWNet::read($hash->{DEF},$path);
    260       $ret =~ s/^\s+//g if(defined($ret));
    261       Log 5, "OWServer child read $path: $ret";
    262       delete $hash->{".path"};
    263       print WRITER $ret;
    264       close WRITER;
    265       POSIX::_exit(0);
    266     }
    267
    268     Log 5, "OWServer child ID for reading '$path' is $pid";
Titel: Aw: OWServer - DbLog Problem
Beitrag von: MNeugebauer am 15 September 2013, 13:01:33
Hallo,
ich habe das gleiche Problem:

DbLog: Failed to insert new readings into database: DBD driver has not implemented the AutoCommit attribute at /opt/lib/perl5/site_perl/5.10.0/arm-linux/DBI.pm line 1724.

Auch ich muss entweder NONBLOCKING ausschalten oder die vorgeschlagene Änderung in 10_OWServer.pm einfügen, damit alles ohne Fehlermeldung läuft.

Kann man die Änderung in OWServer durchführen ?
Titel: Aw: OWServer - DbLog Problem
Beitrag von: Dr. Boris Neubert am 15 September 2013, 15:39:16
Zitat von: MNeugebauer schrieb am So, 15 September 2013 13:01Kann man die Änderung in OWServer durchführen ?

Erledigt!

Viele Grüße
Boris