All checks were successful
Deploy netdiag / deploy (push) Has been skipped
Prod-DB, 17.08.2026, auf Eddys Anweisung. rowid 5, 7 und 10 (Protokolle ND2026-0002, ND2026-0001, ND2026-0012) stehen jetzt auf measure_status 3 mit dem Label "DHCP-Server nicht ermittelbar" statt auf 2 mit "0 DHCP-Server (!)". rowid 42 ist eine echte Messung und blieb unangetastet. Die Spalte result wurde bei keiner Zeile angefasst - sie ist die Messung selbst und damit Beleg. Korrigiert wurden nur Bewertung und deren Zusammenfassung. Ergebnis ueber prod-db-read.sh verifiziert. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
85 lines
4.1 KiB
SQL
85 lines
4.1 KiB
SQL
-- =====================================================================
|
|
-- Datenkorrektur Produktionsdatenbank — 17.08.2026
|
|
-- Auf Anweisung von Eddy. DB `dolibarr` im Container 91-Firma-MariaDB (Unraid).
|
|
--
|
|
-- AUSFÜHREN — der dokumentierte Weg (KB #839). NICHT `mariadb -h 192.168.155.1`:
|
|
-- das ist die Docker-interne Adresse des Containers und von außen nicht erreichbar.
|
|
--
|
|
-- ssh -i ~/.ssh/unraid root@192.168.155.1 \
|
|
-- 'docker exec -i -e MYSQL_PWD=8715 91-Firma-MariaDB mariadb -u dolibarr dolibarr --table' \
|
|
-- < doc/datenkorrekturen/2026-08-17_dhcpcheck_status.sql
|
|
--
|
|
-- Lesend prüfen geht ohne Nachfrage über /home/data/.claude/bin/prod-db-read.sh.
|
|
-- Schreibzugriffe bleiben per Konstruktion zustimmungspflichtig — so steht es im
|
|
-- Kopf ebendieses Skripts.
|
|
--
|
|
-- ACHTUNG: Diese Datei liegt bewusst NICHT unter sql/. Alles dort wird von
|
|
-- Dolibarrs _load_tables() beim Aktivieren des Moduls automatisch
|
|
-- ausgeführt; eine Datenkorrektur gehört nicht in einen automatischen Lauf.
|
|
-- Hier steht sie zur Nachvollziehbarkeit und für den Rückweg.
|
|
-- =====================================================================
|
|
--
|
|
-- WARUM
|
|
--
|
|
-- Das Werkzeug `dhcpcheck` gibt es nicht mehr. Drei seiner Messungen wurden
|
|
-- als Kundendokument ausgeliefert und stehen mit measure_status = 2 (rot)
|
|
-- und dem Label „0 DHCP-Server (!)" in der Datenbank. Das Ergebnis dazu ist
|
|
-- {"count":0,"server":[],"hinweis":""}.
|
|
--
|
|
-- Diese „0" war nie eine Messung: Bei einer Kabelverbindung gibt Android die
|
|
-- DHCP-Angaben grundsätzlich nicht heraus — sie stecken nur im deprecated
|
|
-- DhcpInfo und nur für WLAN. „0 gefunden" war der Rückgabewert für „nicht
|
|
-- ermittelbar". Eine rote Ampel mit dieser Beschriftung behauptet gegenüber
|
|
-- dem Kunden einen Netzfehler, den die Messung nie hergegeben hat.
|
|
--
|
|
-- Status 3 = „nicht messbar" ist die ehrliche Einstufung: der Test konnte
|
|
-- nicht durchgeführt werden. Weder grün (wäre gelogen) noch rot (wäre eine
|
|
-- Aussage über das Kundennetz).
|
|
--
|
|
-- WAS NICHT ANGEFASST WIRD
|
|
--
|
|
-- Die Spalte `result` bleibt unverändert. Sie ist die Messung selbst und
|
|
-- damit Beleg — korrigiert werden nur Bewertung (measure_status) und deren
|
|
-- Zusammenfassung (label). Die Anzeige-Korrektur netdiagAltlastKorrektur()
|
|
-- im Modul bleibt ebenfalls bestehen: sie fängt denselben Fall in Backups,
|
|
-- Testinstanzen und noch nicht synchronisierten Geräten ab.
|
|
--
|
|
-- ZUSTAND VOR DER KORREKTUR (vollständig, zum Zurückschreiben)
|
|
--
|
|
-- rowid | fk_protocol | ref | status | label
|
|
-- 5 | 2 | ND2026-0002 | 2 | 0 DHCP-Server (!)
|
|
-- 7 | 1 | ND2026-0001 | 2 | 0 DHCP-Server (!)
|
|
-- 10 | 12 | ND2026-0012 | 2 | 0 DHCP-Server (!)
|
|
--
|
|
-- result bei allen dreien: {"count":0,"server":[],"hinweis":""}
|
|
--
|
|
-- Nicht betroffen und unverändert: rowid 42 (ND2026-0015), status 0,
|
|
-- „DHCP-Server: 192.168.153.1" — eine echte Messung mit echtem Ergebnis.
|
|
-- =====================================================================
|
|
|
|
-- KORREKTUR — AUSGEFÜHRT am 17.08.2026, 3 Zeilen geändert, danach verifiziert:
|
|
-- rowid 5, 7, 10 -> measure_status 3, Label „DHCP-Server nicht ermittelbar"
|
|
-- rowid 42 unverändert (echte Messung), `result` bei allen unangetastet
|
|
-- Die WHERE-Bedingung trifft ausschließlich Messungen des entfernten
|
|
-- Werkzeugs ohne jedes Ergebnis. Sie ist wiederholbar: ein zweiter Lauf
|
|
-- findet nichts mehr (measure_status ist dann bereits 3).
|
|
UPDATE llx_netdiag_measurement
|
|
SET measure_status = 3,
|
|
label = 'DHCP-Server nicht ermittelbar'
|
|
WHERE tool = 'dhcpcheck'
|
|
AND measure_status = 2
|
|
AND result LIKE '%"count":0%'
|
|
AND result LIKE '%"server":[]%';
|
|
-- erwartet: 3 Zeilen
|
|
|
|
-- PRÜFUNG
|
|
-- SELECT rowid, measure_status, label FROM llx_netdiag_measurement WHERE tool='dhcpcheck';
|
|
|
|
-- =====================================================================
|
|
-- RÜCKWEG (nur ausführen, wenn die Korrektur rückgängig gemacht werden soll)
|
|
--
|
|
-- UPDATE llx_netdiag_measurement
|
|
-- SET measure_status = 2,
|
|
-- label = '0 DHCP-Server (!)'
|
|
-- WHERE rowid IN (5, 7, 10);
|
|
-- =====================================================================
|