Odoo 20 Access Rights: Migrating to ir.access
Odoo 20 removes record rules and merges them into access rights with domains. What changed, how to migrate ir.model.access.csv and ir.rule, and what to test.
Leistung · Betrieb und Optimierung
Überblick
Langsamkeit hat fast immer eine konkrete Ursache: ein eigenes berechnetes Feld, das bei jedem Lesen neu berechnet wird, ein Bericht, der in Python über eine Million Datensätze läuft, ein fehlender Index, zu wenige Worker-Prozesse oder eine Schnittstelle, die die Datenbank zu Spitzenzeiten belastet. Wir finden sie durch Messen.
01Das Problem
Listen und Formulare werden mit wachsenden Daten langsamer, besonders solche mit Zusatzfeldern.
Monatsabschlussberichte laufen minutenlang oder brechen ganz ab.
MRP-, Rechnungs- oder Synchronisationsläufe laufen noch, wenn die Frühschicht beginnt.
Größere Server gekauft, ohne den Engpass zu verstehen – mit wenig Verbesserung.
02Unser Ansatz
Zuerst definieren wir „langsam“ in Zahlen: welche Masken, Berichte und Jobs, wie lange sie dauern und was akzeptabel wäre. Dann profilieren wir – Anwendungs-Traces, Abfrageanalyse und Infrastrukturmetriken –, bis der Engpass belegt ist.
Korrekturen werden nach Wirkung priorisiert. Oft bringen wenige Änderungen – ein berechnetes Feld neu schreiben, zwei Indizes ergänzen, eine Schnittstelle in Stapel außerhalb der Spitzenzeiten verlegen – den Großteil der Verbesserung. Jede Änderung wird vorher und nachher gemessen.
03Leistungsumfang
Langsame Anfragen bis zu den verantwortlichen Codepfaden zurückverfolgen.
Langsames SQL analysieren, Indizes ergänzen und teure Abfragen umschreiben.
Zeilenweise Schleifen durch Stapelverarbeitung und gespeicherte Felder ersetzen.
Anwendungs-Worker, Speichergrenzen und Caching passend zu Ihrer Last konfigurieren.
CPU, Arbeitsspeicher und Storage am gemessenen Bedarf ausrichten.
Schwere Synchronisationen aus den Spitzenzeiten verlegen und häufige Updates bündeln.
04Technische Aspekte
Tests auf einer Kopie in Produktionsgröße, denn Performanceprobleme zeigen sich selten bei kleinen Datenmengen.
Tabellen-Bloat, Vacuum-Status, Verbindungsgrenzen und Sperrkonflikte geprüft.
Erkennen von Code, der pro Datensatz statt pro Stapel eine Abfrage absetzt.
Zeitmessungen kritischer Abläufe in die Testsuite aufgenommen, um künftige Verlangsamungen zu verhindern.
05Vorgehen
Referenzzeiten für die Abläufe, die zählen.
Engpässe mit Traces, Abfrageplänen und Metriken identifizieren.
Gezielte Änderungen in Prioritätsreihenfolge.
Vorher-nachher-Messungen und Regressions-Benchmarks.
06Ergebnisse
Gängige Vorgänge sind wieder in Sekunden erledigt.
Nachtläufe sind lange vor Arbeitsbeginn fertig.
Infrastruktur nach Belegen statt nach Gefühl dimensioniert.
Wo es zum Einsatz kommt
Verwandte Leistungen
Fachbeiträge
Odoo 20 removes record rules and merges them into access rights with domains. What changed, how to migrate ir.model.access.csv and ir.rule, and what to test.
When custom ERP development makes sense, when off-the-shelf ERP is the better choice, and why a hybrid — standard core plus custom domain app — is often the answer.
What Odoo Studio does well, where it creates trouble, and when to switch to custom module development. A practical decision guide with examples.
FAQ
Manchmal, aber selten allein. Die meiste ERP-Langsamkeit kommt von bestimmtem Code, Abfragen oder Einstellungen. Wer zuerst misst, gibt kein Geld für Hardware aus, die die Ursache nicht trifft.
Eine erste Diagnose dauert je nach Systemgröße und Zugang meist ein bis drei Wochen. Die Korrekturen werden dann nach Wirkung eingeplant.
Die Infrastruktur kontrolliert der Anbieter, aber Eigencode, Berichte, Schnittstellen und Konfiguration erklären die Langsamkeit oft – und lassen sich beheben.
Nächster Schritt
Schicken Sie uns die drei langsamsten Dinge, über die Ihr Team klagt. Wir sagen Ihnen, wo zuerst zu suchen ist.