Wichtig
Detail
Wichtig
Detail
#25612
Modell Editor zeigt bei Änderungen von Referenzen Verknüpfungsenden in der Attributtabelle an
#26382
Fehlermeldungen "Duplicate tag name..." beim Starten einer Anwendung in der IDE aus einem TL-Studio
#26402
Modell Editor: Diagramm: Fehler beim Ziehen einer Klasse aus einem anderen Modul ins eigene Arbeitsblatt
#26405
TTypeRewriter loggt Warnung "Unable to resolve items by external reference" auch unnötigerweise
#26431
Geänderte Oberklassenbeziehung führt erst nach Neustart zu geänderter Attributliste im Formulareditor
#26446
Generische Formulare: Sichtbarkeitsanpassungen überschriebener Attribute werden nicht berücksichtigt.
#26484
In-App Template für Grid und Tabellen: Funktion "Prüfer für Benutzung als Listenelement" bekommt Komponentenmodell nicht
#26536
Beim HTML-Rendern von TLScript-Expressions werden konfigurierte Renderer nicht berücksichtigt
#26569
Fehlende Constraint-Violation beim Löschen von Objekten die von Pflichtfeldern referenziert werden
#26663
TreeGridComponent: Selektion wird nach Verwerfen einer transienten Zeile nicht zurück gesetzt
#26797
Transaktion mit Nutzereingabe: Unsichtbare Eigenschaften des Formularmodells können nicht mit Werten belegt (initialisiert) werden
#26827
Keine Fehlermeldung beim Zugriff auf Fremdschlüsselreferenzen, wenn Fremdschlüssel nicht aufgelöst werden kann
#26884
Deklarative Formulare: Fehlendes GUI update bei programmatischen Änderungen eines List-wertigen Property
#26885
Constraints an deklarativen Formularen mit Argumenten aus einer Container-Referenz führen bei neuen Elementen zu Fehlern
#26890
Überschriebene Eigenschaften werden beim Booten aus Modelldefinition nicht richtig initialisiert
#26921
ClassCastException bei der Auswertung von Security-Regeln, die sich auf (Nicht-StructuredElement-)Singletons eines Moduls beziehen
#26922
Mit generierten Fachklassen erhält ein Default-Provider eines Attributs in einer Nicht-Struktur-Klasse keinen Create-Context
#26988
In-App-Dokumentations-Generator extrahiert keine Dokumentation für überschriebene Config-Properties
#27027
Deklarative Formulare: SelectField verschwindet nach Upload, wenn Optionsliste von mandatory Property abhängig ist
#27090
TreeTableComponent soll initial die erste sichtbare Zeile selektieren, wenn initial eine Zeile selektiert werden soll
Verbesserung
Bei der Verwendung von TL-Sync mit großen Datenmengen ist aufgefallen, dass das teilweise sehr langsam ist und wahrscheinlich deutlich optimiert werden kann.
Mit "großen Datenmengen" sind Changesets mit etwa einer Million Änderungen gemeint.
Verbesserung
Das Versenden wurde optimiert. Für ein Changeset mit 1 800 000 Änderungen wurden vorher 6 Stunden benötigt. Nach der Optimierung nur noch 2,5 Minuten. Das ist vollkommen ausreichend. Im Detail wurden folgende Optimierungen ausgeführt:
- Es wurde eine quadratische Komplexität beim Rausfiltern nicht zu versendender Änderungen entfernt.
- Ticket #27057: Es wird nicht mehr pro Objekt eine Datenbank Anfrage gestellt.
- Ticket #27063: Es wird nicht mehr pro Objekt ClassLoader.loadClass(String) aufgerufen.
- Der tl:KBDataProducerTask loggt bei Fehlern, ob Fortschritt erzielt wurde.
Test
Kein automatischer Test. Manuell kann es im Kafka Demo mit einigem Aufwand getestet werden:
- Kafka Demo umkonfigurieren, damit es MySQL nutzt.
- H2 scheint ab etwa einer Million Objekten extreme Performance Probleme zu verursachen.
- Kafka Demo starten.
- Den tl:KBDataProducerTask in der SchedulerGui deaktivieren.
- Mittels des Knopfes "Viele Objekte anlegen" ein großes Changeset erzeugen.
- Die Anwendung neustarten, um sämtliche tl:KnowledgeBase Caches zu leeren.
- Den obigen Task reaktivieren.
- Messen, wie lange der Task benötigt um die Objekte zu übertragen.