Hallo zusammen,
ich habe ein Problem bei einem Businessobjekt mit zwei Unterformularen (alle 3 Objekte haben ein Statusmodell). Dadurch, dass die Unterformulare relativ viele Daten haben (ca. 400.000 und 1.200.000) ist das übergeordnete Businessobjekt kaum noch zu bedienen. Eine Suche ohne Suchparameter dauert sehr lange, sortieren der Liste führt zu einem Java-Heap-Error (bis 6 GB Heap-size ausprobiert). Scrollen führt im besten Fall zu einer langen Wartezeit, schlimmstenfalls zu einer NullPointer-Exception.
Über den SQL-Trace habe ich herausgefunden, dass bei jeder Suche auch alle Daten aus den Unterformularen gelesen werden – unabhängig davon, ob Spalten daraus angezeigt werden sollen oder nicht. Und das schlägt dann bei 1,6 Mio Datensätzen vermutlich zu extrem auf die Performance.
Ich habe die beiden Unterformulare entfernt, und die Probleme waren ebenfalls weg. Leider ist dadurch die Bearbeitung umständlicher geworden, da ich nun in 3 verschiedenen Layouts/BOs arbeiten muss, anstatt alles in einem Layout machen zu können.
Gibt es eine Möglichkeit, die Performance-Probleme in den Griff zu kriegen und trotzdem die Unterformulare zu nutzen?
Bin für alle Ideen dankbar.
Besten Dank,
kreutho