Administration changelog
This page shows changes that are contained in the releases of the individual versions and are explicitly relevant for administrators. Administrators are persons who carry out updates to the BPC and perform administrative configuration in the BPC.
For a list of all changes, see Changelog.
BPC 5.0.2
Release date: 2026-01-15
The following components must be updated with this update: BPC modules | Karaf
Improvements
-
Unser Karaf startet über 10mal langsamer als ein Vanilla Karaf BPC-9395
Affects: Karaf |
BPC 5.0.1
Release date: 2025-11-24
The following components must be updated with this update: BPC modules
Breaking Changes
|
You should read the descriptions in this section carefully. It may contain instructions that you must follow for an update. |
-
HttpProxy fügt an BaseUrl / an BPC-8832
Check and, if necessary, adjust the HTTP proxy configurations. Up to now, a '/' was always appended to the configured connection URL. This is no longer the case. If your HTTP proxy target requires this and the URL is currently configured without a '/' at the end, please adjust it accordingly.
Affects: BPC Core |
Improvements
-
Unterstützung von OIDC Login mit aktiviertem PKCE BPC-8198
BPC now supports PKCE (Proof Key for Code Exchange) for OpenID Connect and Keycloak Identity Provider to enable a hardened login flow. To activate this, you need to set the PKCE method in the Identity Provider backend connection and, if necessary, configure this in your Keycloak client.
Affects: BPC Core | Dokumentation |
-
Reindizieren hinterlässt keine alten Indices BPC-10192
When reindexing, the old index is deleted instead of being closed as before. The user is offered the option to create a backup before reindexing.
Affects: BPC Core | Dokumentation |
-
Beim deinstallieren von Bundles kommt es zu Exceptions BPC-10228
Affects: BPC Core |
Security
-
mssql-jdbc:12.6.1 | CVE-2025-59250 BPC-10266
The driver provided via pax-jdbc-mssql is no longer delivered.
Please ensure that the MSSQL driver used has at least one of the following versions: 10.2.4, 11.2.4, 12.2.1, 12.6.5, 12.8.2, 12.10.2, 13.2.1
If an older driver is being used, it should be replaced. Remove the old driver by deleting it from the deploy directory or by uninstalling pax-jdbc-mssql or the driver itself. Then install a current driver (without the pax-jdbc-mssql feature). See also: Databases
Affects: Dokumentation | Karaf |
Bugs
-
HttpProxy fügt an BaseUrl / an BPC-8832
Check and, if necessary, adjust the HTTP proxy configurations. Up to now, a '/' was always appended to the configured connection URL. This is no longer the case. If your HTTP proxy target requires this and the URL is currently configured without a '/' at the end, please adjust it accordingly.
Affects: BPC Core |
-
Error during index migration BPC-8989
If an error occurs during the migration of an index, the newly created index for the migration will be removed again in order to avoid subsequent errors or to revert to a stable state.
Affects: BPC Core |
BPC 5.0.0
Release date: 2025-10-24
The following components must be updated with this update: BPC modules | Karaf | OpenSearch | Java
|
Update of the internal configuration In this version there have been changes to the internal configuration of the BPC. This affects deployments between BPCs with different versions. Additional steps are also required when downgrading the BPC. Further information can be found on the page Versioning of the internal BPC configuration. |
Breaking Changes
|
You should read the descriptions in this section carefully. It may contain instructions that you must follow for an update. |
-
Restriction of SSH access BPC-8253
By default, the accessibility of Karaf via SSH connections is now restricted to the host
localhost. To enable accessibility via external connections, use the central configuration file. See Karaf SSH Access.Affects: Dokumentation | Karaf |
-
OpenSearch access only via de.virtimo.bpc.core.opensearch.hosts BPC-9246
Connections to OpenSearch are now configured exclusively via
de.virtimo.bpc.core.opensearch.hosts. When updating from an older version, you must add the entryde.virtimo.bpc.core.opensearch.hoststo the configuration filekaraf/etc/de.virtimo.bpc.core.cfg. Additionally, it is recommended to supplement the central configuration file with the linesexport DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT=$(($PORT_OFFSET + 9200)) export DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_HOSTS="https://localhost:$DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT [https://localhost:$DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT]"or
SET /a DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT=%PORT_OFFSET% + 9200 SET DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_HOSTS=https://localhost:%DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT% [https://localhost:%DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT%](as shown here with the example https://localhost:9200) [https://localhost:9200)]. You can use the files from the download file server as a reference.
Affects: BPC Core | Dokumentation |
-
Java JDK 21 BPC-9312
The use of Java 21 is now necessary.
Affects:
-
Adjustment of metrics BPC-9440
These metrics have been renamed:
-
bpc_es_bpc_plugin_status_websocket → bpc_os_bpc_plugin_status_websocket
-
bpc_es_bpc_plugin_status_plugin → bpc_os_bpc_plugin_status_plugin
Affects: BPC Core | Dokumentation |
-
-
Support for INUBIT Identity Provider removed BPC-9482
INUBIT is no longer supported as an Identity Provider.
Affects: BPC Core | Dokumentation |
-
Aufsplittung der Identity Provider-Konfiguration aus JSON in separate Settings BPC-9515
For the Identity Provider (Backend Connections), a large part was previously configured via a JSON setting. This has been split into individual settings. Existing configurations are migrated automatically. If older deployment exports of Identity Provider components are used, it is best to recreate them.
Affects: BPC Core | Dokumentation |
-
Status API: status/server/{serverUUID} removed BPC-9654
The endpoint
/cxf/bpc-core/status/server/{serverUUID}of the status API, which queried the status of a remote BPC, has been removed.Affects: BPC Core | Dokumentation |
-
Harmonization of interfaces for various monitor functions BPC-9770
The query string parameters
gridId,gridExtId,multiRecords,buttonIdand the form parametertablePrefixhave been removed from the process action requests. To send additional context or configuration information, "process action metadata" can be configured in the monitor settings.In process starters, the XML that was sent has been replaced by JSON. As a result,
portletArchiveName,operation,mandant,gridID,key,bpcModule,bpcModuleInstanceIdandcustomhave been removed.keyhas been uniformly renamed toid. Additional context or configuration information can be reliably sent via the "metadata" configuration in the process starter configuration in the monitor settings. The process parameters are bundled under config.parameters in the request payload. File uploads containfilename,typeanddata. Grids contain a list of their records.In Change State,
tablePrefix,mandantandchangeStatusBox_<column name>have been removed.commandhas been uniformly renamed totypeand receives the value "statusChange".columnsstringhas been renamed tocolumn.newStatusCombo_<column name>has been renamed tonewStatus.commentfieldhas been renamed tocomment.childStatusis no longer set to "Info" by default in the Change State configuration and, if configured, is migrated to metadata. Additional information can be passed in the "metadata" object in the Change State configuration.The unused settings
inubit_aperakEndPoint,inubit_dbGridIdandinubit_pmMandanthave been removed. The settingsinubit_actionEndpoint,inubit_changeStateEndpointandinubit_VpsEndpointhave been replaced byactionEndpointProcessor,changeStateEndpointProcessorandvpsEndpointProcessor.Affects: BPC Core | Process Monitoring | Dokumentation |
-
Restricted forwarding of session information BPC-9925
HTTP proxy backend connections and flow connections now always filter the session cookie so that a recipient cannot make calls in the BPC in the context of the user. The setting filterSessionCookie is therefore no longer required. Instead, with the new setting sendSessionId, it is possible to send the user’s session ID, which can be verified at the endpoint GET /cxf/bpc-core/authentication/session/{sessionid}. When the injectUserSessionJWT setting is enabled, a self-created JWT is no longer sent, but rather the signed ID token from the OpenID Connect provider is sent. You can find more details in Backend Connections - HTTP-Proxy.
Affects: BPC Core | Dokumentation |
-
HTTP proxy filters X-APIKey header BPC-10011
Http calls via an Http-Proxy or Flow connection filter out the BPC Api-Key header (
X-APIKey). Attention: This could affect existing BPC configurations, for example if an INUBIT process is triggered that in turn makes calls to the BPC API using the provided API key. (In this case, it would be better to store a fixed BPC API key in the INUBIT process.)Affects: BPC Core | Dokumentation |
-
Renaming of childs to children in the Log Service Payload BPC-8478
Users of the Log Service API must replace all occurrences of
childswithchildrenin their POST data. During a transition period,childscan still be used for incoming data. This backward compatibility will be removed in a future release. It should also be noted that the responses from the Log Service endpoints now containchildreninstead ofchilds.Affects: BPC Core |
Recommended adjustments
You should read the descriptions in this section carefully. These are recommended instructions that are advised during an update.
-
OpenSearch Konfiguration auslagern BPC-9106
The OpenSearch configuration directory can be configured via
OPENSEARCH_PATH_CONF. This allows you to outsource the configuration directory from the OpenSearch directory. As a result, you will no longer overwrite it during an OpenSearch update. See also Outsourcing OpenSearch Configuration.In the bundle installation file, BPC is now delivered with a configuration directory outsourced to
INSTALLATION_DIRECTORY/opensearch_config.It is recommended to set OPENSEARCH_PATH_CONF in the bpc.env.
Affects: Dokumentation | OpenSearch |
New features
-
Aktion für alle Datensätze BPC-1088
A new action type "bulkAction" has been added to enable actions to be performed for all records. See Bulk Actions
Affects: BPC Core | Process Monitoring | Dokumentation |
-
Easy linking of monitor actions with IGUASU processors BPC-6260
If IGUASU is correctly connected via the Flow module, available processors can easily be selected through the configuration interface of the monitor actions.
-
Konfigurationsoberfläche für Identity Provider BPC-7069
A configuration interface for identity providers is now available.
Affects: BPC Core |
-
OpenAPI Spezifikation für REST API BPC-8513
With this update, it is necessary to update the Karaf.
Affects: BPC Core | Dokumentation | Forms | Karaf |
-
BPC Deeplinks über LogService BPC-8798
You can use the Log Service API to be redirected directly to the Log Service configuration or to connected monitors. There are two new LogService endpoints that redirect the user to the corresponding BPC pages when called:
-
To open the admin page of a LogService instance:
http://<bpc_host>:<bpc_port>/cxf/bpc-logservice/<logservice-instance-id>/open/logservice -
To open a monitor (without filter)
http://<bpc_host>:<bpc_port>/cxf/bpc-logservice/<logservice-instance-id>/open/monitor -
To open a monitor (with filter)
http://<bpc_host>:<bpc_port>/cxf/bpc-logservice/<logservice-instance-id>/open/monitor?instance.id=foobar
See also API documentation: Log Service API
Affects: BPC Core | Dokumentation |
-
-
It is now possible to specify references to external resources when writing audit information. For example, it is possible to refer to the IGUASU instance that created the entry.
Affects: BPC Core | Dokumentation |
-
SQL-Query anstelle von Tabellennamen als Quelle für Replikation BPC-9063
Replication now also supports, as an alternative to existing database tables/views, the direct entry of an SQL query.
See also
sourceCommonTableExpressionQueryin ReplicationAffects: BPC Core | Dokumentation |
Improvements
-
REST API: Adaptive Authentifizierungsantwort (401 vs. Keycloak Redirect) basierend auf Accept-Header implementieren BPC-7723
BPC API requests that take place via a web browser now redirect to Keycloak (or another OIDC UserFlowIdentityProvider) if authentication is missing. After logging in, a redirect to the original API endpoint takes place.
Affects: BPC Core |
-
Prometheus Metrik: BPC Status (Gesamtstatus aller BPC Module) BPC-8904
Affects: BPC Core | Dokumentation |
-
OpenSearch Einstellung zum verschieben von Shards auf andere Nodes bei geringem Plattenplatz BPC-9011
If the available disk space falls below defined thresholds, shards are redistributed to other nodes. It can also happen that indices are set to read-only to prevent the disk from filling up.
The value of
cluster.routing.allocation.disk.threshold_enabledis nowtrue. This corresponds to the OpenSearch default value.Affects: OpenSearch |
-
OpenSearch Konfiguration auslagern BPC-9106
The OpenSearch configuration directory can be configured via
OPENSEARCH_PATH_CONF. This allows you to outsource the configuration directory from the OpenSearch directory. As a result, you will no longer overwrite it during an OpenSearch update. See also Outsourcing OpenSearch Configuration.In the bundle installation file, BPC is now delivered with a configuration directory outsourced to
INSTALLATION_DIRECTORY/opensearch_config.It is recommended to set OPENSEARCH_PATH_CONF in the bpc.env.
Affects: Dokumentation | OpenSearch |
-
OpenSearch access only via de.virtimo.bpc.core.opensearch.hosts BPC-9246
Connections to OpenSearch are now configured exclusively via
de.virtimo.bpc.core.opensearch.hosts. When updating from an older version, you must add the entryde.virtimo.bpc.core.opensearch.hoststo the configuration filekaraf/etc/de.virtimo.bpc.core.cfg. Additionally, it is recommended to supplement the central configuration file with the linesexport DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT=$(($PORT_OFFSET + 9200)) export DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_HOSTS="https://localhost:$DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT [https://localhost:$DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT]"or
SET /a DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT=%PORT_OFFSET% + 9200 SET DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_HOSTS=https://localhost:%DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT% [https://localhost:%DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT%](as shown here with the example https://localhost:9200) [https://localhost:9200)]. You can use the files from the download file server as a reference.
Affects: BPC Core | Dokumentation |
-
Adjustment of metrics BPC-9440
These metrics have been renamed:
-
bpc_es_bpc_plugin_status_websocket → bpc_os_bpc_plugin_status_websocket
-
bpc_es_bpc_plugin_status_plugin → bpc_os_bpc_plugin_status_plugin
Affects: BPC Core | Dokumentation |
-
-
Aufsplittung der Identity Provider-Konfiguration aus JSON in separate Settings BPC-9515
For the Identity Provider (Backend Connections), a large part was previously configured via a JSON setting. This has been split into individual settings. Existing configurations are migrated automatically. If older deployment exports of Identity Provider components are used, it is best to recreate them.
Affects: BPC Core | Dokumentation |
-
Status API: status/server/{serverUUID} removed BPC-9654
The endpoint
/cxf/bpc-core/status/server/{serverUUID}of the status API, which queried the status of a remote BPC, has been removed.Affects: BPC Core | Dokumentation |
-
Target process can be configured on the process starter plugin BPC-9728
The plugin can now configure a process that is displayed immediately upon triggering. Additionally, the text and icon can now be freely configured. See also Process Starter Plugin
Affects: Process Monitoring | Dokumentation |
-
Per Default die Gruppierung in den BPC Settings Tabellen aktivieren. BPC-9737
The option for grouping settings is now initially enabled. It is recommended to use this view, as the settings are displayed together in a common context.
Affects: BPC Core |
-
Harmonization of interfaces for various monitor functions BPC-9770
The query string parameters
gridId,gridExtId,multiRecords,buttonIdand the form parametertablePrefixhave been removed from the process action requests. To send additional context or configuration information, "process action metadata" can be configured in the monitor settings.In process starters, the XML that was sent has been replaced by JSON. As a result,
portletArchiveName,operation,mandant,gridID,key,bpcModule,bpcModuleInstanceIdandcustomhave been removed.keyhas been uniformly renamed toid. Additional context or configuration information can be reliably sent via the "metadata" configuration in the process starter configuration in the monitor settings. The process parameters are bundled under config.parameters in the request payload. File uploads containfilename,typeanddata. Grids contain a list of their records.In Change State,
tablePrefix,mandantandchangeStatusBox_<column name>have been removed.commandhas been uniformly renamed totypeand receives the value "statusChange".columnsstringhas been renamed tocolumn.newStatusCombo_<column name>has been renamed tonewStatus.commentfieldhas been renamed tocomment.childStatusis no longer set to "Info" by default in the Change State configuration and, if configured, is migrated to metadata. Additional information can be passed in the "metadata" object in the Change State configuration.The unused settings
inubit_aperakEndPoint,inubit_dbGridIdandinubit_pmMandanthave been removed. The settingsinubit_actionEndpoint,inubit_changeStateEndpointandinubit_VpsEndpointhave been replaced byactionEndpointProcessor,changeStateEndpointProcessorandvpsEndpointProcessor.Affects: BPC Core | Process Monitoring | Dokumentation |
-
Log Service: Settings mit Elasticsearch im Namen umbenennen BPC-9813
Affects: BPC Core |
-
Boolsche Werte in Einstellungs-Tabelle besser darstellen und setzen BPC-9968
For boolean values in the settings tables, a combo box is no longer displayed; instead, only the checkbox with the truth value is shown. The value can be changed by clicking, pressing the space bar, or pressing Enter.
Affects: BPC Core |
-
Renaming of childs to children in the Log Service Payload BPC-8478
Users of the Log Service API must replace all occurrences of
childswithchildrenin their POST data. During a transition period,childscan still be used for incoming data. This backward compatibility will be removed in a future release. It should also be noted that the responses from the Log Service endpoints now containchildreninstead ofchilds.Affects: BPC Core |
Security
-
Restriction of SSH access BPC-8253
By default, the accessibility of Karaf via SSH connections is now restricted to the host
localhost. To enable accessibility via external connections, use the central configuration file. See Karaf SSH Access.Affects: Dokumentation | Karaf |
-
Filter session cookie content from log file BPC-9533
The logging configuration has been changed so that session tokens are masked. For new installations of Karaf, this happens automatically. For existing installations, please adjust the configuration file
[KARAF]/etc/org.ops4j.pax.logging.cfg. Replace the old linelog4j2.maskpasswords.pattern = %replace{${log4j2.pattern}}{(password=[^\\s,]+)|("password"\\s*:\\s*"\\w+")}{******}with the following lines
# Chained replacement patterns to mask sensitive information # Filter out UUIDs as these are used as session cookies (keycloak+oidc) log4j2.maskuuids.pattern = %replace{${log4j2.pattern}}{(?i)([a-f0-9]{4})[a-f0-9]{4}(-[a-f0-9]{4}){3}-[a-f0-9]{8}(([a-f0-9]{4}))(?-i)}{$1****-****-****-****-********$3} # Filter out JWT Tokens that might contain session ids log4j2.maskjwt.pattern = %replace{${log4j2.maskuuids.pattern}}{ey[\\w-]+\\.ey[\\w-]+\\.[\\w-]+}{***(JWT)***} log4j2.maskunsecuredjwt.pattern = %replace{${log4j2.maskjwt.pattern}}{ey[\\w-]+\\.ey[\\w-]+\\.}{***(JWT)***} # Filter out 256bit (64 hex digits) UUIDs used for karaf session cookies and API keys log4j2.maskkarafsessioncookie.pattern = %replace{${log4j2.maskunsecuredjwt.pattern}}{[0-9a-fA-F]{64}}{******} # Filter out passwords log4j2.maskpasswords.pattern = %replace{${log4j2.maskkarafsessioncookie.pattern}}{(password=[^\\s,]+)|("password"\\s*:\\s*"\\w+")}{******}Since with Keycloak and OIDC the session tokens are UUIDs that are also used elsewhere, we log the first and last four characters here.
Affects: BPC Core | Dokumentation | Karaf |
-
Restricted forwarding of session information BPC-9925
HTTP proxy backend connections and flow connections now always filter the session cookie so that a recipient cannot make calls in the BPC in the context of the user. The setting filterSessionCookie is therefore no longer required. Instead, with the new setting sendSessionId, it is possible to send the user’s session ID, which can be verified at the endpoint GET /cxf/bpc-core/authentication/session/{sessionid}. When the injectUserSessionJWT setting is enabled, a self-created JWT is no longer sent, but rather the signed ID token from the OpenID Connect provider is sent. You can find more details in Backend Connections - HTTP-Proxy.
Affects: BPC Core | Dokumentation |
-
HTTP proxy filters X-APIKey header BPC-10011
Http calls via an Http-Proxy or Flow connection filter out the BPC Api-Key header (
X-APIKey). Attention: This could affect existing BPC configurations, for example if an INUBIT process is triggered that in turn makes calls to the BPC API using the provided API key. (In this case, it would be better to store a fixed BPC API key in the INUBIT process.)Affects: BPC Core | Dokumentation |
-
Default für filterSessionCookie auf true BPC-9926
For new backend connections of the type HTTP-Proxy and Flow, the option Filter BPC Session is enabled by default.
Affects: BPC Core | Dokumentation |
Dependency Updates
-
The use of Java 21 is now necessary.
Affects:
-
Update OpenSearch to 3.2 BPC-9609
If BPC was initially installed with an OpenSearch version instead of an Elasticsearch version, then the
[bpc]/opensearch_datadirectory can be adopted directly.If not, indices must first be migrated.
See also Migration from BPC 4.* to BPC 5.0
Affects: BPC Core | Process Monitoring | Data Analysis | Dokumentation | Forms | Karaf | OpenSearch |
-
With this update, the Karaf version is upgraded to 4.4.8. It is necessary to update the modules
bpc-be-core,bpc-be-analysis,bpc-be-forms, andbpc-be-monitor.For BPC module developers
With the updated Karaf, we are delivering CXF 3.6.8 instead of 3.6.7, which provides Jackson in version 2.19.2.
Please update the CXF version (3.6.8) and Jackson version (2.19.2) in your
pom.xml. Check whether you have an Import-Package statement for this version. This must be added or adjusted if you use Jackson features such as theObjectMapperclass.<Import-Package> ... com.fasterxml.jackson.*;version="[2.17.2,3.0.0)", ... </Import-Package>Affects: BPC Core | Process Monitoring | Data Analysis | Dokumentation | Forms | Karaf |
Other
-
Support for INUBIT Identity Provider removed BPC-9482
INUBIT is no longer supported as an Identity Provider.
Affects: BPC Core | Dokumentation |
Overview of OpenSearch updates
OpenSearch has been updated in the following BPC versions.
Overview of updates to the internal BPC configuration
The following BPC versions have an update to the internal BPC configuration has been carried out.