[vz-users] Stromdaten werden mit 4 Stündiger Verspätung angezeigt

Matthias Behr mbehr at mcbehr.de
Fri May 1 23:14:44 CEST 2015


Der Code ist aus dem Logger.
Aus meiner Sicht darf timestamp nicht als unique-key in der Datenbank definiert sein.

> Am 01.05.2015 um 23:11 schrieb Andreas Götz <cpuidle at gmail.com>:
> 
> Hi Matthias,
> 
> 
>> Am 01.05.2015 um 21:58 schrieb Matthias Behr <mbehr at mcbehr.de>:
>> 
>> Hier das ursprüngliche Problem. Es gibt Curl Fehler, weil offensichtlich ein timestamp bereits in der DB vorliegt. Der akt. Code versucht das dann immer wieder -> hat nie wieder Erfolg.
>> timestamp (da ja in ms Auflösung) darf nicht als unique-key definiert sein. Frage ist, ob das Install-Skript das so anlegt.
>> 
>> 
>>>>> (Auszug)
>> Wenn es aus irgendeinem Grund (Integrity constraint violation: 1062???) zu einem Fehler kommt, dann wird versucht, diese Werte erneut an die Middleware zu schicken. Wenn es aber ein Werte Paar gibt, welches immer einen Fehler erzeugt, dann werden diese immer werden versucht und es wird nie mehr klappen.
> 
> Ich bin total lost. Irgendwo gibt es Code der eine UniqueConstraintViolation abfängt- der fehlt unten.
> 
> Und was ist jetzt das Problem- Fehler in den Indizes bei der MW oder beim Handling im Logger?
> 
> Viele Grüße, Andreas 
> 
>> 
>> D.h. das Fehlermanagement in Volkszaehler.cpp sollte überdacht werden.
>> 
>> 
>> akt. Code (_values.clear() nur im Ok Fall):
>> 
>> // check response
>>   if (curl_code == CURLE_OK && http_code == 200) { // everything is ok
>>       print(log_debug, "CURL Request succeeded with code: %i", channel()->name(), http_code);
>>       _values.clear();
>>       // clear buffer-readings
>>       //channel()->buffer.sent = last->next;
>>   }
>>   else { // error
>>       if (curl_code != CURLE_OK) {
>>           print(log_error, "CURL: %s", channel()->name(), curl_easy_strerror(curl_code));
>>       }
>>       else if (http_code != 200) {
>>           char err[255];
>>           api_parse_exception(response, err, 255);
>>           print(log_error, "CURL Error from middleware: %s", channel()->name(), err);
>>       }
>>   }
>> 
>> 
>> 
>>> Am 01.05.2015 um 21:50 schrieb Andreas Götz <cpuidle at gmail.com>:
>>> 
>>> Mir fehlt der Mittelteil- was ist los?
>>> 
>>> Viele Grüße, Andreas 
>>> 
>>> 
>>> 
>>>> Am 01.05.2015 um 20:11 schrieb Viper <viper at viper1.de>:
>>>> 
>>>> Kann ich das irgendwie ändern? 
>>>> 
>>>> Am 1. Mai 2015 19:53:50 MESZ, schrieb Matthias Behr <mbehr at mcbehr.de>:
>>>>> Da ist auch schon der Fehler:
>>>>> 
>>>>> timestamp darf nicht data_unique sein.
>>>>> 
>>>>> @Andig: ist das so gewollt? Macht das Install-Skript das so?
>>>>> 
>>>>>> Am 01.05.2015 um 18:32 schrieb Viper <viper at viper1.de>:
>>>>>> 
>>>>>> Glaube ich habe es geschafft:
>>>>>> 
>>>>>> Tabelle
>>>>>> Datensätze 1 - 4 von insgesamt 4    <<    <    >    >>
>>>>>> 
>>>>>> Ansicht: kompakt
>>>>> 
>>>>> Die Abfrage enthält 13 Spalten
>>>>>> #    <blank.gif> Table    <blank.gif> Non_unique    <blank.gif>
>>>>> Key_name    <blank.gif> Seq_in_index    <blank.gif> Column_name    <blank.gif>
>>>>> Collation    <blank.gif> Cardinality    <blank.gif> Sub_part    <blank.gif>
>>>>> Packed    <blank.gif> Null    <blank.gif> Index_type    <blank.gif>
>>>>> Comment    <blank.gif> Index_comment
>>>>>> 1.    
>>>>>> data
>>>>>> 0
>>>>>> PRIMARY
>>>>>> 1
>>>>>> id
>>>>>> A
>>>>>> 13651
>>>>>> NULL
>>>>>> NULL
>>>>>> 
>>>>>> BTREE
>>>>>> 
>>>>>> 
>>>>>> 2.    
>>>>>> data
>>>>>> 0
>>>>>> data_unique
>>>>>> 1
>>>>>> channel_id
>>>>>> A
>>>>>> 2
>>>>>> NULL
>>>>>> NULL
>>>>>> YES
>>>>>> BTREE
>>>>>> 
>>>>>> 
>>>>>> 3.    
>>>>>> data
>>>>>> 0
>>>>>> data_unique
>>>>>> 2
>>>>>> timestamp
>>>>>> A
>>>>>> 13651
>>>>>> NULL
>>>>>> NULL
>>>>>> 
>>>>>> BTREE
>>>>>> 
>>>>>> 
>>>>>> 4.    
>>>>>> data
>>>>>> 1
>>>>>> IDX_ADF3F36372F5A1AA
>>>>>> 1
>>>>>> channel_id
>>>>>> A
>>>>>> 2
>>>>>> NULL
>>>>>> NULL
>>>>>> YES
>>>>>> BTREE
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> Datensätze 1 - 4 von insgesamt 4    <<    <    >    >> 
>>>>>> 
>>>>>> Habe auch das Dump File angehängt.
>>>>>> 
>>>>>>> Am 30.04.2015 um 22:43 schrieb Matthias Behr:
>>>>>>> show index from
>>>>>> 
>>>>>> <dumpD0.txt>
>>>>> 
>>>>> Gruß
>>>>> 
>>>>> Matthias
>>>> 
>>>> -- 
>>>> Diese Nachricht wurde von meinem Android-Mobiltelefon mit K-9 Mail gesendet.
>> 
>> Gruß
>> 
>> Matthias
>> 

Gruß

Matthias



More information about the volkszaehler-users mailing list