3.00.4

Version: 3.00.4   Compatibility Level 2 with 3.00.3

For details, see Compatibility Changes.

Release Date: 2025-09-05

Available Downloads:

New Features

  • Added function bondYieldCurveBuilder for building bond yield curves (bootstrapping spot rates from yields to maturity).
  • Added function irSingleCurrencyCurveBuilderfor building a single-currency interest rate swap yield curve.
  • Added function irCrossCurrencyCurveBuilder for building cross-currency interest rate swap (implied foreign currency) yield curves.
  • Added function fxVolatilitySurfaceBuilder for building FX option volatility surfaces.
  • Added function bondPricer for pricing an individual bond.
  • Added function bondFuturesPricer for pricing bond futures contracts.
  • Added function irDepositPricer for pricing deposits.
  • Added function irFixedFloatingSwapPricer for pricing plain-vanilla interest rate swaps.
  • Added function fxForwardPricer for pricing FX forward contracts.
  • Added function fxSwapPricer for pricing FX swaps.
  • Added function fxEuropeanOptionPricer for pricing FX European options.
  • Added function instrumentPricer for batch pricing of financial contracts.
  • Added function portfolioPricer for portfolio pricing of financial contracts.
  • Added function parseInstrument for serializing financial contracts into INSTRUMENT objects.
  • Added function parseMktData for serializing market data into MKTDATA objects.
  • Added function extractInstrument for deserializing INSTRUMENT objects.
  • Added function extractMktData for deserializing MKTDATA objects.
  • Added function curvePredict for predicting values at specified times on a given curve.
  • Added function optionVolPredict for predicting volatilities at specified times and strikes on a given volatility surface.
  • Added functions StreamGraph::updateRule and StreamGraph::deleteRule for persistent rule updates in the Orca rule engine.
  • Added function DStream::udfEngine for creating UDF engines with side-effect and state persistence support.
  • Added function getUdfEngineVariable to query external variable values defined in DStream::udfEngine.
  • Added function getOrcaDataLineage for querying data lineage of stream graph tables and Orca time-triggered job information.
  • Added functions createNearestJoinEngine and DStream::nearestJoinEngine for creating nearest-neighbor join engines in stream computing.
  • Added function StreamGraph::dropGraph for dropping stream graphs.
  • Added functions startStreamGraph and stopStreamGraph for controlling stream graph execution.
  • Added functions createOrcaStreamTable, createOrcaKeyedStreamTable, createOrcaLatestKeyedStreamTable, createOrcaHaStreamTable, and createOrcaHaKeyedStreamTable for creating Orca stream tables without stream graphs.
  • Added function dropOrcaStreamTable for dropping Orca stream tables.
  • Added streaming SQL for continuous querying and real-time updates.
  • Added function roll for defining custom sliding windows.
  • Added functions addMCPTool, updateMCPTool, dropMCPTool, callMCPTool, listMCPTools, publishMCPTools, and withdrawMCPTools for MCP tool development and management.
  • Added functions addMCPPrompt, updateMCPPrompt, dropMCPPrompt, listMCPPrompts, getMCPPrompt, publishMCPPrompts, and withdrawMCPPrompts for MCP prompt template management.
  • Added new permissions: MCP_MANAGE, MCP_DEVELOP, and MCP_EXEC.
  • Added function getClusterVolumeUsage for checking disk usage across cluster nodes.
  • Added functions getIPConnectionLimit and setIPConnectionLimit for managing external connections by IP.
  • Added functions getExecDir and getWorkDir for retrieving the dolphindb executable directory and working directory.
  • Added function getRawScriptLog for querying raw script logs.
  • Added configuration parameters enableRawScriptLog, rawScriptLogRetentionTime, maxRawScriptLogSize for logging raw scripts and execution details.
  • Added configuration parameter enableSharedVarCreationControl for controlling whether users can create shared variables.
  • Added configuration parameter processVectorFunctionOverTupleByRow for controlling how vector functions are applied to tuples/dictionaries.
  • Added configuration parametersstreamingRaftLearners and crossClusterRaftWorkerNum for configuring Raft learner nodes.
  • Added configuration parameter streamingRaftGroupAliases for assigning aliases to Raft groups.
  • Added snapshot mechanism support with parameters snapshotDir and snapshotIntervalInMsgCount in createTimeBucketEngine, createNarrowReactiveStateEngine, createCryptoOrderBookEngine, createOrderBookSnapshotEngine, createRuleEngine, and createReactiveStatelessEngine.
  • Added function dropDataViewEngine for removing specific data view engines in CEP.
  • Added function matchFuzzy for fuzzy matching queries.
  • Added support for text vectorization .
  • Added function createExternalTable for creating external tables.
  • Added support for table joins in MoM cluster.
  • Added function semiannualBegin and semiannualEnd for retrieving the first and last day of the semiannual period.
  • Added function recursiveSplitText for recursive text splitting by delimiters.
  • Added function renameCatalogName for renaming the name part of fully qualified names.

Improvements

  • Improved error messages in stream graphs when output data has inconsistent schemas.
  • Extended getStreamGraphInfo to include engine metric information.
  • Extended StreamGraph::haSource, StreamGraph::haKeyedSource, DStream::haBuffer, DStream::haKeyedBuffer, DStream::haSink, and DStream::haKeyedSink: parameter raftGroup now supports Raft group IDs.
  • Extended subscribeTable to support cross-cluster subscription of Orca stream tables.
  • Added support for managing permissions on Orca stream tables.
  • Added parameter includeTables to dropStreamGraph to control whether Orca stream tables inside the graph are also dropped.
  • Added parameter dimReduceCol to createGPLearnEngine to enable downsampling factor mining.
  • Shark Graph now supports the operators rowAvg, rowSkew, rowVar, rowVarp, rowStd, and rowStdp.
  • Optimize disk management mechanism.
  • Improved performance of min/max queries on partition columns of TIMESTAMP type when partitioned by day with VALUE partitioning.
  • Optimized partition pruning to improve performance of queries such as select * from t where id in ids when ids is a TABLE.
  • Improved query performance on VALUE partitioned tables with < or <= filters on partition columns.
  • Improved system performance under high concurrency.
  • Optimized script engine for better expression execution performance.
  • Added support for NANOTIMESTAMP type in the eventTime column of dummyTable for createCryptoOrderBookEngine.
  • Enhanced license function to return additional module and product names: Beluga, Backtest, MatchingEngineSimulator, ORCA, DOLPHINX.
  • Added parameter stat to function getStreamingStat for specifying which status table to return.
  • Added parameter preserveOrder to sliceByKey to control whether results follow the order of rowKeys.
  • Added parameter scoreColName for retrieving text match scores.
  • Added parameter Y to log to specify the logarithm base.
  • Extended at to support integer vectors as parameter X.
  • The outputTables parameter of the replay function now supports stream tables with a timestamp column specified by setStreamTableTimestamp.
  • The handler parameter of the addEventListener function now supports invoking functions outside the monitor class.
  • Extended reverse to support in-memory tables and ordered dictionaries.
  • Binary operations are supported for types of dictionary and tuple.
  • Extended createTimeSeriesEngine and createDailyTimeSeriesEngine to support scalar or vector constants for the metrics parameter.
  • Extended rank and enlist to support dictionaries.
  • Improved dropStreamEngine to forcibly terminate background threads when releasing stream distribution engines.
  • Optimized getConsoleJobs to provide clearer jobType and desc information.
  • Extended parseJsonTable to support parsing arrays in JSON.
  • Added parameter validation to create table.
  • Extended loadText toparse
    • TIME/SECOND/NANOTIME types into TIME/NANOTIME types.
    • DATETIME/TIMESTAMP types into NANOTIMESTAMP type.

Issues Fixed

  • Fixed an issue where bfill produced incorrect results when processing certain special characters.
  • Fixed an issue where temporary files were not reclaimed immediately after an unexpected transaction termination and restart.
  • Fixed a memory leak in the controller when client high availability was enabled.
  • Fixed an issue where scheduled jobs occasionally failed to execute and subscriptions stalled under high system load.
  • Fixed an issue where unexpected interruptions during tiered storage data migration could leave residual files.
  • Fixed a query failure issue when the SYMBOL column contained values ending with \r.
  • Fixed a memory leak in IoT engine under special circumstances.
  • Fixed a resource leak caused by incomplete cleanup when threads exited.
  • Fixed an issue where recovery of controller metadata from data nodes failed when the number of partitions exceeded 10 million.
  • Fixed an issue where the CEP engine did not support functions such as isVoid.
  • Fixed an error when assigning aliases to GROUP BY fields in the SELECT clause.
  • Fixed incorrect query results when using interval.
  • Fixed occasional hangs during concurrent access to stream tables.
  • Fixed an issue in the IMOLTP engine where deleting data did not release memory.
  • Fixed an issue where functions mstd, mstdp, mvar, and mvarp incorrectly returned 0 when X could not fill the window.
  • Fixed an issue where mstdp and mvarp returned incorrect results when the first element of X was NULL.
  • Fixed an issue where dropping a catalog using dropCatalog did not delete its Orca stream graphs.