Erstellt vor 5 Jahren

Geschlossen vor 2 Jahren

#1427 closed Fehler (wont-fix)

Paket-Installation scheitert ohne Fehlermeldung falls locate-Datenbank nicht existiert

Erstellt von: devel@… Verantwortlicher: p.reetz@…
Priorität: normal Meilenstein:
Komponente: kivitendo ERP Version: 2.6.1
Schweregrad: normal Stichworte: Installation
Beobachter:

Beschreibung

Hi,

bei der Installation von von lx-office-erp aus den Paketquellen von http://lx-office.org/pakete/ tritt ein Fehler auf, da das postinst-Skript indirekt von der Existenz der "locate"-Datenbank abhängt.

Dieser Fehler tritt in Version 2.6.1-0 des Pakets auf. Ich verwende Debian Lenny auf amd64.

Im Detail:
Das postinst-Skript "/var/lib/dpkg/info/lx-office-erp.postinst" ruft das Skript "/usr/lib/lx-office-erp/scripts/inst_postgres_deb.sh" auf. Letzteres verwendet (ohne Fehlerprüfung) das Programm "locate" zum Auffinden von "plpgsql.so".

Dieser Aufruf von "locate" kann (aus meiner Sicht) unter jeder einzelnen der folgenden Bedingungen scheitern:
1) "locate" ist nicht installiert (diese unbedingte Abhängigkeit fehlt in der Paketbeschreibung von "lx-office-erp")
2) die locate-Datenbank wurde noch nicht erstellt (z.B. bei einer frischen System-Installation)
3) Postgresql wurde _nach_ dem letzten Lauf des "updatedb"-Cronjobs (für "locate") installiert und wird somit nicht gefunden

In meinem Fall war die System-Installation erst wenige Stunden alt, so dass der morgendliche Cronjob, der für die Befüllung der "locate"-Datenbank sorgt, nocht nicht anlief.

Problembehebung: vor dem Aufruf von "locate" sollte die Existenz des Programms geprüft werden (z.B. per "which"). Ausserdem muss der Exit-Code von "locate" geprüft werden, um eine fehlende locate-Datenbank (siehe Punkt (2) oben) korrekt zu behandeln. Letzteres lässt sich trivial reproduzieren, indem die Datenbank unter "/var/lib/mlocate/mlocate.db" gelöscht wird.

Nebenbei: die "while"-Schleife in Zeile 47 des Skripts scheint eine Endlosschleife zu sein, falls die Bibliothek bis dahin nicht gefunden wurde.

weiterhin frohes Schaffen!
Lars

Änderungshistorie (2)

comment:1 Geändert vor 2 Jahren durch m.bunkus@…

  • Typ von defect nach Fehler geändert

comment:2 Geändert vor 2 Jahren durch m.bunkus@…

  • Lösung auf wird-nicht-behoben gesetzt
  • Status von new nach closed geändert

Beim heutigen Bugsprint wurde entschieden, dass es keinerlei offizielle Pakete mehr geben wird. Weder für Debian/Ubuntu?, noch für andere Distributionen.

Hinweis: Hilfe zur Verwendung von Tickets finden Sie in TracTickets.