Weblog Kommentare
4294967295 Kommentare
Ian Styx am |
Ich auch nicht! 😲Nun bin ich wieder munter.
Erstmal über diese Zahl: https://de.numberworld.info/4294967295
Sie ist bedeutsam, denn sie bezeichnet das 32-Bit-Integer-Limit bei Computern. Laut Wikipedia:
4 294 967 295 (oder hexadezimal FFFF,FFFF16) ist der größte positive Wert, welcher in einem vorzeichenlosen 32-Bit Integer gespeichert werden kann, und hat dadurch eine besondere Bedeutung in Programmiersprachen und Rechnerarchitekturen, wenn negative Ganzzahlen nicht vorkommen können. So beispielsweise bei Speicheradressen und Indizes.
Computer mit einer 32-Bit-Architektur haben einen 32-Bit breiten Adressbus und (meist) auch 32-Bit breite CPU-Register und können daher maximal 232 Bytes adressieren. Dies entspricht 4 GiB (4 Gibibyte, meist fälschlich als 4 Gigabyte angegeben).
So kann sie als Fehlermeldung verschiedenster Art daherkommen zB., wenn die primary data Zahl bei MySQL Tabellen ihr Limit erreicht hat. Oder auch wenn Festplattenindizes überlaufen bzw an ihr Limit kommen, in Shell Zusammenhängen, usw.
Wie solches überhaupt geschehen kann - und das gerade hier - ist mir ein Rätsel...
-1 in two's complement signed number format (assuming 4 bytes long integers) is 0xffffffff which is the maximum unsigned value that can be stored in the 4 bytes. Two's complement format is used by almost all computers used nowadays (including your PC, Mac and any mobile phone)
Your shell is displaying the program return value as unsigned integer. The decimal representation of the 0xffffffff hex number is 4294967295
Laut dem hier haben wir es also mit einer return Rückgabe als unsigned integer zu tun. Warum gerade hier in einem 14 Jahre alten Blogeintrag... und nicht auch woanders ist mir schleierhaft. Gar ob plötzlich oder schon lange so...?
Am besten gibst du die Angelegenheit auch mal an den Support weiter ... aber schon komisch, denn laut den verschiedenen URLs hast du ja dasselbe auf Manitu und auf deine CH Servern, beides unterschiedliche Systeme mit unterschiedlichen Gegebenheiten. Sie beruhen aber beide auf dem selben Urzustand der Mysql Tabellen, nicht wahr?
Wie bist du darauf gekommen? Bzw hast das gefunden? Reiner Zufall?
Hast du schon weitergeforscht ob das auch in anderen alten Beiträgen auftaucht?
Hast du noch alte Tabellenbackups in denen du überprüfen kannst wieviel Kommentare dieser Eintrag hatte, oder ob da eventuell -1 drinnen steht, oder ob die Struktur der primary ID eine andere ist als andere serendipity comments Tabellen? (Reine Schüsse ins Blaue, meinerseits.)
Soweit erstmal....
Ian Styx am |
Interessant ist ja die Korrelation zum heutigen Tag (und so hast du das wahrscheinlich auch bemerkt, nehme ich an.)
Wir müssen also auch mal sehen, ob die zwei nächsten Einträge am 26. und 27. Oktober desselben Jahres (beide mit 0 Kommentaren) eventuell am Stichtag ein ähnliches Verhalten zeigen (-warum auch immer-). Und das nur, wenn uns zwischenzeitlich nicht noch was ganz anderes einfällt.
Beat Post author am |
Das History-Plugin nutze ich sehr oft um frühere Beiträge anzusehen. Und so bin ich auch auf diesen Beitrag vor 13 Jahren gestossen. Dass ich diese Zahl bei den Kommentaren entdeckte war eher zufällig.
Ich fand es lustig, habe aber nicht mehr viel nachgeforscht. Natürlich schaute ich mir via entrypaging-Plugin die Beiträge davor und danach an. Dann schaute ich in der Backend-Statistik noch die Kommentar-Statistik an und war dann zufrieden, dass hier eben nicht Milliarden von Kommentaren gezählt wurden.
Ohne absolte Sicherheit behaupte ich einfach einmal, dass der betroffene Beitrag nie einen Kommentar gesehen hat. Es wird einem ja auch keiner angezeigt.
Ich dachte mir, dass Dich dieses Phänomen triggert 😆. Nur deshalb machte ich den Printscreen und schrieb diesen Beitrag hier.
Für mich ist das eine Art Sternschnuppe 💫...
Ian Styx am |
Man Dankt! 🙄
Tja - eine Sternschnuppe - die nicht sein darf.
Also irgendwie kann ich mir nicht vorstellen dass es an irgendwelchen falschen Berechnungen oder so in der generellen Zusammenstellung zwischen DB Abfrage(n) und Template Ausgabe liegt, denn sonst müssten andere 0-Kommentar Einträge ja ein gleiches Verhalten zeigen. Ergo kann es nur die DB sein (oder ein Speicher/Plattenfehler) würde ich deswegen einfach mal behaupten. Letzteres ist unwahrscheinlich, da auf 2 unterschiedlichen Systemen. Wenn es also die DB ist kann es ja nur sein, dass entweder die Struktur falsch ist und irgendeine Eingabe etwas Falsches ausgelöst hat oder, dass tatsächlich der ID Integer sein Überlauf-Ende erreicht hat. Das müsste man doch checken können... Probiere mal mit PMA (das eigentlich 0 von nix bzw Leerer Datensatz o.s,Ä. zurückgeben müsste)
SELECT * FROM `styx_comments` WHERE entry_id = 1612
Dann einmal diese für die Summe aller Kommentare aller entries
SELECT COUNT(*) AS total FROM styx_comments c LEFT JOIN styx_entries e ON (e.id = c.entry_id) WHERE c.type = 'NORMAL' AND e.authorid = 1
und diese für die Felder des entries 'Sonntagsfahrt'; insbesondere das Value für das Feld 'comments'
SELECT * FROM `styx_entries` WHERE id = 1612
und speziell für die Sonntagsfahrt
SELECT COUNT(*) AS total FROM styx_comments c LEFT JOIN styx_entries e ON (e.id = c.entry_id) WHERE e.id = 1612
Die Frage des WARUM müsste man sich für später aufheben, denn ebenso unwahrscheinlich ist ( - finde ich - ), dass durch die "normale" SPAM Zugriffs-Schwemme jemals eine solch hohe Zahl erreicht würde (auch nicht in 13+ Jahren). Außer es findet/fand eine Art von Angriff statt, um einen solchen Überlauf zu erzwingen und damit irgendwelche Speicherfehler auszulösen. Selbst das ist schon sehr gewagt, denn das würde über 4 Mrd Zugriffe benötigen. Das hätte bei dem Provider von dem die Daten original stammen schon die Alarmglocken klingeln lassen... oder man müsste das irgendwie von Außen gezielt anspringen können...
Wenn durch die SQL queries wirklich etwas schlüssiges bzgl der Zahl bei rauskommt wäre ich echt verwundert.... außer, wenn die dritte query genau das dort ausgibt. Dann ist es wahrscheinlich müßig darüber zu spekulieren wie sie genau da hinein kam... Wahrscheinlich wäre es dann ein Fehler in deinen damaligen Übertragsbemühungen oder ein Folgefehler einer Übertrags Fehlermeldung, irgendwie als -1 oder so gewesen, das dort dann diese Zahl hineingezaubert hat. Die Lösung wäre also sehr einfach: Gehe mit PMA zum entry und überschriebe die Zahl mit 0.
Mach mal zusätzlich noch ein komplettes DB Backup (wenigstens von entries + comments). Danach kann man hinterher mal probieren einen Kommentar auf diesen Eintrag abzusetzen um zu sehen was dann passiert.
Beat Post author am |
Ne, ne... diesen Aufwand betreibe ich nicht. Wegen einer einzigen Sternschnuppe untersuche ich doch nicht gleich das ganze Universum.
Komisch ist jedoch, dass aktuell der verlinkte Eintrag hier nun "0 Kommentare" anzeigt, während auf www.beatsblog.ch immer noch die Milliarden angezeigt werden.
Was ich in der Zwischenzeit (am Morgen) gemacht habe ist, dass ich mir den Eintrag in der entries-DB-Tabelle angesehen und mit den Beiträgen zuvor und danach verglichen habe. Ich konnte keine Unterschiede feststellen und meiner Ansicht nach habe ich auch nichts gespeichert, bevor ich die Admin-Oberfläche wieder verlassen habe. Anscheinend hatte dies doch gewisse Auswirkungen...
Ian Styx am |
Nanana ganzes Universum... tztztz 😁 Kuipergürtel reicht...!
Wir sind uns gerade ins Gehege gekommen, denn ich hatte gerade den vorigen Kommentar noch etwas editiert. Siehe vorletzten Absatz.
Ich finde das gerade jene 3. Query ganz schnell Klarheit bringen würde. Gerade auch weil ja sonstige Statistik Ausgaben funktionieren. Und auch für die mögliche fixup Lösung. Denn das sollte man korrigieren weil ich nicht unbedingt weiß was passiert wenn man einen Kommentar dazugibt und das Faß zum Überlaufen bringt. (Wenn alles gut geht wäre es eine 1).
Ian Styx am |
Tatsächlich, jetzt 0. Ich würde auch behaupten dass das bis vor kurzem noch auf 4294967295 stand. Umso merkwürdiger ... !
Beat Post author am |
Also wenn ich richtig zähle, dann sind es 4 Queries. 😉 Hier die Resultate (aus der DB zu beatsblog.ch)
- 0
- 1911 (wobei dies eben nur diejenigen von Author=1 sind)
- 4294967295
- 0
Ich habe dann zur Sicherheit die DB exportiert. Danach fügte ich einen Kommentar an, was problemlos funktionierte. Die Anzeige "1 Kommentar" stimmte auch. Dann löschte ich in der Admin-Oberfläche den Testkommentar wieder und nun wird auch auf dem Live-Blog "0 Kommentare" angezeigt.
Tja, die Sternschnuppe ist gestorben... 😭
Ian Styx am |
Und alles löste sich in Wohlgefallen auf...
Genau jene dritte Query meinte ich.😎
Deine Wassergläser werden immer herausfordernder...😊
Beat Post author am |
Ich bin ja froh, dass sich das Thema nun erledigt hat. Doch man könnte sich jetzt auch noch fragen: Wie kam es denn überhaupt dazu, dass bei diesem Beitrag die Zahl 4294967295 ins Feld der Anzahl Kommentare gelangt ist?
-duck und weg-
Ian Styx am |
Höchstwahrscheinlich, wie ich schon schrieb, durch einem Übertragsfehler oder einen Fehler der beim Übertrag ausgelöst wurde, denn du hast ja eine neue Styx DB mit alten Daten befüttert, zB wenn dabei irgendeine Prozedur Errormeldung mit -1 geantwortet hat und diese dann dort eingefügt wurde. Da das aber ein comments int UNSIGNED default '0', Feld ist, dürfen nur positive Zahlen eingetragen werden, die Entsprechung von -1 wäre dann also 0xffffffff was dezimal zu 4294967295 wird. So - oder so ähnlich - erkläre ich mir das. Das du sie dort persönlich hineingeschrieben hast um sie Jahre später als Knobelaufgabe zu verwenden ist daher eher unwahrscheinlich..." 😋
Edit: Oder aber durch einen solchen Error-Prozess bei der damaligen Erstellung des Entries oder danach, zB. durch einen verunglückten Kommentar-Versuch...
zurück auf Feld 1
Beat Post author am |
Kurze Frage: Könnte man in den Satistiken unter: Besucher, auf den Monat bezogen (rolling year) auch 13 Monate anzeigen? So könnte man den aktuellen Monat mit dem gleichen Monat vor einem Jahr vergleichen und so feststellen, ob man Besucher gewinnt oder verliert.
Ian Styx am |
🙄 Bin da gerade überhaupt nicht drin und bräuchte mal echte Langeweile um das mir das noch mal grundsätzlich zu Gemüte zu führen.
Irgendwie ähnelt diese Frage auch einer - so ich mich dunkel erinnere - die du schon einmal in diesem Zusammenhang gestellt hast ( ich meine es ging da um den Endjahresvergleich ) und ich zusammenfassend antwortete, dass das wesentlich einfacher wäre, wenn du dir (vorher) einem screenshot machst. Dann kam erst das rollende Jahr für die Anzeige ( meine ich )...
Wäre es deshalb nicht viel einfacher und praktischer dir viertel- oder halbjährlich einen solchen zu erstellen und damit deine Vergleiche anzustellen?
Ian Styx am |
Moin Beat
In deinem 🚵♂️1000Hm Eintrag ist der image Kommentar mit Fragezeichen bestückt:
? 10. Oktober und 22,8° Grad ?
Ist das Extra, oder sind das eventuell Emojis die (etwa) nicht geklappt haben..?
Beat Post author am |
Ja, das ist so gewollt. Eigentlich wollte ich ein auf dem Kopf stehendes Fragezeichen einsetzen, doch dafür kannte ich den ASCI-Code nicht.
Ich wollte damit ausdrücken, dass ich eine Durchschnittstemperatur von 22,8° Grad an einem 10. Oktober doch ziemlich fragwürdig finde, zumal es hier schon seit Wochen so warm ist. 🙄
Ian Styx am |
Dann bin ich ja froh...😅
Du meinst ¿ ?!
Das findet man im RT-Editor im OHM (Sonderzeichen) Helper Button, gleich nach ¼ ½ ¾ knapp unterhalb der Hälfte. Für Spanischsprachler hätte das aber eine andere Bedeutung:
Die umgekehrte Interpunktion markiert den Beginn eines Frage- oder Ausrufesatzes. Im Wesentlichen wird der Satz durch ein auf dem Kopf stehendes Frage- oder Ausrufezeichen am Anfang und ein normales Frage- oder Ausrufezeichen am Ende eingeschlossen. In der Praxis sieht das Ganze dann so aus: ¿Tú vives aquí?
und würde eventuell für Fragezeichen sorgen. 😁
Kalt wirds früh genug...
Ian Styx am |
Kurze Frage: Könnte man in den Statistiken unter: Besucher, auf den Monat bezogen (rolling year) auch 13 Monate anzeigen? So könnte man den aktuellen Monat mit dem gleichen Monat vor einem Jahr vergleichen und so feststellen, ob man Besucher gewinnt oder verliert.
Wenn du es bitte mal ausprobieren willst.... 😎
Gehe auf Zeile 1067 und ändere mal die -11 in eine -12
https://github.com/ophian/additional_plugins/blob/master/serendipity_event_statistics/serendipity_event_statistics.php#L1067
und setzte mal
#statistics_yearbox table tr:nth-child(3) td:nth-child(2) {
background-image: linear-gradient(#ddd, #eee);
}
[data-color-mode="dark"] #statistics_yearbox table tr:nth-child(3) td:nth-child(2) {
background-image: linear-gradient(var(--color-auto-gray-5), var(--color-auto-gray-0));
border: 1px dashed var(--color-auto-gray-4);
border-bottom: 1px inset var(--color-auto-gray-1);
}
#statistics_yearbox table tr:nth-child(-n+2) td:nth-child(2) {
background-color: #8b008b1c;
color: blueviolet;
}
[data-color-mode="dark"] #statistics_yearbox table tr:nth-child(-n+2) td:nth-child(2) {
background-color: darkmagenta;
color: #d99b9b;
}
in die Zeile 580
https://github.com/ophian/additional_plugins/blob/master/serendipity_event_statistics/serendipity_event_statistics.php#L580
Dann können wir mal reden....
Beat Post author am |
Toll! Funktioniert! 👍
Habe es hier umgesetzt. Kannst es Dir gerne im Backend selbst ansehen.
Mir gefällt's! Daumen hoch! 👍
Beat Post author am |
Danke für die Antwort. Im echten Leben ist das nicht ganz so einfach umzusetzen, weil mir im Dialog zum Einfügen eines Bildes in den Beitrag der RT-Editor nicht zur Verfügung steht. Ich müsste das Zeichen also per RT-Editor in den Beitrag selbst setzen, dann den erzeugten Quellcode kopieren und ins Kommentarfeld des Bildes einfügen. Dann das Sonderzeichen wieder aus dem Beitrag löschen.
Ich versuch's mal. -> Ja, hat geklappt!
Beat Post author am |
😀 Hier sind im Backend nun die zwei Meldungen auch wieder aufgetaucht.
Ian Styx am |
Ist mir momentan einfach schleierhaft... Ich kann nur hoffen, dass das eine Regression der ersten Versuche ist.
Bei mir ist soetwas noch nicht aufgetreten bislang... und die 6 Monate sind auch noch nicht um...🤨
Beat Post author am |
Ist ja kein wirkliches Problem. Lösche die Meldungen und werde hier wieder berichten, falls sie erneut auftauchen. 👋
Beat Post author am |
Heute, also 50 Tage später, erhalte ich auf beatsblog.ch wieder diese zwei "Remote-Systembenachrichtigungen" angezeigt.🤔
PS: Das History-Plugin macht sich am heutigen Schalttag sehr gut 👍. Mal schauen, ob es morgen 01.03. auch richtig anzeigt.
Ian Styx am |
Und ich kann dir zustimmen, denn ich habe es selbst gesehen auf einem anderen Blog - gerade vor ein paar Tagen erst, auch so um den Dreh von anderthalb bis zwei Monaten, bei mir lokal aber noch nie und auch nicht auf anderen remote Blogs und ich kann mit dieser Zeitspanne im Code auch nicht wirklich etwas anfangen.... Ich habe in Styx 4.4.0 einen Versuchsfix drinnen... wir werden es bemerken. Wahrscheinlich aber werde ich diese zwei Einträge sowieso bald löschen, denn sie sind ja inzwischen auch überholt. 😏