SKOOR Webservice Changelog

8.1.0

  • Verwendet Paginierung beim Abrufen von Daten von CashPilot
  • Bietet einen Endpunkt zur automatischen Übersetzung mit DeepL. Um diese Funktion zu aktivieren, muss ein DeepL API-Schlüssel in /etc/opt/eranger/eranger-webservice.cfg unter Verwendung der Eigenschaft i18n.deeplApiKey angegeben werden.

8.0.10

  • Behebt einen Fehler, der /alarmrecipients zum Scheitern bringt.

8.0.9

  • Datenabfragen
    • Behebt einen Fehler, der dazu führt, dass die Spalten von Datenabfragen nicht sofort nach der Veröffentlichung aktualisiert werden.
    • Behebt einen Fehler, der manchmal dazu führt, dass Datenabfragen fehlschlagen, wenn eine Datenquelle oder Datenabfrage mehrfach referenziert wird.
  • Datenquelle
    • Ermöglicht das Filtern von Daten mit einem einzigen Platzhalter %
    • Behebt einen Fehler, der dazu führt, dass Scopes nicht richtig funktionieren.

8.0.8

  • Datenabfragen
    • Behebt einen Fehler, der das Löschen von mehreren Datenabfragegruppen in einer Reihe verhindert.
    • Ermöglicht den Export von Datenabfragen, die auf Datenquellenbereiche mit gelöschten Benutzern verweisen.
    • Behebt einen Fehler, der die Auswahl der Datenquelle beim Erstellen von Datenabfragen unterbricht.

8.0.7

  • Datenquellen
    • Entfernt das Passwort beim Exportieren einer Liste von Datenquellen.

8.0.6

  • Datenquellen
    • Bessere Fehlerbehandlung beim Importieren aus XLSX-Dateien
  • Behebt einen Fehler, der dazu führt, dass die Migration von Legacy-Konfigurationen fehlschlägt, wenn von Version 7.2.x statt 7.3.x aktualisiert wird.

8.0.5

  • Unterstützt arabischen Text in der Fußzeile von PDF-Berichten.
  • Fügt CashPilot-Datenquelle hinzu.
  • Erlaubt gemeinsame Tabellenausdrücke (WITH-Abfragen) in Datenabfragen.

8.0.4

  • Behebt einen Fehler, der dazu führt, dass Legacy-Konfigurationen bei mehreren Tenants nicht korrekt konvertiert werden.

8.0.3

  • Behebt fehlerhafte Config-DB-Verbindungen im Falle von mehreren Mandanten.

8.0.2

  • Datenquellen
    • Bessere Fehlermeldungen beim Importieren von Daten aus XLS/XLSX-Dateien.

8.0.1

  • Datenquellen
    • Verwendet RFC4180-konforme CSV-Parser beim Parsen von Importdaten.
  • Behebt einen Fehler, der dazu führt, dass Konfigurationen mit mehreren Mandanten nicht richtig funktionieren, wenn es keinen Standardmandanten gibt.

8.0.0

  • Fügt dataSources/{id}/tables/{table}/distinctValues und dataSources/{id}/tables/{table}/distinctValueshinzu, die es ermöglichen, unterschiedliche Werte für Spaltenkombinationen zu erhalten.
  • Behebt einen Fehler, der die Sortierung in der Datenquellenvorschau unterbricht, wenn nach einer Spalte mit doppelten Werten sortiert wird.
  • Verschiebt die Konfiguration vom Dateisystem in die Datenbank. Dies beinhaltet (Dateien, Stile, Übersetzungen, Datenquellen, Datenabfragen)
  • Datenabfragen
    • Verbessert die Umbenennung von Datenabfragen. Durch die Umbenennung einer Datenabfrage wird ihr Name auch in den abhängigen Abfragen geändert.
    • Verbessert Export/Import von DataQueries.
    • Optimiert die Zwischenspeicherung von DataQueries.
  • Aktualisiert auf Spring Boot 3.3.0.
  • Aktualisiert auf Java 21.0.3.
  • Fügt neue Aggregatfunktion 'distinct_count' hinzu
  • GIS-Steuerung: Geografisches Informationssystem
    • Fügt /dataQuery/{id}/cluster hinzu, das die Unterstützung für Weltkarten mit Datenabfragen hinzufügt.
    • Fügt gis/cluster hinzu, das Unterstützung für Geo-Links in Weltkarten bietet.
    • Filtert leere Adressen vor der Geokodierung.

7.3.21

  • Behebt einen Fehler, der auf einigen Systemen beim Exportieren einer Datenquellentabelle die Fehlermeldung "No mime type found for *.csv" verursacht.

7.3.20

  • Behebt den Import von Datenquellen-Tabellendaten.

7.3.19

  • Behebt einen Fehler, der manchmal dazu führt, dass Selects fehlschlagen, wenn die Abfrage ein leeres Argument enthält.

7.3.18

  • Der Cache für dynamische Datenabfragen wird beim Neustart des Webdienstes nicht mehr verworfen.

7.3.17

  • Behebt einen Fehler, der Tabellenanmerkungen zerstört.
  • Führt mehr Caching durch, um Datenabfragen noch schneller zu machen.

7.3.16

  • Behebt einen Fehler, der auftritt, wenn eine Unterdatenabfrage mehrfach auf verschiedenen Ebenen referenziert wird.

7.3.15

  • Noch mehr Korrekturen zur Verbesserung der Datenabfrageleistung.

7.3.14

  • Verschiedene Korrekturen zur Verbesserung der Leistung von Datenabfragen.

7.3.13

  • Optimiert die Zwischenspeicherung von statischen SKOOR Dashboard-Assets.
  • Behebt einen Fehler, der das Zwischenspeichern von API-Aufrufen verhindert.

7.3.12

  • Erhöht die Leistung von Endpunkten mit unterschiedlichen Werten.
  • Vermeidet, dass materialisierte Datenabfragen mit sehr großen Ergebnismengen den gesamten Webservice blockieren.

7.3.11

  • Verwendet die neue Tabelle stablenet_permission_hash von StableNet FDW. Dies ermöglicht eine hohe Optimierung von materialisierten Datenabfragen und Caching im Allgemeinen.

7.3.10

  • Wiederverwendung von Java-HTTP-Client-Instanzen.
  • StableNet Auth Token werden nach Selects nicht mehr ungültig gemacht, da dies nun automatisch von SKOOR Auth durchgeführt wird. Dies spart einen Roundtrip zum SKOOR Auth Service.
  • Versuchen Sie nicht, unprotokollierte Tabellen für materialisierte Datenabfragen auf MySQL-Backends zu verwenden.

7.3.9

  • Zwischenspeichern einiger Metadaten von Datenbanktabellen, um den Datenbankzugriff zu reduzieren.

7.3.8

  • Reduziert die Anzahl der gleichzeitig aufgefrischten materialisierten Datenabfragen auf 10.

7.3.7

  • Der Cache-Refresher für Datenabfragen verwirft keine zwischengespeicherten Daten mehr, wenn die Aktualisierung der StableNet-Authentifizierungstoken vorübergehend fehlschlägt.

7.3.6

  • Das Limit für den dynamischen Datenabfrage-Cache wird von 100'000 auf 10'000 Zeilen gesenkt. Dies sollte die Schreibvorgänge auf der Festplatte für nicht materialisierte Datenabfragen reduzieren.

7.3.5

  • Ersetzt das veraltete server.tomcat.max-threads durch server.tomcat.threads.max.

7.3.4

  • Erhöht die Anzahl der gleichzeitigen Verbindungen zum SKOOR Engine Server.

7.3.3

  • Behebt einen Fehler, der verhindert, dass eine Datenabfrage unter Verwendung von materialisierten Daten ausgeführt wird.
  • Passt die Zeitlimits für die Aktualisierung von materialisierten Datenabfragen basierend auf dem Aktualisierungsintervall an.
    • keine: 600s
    • täglich: 600s
    • stündlich: 60s
    • minütlich: 10s
  • Begrenzt die maximale Zeilenzahl der materialisierten Datenabfrage basierend auf dem Aktualisierungsintervall.
    • keine: 10'000'000
    • täglich: 10'000'000
    • stündlich: 1'000'000
    • minütlich: 100'000

7.3.2

  • Behebt einen Fehler, der den Export von Tabellen aus Datenquellen verhindert.

7.3.1

  • Erhöht die maximale Anzahl der Spring Boot Threads auf 400.
  • Optimiert die Gleichzeitigkeit beim Aktualisieren von materialisierten Datenabfragen.

7.3.0

  • Fügt den StableNet-Datenquellentyp hinzu, der den StableNet Foreign Data Wrapper verwendet.
  • Behebt einen Fehler, der eine Nichtübereinstimmung zwischen Engine-Werten und Wertdefinitionen verursacht.
  • Behebt einen Fehler, der eine sehr schlechte Datenbankleistung bei großen Datensätzen verursacht, wenn nach Integer-Werten gefiltert wird.
  • Verschiedene andere Leistungsoptimierungen für große Datensätze.
  • Neue Export-/Import-Endpunkte für Dashboards und Datenabfragen.

7.2.15

  • Behebt den Datenimport von XLS(X)-Dateien aus Datenquellen, bei denen in einigen Zeilen die nachgestellten Zellen fehlen.

7.2.14

  • Behebt einen Fehler, der dazu führt, dass PUT /{parentType}/{parentId}/children fehlschlägt, wenn das übergeordnete Element ein SLC ist.

7.2.13

  • Erhöht den prozessinternen Datenbankverbindungspool von 8 auf 30, um mehr parallele Anfragen zu ermöglichen.

7.2.12

  • Verbessert das Timeout-Verhalten bei MySQL-Datenquellen.

7.2.11

  • Genauere Funktion zur Schätzung von Ergebniszeilen für Datenquellen und Datenabfragen.
  • Unterstützt Datumstrunkierungsfunktionen wie month() und day() auch bei MySQL.

7.2.10

  • Behebt Probleme mit Zeitzonen und Sommerzeit bei MySQL-Verbindungen.
  • Bietet ISO-8601-formatierte Zeiten in der Zeitzone des Webservice anstelle von UTC (z.B. 2023-01-02T08:00:00+01:00 anstelle von 2023-01-02T07:00:00Z). Dies ist viel einfacher zu lesen, wenn man mit dem Webservice arbeitet und sollte keine Auswirkungen auf bestehende Clients haben, da diese immer den Offset berücksichtigen.

7.2.9

  • Schätzt auch die Zeilenzahl in MySQL, um die Abfrageleistung zu verbessern.

7.2.8

  • Korrekte Handhabung der JSON Operatoren ?, ?| und ?& in Datenabfragen.

7.2.7

  • Korrigiert die Handhabung von zonierten Datum-Zeit-Parametern.

7.2.6

  • Behebt einen Fehler, der PDF-Berichte, die Sonderzeichen in den Fußzeilenfeldern enthalten, beschädigt.

7.2.5

  • Behebt eine fehlerhafte Positionsmarkierung, wenn die Datenabfrage Fehler enthält.

7.2.4

  • Behebt ein Deadlock, wenn auf eine langsame Datenabfrage mehrfach parallel zugegriffen wird.

7.2.3

  • Begrenzt Spalten in der Datenquelle /columns auf das aktuelle Schema.
  • Behebt das Laden von Datenquellenumfängen.

7.2.2

  • Behebt einen Fehler, der Anfragen an Datenquellen und Datenabfragen unterbricht, die Anführungszeichen in Suchabfragewerten enthalten.
  • Behebt Datenabfragen auf Datenbanken, die das Erstellen des Cache-Schemas nicht zulassen.

7.2.1

  • Lauscht auf alle IPv4- und IPv6-Adressen statt nur auf IPv4.

7.2.0

  • Ermöglicht die Änderung von Tabellenschemata von Datenquellen
  • Erlaubt die Änderung der Daten von Datenquellen
  • Implementiert Annotationen
  • Ändert die Darstellung der aktiven Aufwertungszeit, so dass begin nur noch die lokale Zeitkomponente anstelle eines vollständigen ISO-8601-Strings enthält.
  • Aktualisierungsintervall für materialisierte Datenabfragen.

7.1.3

  • Behebt einen Fehler, der dazu führt, dass /{type}/{id}/children Abfragen fehlschlagen, wenn ein Objekt Alarmrecepients enthält.

7.1.2

  • Datenquellen
    • Behebt die Schätzung der Zeilenzahl bei Abfragen, die IN()-Bedingungen enthalten.

7.1.1

  • Skript Datenquelle
    • Behebt einen Fehler, der einen Fehler verursacht, wenn der Offset größer ist als die Anzahl der zurückgegebenen Zeilen.

7.1.0

  • Ablehnung von Werten, die /webcollector zur Verfügung gestellt werden und zu weit in der Zukunft liegen
  • Schätzt die Anzahl der aus PostgreSQL-Datenbanken geholten Zeilen, anstatt sie zu berechnen, wenn die Anzahl der geholten Zeilen größer als 1'000'000 ist. Dies erhöht die Abfrageleistung bei großen Datensätzen massiv.
  • Behebt einen Fehler, der dazu führt, dass das Abrufen von Job-Nachrichten fehlschlägt, wenn ein Objekt nicht auf einem Kollektor eingeplant ist.

7.0.7

  • Datenabfragen
    • Behebt ein Deadlock beim Aktualisieren von verschachtelten Datenabfragen.
    • Behebt einen Fehler, der dazu führt, dass die Abhängigkeitsauflösung die gleiche Abhängigkeit mehrfach findet.

7.0.6

  • Bietet defaultParams in /dashboards/groups/nested Anfrage

7.0.5

  • Behebt einen Fehler, der dazu führt, dass eine select -Anfrage für eine Skript-Datenquelle abstürzt, wenn keine offset - und limit -Parameter angegeben werden.
  • Behebt das Parsen von Datenabfragen, die with

7.0.4

  • Baum Diagramm
    • Behebt die Behandlung von tree Anfragen mit leeren Objekten.

7.0.3

  • PDF-Berichte
    • Behebt auch den Seitenumbruch für Tabellen

7.0.2

  • PDF-Berichte
    • Behebt den Seitenumbruch
    • Behebt doppelte Tabellenüberschriften

7.0.1

  • Ermöglicht den Export einzelner Datenabfragen
  • Behebt einen Fehler, der manchmal verhinderte, dass bereits materialisierte Datenabfragen beim Neustart des Dienstes erkannt wurden.

7.0.0

  • Verbessert Datenabfragen
    • Ermöglicht die Materialisierung von Datenabfragen ähnlich wie bei materialisierten Ansichten.
    • Entfernen von Semver-Versionen zugunsten von einfachen Datumsangaben.
    • Verbessert die Erkennung von Referenzen.
    • Erzwingt auch in dmvn testata Abfragen die Berechtigungen der Datenquelle.
    • Zwischenspeichern von Datenabfrageergebnissen für bessere Leistung.
  • Poolen von PDF-Berichtsrasterern zur Verbesserung der Leistung.
  • Aktualisiert den MySQL JDBC-Anschluss. Benötigt MySQL >= 8.
  • Fügt InventoryController hinzu, der optimierte Endpunkte für das SKOOR Dashboard Baum Diagramm Widget bereitstellt

6.4.3

  • Wartungen Release zur Einarbeitung der Änderungen aus 6.3.4.

6.4.2

  • Unterstützt den PostgreSQL citext Typ und (mehr) andere spezielle Typen.

6.4.1

  • /files Der Endpunkt setzt nun den Mime-Type von unbekannten Dateien auf application/octet-stream anstatt null zurückzugeben.

6.4.0

  • Ermöglicht das Löschen von Dateien mit DELETE /files/filename.extension
  • Erhöht die maximale Upload-Dateigröße von 1 MB auf 10 MB

6.3.4

  • Stellt sicher, dass PostgreSQL-Verbindungen immer den externen Verbindungspooler verwenden.

6.3.3

  • Stellt sicher, dass der aktuelle Benutzer volle Berechtigungen auf eine neu erstellte Dashboard-Gruppe hat.

6.3.2

  • Beschleunigt den Start des Webservice, indem Migrationen nur einmal während der Aktualisierung ausgelöst werden.

6.3.0

  • Erlaubt Operatoren wie AND(), OR() bei der Textsuche in Datenquellen
  • Sortiert die Gründe auf natürliche Weise, wenn die Herkunft ermittelt wird (Drilldown)

6.2.5

  • Korrigiert die Erstellung von Dashboard-Gruppen

6.2.4

  • Normalisiert die Dashboard-Berechtigungen
    • Macht das Stammverzeichnis "Dashboards" für jeden lesbar
    • Fügt "Deny Any" zur Stammgruppe "Dashboards" für referenzierte Objekte hinzu
    • Entfernt "Deny"-Regeln von allen Dashboard-Objekten

6.2.3

  • Erzwingt Init-Berechtigungen von Dashboards für das übergeordnete Objekt

6.2.2

  • Behebt den Abruf von Dashboards, wenn ein Benutzer in eine andere Gruppe verschoben wird oder seine Rolle ändert.

6.2.1

  • Behebt die Migration von Kopfkacheln im Fall von nur einer rechten Kopfkachel.

6.2.0

  • Neue Endpunkte für Dashboard-Berechtigungen

6.1.4

  • Fixes Data Queries mit Aggregatfunktionen ohne Alias (z.B. count(*), sum(foo), ...)

6.1.3

  • Führt Dashboard-Migrationen einmal pro Tenant durch, statt nur einmal global.

6.1.2

  • Datenabfragen
    • Behebt Datenabfragen, die einen gelöschten Benutzer als Autor haben.
    • Behebt Datenabfragen mit Null-Abfragezeichenfolgen

6.1.1

  • Datenabfragen
    • Verwendet keine Commont Tabelle Expressions auf MySQL, da alte Versionen von MySQL diese nicht unterstützen. Wahrscheinlich wird es eine Erkennung für dieses Feature in einer späteren Webservice Version geben.

6.1.0

  • Datenabfragen
    • Verwendet Common Tabelle Expressions (WITH-Abfragen) für Unterabfragen anstelle von verschachtelten Unterabfragen. Es ist nicht mehr notwendig, einen Alias zu einer Unterabfrage hinzuzufügen.
    • Entfernt Kommentare vor der Verarbeitung von Unterabfragen und Parametern.
    • Misst die Ausführungszeit der Abfrage und die Dauer der Rückgabe
    • Erlaubt Standardwerte für Parameter und vereinfacht die Parametersyntax (kein "params." mehr)
  • Datenabfragen / Datenquellen
    • Unter-Aggregate
  • Styles-Endpunkt für die Speicherung benutzerdefinierter CSS-Stile
  • Gibt Kinder im Grundaufruf zurück

6.0.5

  • Korrekturen beim Lesen der Konfiguration aus Umgebungsvariablen

6.0.4

  • Datenabfragen
    • Entfernt Pinning-Logik
    • Löscht Gruppen immer rekursiv
    • Vereinfacht und korrigiert Export/Import

6.0.3

  • Gibt einen 404 statt 500 HTTP-Statuscode zurück, wenn das Dashboard ungültig ist

6.0.2

  • Ermöglicht das Speichern von ungültigen Datenabfragen. Gibt stattdessen Fehler zurück, wenn Datenabfragen abgerufen werden
  • Fügt keine Versionsmarkierungen mehr hinzu, wenn Datenabfragen veröffentlicht werden
  • Behebt die Erkennung von zirkulären Referenzen für Unterdatenabfragen

6.0.1

  • Einzelne Anfrage für Dashboards einschließlich ihrer Kinder (/dashboards/{id}/nested)

6.0.0

  • Konfig aus ENV
  • Ermöglicht die Einstellung des Darkmode für den Benutzer
  • Viele Änderungen beim Abrufen von Dashboards
  • Entfernt einige Dinge, die jetzt von SKOOR Auth erledigt werden
  • Verwendet den Verbindungspool von PGPool-II, falls verfügbar