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 <cpui...@gmail.com>: > > Hi Matthias, > > >> Am 01.05.2015 um 21:58 schrieb Matthias Behr <mb...@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 <cpui...@gmail.com>: >>> >>> Mir fehlt der Mittelteil- was ist los? >>> >>> Viele Grüße, Andreas >>> >>> >>> >>>> Am 01.05.2015 um 20:11 schrieb Viper <vi...@viper1.de>: >>>> >>>> Kann ich das irgendwie ändern? >>>> >>>> Am 1. Mai 2015 19:53:50 MESZ, schrieb Matthias Behr <mb...@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 <vi...@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