Release notes version 7.2.0.x

Learn about the new, deprecated, and removed features in Teracloud® Streams Version 7.2.0.

Teracloud® Streams Version 7.2.0 marks the first major release under Teracloud ownership, building on the proven foundation of 21CS Streams Version 7.1.0.x and IBM Streams Version 4.3.1.x.

This release introduces support for modern operating systems, newer programming language standards, platforms, and features, enhanced management capabilities, and secure by default.

Version 7.2.0.1

This section lists the differences between Streams Version 7.2.0.1 and Version 7.2.0.0.

Enhancements

  • Added a migration script for existing applications and toolkits that utilized streams_boost. See the product-installation-root-directory/7.2.0.1/bin/streams-boost-migration-tool.sh script for more information.
  • Enhanced keystore and certificate bundling
    • When exporting keystores, a value of all may be used to export all keystores into a single one grouped by aliases.
    • Added new --ext option to streamtool gencertificate to allow setting X.509 v3 certificate extension fields.
    • Updated streamtool renewcertificate to preserve dn and extension
  • Improved streamtool resource clean up
  • Improved security of temporarily file usage by restricting permissions

Fixes

Core product
  • Addressed initialization issues while running with Java 21 or higher
  • Fixed issue where root user was unable to uninstall Streams
  • Improved data service startup and recovery
  • Fixed the following SPL compiler issues:
    • JVM allocation was not working with Java 17.0.15
    • Compiler did not immediately produce an error when an invalid expression in output clause was found. Issue was introduced in 4.3.0.
  • Fixed an issue handling the "$" character in streamtool command-line arguments
  • Fixed the following application runtime issues for Java operators:
    • Operator classloading was not correct in certain situations
    • Ordered JSONs were not correctly ordered
Toolkits
  • Reduced toolkit migration script scope to shipped toolkits only
  • Fixed Boost library linking bug by removing dependency on Boost::Filesystem in the following toolkit operators:
    • Cybersecurity - DomainProfiling, HostProfiling, BWListTagger
    • TEDA - BloomFilter
    • Timeseries - DSPFilter2, DSPFilterFinite, GAMLearner, GAMScorer, Kalman
  • CrossDCFailover:
    • Improved SQL queries to better utilize prepared statements
  • DPS:
    • Fixed several incorrect trace messages levels to be INFO instead of ERROR
    • Improved memory safety by utilizing std::strings
  • Inetserver:
    • Fixed websocket servlet initialization
  • Network:
    • Fixed filesystem and initialization issues in the IPASNEnricher and IPSpatialEnricher operators
    • Ship source files for operator-to-DPDK bridge. Compatible with DPDK 22 and higher
  • TEDA:
    • Fixed Perl module and module lookup issue
  • Timeseries:
    • Corrected C++ namespace for native functions
    • Fixed Java library dependency bug in BoundedAnomalyDetector, BATS, and HoltWinters3 operators
  • Topology:
    • Fixed Python 3.9 and higher support
    • Fixed kafka and mqtt messaging support
  • Websocket:
    • Utilize stream operator threads
    • Improve closed connection handling

Dependencies

Third-party libraries have been updated for currency and security reasons. This includes the following primary dependencies which were updated to the specified versions.

Core product
  • Upgraded IBM WebSphere Liberty to 25.0.0.5
  • Upgraded SLF4J to 2.0.17
  • Upgraded ICU4J to 77.1
Toolkits
  • DPS: upgraded hiredis to 1.3.0
  • Hbase: upgraded hbase to 2.6.2-hadoop3
  • Kafka: upgraded kafka-client to 3.9.1
  • MessageHub: upgraded kafka-client to 3.9.1
  • ObjectStorage: upgraded ibm-cos-java-sdk-bundle to 2.14.1
  • Rabbitmq: upgraded amqp-client to 5.25.0

Version 7.2.0.0

This section lists new features introduced in Teracloud Streams Version 7.2.0.0 as well as removed functionality.

New features and important changes

Core product
  • Product has been renamed to Teracloud Streams
    • Teracloud Streams is the continuation of the proven IBM Streams technology. The product was acquired from IBM by 21CS, a subsidiary of Teracloud, and initially branded as 21CS Streams. As part of our strategy to unify our product portfolio, it has now been rebranded as Teracloud Streams. This transition preserves the robust capabilities that enterprises have relied upon while enabling accelerated innovation and modernization under Teracloud's leadership.
    • As part of this transition, some aspects of the product have changed:
      • The default installation directory has changed to /opt/teracloud/streams (for root user installation) and $HOME/teracloud/streams (for non-root user installation).
      • The name of the system service was changed from ibm-streams-domain-id to teracloud-streams-domain-id. If the domain ID contains globalization characters, the system service name will be encoded.
  • Support for Red Hat Enterprise Linux (RHEL) 8.10 and 9.4 or later
  • Streams now requires a Java Development Kit (JDK) 17 or later install
  • Support for Java 17 and C++ 17
  • New Python Operator
  • Enhanced REST API
    • Manage your domain and instances with the new REST API. As part of this enhancement, domains now have a new rest service. Additionally, a live view of the REST API reference is now provided with every running domain. See the new REST API reference for a full list of capabilities.
  • New Data Exchange feature
    • Directly inject and retrieve tuples from an application using a REST API backed by the Streams Authentication and Authorization service. For more information, see Enabling Streams data exchange.
  • TLS 1.3 is now the default cryptographic protocol
  • Additional enhancements and fixes
    • Keystores for domains now use pkcs12 format instead of JKS.
    • PE containers now gracefully handle disconnected clients.
    • Applications using Export operators better clean up dynamic connections.
Toolkits
  • Toolkits have been rebranded to Teracloud Streams
    • Toolkit namespaces have changed from com.ibm.streams[x]. to com.teracloud.streams. to standardize naming conventions and easily identify which toolkits are supported by Teracloud. To help migrate existing applications to the new namespace, see the product-installation-root-directory/7.2.0.0/bin/teracloud-toolkit-migration-tool.sh script.
    • As part of the rebranding, all toolkit major version number have been incremented and require Streams 7.2.0.0 or later product versions.
  • New toolkits
    • crossdcfailover - Provides application-level failover across two data centers enabling Disaster Recovery (DR) and Business Continuity (BC)
    • inetserver - Provides support HTTP-Server operators and functions
  • Username support for Redis data stores in the DPS toolkit
    • Redis 6 introduced Access Control Lists (ACLs) which allows a username to be specified in the AUTH commands. The DPS toolkit has been updated to allow for this support in the store configuration. See the DPS toolkit reference for more information.

Removed functionality

Removed functionality Recommended action / Replacement
Removed platform support
Support for IBM Power (ppc64 and ppc64le) architecture Only x86_64 is supported
Support for CentOS
Support for SUSE Linux
Support for RHEL 7 RHEL 7 has reached end of maintenance support. Use RHEL 8.10 or 9.4, or later instead.
Adding domain hosts via SSH Streams will no longer use SSH to communicate with other resources. In previous versions of Streams, the domain.sshAllowed property was set to true by default.

The domain.sshAllowed property has been removed and users should follow the steps in Setting up resources in an enterprise domain.

Removed interfaces
Domain Manager GUI Use streamtool CLI for creating and managing the domains.
Streams Studio The Streams Studio Integrated Development Environment (IDE) has been discontinued and is no longer available for use with Teracloud Streams version 7.2.

A new IDE will be introduced for use with Streams 7.2 and future releases. Teracloud® Streams is transitioning to Visual Studio Code (VS Code) as its IDE framework direction. This shift leverages VS Code’s foundation to enhance integration with popular AI tools and frameworks, while also delivering a smoother development experience for Streams developers. The new IDE will support development in all programming languages used by Streams applications.

The new Streams IDE will be available as a VS Code extension, accessible through the Visual Studio Code Extension Marketplace.

Removed the following streamtool commands:
  • installpolicyfiles
  • lsdevicetypes
  • lsdevices
  • lsdevicecommands
  • mkresourcepkg
  • submitdevcommand
  • cleardevicecommands
  • setigcadminconfig
  • setiamconfig
  • setkrbprincmapping
  • getkrbmappedname
  • getkrbprincmapping
  • setkrbprincmapping
Removed integrations
  • Device manager API
  • Apache Edgent integration
  • Apache Hadoop YARN external resource manager
  • IBM Spectrum Symphony® external resource manager
  • IBM® InfoSphere® Information Governance Catalog integration
  • Streams Runner for Apache Beam
  • Streams for Excel plug-in
Removed toolkit features
Removed the following toolkits:
  • rules
  • rulescompiler
  • text
  • eventstore
  • iot
  • messaging
  • sparkmllib
See the Toolkit Reference for individual toolkit release notes and information.
Removed deprecated namespaces in Geospatial toolkit
Removed the following from Topology toolkit:
  • Scala support
  • Removed the following contexts for Topologies and their relative packages/classes:
    • ANALYTICS_SERVICE
    • BUILD_ARCHIVE
    • EDGE_BUNDLE
    • EDGE
    • STANDALONE_BUNDLE
    • STREAMING_ANALYTICS_SERVICE_TESTER
    • STREAMING_ANALYTICS_SERVICE