kdb Insights Enterprise - Release Notes
This page details the release notes for the latest series of kdb Insights Enterprise releases. To find the release notes for an older release, refer to the previous releases page.
1.9.4
Release Date
2024-06-14
Fixes
Expand to see the full detail of resolved issues here
Security
- Multiple CVEs have been resolved as part of this patch.
Cloud Readers
-
An issue has been resolved where, when administering a pipeline, a cloud reader node (s3, ms, and gs) could prompt you that there were unsaved changes even when no changes have been made.
-
The Azure reader file watcher was returning an error that a file(s) did not exist despite the file(s) being present. This has now been fixed.
Reliable Transport
- RT's replicator was emitting an
Invalid publishing directory, was it deleted by mistake? Please enrol a different client and restart the SDK with the new client
error after recovering from a power outage of a q publisher server. This has been resolved to handle the recovery cleanly after such an outage.
UI
-
On the Pipeline page, an intermittent issue could cause performance degradation or unresponsiveness in the UI for extended periods. This has been resolved.
-
When configuring a pipeline in the UI, setting additional
workerThreads
was not correctly applying the specified configuration. However, setting the environment variableKXI_DEFAULT_SP_WORKER_THREADS
did work. This has been resolved so either method can be used. -
The default setting for retries for database reader/writers in the UI did not match the backend defaults. This has been corrected to be consistent, with the default setting of 60 seconds for retries, and a retry wait time of 3 seconds.
-
When performing a rollback, the CLI deployed the rollback task with a hard-coded timeout. This has been changed to a configurable value for use when rollbacks are expected to take longer.
-
When deploying a database, the Deploy popup displayed totals that did not match the selected CPU, RAM and disk settings. The same issue was present in the Resource Summary box on the main page. These calculation errors have been resolved to display correct totals.
Database
-
For a new system with an empty database, queries would not work after the first end-of-day data writedown if no data had been ingested yet. This issue has been resolved.
Third-party Dependencies
kdb Insights Enterprise 1.9.4 standalone install supports the following versions of third-party dependencies:
These versions are used in the 1.9.1 release of the standalone infrastructure installation scripts.
Artifacts
KX Nexus
The KX Nexus repository will be sunsetted in the future. Nexus links on this page are provided as a temporary alternative to the KX Downloads Portal for existing users. The KX Downloads Portal is the preferred repository for all use cases and KX Nexus links will be removed once the KX Nexus repository is decommissioned.
type | Nexus location | Downloads Portal location |
---|---|---|
Enterprise | insights-1.9.4.tgz | insights-1.9.4.tgz |
Operator | kxi-operator-1.9.2.tgz | kxi-operator-1.9.2.tgz |
CLI | kxicli-1.9.2-py3-none-any.whl | kxicli-1.9.2-py3-none-any.whl |
RT C interface | kxi-c-sdk 1.9.0 | kxi-c-sdk 1.9.0 |
RT Python interface | kxi-rtpy-1.9.0 | kxi-rtpy-1.9.0 |
RT Java interface | kxi-java-sdk 1.9.0 | kxi-java-sdk 1.9.0 |
RT Bridge | rt-bridge 1.7.0 | rt-bridge 1.7.0 |
Infrastructure | kxi-terraform-1.9.1.tgz | kxi-terraform-1.9.1.tgz |
1.9.3
Release Date
2024-05-21
Fixes
Expand to see the full detail of resolved issues here
Reliable Transport
- RT's replicator was emitting an
Invalid publishing directory, was it deleted by mistake? Please enrol a different client and restart the SDK with the new client
error after recovering from a power outage of a q publisher server. An intermittent issue with truncated log files when the publisher restarts has been resolved.
Third-party Dependencies
kdb Insights Enterprise 1.9.3 standalone install supports the following versions of third-party dependencies:
These versions are used in the 1.9.1 release of the standalone infrastructure installation scripts.
Artifacts
KX Nexus
The KX Nexus repository will be sunsetted in the future. Nexus links on this page are provided as a temporary alternative to the KX Downloads Portal for existing users. The KX Downloads Portal is the preferred repository for all use cases and KX Nexus links will be removed once the KX Nexus repository is decommissioned.
type | Nexus location | Downloads Portal location |
---|---|---|
Enterprise | insights-1.9.3.tgz | insights-1.9.3.tgz |
Operator | kxi-operator-1.9.1.tgz | kxi-operator-1.9.1.tgz |
CLI | kxicli-1.9.1-py3-none-any.whl | kxicli-1.9.1-py3-none-any.whl |
RT C interface | kxi-c-sdk 1.9.0 | kxi-c-sdk 1.9.0 |
RT Python interface | kxi-rtpy-1.9.0 | kxi-rtpy-1.9.0 |
RT Java interface | kxi-java-sdk 1.9.0 | kxi-java-sdk 1.9.0 |
RT Bridge | rt-bridge 1.7.0 | rt-bridge 1.7.0 |
Infrastructure | kxi-terraform-1.9.1.tgz | kxi-terraform-1.9.1.tgz |
kxi-management-service | kxi-management-service-0.2.1.tgz | kxi-management-service-0.2.1.tgz |
insights-on-k8s | insights-on-k8s-0.0.16.tgz | insights-on-k8s-0.0.16.tgz |
1.9.2
Release Date
2024-05-07
Fixes
Expand to see the full detail of resolved issues here
Reliable Transport
- The RT client was failing to recognize a new log file, putting downstream subscribers into a hung state. This has been resolved.
Third-party Dependencies
kdb Insights Enterprise 1.9.2 standalone install supports the following versions of third-party dependencies:
These versions are used in the 1.9.1 release of the standalone infrastructure installation scripts.
Artifacts
KX Nexus
The KX Nexus repository will be sunsetted in the future. Nexus links on this page are provided as a temporary alternative to the KX Downloads Portal for existing users. The KX Downloads Portal is the preferred repository for all use cases and KX Nexus links will be removed once the KX Nexus repository is decommissioned.
type | Nexus location | Downloads Portal location |
---|---|---|
Enterprise | insights-1.9.2.tgz | insights-1.9.2.tgz |
Operator | kxi-operator-1.9.1.tgz | kxi-operator-1.9.1.tgz |
CLI | kxicli-1.9.1-py3-none-any.whl | kxicli-1.9.1-py3-none-any.whl |
RT C interface | kxi-c-sdk 1.9.0 | kxi-c-sdk 1.9.0 |
RT Python interface | kxi-rtpy-1.9.0 | kxi-rtpy-1.9.0 |
RT Java interface | kxi-java-sdk 1.9.0 | kxi-java-sdk 1.9.0 |
RT Bridge | rt-bridge 1.7.0 | rt-bridge 1.7.0 |
Infrastructure | kxi-terraform-1.9.1.tgz | kxi-terraform-1.9.1.tgz |
kxi-management-service | kxi-management-service-0.2.1.tgz | kxi-management-service-0.2.1.tgz |
insights-on-k8s | insights-on-k8s-0.0.16.tgz | insights-on-k8s-0.0.16.tgz |
1.9.1
Release Date
2024-04-30
Improvements
-
The
fromParquet
Reader is now supported for AWS-based deployments. For more information, refer to Readers. -
Streams can now be removed from packages using the
rm
command from the CLI. Runkxi package rm --help
in the CLI for details.
Fixes
Expand to see the full detail of resolved issues here
Database
- Client requests using compressed IPC messages are now properly serviced. Previously, if the first request from a client was using compressed IPC, that and any future requests would fail.
Terraform Scripts
- Previously, in the kdb Insights Enterprise Terraform sample client scripts, the
package-manager-migration
command failed when used in Azure deployments using the sharefiles storage class. This has been resolved. New sample scripts are available as part of this release. See the Artifacts section below.
Stream Processor
- Pipelines now throw an error when writing to a non-existent table. Previously, no errors were present in the pipeline or database logging. This was most commonly experienced when renaming a table in the database without updating the pipeline as well.
Reliable Transport
- Reliable Transport pods now use Kubernetes liveness probes to automatically bounce pods if unresponsive. This resolves a known issue in 1.9.0 in which RT pods were required to be manually restarted if an upgrade erroneously left them in a non-ready state.
Packaging
-
The UI now displays the running version of a package as opposed to the latest package that may be available.
-
subTopic
has been added as a mandatory field when adding external streams to a package. Previously, this was not present and caused a package to be undeployable. -
In the UI, it is no longer possible to create pipelines with the duplicate names.
-
The CLI now errors when trying to create and save a package that contains duplicate UUIDs, or when trying to save entities within a package that have duplicate UUIDs.
UI
- Resource allocations are no longer mandatory input fields on the Resources tab. It is now possible to leave them empty and submit your resource configuration. For more information, refer to Adjust resources.
Third-party Dependencies
kdb Insights Enterprise 1.9.1 standalone install supports the following versions of third-party dependencies:
These versions are used in the 1.9.1 release of the standalone infrastructure installation scripts.
Artifacts
KX Nexus
The KX Nexus repository will be sunsetted in the future. Nexus links on this page are provided as a temporary alternative to the KX Downloads Portal for existing users. The KX Downloads Portal is the preferred repository for all use cases and KX Nexus links will be removed once the KX Nexus repository is decommissioned.
type | Nexus location | Downloads Portal location |
---|---|---|
Enterprise | insights-1.9.1.tgz | insights-1.9.1.tgz |
Operator | kxi-operator-1.9.1.tgz | kxi-operator-1.9.1.tgz |
CLI | kxicli-1.9.1-py3-none-any.whl | kxicli-1.9.1-py3-none-any.whl |
RT C interface | kxi-c-sdk 1.9.0 | kxi-c-sdk 1.9.0 |
RT Python interface | kxi-rtpy-1.9.0 | kxi-rtpy-1.9.0 |
RT Java interface | kxi-java-sdk 1.9.0 | kxi-java-sdk 1.9.0 |
RT Bridge | rt-bridge 1.7.0 | rt-bridge 1.7.0 |
Infrastructure | kxi-terraform-1.9.1.tgz | kxi-terraform-1.9.1.tgz |
kxi-management-service | kxi-management-service-0.2.1.tgz | kxi-management-service-0.2.1.tgz |
insights-on-k8s | insights-on-k8s-0.0.16.tgz | insights-on-k8s-0.0.16.tgz |
Upgrade Notes
Upgrading to 1.9.x
-
Before you upgrade to 1.9.x, if you have any running databases, it is advised to manually stop them before upgrading, otherwise you may become unable to edit them in the UI. If this happens, you can recover the editable state by considering the following options:
- If possible, back up the running assembly yaml file with
kubectl get asm
- Tear down the running assembly manually with
kubectl delete asm
- Optional: use the
kxi package deploy
command in the CLI, specifying the name and version of the package. The package should appear underkxi package remote-list
. Refer to Package deployment for more information.
If the package doesn't reappear as editable after tearing down, you need to use the KXI CLI to perform the following operations:
- Convert the assembly yaml to a package. Refer to Converting assemblies to packages.
- Upload the package to kdb Insights Enterprise. Refer to Uploading a package.
- Deploy the package from the UI. Refer to Package deployment.
- If possible, back up the running assembly yaml file with
Known Issues
Expand to see the list of known issues here
Custom Tier Names
- Existing assemblies that have non-default tier names (i.e. names other than "rdb","idb","hdb") that are converted to packages will need to be updated to use those defaults. Presently, the UI expects the default names and is unable to differentiate between hdb and additional tiers.
1.9.0
Release Date
2024-03-26
New Features
-
Developer Experience Improvements for Packaging
kdb Insights Enterprise packaging now allows clients to manage database and pipeline configuration as well as custom code within a single package. This greatly simplifies developer and operational workflows, as users can maintain and administer databases and pipelines within a single package and with specific configuration for each pipeline. Packaging has also been integrated with the UI so that any databases and pipeline created using the CLI using the
kxi package
command can be viewed and maintained by the UI and vice versa. Refer to Packaging for more details. -
SQL Enhancements
SQL in kdb Insights Enterprise now includes support for ORDER BY and LIMIT clauses, in addition to other functions. Changes to how SQL statements are parsed also significantly improves SQL query performance in this release. Query performance, on average, is up to 3x faster than before. Refer to SQL 2 for more information on the new SQL implementation and its current Known Limitations.
-
Streaming to Views
In the kdb Insights Enterprise UI, Views can now subscribe to real-time data from a pipeline, rather than relying on intermittent polling. This gives you the ability to visualize and analyze your data immediately. Refer to the streaming guided tour for details on configuring pipelines and views for this feature.
Streaming to KX Views is a BETA feature in kdb Insights Enterprise 1.9.0.
· Refer here to the Standard Terms related to Beta features.
· We invite you to use this Beta feature and to provide feedback using the portal.
-
Snapshots & Majority Archival for Reliable Transport
Reliable Transport now supports taking snapshots allowing for majority archival of logs files. Previously, all nodes needed to be healthy before RT logs could be archived.
-
Configurable Connections for Reliable Transport
Reliable Transport now supports subscribers and publishers setting customized parameters when they register with their respective sequencer cluster. This gives you greater configurability in how you deploy and orchestrate components of RT. See rt.qpk for more details.
Improvements
-
System Resources Configuration
Defining system resources has been streamlined, enabling you to set all aspects of resource allocation from a single configuration page in the kdb Insights Enterprise UI. See Adjust Resources for more information on this new tab.
-
Batch Delete
Batch delete now allows you to delete from all tiers of your HDB. Previously, this was only possible for the tier with the most recent HDB data. See Database Delete for details on how to perform a delete.
-
Python Cloud Readers
Python cloud readers now support polling for new matches to a glob pattern with the
watch
parameter. See Readers for details. -
Upgrade to Insights Core 4.1.1
kdb Insights Enterprise images have been upgraded to run Insights Core 4.1.1, which runs kdb+ 4.1 2024.03.12.
-
Upgrade to RockyLinux 9
kdb Insights Enterprise images have been upgraded to run on Rocky Linux version 9 as their base operating system. This addresses security vulnerabilities present in version 8.
-
Stream Processor Troubleshooting Guide
There is now a troubleshooting guide available to help users better understand how to debug their pipelines running in kdb Insights Enterprise.
Fixes
Expand to see the full detail of resolved issues here
Database
-
If EOD failed while in the middle of an HDB transaction, the aborted transaction was not properly cleaned up after the failure and could result in data inconsistency after reconnection.
-
The EOD process was not performing a garbage collection after a batch ingest.
-
Data was unqueryable after a batch ingest if no additional streaming data was loaded after the initial batch ingest.
Reliable Transport
- In deployments with a one-node RT configuration, RT has been updated to roll its log file after a restart. This prevents data flow from being paused. The RT log file will roll from
log.x.y
tolog.x.y+1
.
UI
-
The Subscriber node was limited to only specifying one keyed column. This has been resolved to allow one or more keyed columns, ensuring that streaming supports a record being streamed per unique combination of all specified keyed columns and to allow filtering on any one of the keyed columns.
-
When configuring a Schema node, the regular expression pattern for table validation has been updated to allow single character column names.
-
For Function nodes, users can now customize their function parameters to accept the metadata and operator, in addition to data, in the Pipeline UI. See here for details.
-
The
Error Mode
in the Pipeline Settings section of the Pipeline editor has been removed as it is no longer required, due to a stack trace now being logged when user code errors. -
The logging level within the Runtime Pipeline Settings section of the Pipeline editor was not correctly displaying or setting the log level of the SP worker. This has been resolved.
-
There was no way to specify
\t
as the delimiter in a CSV decoder in the UI. This has been corrected in the CSV Decoder node to allow for any delimiter to be used. -
After a pipeline has been deployed, when the status is either “Running” or “Finished”, a user is able to delete the pipeline. When the pipeline is deleted, the Overview page was still displaying it under “Running Pipelines”. This has been resolved to not display deleted pipelines.
-
Disk sizes for IDB and HDB tiers can now be set to any value greater than 0.
-
Users without the permission to create a pipeline should not be able to use the Import Data button on Database Page. This has been resolved.
-
Deleting running databases is now allowed.
Views
-
Notifications in Views were not reporting correctly. This has been resolved.
-
Under certain circumstances when you had a particular data source selected in the Data Source window and clicked New the existing values remained visible, however they were all ignored. This has been resolved.
-
When using the
getData
API withagg
set tosym;distinct;sym
, the UI was ignoring this request and not sending any aggregation. This has been resolved. -
Switching between tabs caused the user-selected date to switch back to the default setting. This caused the View to constantly reload. This has been resolved.
Stream Processor
-
When using Python, 'sp.decode.csv' did not support reading columns as strings. This has been updated to enhance flexibility when reading table columns. It now accepts an empty string "" in lieu of a schema to read in all table columns as strings.
-
Sidecar containers no longer log at a
TRACE
level by default and now adhere to the log level that is set by the user. -
The SP controller now adheres to the log level set by the user.
-
The CSV decoder did not support decoding csvs which had line-returns (i.e. \n’s) embedded in strings. This functionality can now be turned on with a new optional parameter called Strings Contain Newlines in the UI and
newlines
in the q and Python APIs. -
When running a large import from a static source (file, Azure, AWS, GCP), there was no indication of progress in the logs. The SP logs now displays the file offset periodically while processing to indicate on-going progress of the import.
-
The SP’s status APIs will now return
TEARING_DOWN
rather thanNOTEXIST
when a pipeline has PVCs that are still in a terminating state. -
Under certain circumstances when you added an additional stream to your database it could become orphaned after you renamed the database. This has been resolved.
-
Under certain circumstances when creating a pipeline using the Import feature the Parse Strings column was missing from the Apply Schema page, causing the pipeline to fail when deployed. This has been resolved.
-
The running pipelines section displays a count of warnings and errors that have occurred in the last 10 minutes. Not all of these warnings were being displayed in the Diagnostics page. This has been resolved.
CLI
-
When trying to enroll a client with a topic, the client was enrolled but the specified topic was not being set. This has been resolved.
-
When a user tried to authenticate but did not have a local browser installed on their machine, the redirect URL was
localhost
instead of the value specified. This has been resolved such that users with a local browser installed can still successfully authenticate. -
Installation with a
kc.lic
license using the--license-filepath
command-line parameter was generating an incorrectvalues.yaml
file. This has been resolved so the license values correspond to the license name. -
Specifying a different hostname as part of a
kxi
command is ignored after authentication, as you can only be authenticated to one kdb Insights Enterprise host at a time. For example, if you authenticate to HOSTNAME1 by callingkxi --hostname HOSTNAME1 auth login
you are free to make calls against this host. If you attempt to specify a different hostname in subsequent callskxi --hostname HOSTNAME2
, the--hostname
parameter will be ignored and the command executed against HOSTNAME1. You must re-authenticate against HOSTNAME2 before running commands against it. -
The function
.kxi.udfs.list.all[]
was failing with a length error. This has been resolved. -
Global environment variables set within your
values.yaml
will now be set by all database and assembly deployments.global: env: env: var
Query Environments
- Query environments with entitlements enabled required the creation of separate entitlement for the
-qe
assembly in order for queries to work. This has been resolved.
Upgrades
- Fixed an issue where it was possible for pods to be unscheduled after an upgrade or rollback due to a volume node affinity conflict. Please note that this is still possible when rolling back from 1.9 to earlier versions. Please check the release notes of the target rollback version to address.
Security
- Various CVEs have been remediated as part of this release.
Third-party Dependencies
kdb Insights Enterprise 1.9.0 standalone install supports the following versions of third-party dependencies:
These versions are used in the 1.9.0 release of the standalone infrastructure installation scripts.
Artifacts
KX Nexus
The KX Nexus repository will be sunsetted in the future. Nexus links on this page are provided as a temporary alternative to the KX Downloads Portal for existing users. The KX Downloads Portal is the preferred repository for all use cases and KX Nexus links will be removed once the KX Nexus repository is decommissioned.
type | Nexus location | Downloads Portal location |
---|---|---|
Enterprise | insights-1.9.0.tgz | insights-1.9.0.tgz |
Operator | kxi-operator-1.9.0.tgz | kxi-operator-1.9.0.tgz |
CLI | kxicli-1.9.0-py3-none-any.whl | kxicli-1.9.0-py3-none-any.whl |
RT C interface | kxi-c-sdk 1.9.0 | kxi-c-sdk 1.9.0 |
RT Python interface | kxi-rtpy-1.9.0 | kxi-rtpy-1.9.0 |
RT Java interface | kxi-java-sdk 1.9.0 | kxi-java-sdk 1.9.0 |
RT Bridge | rt-bridge 1.7.0 | rt-bridge 1.7.0 |
Infrastructure | kxi-terraform-1.9.0.tgz | kxi-terraform-1.9.0.tgz |
kxi-management-service | kxi-management-service-0.2.1.tgz | kxi-management-service-0.2.1.tgz |
insights-on-k8s | insights-on-k8s-0.0.16.tgz | insights-on-k8s-0.0.16.tgz |
Upgrade Notes
-
Keycloak and Postgres Values Changes
The values file settings for the Keycloak and Postgres components have changed for 1.9. The panels below describe the modifications you need to make to this file for all standard or shared Keycloak deployments before upgrading to 1.9.
Merging install values
The values below are a partial extract of your deployment values. These should be merged with your existing values file.
For more information, refer to Applying configuration changes.
A standard deployment deploys Keycloak as part of the application. If you're using this configuration, you should ensure your values file includes the details shown below.
The names
kxi-keycloak
andkxi-postgresql
are the default values, update these as appropriate.global: keycloak: auth: existingSecret: kxi-keycloak postgresql: auth: existingSecret: kxi-postgresql .. keycloak: auth: existingSecret: kxi-keycloak postgresql: auth: existingSecret: kxi-postgresql ..
Keycloak values
Please note there are two sets of
keycloak
andpostgres
objects;global.keycloak
,global.postgresql
,keycloak
,keycloak.postgresql
.Both sets of these are required as shown above.
If deploying using the shared Keycloak mode, configure the values file as described below.
The
KEYCLOAK_RELEASE_NAME
andKEYCLOAK_NAMESPACE
variables should be updated to match those of your Keycloak deployment. The shared Keycloak docs explain each of these values.global: keycloak: authURL: http://${KEYCLOAK_RELEASE_NAME}.${KEYCLOAK_NAMESPACE}.svc.cluster.local/auth/ auth: existingSecret: kxi-keycloak postgresql: auth: existingSecret: kxi-postgresql ..
-
If a user has an existing
kxi-license
secret created from akc.lic
ork4.lic
,kxi install setup
will re-use this secret, but will not set the appropriate values in the resultingvalues.yaml
file. See available license types Setup - kdb products. -
The default image repository used for new 1.9 installations will be the KX Downloads Portal. The credentials to access this are stored in a docker config json secret named
kxi-image-pull-secret
. If you are upgrading from an earlier version that used the KX Nexus image repository with an exiting secretkxi-nexus-pull-secret
, this existing repository and secret will be used. -
After executing an upgrade, if an RT pod does not appear as ‘Ready’, the pod should be deleted/killed so that it is restarted. Note this has been resolved in 1.9.1.
-
During an upgrade, the RT pods attempt to delete a Kubernetes configmap. Since there were 3 RT pods, only one of the pods will be successful in deleting the config map. This means that the other pods will receive ERRORs back indicating that their delete attempt failed. These
Failed to delete snapshot: tmp
errors are benign and will be set to WARN messages in future. -
Query Labels Style
KXI_ALLOW_OLD_LABEL_STYLE
now defaults to "false". It must be explicitly set to "true" in the RC to allow the "old label style". For example, in a system with labelsregion
, andclass
:-
Labels in queries (such as
.kxi.getData
) must be defined in thelabels
parameter.- old style:
--data '{"table": "trade", "region": "usa", "class": "equities"}'
- new style (new default):
--data {"table": "trade", "labels": {"region": "usa", "class": "equities"} }'
- old style:
-
Labels in SQL queries must be prefixed with
label_
.- old style:
SELECT * FROM trade WHERE region='usa', class='equities'
- new style (new default):
SELECT * FROM trade WHERE label_region='usa', label_class='equities'
- old style:
-
Rollback
-
If performing a rollback from 1.9.0 to any earlier version, assemblies must be running prior to initiating the rollback to ensure no data is lost. See Upgrading for how to perform upgrades/rollbacks and the available commands to use. Please see the following specific instructions per version:
Rollback from 1.9 to a version less than 1.7 is not possible.
For rollback from 1.9 to a prior version:
- Confirm all assemblies are running before initiating rollback.
- Execute the rollback operation. Note that the
kxi-rt-rollback
andkxi-sp-rollback
charts are run automatically as part of the rollback operation as of 1.9.0.
For rollback from 1.8, the following instructions should be followed:
- Teardown your assemblies.
- Run the
kxi-sp-rollback
chart. If the target version for rollback is less than 1.7, also run thekxi-db-rollback
chart. - Rollback kdb Insights Enterprise per the rollback instructions referenced above.
- Redeploy assemblies.
Known Issues
Expand to see the list of known issues here
Upgrades & Rollbacks
-
Users are prompted to tear down assemblies upon rollback. The rollback should exit if the user responds ‘n' to this prompt. Instead, the rollback continues.
-
Occasionally, rollbacks may fail with an error when running
kxi install rollback
. This is due to timeouts with the Helm rollback, resulting in errors such as the following:timed out waiting for the condition context deadline exceeded
To resolve this issue, re-run the rollback.
Pipelines
-
It is currently possible to rename a pipeline in the UI to a pipeline name that is already in use. Until this is resolved, ensure your pipeline names are unique.
-
When deploying a pipeline that writes to a table that does not exist, no error will be thrown.
Packaging
kxi.package.load_file
does not work properly for Python files. For a Python module, useimport
instead.
Query Tab
- There is presently no way to select a subset of the available columns during the
getdata
phase in the Query tab of the UI. Conversely, thegetData
API allows this in theagg
parameter where you can pass in the list of columns you want with no aggregation function.
UI
-
Changing the system log level in the UI does not get actioned.
-
On Mozilla Firefox, when clicking
Deploy
in aDatabase
screen, the scroll wheels do not render properly in the pop-up.
Views
-
When displaying streaming data in Views and using the Map component, the map may take some time before the streaming data is displayed. A page reload may be required.
-
When working with a View then temporarily navigating away to a different tab, any changes made will be saved despite the user not requesting this. If multiple users are editing the same view, any time one switches away from the tab (even if they haven’t made any changes), the current version of their view will be saved, which may not include changes made other users. To resolve this, use the Undo action to return the last desired saved state.
-
A popup may be shown indicating there may be unsaved changes when no changes have been made.
Scratchpads
-
Certain Python expressions cause internal errors in Python scratchpads:
lambda x: x * 2 memoryview(bytearray("myTest", encoding='utf-8')) {1,2,3}
Reliable Transport
- RT clients output certain logs to a folder determined by the
KXI_C_SDK_APP_LOG_PATH
environment variable ($KXI_C_SDK_APP_LOG_PATH/kxi_c_sdk_logs/rt_helper.VMC7AW/rt_helper.log
). This variable uses a default location of/tmp
. When there are recurring errors, these logs can fill the/tmp
directory which is only 5MB in size. To overcome this issue, you can change this environment variable. See Environment variables for steps on how to change this.
GKE
-
On installation, the Keycloak pod may fail to start correctly and display the following error message:
failed error: insufficient quota to match these scopes: [{PriorityClass In [system-node-critical system-cluster-critical]}]
. To work around this, you can unset thepriorityClassName
for KeyCloak and Postgresql by adding the following to yourvalues.yaml
:keycloak: priorityClassName: "" postgresql: primary: priorityClassName: ""
Deprecation
-
The CLI
kxi assembly
command is being deprecated in 1.9.0 in favor ofkxi package
and may be removed from future releases. See kdb Insights CLI Reference for more information on thekxi assembly
command. -
prtnEndCB
andreloadCB
callback functions are being deprecated in 1.9.0 and may be removed from future releases. They have been replaced bylifecycle.partition.end
andlifecycle.reload.post
respectively. Their usage can be seen below.
.custom.da.prtnEndCB:{[event;data]
log.info("lifecycle.partition.end invoked.")
}
.custom.da.reloadCB:{[event;data]
log.info("lifecycle.reload.post invoked.")
}
.ev.add[`lifecycle.partition.end ;`.custom.da.prtnEndCB];
.ev.add[`lifecycle.reload.post ;`.custom.da.reloadCB];
- RT
maxLogSize
is no longer used in configuration and will be ignored from older configurations. RT will now utilize all disk available to it.