StarRocks version 3.5
アップグレードに関する注意
-
StarRocks v3.5.0 以降は JDK 17 以上が必要です。
- v3.4 以前からのアップグレードでは、StarRocks が依存する JDK バージョンを 17 以上に更新し、FE の構成ファイル fe.conf の
JAVA_OPTSにある JDK 17 と互換性のないオプション(CMS や GC 関連など)を削除する必要があります。v3.5 設定ファイルのJAVA_OPTSのデフォルト値を推奨する。 - 外部カタログを使用するクラスタでは、BE の構成ファイル be.conf の
JAVA_OPTS設定項目に--add-opens=java.base/java.util=ALL-UNNAMEDを追加する必要がある。 - Java UDF を使用するクラスタでは、BE の構成ファイル be.conf の
JAVA_OPTS設定項目に--add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.base/sun.nio.ch=ALL-UNNAMEDを追加する必要がある。 - また、v3.5.0 以降、StarRocks は特定の JDK バージョン向けの JVM 構成を提供しません。すべての JDK バージョンに対して共通の
JAVA_OPTSを使用します。
- v3.4 以前からのアップグレードでは、StarRocks が依存する JDK バージョンを 17 以上に更新し、FE の構成ファイル fe.conf の
-
クラスタを v3.5 にアップグレードする前に、v3.4.10 以降にアップグレードすることを推奨します。そうしない場合、グレースケールアップグレード中に以下のステートメントを実行して、低カーディナリティ最適化を手動で無効化する必要があります:
SET GLOBAL cbo_enable_low_cardinality_optimize=false;
ダウングレードに関する注意
- StarRocks を v3.5 にアップグレードした後、直接 v3.4.0 ~ v3.4.5 にダウングレードしないでください。そうするとメタデータの非互換性を引き起こす。問題を防ぐために、クラスタを v3.4.6 以降にダウングレードする必要があります。
- StarRocks を v3.5.2 以降にアップグレードした後、v3.5.0 および v3.5.1 にダウングレードしないでください。そうすると FE がクラッシュします。
3.5.17
リリース日:2026 年 5 月 13 日
動作変更
SHOW CREATE TABLEとDESCで Paimon テーブルの主キーを表示するようになりました。 #70535- Hive Catalog で insert-only ACID Hive テーブルへの INSERT を無効化しました。 #71460
- Profile の
START_TIMEとEND_TIMEをセッションタイムゾーンで表示するようになりました。 #71429
改善点
INSERT INTO FILESの CSV エクスポートでcsv.encloseとcsv.escapeをサポートしました。 #71589- 監査ログにクエリ対象の relation 情報を記録できるようにしました。 #71596
- FE 設定
star_mgr_meta_sync_interval_secを動的に変更できるようにしました。 #71675 - テーブルメタデータおよび行数統計関連のパスで、メタデータ読み込みとロックのオーバーヘッドを削減しました。 #72053 #72042 #71672
- Broker Builder を FE ビルドに統合し、WildFly OpenSSL を削除して、ビルドと依存関係管理を改善しました。 #71823 #71908
バグ修正
以下の問題を修正しました:
- OFFSET を含む Local Shuffle 集約クエリで誤った結果が返される問題。 #71997
- Exchange Shuffle 列の pruning 後に Join の出力プロパティが正しく更新されない問題。 #72003
- 複数の依存関係 CVE 問題。 #71762 #71914
- Oracle JDBC の NLS フォーマット処理の問題。 #71412
- Iceberg Manifest Data File Cache で列統計情報が失われる問題。 #71913
- INSERT OVERWRITE の commit 前に Hive パーティションディレクトリが作成されない問題。 #71810
- Iceberg ベーステーブルでの集約 Join Pushdown MV Rewrite および Min/Max 最適化の問題。 #71856 #71863
ConnectorSinkPassthroughExchangerとLoadChannel::get_load_replica_statusの競合問題。 #71848 #71843- INSERT FILES 操作における認証情報のマスキング問題。 #71245
reverse(DecimalV3)の結果が誤る問題。 #71834- Java UDF コードで JNI 例外処理チェックが不足していた問題。 #71734
EventSchedulerの Short-circuit チェックが正しくない問題。 #71740- Arrow Flight の空結果セットで列名が誤る問題。 #71534
- パーティションのバージョンギャップにより Batch Publish がデッドロックする問題。 #71483
- スカラーサブクエリプランで Apply Attachment が重複する問題。 #71155
3.5.16
リリース日:2026 年 4 月 20 日
改善点
WarehouseManagerで握りつぶされていた例外について、より分かりやすい警告ログを追加しました。 #71215- Routine Load で非再試行エラー発生時にジョブを一時停止できるようにしました。 #71161
- 「全スレッドのスタック出力」ユーティリティにスレッド名を追加しました。 #69366
- FE で
regexp_replaceの定数畳み込みをサポートしました。 #70804 - PostgreSQL 外部テーブルの列コメント表示をサポートし、
information_schema.tablesが External Catalog の完全なメタデータを取得できるようにしました。 #70520 #70197 - クエリ例外発生時に実行計画を自動ダンプできるようにしました。 #70387
- Cloud-native Tablet メタデータ取得と修復の効率を改善しました。 #70492 #70386
- FE で Tablet のバッチ削除をサポートし、書き込みロック競合を軽減しました。 #70052
- Update Compaction Suspension 向けログを追加し、Iceberg のメタデータテーブルクエリおよび Time Travel クエリ向けのメトリクスを追加しました。 #70538 #70825 #70788
バグ修正
以下の問題を修正しました:
be_tablets.DATA_SIZEが Rowset 列データサイズをより正確に報告するようになりました。 #70735- Broker ビルドで使われていた古い Maven リポジトリ設定を削除しました。 #71533
parallel_clone_task_per_path更新時のスレッドプールサイズ更新ロジックを修正しました。 #71484- 複数の use-after-free 問題を修正しました。 #71513 #71276 #71083 #62917 #69926 #69968
- リソースグループの
userclassifier の検証ルールをCREATE USERと一致させました。 #71470 - StarMgr Journal のリプレイ同期不足により Follower FE で
no queryable replicaが発生する問題を修正しました。 #71263 - 複数の依存関係 CVE を修正しました。 #71256 #71017 #70862
- グローバル変数を含む reduce cast 後に
VARCHAR長が失われる問題を修正しました。 #70269 information_schema.tablesの等価述語で特殊文字が正しくエスケープされない問題を修正しました。 #71273- Alter Job 間で
UpdateTabletSchemaTaskのシグネチャが衝突する問題を修正しました。 #71242 PushDownAggregateRewriterにおけるCASE WHEN/IFの共有オブジェクト変更問題を修正しました。 #71309- 非アクティブなマテリアライズドビュー スケジューラが停止しない問題を修正し、TaskManager のスケジューラコールバックに Leader チェックを追加しました。 #71265 #71156
- MCV のみを持つヒストグラムで行数推定が
NaNになる問題を修正しました。 #71241 - AWS SDK で
s3-transfer-manager依存関係が欠落していたことによるパッケージング問題を修正しました。 #71230 - Leader Forward 終了後にスレッドローカル
ConnectContextが汚染される問題を修正しました。 #71141 - 書き込みトランザクションと Compaction トランザクションが同じ publish バッチで適用された場合に、孤立した delvec エントリが生成される問題を修正しました。 #71001
- Short-circuit Point Lookup でパーティション述語が欠落する問題を修正しました。 #71124
- 集約 Spill の
set_finishing中に Hash Table データが失われる可能性がある問題を修正しました。 #70851 current_queriesに Query Progress HTTP ループバック記録が含まれてしまう問題を修正しました。 #71032- ディスク再マイグレーション(A→B→A)中の GC 競合により Primary Key Tablet の Rowset メタデータが失われる問題を修正しました。 #70727
SharedDataStorageVolumeMgrにおける DB 読み取りロックリークを修正しました。 #70987NullableColumn、BinaryColumn、locate()でNullColumnが不正に共有される問題を修正しました。 #66037 #70957- グローバル Runtime Filter の readiness チェックにおける競合と、
ACCUMULATEDマクロの切り詰めによるメトリクスオーバーフローを修正しました。 #70920 #70895 - 回帰的な非表示変更を巻き戻し、
DESC/SHOW CREATE TABLEで生成列が再び表示されるようにしました。 #70037 - Load Spill ディレクトリのクリーンアップ時機、Memory Table Spiller の Workgroup 処理に起因する ASAN クラッシュ、物理分割有効時に空の Tablet をスキャンした際の CN クラッシュを修正しました。 #70778 #64379 #70281
proxy_pass_request_bodyが無効な場合のContent-Length処理を修正しました。 #70821INSERT INTO BY NAME ... FROM FILES()における複数の Schema Pushdown 問題を修正しました。 #70762 #70774 #70622 #70621- MySQL / JDBC ScanNode における無効な述語 pushdown により BE で型エラーが発生する問題を修正しました。 #70694
- Iceberg Manifest Cache の不完全なキャッシュ、部分書き込み、vended credentials 有効時にキャッシュが適用される問題を修正しました。 #70675 #70652 #69434
- Ubuntu Runtime 環境で
libssl-devが不足していた問題を修正しました。 #70688 - 監査ログと SQL Redaction においてユーザー認証文字列が適切にマスクされない問題を修正しました。 #70360
- Iceberg 系 Connector の外部マテリアライズドビュー refresh 問題を修正しました。 #70589 #70523
array_mapが null リテラル配列を処理する際のクラッシュと、MaskMergeIteratorで子イテレータが枯渇した場合の BE クラッシュを修正しました。 #70629 #70539starlet設定更新がstd::call_onceにより誤って固定される問題を修正しました。 #70482- Iceberg マテリアライズドビュー refresh が非単調な Snapshot タイムスタンプに依存して不安定になる問題を修正しました。 #70382
- 強制 MV refresh を支援する
mv_refresh_force_partition_typeを追加し、MV refresh 中の重複パーティション名問題を修正しました。 #70381 #70354 OlapTableSinkが異なるパーティションで誤った分散列を使用する問題を修正しました。 #70310REFRESH EXTERNAL TABLE FORCEサポートを、より安全な再実装までの間いったん巻き戻しました。 #70114- 欠損ファイルチェック時に、Tablet メタデータの複数バージョン間で同じオブジェクトストレージ確認を繰り返す問題を修正しました。 #70364
- RESTORE 時に
dataVersionが設定されない問題を修正し、関連 MV Rewrite ロジックも修正しました。 #70373 #69751 - 取り込み時に
query_poolのメモリ統計が負になる問題を修正し、高並行時の FE OOM リスクを低減しました。 #70228 #68444 - SLF4J のパラメータ化ログ記法の誤りを修正しました。 #70330
AuditEventProcessorがOutOfMemoryException発生時に終了してしまう問題を修正しました。 #70206- Primary Key テーブルの column-mode partial update に関する扱いを調整しました。このリリース期間中に導入された初期の破損修正は、後続対応のためいったん巻き戻されています。 #69652
InformationFunctionの等価性判定および重複排除の問題を修正しました。 #70464- 例外が
NoSuchElementExceptionにラップされている場合のbrpcリトライ処理を修正しました。 #70203 - lock-free MV Rewrite が live metadata にフォールバックする際の問題を修正しました。 #70475
JoinHashTable::merge_ht()が式ベース Join Key 列で Dummy Row をスキップしない問題を修正しました。 #70465
3.5.15
リリース日:2026 年 3 月 26 日
動作変更
sql_modeにDIVISION_BY_ZEROまたはFAIL_PARSE_DATEが設定されている場合、str_to_date/str2dateでのゼロ除算および日付解析失敗がエラーを返すようになりました(以前は無視されていました)。#70004FORBID_INVALID_DATEsql_mode が有効な場合、INSERT VALUES句内の無効な日付が正しく拒否されるようになりました(以前は回避されていました)。#69803- 式パーティションの生成カラムが
DESCおよびSHOW CREATE TABLEの出力から非表示になりました。#69793 - 監査ログにクライアント ID が含まれなくなりました。#69383
REFRESH EXTERNAL TABLEのFORCEオプションが取り消され、サポートされなくなりました。#70428
改善点
desc_hint_split_rangeを0以下に設定することで、降順 TopN のスキャン範囲の分割と逆順スキャンを無効化できるようになりました。#70307information_schemaで外部カタログテーブルのコメントが表示されるようになりました。#70197- Trino 方言で
INSERT文に対するEXPLAINおよびEXPLAIN ANALYZEのサポートを追加しました。#70174 CatalogRecycleBinの動作を制御する設定可能なパラメータを追加しました。#69838ADMIN REPAIR TABLEおよびSHOW TABLET STATUSを改善し、より詳細な修復・ステータス情報を提供するようになりました。#69656- ブラックリストに登録されたクエリがエラーメトリクスから除外されるようになりました。#69621
- 共有データモードでクラウドネイティブタブレットの
SHOW TABLET STATUSをサポートしました。#69616 - 共有データモードでの Primary Key タブレット統計収集のオーバーヘッドを削減しました。#69548
- 実行状態レポートスレッドプールサイズの動的設定をサポートしました。#69142
バグ修正
以下のバグを修正しました:
- タブレットのリストア時にデータバージョンが設定されない問題。#70373
- Hive テーブル作成時にテーブルコメントが設定されない問題。#70318
- 倍精度演算の定数畳み込みでエラーの代わりに
INFが返される問題。#70309 - Iceberg マテリアライズドビューのリフレッシュがスナップショットのタイムスタンプ非単調増加時に失敗する問題。#70382
toIcebergTable関数のプロパティマッピングでcommonがcommentであるべき問題。#70267- Root ユーザーが一部のシナリオで Ranger 権限チェックを正しくバイパスしない問題。#70254
OutOfMemoryException発生時にAuditEventProcessorスレッドが予期せず終了する問題。#70206- スキーマ変更のパブリッシュ中に
cal_new_base_versionで範囲外アクセスが発生する問題。#70132 - 境界比較での型不一致によりパーティション述語が予期せず刈り込まれる問題。#70097
- BE ランタイムで
str_to_dateがマイクロ秒精度を失う問題。#70068 set_callback_function呼び出し時に Join Spill プロセスがクラッシュする問題。#70030- bthread コンテキストから
DeltaWriter::close()を呼び出した際の DCHECK 失敗。#69960 AsyncDeltaWriterのクローズ/完了ライフサイクルにおける use-after-free 競合状態。#69940- Follower FE の
changeCatalogDbでジャーナルリプレイの完了を待機せず一貫性の問題が発生する問題。#69834 - 書き込みトランザクション完了の editlog が欠落する競合状態。#69899
- 既知の CVE 脆弱性への対応。#69863
- バックスラッシュエスケープシーケンスを含む LIKE パターンマッチングが正しく動作しない問題。#69775
- パーティションカラムのリネーム後に式解析が失敗する問題。#69771
AsyncDeltaWriter::closeにおける use-after-free クラッシュ。#69770Partition.hasStorageDataの結果が不正なことによるPartitionColumnMinMaxRewriteRuleの潜在的なバグ。#69751- ファイルシンクの出力ファイル名に CSV 圧縮サフィックスが重複する問題。#69749
- 実験的設定なしで Lake の
capture_tablet_and_rowsets操作にアクセスできる問題。#69748 - Primary Key SST テーブルのキャッシュ破損。#69693
AsyncFlushOutputStreamにおける use-after-free。#69688disableRecoverPartitionWithSameNameでの保持クロックのリセットが不正でスキャンが不完全な問題。#69677SchemaBeTabletsScannerで実行モードに基づいてタブレット情報が正しく取得されない問題。#69645- シャドウパーティション使用時のパーティション最小値プルーニングが不正な問題。#69641
- グレースフルシャットダウン後に異なるトランザクションが同じバージョンをパブリッシュする問題。#69639
rssidが見つからない場合にget_column_valuesでイテレータの未定義動作が発生する問題。#69617KILL ANALYZE文が実行中のANALYZE TABLE操作を停止できないことがある問題。#69592- パーティションテーブルでのマテリアライズドビュー強制リフレッシュに関する複数のバグ。#69488
3.5.14
リリース日:2026年3月5日
改善点
- Lake テーブルの Primary Key インデックスに対して、SST の読み書き失敗メトリクスを追加しました。#69513
- 「segment file not found」エラーのカウンタメトリクスを追加しました。#69543
convert_tzを含むスカラーサブクエリから範囲述語を抽出できるようにしました。#69055- Paimon テーブルで複雑型をサポートしました。#66784
- リモート Load の Spill Directory 削除を遅延させました。#68803
- クラウドネイティブテーブルの修復をサポートしました。#67108
- CSV 形式の Hive テーブルへ ARRAY 型の挿入をサポートしました。#67355
バグ修正
以下の問題を修正しました:
RowGroupWriterの例外による予期しない動作。#69568- Aggregate Key / Unique Key テーブルで Schema Change 実行後に、新しく追加された Key 列がソートキーに含まれない問題。#69529
resource_busy状態において、メトリクスg_publish_version_failed_tasksが実際の状況を正しく反映しない問題。#69526- Primary Key Tablet をゴミ箱へ移動する際に Rowset ファイルが削除される問題。#69438
- 同時 SWAP 後の名前ベースのテーブル検索により
addPartitionsでロックリークが発生する問題。#69284 isInternalCancelErrorがequalsを使用しており、startsWithを使用していなかった問題。#69523_writer->Close()がParquetStatusException以外の例外をスローした場合に、Pipeline がブロックまたはクラッシュする問題。#69492- Hadoop-client ライブラリの不具合。#69503
- 書き込み失敗時に誤って成功が返される問題。#69473
- CVE-2025-67721 の修正。#69138
- 共有データクラスタにおける低カーディナリティ最適化時の RuntimeFilter 問題。#64669
- マテリアライズドビューの Tablet メタデータが FE Leader と Follower 間で不一致となる問題。#69428
- Rollup ハンドラの active transaction ID が
computeMinActiveTxnIdで考慮されない問題。#69285 - 複数 FE 環境での Arrow Flight Proxy の問題。#68300
- 関数フィールドの並行性バグ。#69315
DROP FUNCTION IF EXISTSがifExistsフラグを無視する問題。#69216- LDAP 認証においてユーザー名の大文字・小文字を区別しない正規化が不足している問題。#67966
- 一部のパーティションが書き込み不可となる問題。#68221
- 共有ミュータブル状態により、マテリアライズドビューのリライト時に Projection が失われる問題。#69063
- クエリテーブルコピー時のパーティション大文字・小文字非区別検索の問題。#69173
- 同期マテリアライズドビューにおける全 NULL 値処理の不具合。#69136
- 外部カタログ参照時の
mv onReloadに関する問題。#68926 - 重複定数に対する DISTINCT ORDER BY エイリアスの問題。#69014
- 共有データクラスタで CHAR 列長変更後に誤ったクエリ結果が返される問題。#68808
- Azure ABFS/WASB FileSystem のキャッシュキー問題。#68901
- 定数側カラム参照を含む OUTER JOIN における述語リライトの誤り。#67072
IllegalArgumentExceptionによるコンパレータの推移律違反。#68743report_fragmentにおいてクエリ寿命が Fragment より短い場合に発生する問題。#67219- 共有
DecodeInfoによる低カーディナリティリライト時の NPE。#68799 pcu_upt_cntメトリクスが欠落している問題。#68845- JSON flatten で同一パス上の配列/オブジェクト競合問題。#68804
ClonExprの nullable 関連バグ。#68800
3.5.13
リリース日:2026年2月13日
改善点
- テーブルレベルのメトリクス収集を制御するための FE 設定項目
enable_table_metrics_collectを追加しました。#68691 - ユーザーレベルで Merge Commit のデフォルト Warehouse を設定できるようになりました。#68616
バグ修正
以下の問題を修正しました。
- レプリケーショントランザクションにおけるソースパーティションのチェック問題。#68883
BEGIN TRANSACTIONで label を指定した場合に、使用済み label が正しく識別されない問題。#68660- CTE スコープに関連する
JOIN ON句の不具合。#68809 - 明示的に下限を指定した場合に、範囲パーティションが重複して作成される問題。#68255
- SQL 方言を Trino から StarRocks にダウングレードした際のパーサーロジックの誤り。#68725
- プロジェクション列のプルーニングに関する問題。#68242
- サブクエリのスコープチェックの問題。#68415
- 関数アナライザにおける型キャストの不一致。#66749
- 候補マテリアライズドビューの選択ロジックの誤り。#68571
- Thrift の
acceptスレッドが例外発生時に終了する問題。#68644 - Iceberg データファイルサイズの見積もりが不正確な問題。#68787
- Lake テーブルのメモリリーク問題。#68678
- HMS 接続プールが満杯の際にデッドロックが発生する問題。#68033
- Iceberg における削除列の NULL 許容属性の問題。#68649
- マテリアライズドビューが大規模な外部テーブルを保持する問題。#68171
- Iceberg テーブルキャッシュのメモリ制限に関する問題。#67769
- PocoHttpClient で誤ったタイムアウトパラメータが使用されていた問題。#68765
- Clang 使用時に BE のコンパイルが失敗する問題。#68805
- 起動時にマテリアライズドビューが複数回再読み込みされる問題。#62351
- CVE-2025-27821。#68529
- 特定のシナリオにおいて可変長引数関数が誤った日付値を返す問題。#67947
3.5.12
リリース日:2026 年 1 月 22 日
改善点
- 未使用の接続をクリーンアップするため、BrpcStubCache にクリーナーを追加しました。 #61417
- 統計情報の削除(削除済みテーブル向け)および Edit Log 書き込みリクエストのバッチ処理をサポートしました。 #67896
- 暗号化が必要な場合でも、監査ログ内の SQL コメントを保持するようにしました。 #63298
- マテリアライズドビューのメトリクスに
warehouse_nameラベルを追加しました。 #67715 - JDBC のテーブル名およびカラム名に対する識別子のラップ処理を改善しました。 #67853
- Iceberg JDBC カタログに
CLIENT_FACTORYプロパティを追加しました。 #67613
バグ修正
以下の問題を修正しました:
- DATE 型と DATETIME 型を混在させた場合に、可変長引数関数が誤った日付を返す問題。 #67947
- 非決定的な式において
NormalizePredicateRuleが振動する問題。 #67923 - Lambda 関数における低カーディナリティ関連の不具合。 #67843
- サブフィールド式が子サブフィールドを収集しない問題。 #67850
- 子ノードの統計情報が欠如している場合に、RBO の Join Reorder で NPE が発生する問題。 #67693
- MemTable の finalize 失敗により BE がクラッシュする問題。 #67787
- 動的 overwrite 実行後、FE 再起動時に一時パーティションがクリーンアップされない問題。 #67629
- Compaction の I/O 統計情報が不正確な問題。 #67524
- レプリケーショントランザクション中に、クラスタ間の物理パーティション比較ロジックが誤っている問題。 #67616
- SQL Server および Oracle における識別子記号の処理に関する問題。 #67965
- 設定の伝播不足により、Iceberg メタデータテーブルのクエリで NPE が発生する問題。 #67151
- 空の Parquet または ORC ファイルに対する
files()のスキーマ検出に関する問題。 #67762 - Hive テーブルで UNION ALL を使用した際に、Profile 内のメトリクス値が不正確になる問題。 #67912
- FE クエリにおいて、Arrow Flight プロキシ経由でのデータ取得がサポートされていない問題。 #67794
OlapTableSink::is_full()における競合状態により、自動パーティション作成中に発生する SIGSEGV クラッシュ。#67566
3.5.11
リリース日:2026年1月5日
改善点
- ノードにアクセスできない場合でも、Arrow Flight を使用したデータ取得をサポートしました。#66348
- SIGTERM ハンドラで、終了原因(トリガーとなったプロセス情報を含む)をログに記録するようになりました。#66737
- UPDATE 文が自動統計情報収集をトリガーできるかどうかを制御する FE 設定
enable_statistic_collect_on_updateを追加しました。#66794 networkaddress.cache.ttlの設定をサポートしました。#66723- 「no rows imported」エラーメッセージを改善しました。#66624 #66535
- 大規模パーティションテーブルに対し、遅延評価による
deltaRowsの最適化を行いました。#66381 - マテリアライズドビューのリライト性能を最適化しました。#66623
- Shared-Data クラスタにおいて、単一 Tablet の
ResultSink最適化をサポートしました。#66517 rewrite_simple_agg_to_meta_scanをデフォルトで有効化しました。#64698- GROUP BY 式のプッシュダウンおよびマテリアライズドビューのリライトをサポートしました。#66507
- マテリアライズドビュー関連ログを改善するため、
newMessageのオーバーロードメソッドを追加しました。#66367
バグ修正
以下の問題を修正しました:
- 入力 Rowset が見つからない場合に Publish Compaction がクラッシュする問題。#67154
- 列数の多いテーブルをクエリする際、
update_segment_cache_sizeの繰り返し呼び出しにより CPU オーバーヘッドおよびロック競合が発生する問題。#66714 MulticastSinkOperatorがOUTPUT_FULL状態で停止する問題。#67153- Skew Join Hint における「column not found」エラー。#66929
- Tablet 数が増加し続け、pending と running tablet の合計が総 tablet 数と一致しない問題。#66718
- Leader 起動時に構築された Compaction Map 内のトランザクションが CompactionScheduler から参照できず、削除されない問題。#66533
- Delta Lake テーブルのリフレッシュが反映されない問題。#67156
- DATE 述語を含む非パーティション Iceberg テーブルへのクエリで CN がクラッシュする問題。#66864
- 複数ステートメントを送信した際に Profile に正しく表示されない問題。#67097
- Meta Reader が Delta 列グループファイルの読み取りをサポートしていないため、統計情報収集中に辞書情報が欠落する問題。#66995
- Java UDAF における潜在的な Java Heap OOM 問題。#67025
- PARTITION BY および ORDER BY を指定しない Ranking Window 最適化のロジック誤りによる BE クラッシュ。#67081
- タイムゾーンキャッシュミス時のログレベルが不適切な問題。#66817
- Runtime Filter マージ時の
can_use_bf判定誤りにより、クラッシュや誤った結果が発生する問題。#67021 - Runtime Bitset Filter を他の OR 述語と一緒にプッシュダウンする際の問題。#66996
- lz4 の重要なパッチを適用しました。#67053
- AsyncTaskQueue のデッドロック問題。#66791
- ObjectColumn におけるキャッシュ不整合。#66957
- RewriteUnnestBitmapRule により出力列型が誤る問題。#66855
- Delta Writer において、FINISH タスク後に WRITE または FLUSH タスクが存在するとデータ競合やデータ損失が発生する問題。#66943
- 中断されたロードチャネルを再オープンしたことによる無効なロードチャネルおよび誤解を招く内部エラー。#66793
- Arrow Flight SQL に関する不具合。#65889
- MetaScan を使用してリネームされた列をクエリする際の問題。#66819
- スキュー除去が無効な場合、パーティション単位のスピル可能集約において Flush Chunk 前に Hash 列が削除されない問題。#66839
- BOOLEAN 型を文字列リテラルとして保存した場合、デフォルト値が正しく処理されない問題。#66818
decimal2decimalキャストが入力列をそのまま結果として返してしまう問題。#66773- Schema Change 中のクエリプランニングで NPE が発生する問題。#66811
- LocalTabletsChannel と LakeTabletsChannel 間のデッドロック。#66748
- 新しい FE において
publish_versionログに空のtxn_idsが表示される問題。#66732 - FE 設定
statistic_collect_query_timeoutの動作が不正な問題。#66363 - UPDATE 文で統計情報収集が行われない問題。#66443
- 低カーディナリティに関連する CASE リライトの不具合。#66724
- 列リストが空の場合に統計情報クエリが失敗する問題。#66138
- Hint により Warehouse を切り替えた際の使用量/記録不一致。#66677
ANALYZE TABLE文に ExecTimeout が設定されていない問題。#66361array_mapが定数単項式の場合に誤った結果を返す問題。#66514- FE 再起動後に外部キー制約が失われる問題。#66474
- 空テーブルに対する
max(not null string)がstd::length_errorをスローする問題。#66554 - 主キーインデックスの Compaction と Apply 間の並行性問題。#66282
EXPLAIN <query>の不正な動作。#66542- DECIMAL128 を Iceberg テーブル列に書き込む際の問題。#66071
- JSON → CHAR/VARCHAR 変換時、ターゲット長が最小長と等しい場合の長さチェック不具合。#66628
- 式の子ノード数が不正な問題。#66511
3.5.10
リリース日:2025 年 12 月 15 日
改善点
- BE のクラッシュログに実行計画ノード ID を出力できるようになり、問題のあるオペレーターの特定が高速化されました。 #66454
information_schema内のシステムビューに対するスキャンを最適化し、オーバーヘッドを削減しました。 #66200- スローロックの可観測性を向上させるため、2 つのヒストグラムメトリクス(
slow_lock_held_time_ms、slow_lock_wait_time_ms)を追加し、長時間保持されているロックと高いロック競合を区別できるようになりました。 #66027 - Tablet レポートおよびクローン処理において、レプリカロックの粒度をデータベースレベルからテーブルレベルに変更し、ロック競合を削減してスケジューリング効率を向上させました。 #61939
- BE ストレージ層で不要なカラムを出力しないようにし、述語計算を BE ストレージ層へプッシュダウンしました。 #60462
- バックグラウンドスレッドで scan range をデプロイする際のクエリ Profile の精度を向上させました。 #62223
- 追加タスクのデプロイ時における Profile の集計ロジックを改善し、CPU 時間が重複して計上されないようにしました。 #62186
- 参照されたパーティションが存在しない場合に、より詳細なエラーメッセージを追加し、障害の切り分けを容易にしました。 #65674
- サンプリング型のカーディナリティ推定をコーナーケースでより堅牢にし、行数推定の精度を向上させました。 #65599
- 統計情報のロード時にパーティションフィルタを追加し、INSERT OVERWRITE が古いパーティション統計を読み込まないようにしました。 #65578
- Pipeline CPU の
execution_timeメトリクスをクエリ用とロード用に分離し、ワークロード種別ごとの可観測性を向上させました。 #65535 enable_statistic_collect_on_first_loadをテーブル単位で設定可能にし、初回ロード時の統計収集をより細かく制御できるようにしました。 #65463- S3 に依存するユニットテストの名前を
PocoClientTestから、依存関係と目的を明確に表す S3 専用の名前に変更しました。 #65524
バグ修正
以下の問題を修正しました:
- 非互換な JDK で StarRocks を起動した際に libhdfs がクラッシュする問題。 #65882
PartitionColumnMinMaxRewriteRuleによる誤ったクエリ結果。 #66356- AST キーによる物化ビュー解決時に、メタデータが更新されずリライトに失敗する問題。 #66472
- 特定の Unicode 空白文字をトリムする際に、trim 関数がクラッシュまたは誤った結果を返す問題。 #66428, #66477
- 削除済み Warehouse を参照し続けることで発生するロードメタデータおよび SQL 実行エラー。 #66436
- グループ実行 Join とウィンドウ関数を組み合わせた場合の誤った結果。 #66441
resetDecommStatForSingleReplicaTabletUnlockedにおける FE の NullPointerException の可能性。 #66034- 共有データクラスタにおいて、
LakeDataSourceで Join ランタイムフィルタのプッシュダウン最適化が欠落していた問題。 #66354 - ランタイムフィルタ送信オプション(タイムアウト、HTTP RPC 制限など)が受信側に転送されず、パラメータが不整合になる問題。 #66393
- 既存のパーティション値がある場合に自動パーティション作成が失敗する問題。 #66167
- 高い選択性を持つ述語がある場合、監査ログ内のスキャン統計が不正確になる問題。 #66280
- 非決定性関数がオペレーターの下にプッシュダウンされることで発生する誤ったクエリ結果。 #66323
- CASE WHEN による式数の指数的増加。 #66324
- 同一クエリ内で同じテーブルが異なるパーティション述語で複数回参照された場合の物化ビュー補償の不具合。 #66369
- サブプロセスで fork を使用した際に BE が応答しなくなる問題。 #66334
- CVE-2025-66566 および CVE-2025-12183 への対応。 #66453, #66362
- ネストされた CTE の再利用によるエラー。 #65800
- スキーマ変更句の競合に対する検証不足による問題。 #66208
- Rowset コミット失敗時の不適切な Rowset GC 動作。 #66301
- Pipeline カウントダウン時の use-after-free の可能性。 #65940
- Stream Load において
information_schema.loadsのWarehouseフィールドが NULL になる問題。 #66202 - 参照先ビューがベーステーブルと同名の場合の物化ビュー作成不具合。 #66274
- グローバル辞書が特定条件下で正しく更新されない問題。 #66194
- Follower ノードから転送されたクエリの Profile ログが不正確な問題。 #64395
- SELECT 結果のキャッシュおよびスキーマ再順序時の BE クラッシュ。 #65850
- 式によるパーティション削除時にシャドウパーティションが削除される問題。 #66171
- 同一 Tablet に CLONE タスクが存在する場合でも DROP タスクが実行される問題。 #65780
- RocksDB のログファイル設定不備による安定性および可観測性の問題。 #66166
- NULL 結果を返す可能性のある誤った物化ビュー補償。 #66216
- BE が
SIGSEGVを受信後も生存状態として報告される問題。 #66212 - Iceberg スキャンに関する不具合。 #65658
- Iceberg ビュー SQL テストの回帰カバレッジおよび安定性問題。 #66126
set_collectorが繰り返し呼び出されることによる想定外の動作。 #66199- カラムモード部分更新と条件付き更新を併用した場合の取り込み失敗。 #66139
- 同時トランザクション下での一時パーティション値競合。 #66025
- Iceberg テーブルキャッシュにおいて、
cache.size() == 0の場合でも Guava LocalCache が古いエントリを保持し、更新が無効化される問題。 #65917 LargeInPredicateExceptionのフォーマット指定子が誤っており、エラーメッセージ内の件数が不正確になる問題。 #66152- connectContext が NULL の場合に
ConnectSchedulerのタイムアウトチェッカーで NullPointerException が発生する問題。 #66136 - スレッドプールタスクから投げられた例外が処理されず、クラッシュにつながる問題。 #66114
- 特定の実行計画において DISTINCT LIMIT のプッシュダウンによりデータが欠落する問題。 #66109
multi_distinct_countが二段階 HashSet へ変換後にdistinct_sizeを更新せず、誤った DISTINCT 件数となる問題。 #65916- Exec Group が次の Driver をサブミットする際の競合状態により、
Check failed: !driver->is_in_blocked()が発生し BE が終了する可能性。 #66099 - デフォルト値付きの ALTER TABLE ADD COLUMN と INSERT を同時実行した際、新しいカラムのデフォルト式型不一致により INSERT が失敗する問題。 #65968
- SparkSQL が早期終了した際、
RecordBatchQueueシャットダウン後にMemoryScratchSinkOperatorがpending_finishのままとなり、Pipeline がハングする問題。 #66041 - 空の Row Group を含む Parquet ファイル読み取り時のコアダンプ。 #65928
- 高 DOP 環境において、イベントスケジューラの準備判定が複雑なため再帰呼び出しやスタックオーバーフローが発生する問題。 #66016
- Iceberg のベーステーブルに期限切れスナップショットが存在する場合、非同期物化ビュー更新がスキップされる問題。 #65969
- オプティマイザが述語の差異判定に hashCode のみを使用することで発生する述語再利用および書き換えの問題。 #65999
- 多段階パーティションを持つベーステーブルの非同期物化ビュー更新において、親パーティションのみがチェックされ、子パーティション更新がスキップされる問題。 #65596
- 統計収集において、空の結果セットに対する AVG(ARRAY_LENGTH(...)) が NULL を返す問題。 #65788
- BE および FE におけるランタイム Profile カウンタの増分更新時に min/max 値が正しく更新・クリアされない問題。 #65869
- クラスタスナップショット作成時に image journal ID を取得するロジックが不正確な問題。 #65970
- ファイルクリーンアップ失敗時の状態判定ロジック誤りにより、結果が誤って報告される問題。 #65709
- DictMappingOperator の
isVariable()が特定条件で無限ループに陥る問題。 #65743 - scan range デプロイスレッドに ConnectContext が渡されないことによる監査ログおよび Profile データ欠落。 #63544
- ストレージエンジン停止時のローカル主キーインデックスマネージャにおける use-after-free。 #65534
- 動的上書きモードの INSERT OVERWRITE における統計収集の問題。 #65657
- DiskAndTabletLoadReBalancer の粗粒度ロックによる並行性問題。 #65557
- 重要なロックに対するスローロック検出がなく、スローロックが正しく検出・報告されない問題。 #65559
- 対象データベース削除後に upsert トランザクション状態をリプレイする際の NullPointerException。 #65595
- INSERT OVERWRITE による統計収集後、古いパーティション統計が削除されず、古い統計が使用される問題。 #65586
- パーティション ID 割り当てにおけるデータ競合により、並行環境で ID 衝突が発生する問題。 #65608
- 初期 Tablet メタデータ取得時に一部 Tablet ID が欠落する問題。 #65550
- PREPARE / EXECUTE 文に関する監査ログおよび Profile 記録情報が不正確な問題。 #65448
- スレッドセーフでない
has_output関数が複数スレッドから呼び出されることによるクラッシュの可能性。 #65514 memtable_finalize_task_totalメトリクスが存在しないため、MemTable finalize タスクが正しく追跡できない問題。 #65548- Arrow Flight におけるクエリ ID の衝突により、複数クエリが同一クエリ ID を共有できない問題。 #65558
TabletChecker.doCheck()と他の操作間のロック競合。 #65237- 共有データクラスタと共有なしクラスタでスキャン挙動が一致せず、クエリの意味が異なる問題。 #61100
3.5.9
リリース日:2025年11月26日
改善点
- トランザクション各ステージのタイミングを観測するため、FE にトランザクションレイテンシ指標を追加しました。#64948
- データレイク環境でのテーブル全体の再書き込みを簡素化するため、S3 上の非パーティション Hive テーブルへの上書きに対応しました。#65340
- Tablet メタデータキャッシュをより細かく制御するため、CacheOptions を導入しました。#65222
- 最新データに整合した統計情報を維持するため、INSERT OVERWRITE のサンプル統計収集をサポートしました。#65363
- Tablet の非同期レポートによる統計情報の欠落や誤りを避けるため、INSERT OVERWRITE 後の統計収集戦略を最適化しました。#65327
- INSERT OVERWRITE またはマテリアライズドビューのリフレッシュ操作で削除または置き換えられたパーティションに保持期間を導入し、回収可能性を向上させるため一定期間リサイクルビンに残すようにしました。#64779
バグ修正
次の問題を修正しました:
LocalMetastore.truncateTable()に関連するロック競合および並行性の問題。#65191- TabletChecker に関連するロック競合およびレプリカチェック性能の問題。#65312
- HTTP SQL によるユーザー切り替え時の誤ったエラーロギング。#65371
- DelVec CRC32 アップグレード互換性問題によって発生するチェックサム失敗。#65442
- RocksDB のイテレーションタイムアウトによる Tablet メタデータ読み込み失敗。#65146
- JSON ハイパーパスが
$またはすべてスキップされた場合、内部flat_pathが空になり、substr呼び出しが例外を投げ BE がクラッシュする問題。#65260 - フラグメント実行において PREPARED フラグが正しく設定されない問題。#65423
- 重複したロードプロファイルカウンタにより、書き込みおよびフラッシュ指標が不正確になる問題。#65252
- 複数の HTTP リクエストが同じ TCP 接続を再利用する際、ExecuteSQL リクエストの後に非 ExecuteSQL リクエストが到着すると、チャネルクローズ時に
HttpConnectContextが登録解除されず、HTTP コンテキストリークが発生する問題。#65203 - MySQL 8.0 のスキーマイントロスペクションエラー(
default_authentication_pluginとauthentication_policyのセッション変数追加で修正)。#65330 - パーティション上書き後に作成される一時パーティションに対して不要な統計収集が行われることで、SHOW ANALYZE STATUS がエラーになる問題。#65298
- Event Scheduler における Global Runtime Filter の競合問題。#65200
- Data Cache の最小ディスクサイズ制約が大きすぎるため、Data Cache が過度に無効化される問題。#64909
goldリンカの自動フォールバックに関連する aarch64 のビルド問題。#65156
3.5.8
リリース日:2025年11月10日
改善点
- Arrow を 19.0.1 にアップグレードし、Parquet のレガシー LIST エンコーディングをサポートして、ネストされた複雑なファイルを処理可能にしました。 #64238
- FILES() が Parquet のレガシー LIST エンコーディングをサポートしました。 #64160
- セッション変数と挿入列数に基づいて Partial Update モードを自動的に判定するようにしました。 #62091
- テーブル関数上の分析演算子に低カーディナリティ最適化を適用しました。 #63378
- ブロッキングを回避するため、
finishTransactionに設定可能なテーブルロックタイムアウトを追加しました。 #63981 - 共有データクラスターでテーブルレベルのスキャンメトリクスの帰属をサポートしました。 #62832
- ウィンドウ関数 LEAD/LAG/FIRST_VALUE/LAST_VALUE が ARRAY 型引数をサポートしました。 #63547
- 複数の配列関数で定数畳み込みをサポートし、述語プッシュダウンおよび結合の単純化を改善しました。 #63692
SHOW PROC /backends/{id}経由で指定ノードのtabletNumを取得するためのバッチ API を最適化しました。FE 設定項目enable_collect_tablet_num_in_show_proc_backend_disk_path(デフォルト:true)を追加。 #64013INSERT ... SELECTが計画前に外部テーブルを更新し、最新のメタデータを参照するようにしました。 #64026- テーブル関数、NL Join Probe、Hash Join Probe に
capacity_limit_reachedチェックを追加し、過剰列の構築を防止しました。 #64009 - 外部テーブルの統計収集タスク数の上限を設定する FE 設定項目
collect_stats_io_tasks_per_connector_operator(デフォルト:4)を追加しました。 #64016 - サンプル収集のデフォルトパーティションサイズを 1000 から 300 に変更しました。 #64022
- ロックテーブルスロットを 256 に増加し、スロー・ロック・ログに
ridを追加しました。 #63945 - レガシーデータを扱う際の Gson デシリアライズの堅牢性を改善しました。 #63555
- FILES() スキーマプッシュダウンにおけるメタデータロック範囲を縮小し、ロック競合と計画遅延を削減しました。 #63796
- FE 設定項目
task_runs_timeout_secondを導入し、Task Run の実行タイムアウト検知と期限切れタスクのキャンセルロジックを改善しました。 #63842 REFRESH MATERIALIZED VIEW ... FORCEが常に対象パーティションをリフレッシュするようにしました(不整合や破損がある場合でも)。 #63844
バグ修正
次の問題を修正しました:
- ClickHouse の Nullable (Decimal) 型解析時の例外。 #64195
- タブレット移行とプライマリキー索引検索の同時実行問題。 #64164
- マテリアライズドビュー更新で FINISHED 状態が欠落していた問題。 #64191
- 共有データクラスターで Schema Change Publish が再試行されない問題。 #64093
- データレイクのプライマリキー表で行数統計が誤っていた問題。 #64007
- タブレット作成タイムアウト時にノード情報が返されない問題。 #63963
- 破損した Lake DataCache がクリアできない問題。 #63182
- IGNORE NULLS フラグ付きウィンドウ関数が対応する非 IGNORE NULLS 関数と統合できない問題。 #63958
- FE 再起動後、以前中止されたコンパクションが再スケジュールされない問題。 #63881
- FE の頻繁な再起動でタスクがスケジュールできない問題。 #63966
- GCS のエラーコード処理に関する問題。 #64066
- StarMgr gRPC エグゼキュータの不安定性。 #63828
- 排他ワークグループ作成時のデッドロック。 #63893
- Iceberg テーブルキャッシュが正しく無効化されない問題。 #63971
- 共有データクラスターでソート集約の結果が誤っていた問題。 #63849
PartitionedSpillerWriter::_remove_partitionにおける ASAN エラー。 #63903- モーセルキューからスプリットを取得できなかった場合に BE がクラッシュする問題。 #62753
- マテリアライズドビュー書き換え時の集約プッシュダウン型キャストバグ。 #63875
- FE で期限切れロードジョブを削除する際の NPE。 #63820
- パーティション削除時の Partitioned Spill クラッシュ。 #63825
- 特定のプランでマテリアライズドビュー書き換えが
IllegalStateExceptionをスローする問題。 #63655 - パーティション付きマテリアライズドビュー作成時の NPE。 #63830
3.5.7
リリース日:2025年10月21日
改善点
- メモリ競合が激しいシナリオでリトライバックオフを導入し、スキャン演算子のメモリ統計の精度を向上させました。#63788
- 既存のタブレット分布を活用して、マテリアライズドビューのバケット推論を最適化し、過剰なバケット作成を防ぎました。#63367
- Iceberg テーブルのキャッシュメカニズムを改訂し、一貫性を向上させ、頻繁なメタデータ更新時のキャッシュ無効化リスクを減少させました。#63388
QueryDetailとAuditEventにquerySourceフィールドを追加し、API およびスケジューラー間でクエリの起源をよりよく追跡できるようにしました。#63480- MemTable 書き込み時に重複キーが検出された場合に、詳細なコンテキストを表示することで、永続的インデックスの診断機能を強化しました。#63560
- ロック粒度を洗練し、並行シナリオでのシーケンシングを改善することで、マテリアライズドビュー操作におけるロック競合を減少させました。#63481
バグ修正
以下の問題を修正しました:
- 型の不一致により、マテリアライズドビューの再書き込みに失敗する問題。#63659
regexp_extract_allが誤った動作をし、pos=0をサポートしていない問題。#63626- 複雑な関数を含む CASE WHEN の無駄な簡略化により、スキャンパフォーマンスが低下する問題。#63732
- 列モードから行モードへの部分更新切替時に、DCG データの読み取りが不正になる問題。#61529
ExceptionStackContextの初期化時にデッドロックが発生する可能性のある問題。#63776- ARMアーキテクチャのマシンで、Parquet の数値変換がクラッシュする問題。#63294
- 集約中間型が
ARRAY<NULL_TYPE>を使用している問題。#63371 - LARGEINT を DECIMAL128 にキャストする際、符号の端点でのオーバーフロー検出が誤って行われることによる安定性の問題。#63559
- LZ4 の圧縮および解凍エラーが認識できない問題。#63629
FROM_UNIXTIMEでパーティションされたテーブルのクエリ実行時にClassCastExceptionが発生する問題。#63684DECOMMISSIONとしてマークされた唯一の有効なソースレプリカで、バランス駆動の移行後にタブレットが修復できない問題。#62942PREPAREステートメントを使用した場合、SQL ステートメントとプランナートレースが失われる問題。#63519extract_number、extract_bool、extract_string関数が例外に安全でない問題。#63575- シャットダウンされたタブレットが適切にガーベジコレクトされない問題。#63595
PREPARE/EXECUTEステートメントの返却結果がプロファイルでomitとして表示される問題。#62988- 組み合わせた述語による
date_truncパーティションプルーニングが誤って EMPTYSET を生成する問題。#63464 NullableColumnでの CHECK によりリリースビルドでクラッシュが発生する問題。#63553
3.5.6
リリース日: 2025年9月22日
改善点
- 廃止済み BE のすべてのタブレットがリサイクルビンにある場合、その BE を強制的に削除し、タブレットによる廃止処理のブロックを回避します。 #62781
- Vacuum 成功時に Vacuum メトリクスを更新します。 #62540
- フラグメントインスタンス実行状態レポートにスレッドプールのメトリクスを追加しました。アクティブスレッド数、キュー数、実行中スレッド数を含みます。 #63067
- 共有データクラスターで S3 パススタイルアクセスをサポートし、MinIO などの S3 互換ストレージとの互換性を向上しました。ストレージボリューム作成時に
aws.s3.enable_path_style_accessをtrueに設定して有効化できます。 #62591 ALTER TABLE <table_name> AUTO_INCREMENT = 10000;による AUTO_INCREMENT 値の開始位置リセットをサポートしました。 #62767- Group Provider で Distinguished Name (DN) を使用したグループマッチングをサポートし、LDAP/Microsoft Active Directory 環境でのグループ解決を改善しました。 #62711
- Azure Data Lake Storage Gen2 に対して Azure Workload Identity 認証をサポートしました。 #62754
information_schema.loadsビューにトランザクションエラーメッセージを追加し、障害診断を容易にしました。 #61364- 複雑な CASE WHEN 式を含む Scan プレディケートで共通式の再利用をサポートし、重複計算を削減しました。 #62779
- マテリアライズドビューの REFRESH 実行に ALTER 権限ではなく REFRESH 権限を使用するように変更しました。 #62636
- 潜在的な問題を避けるため、Lake テーブルでの低カーディナリティ最適化をデフォルトで無効化しました。 #62586
- 共有データクラスターでタブレットのワーカー間バランシングをデフォルトで有効化しました。 #62661
- 外部結合の WHERE プレディケートでの式再利用をサポートし、重複計算を削減しました。 #62139
- FE に Clone メトリクスを追加しました。 #62421
- BE に Clone メトリクスを追加しました。 #62479
- 統計キャッシュの遅延更新をデフォルトで無効にする FE 設定項目
enable_statistic_cache_refresh_after_writeを追加しました。 #62518 - セキュリティ向上のため、SUBMIT TASK で資格情報をマスクしました。 #62311
- Trino 方言における
json_extractが JSON 型を返すようになりました。 #59718 null_or_emptyで ARRAY 型をサポートしました。 #62207- Iceberg マニフェストキャッシュのサイズ制限を調整しました。 #61966
- Hive にリモートファイルキャッシュの制限を追加しました。 #62288
バグ修正
以下の問題を修正しました:
- 負のタイムアウト値によりタイムスタンプ比較が誤り、セカンダリレプリカが無期限にハングする問題。 #62805
- TransactionState が REPLICATION の場合、PublishTask がブロックされる可能性。 #61664
- 物化ビューリフレッシュ中に Hive テーブルが削除され再作成された際の修復メカニズムの誤り。 #63072
- 物化ビュー集約プッシュダウン改写後に誤った実行計画が生成される問題。 #63060
- PlanTuningGuide がクエリプロファイルに認識できない文字列(null explainString)を生成し、ANALYZE PROFILE が失敗する問題。 #63024
hour_from_unixtimeの戻り値型が不適切で、CASTの改写ルールも誤り。 #63006- Iceberg マニフェストキャッシュでデータ競合下に NPE が発生。 #63043
- 共有データクラスターで物化ビューの Colocation がサポートされていない。 #62941
- Scan Range デプロイ時に Iceberg テーブルスキャン例外が発生。 #62994
- ビューに基づく改写で誤った実行計画が生成される。 #62918
- Compute Node が終了時に正常にシャットダウンされず、エラーやタスク中断を引き起こす。 #62916
- Stream Load 実行状態更新時に NPE が発生。 #62921
- 列名と PARTITION BY 句内の名前の大文字小文字が異なる場合、統計が誤る。 #62953
LEAST関数を述語として使用した際に誤った結果が返る。 #62826- テーブルプルーニング境界の CTEConsumer 上の ProjectOperator が無効。 #62914
- Clone 後に冗長なレプリカ処理が発生。 #62542
- Stream Load プロファイルを収集できない。 #62802
- 不適切な BE 選択によりディスク再バランスが無効化。 #62776
tablet_idが欠落して delta writer が null になる場合、LocalTabletsChannel で NPE によるクラッシュが発生。 #62861- KILL ANALYZE が効果を持たない。 #62842
- MCV 値にシングルクォートが含まれる場合、ヒストグラム統計で SQL 構文エラーが発生。 #62853
- Prometheus 向けメトリクスの出力形式が誤り。 #62742
- データベース削除後に
information_schema.analyze_statusを照会すると NPE が発生。 #62796 - CVE-2025-58056。 #62801
- SHOW CREATE ROUTINE LOAD 実行時、データベースが指定されない場合に null と見なされ誤った結果が返る。 #62745
files()で CSV ヘッダを誤ってスキップし、データ損失が発生。 #62719- バッチトランザクション upsert のリプレイ時に NPE が発生。 #62715
- 共有ナッシングクラスターでの優雅なシャットダウン中に Publish が誤って成功と報告される。 #62417
- 非同期 delta writer でヌルポインタによりクラッシュが発生。 #62626
- リストアジョブ失敗後に物化ビューのバージョンマップがクリアされず、物化ビューリフレッシュがスキップされる。 #62634
- 物化ビューアナライザーでの大文字小文字区別のパーティション列検証が原因で問題が発生。 #62598
- 構文エラーを含む文に重複した ID が生成される。 #62258
- CancelableAnalyzeTask 内の冗長な状態割り当てにより StatisticsExecutor ステータスが上書きされる。 #62538
- 統計情報収集により誤ったエラーメッセージが生成される。 #62533
- 外部ユーザーのデフォルト最大接続数不足により、スロットリングが早期に発生。 #62523
- 物化ビューのバックアップとリストア操作で NPE が発生する可能性。 #62514
http_workers_numメトリクスが不正確。 #62457- 実行時フィルタ構築時に対応する実行グループを特定できない。 #62465
- 複雑な関数を含む CASE WHEN の簡略化により、Scan ノードで冗長な結果が発生。 #62505
gmtimeがスレッドセーフではない。 #60483- Hive パーティション取得時にエスケープ文字列の扱いに問題。 #59032
3.5.5
リリース日: 2025年9月5日
改善点
- 新しいシステム変数
enable_drop_table_check_mv_dependency(デフォルト:false)を追加しました。trueに設定すると、削除対象のオブジェクトが下流のマテリアライズドビューに依存されている場合、システムはDROP TABLE/DROP VIEW/DROP MATERIALIZED VIEWの実行を阻止します。エラーメッセージには依存関係のあるマテリアライズドビューが表示され、詳細はsys.object_dependenciesビューで確認するよう案内されます。 #61584 - ログにビルドの Linux ディストリビューションおよび CPU アーキテクチャ情報を追加し、問題の再現やトラブルシューティングを容易にしました。ログ形式:
... build <hash> distro <id> arch <arch>。 #62017 - 各 Tablet ごとにインデックスおよびインクリメンタルカラムグループのファイルサイズをキャッシュに永続化することで、オンデマンドのディレクトリスキャンを置き換えました。これにより、BE の Tablet ステータス報告を高速化し、高 I/O シナリオでのレイテンシを削減します。 #61901
- FE/BE ログ内の高頻度な INFO ログを VLOG に格下げし、タスク送信ログを集約することで、ストレージ関連の冗長ログや高負荷時のログ量を大幅に削減しました。 #62121
information_schemaデータベースを通じて External Catalog メタデータを照会する際、getTable呼び出し前にテーブルフィルタをプッシュダウンするように改善し、テーブルごとの RPC を回避して性能を向上しました。 #62404
バグ修正
次の問題が修正されました:
- Plan 段階でパーティションレベルのカラム統計を取得する際、欠損により NullPointerException が発生する問題。 #61935
- Parquet 書き込み時、NULL 配列が非ゼロサイズの場合に発生する問題を修正し、
SPLIT(NULL, …)の挙動を常に NULL を返すように修正しました。これにより、データ破損や実行時エラーを防ぎます。 #61999 CASE WHEN式を使用したマテリアライズドビュー作成時、VARCHAR 型の非互換な戻り値により失敗する問題を修正しました(修正後はリフレッシュ前後の一貫性を確保し、FE 設定transform_type_prefer_string_for_varcharを追加。STRING を優先することで長さ不一致を回避)。 #61996enable_rbo_table_pruneがfalseの場合、テーブルプルーニング時にメモ外でネストした CTE の統計を計算できない問題。 #62070- Audit Log において、INSERT INTO SELECT 文の Scan Rows 結果が不正確である問題。 #61381
- 初期化段階で ExceptionInInitializerError/NullPointerException が発生し、Query Queue v2 有効時に FE が起動に失敗する問題。 #62161
- BE が
LakePersistentIndexの初期化失敗時に_memtableのクリーンアップでクラッシュする問題。 #62279 - マテリアライズドビューのリフレッシュ時、作成者の全ロールが有効化されずに発生する権限問題を修正しました(修正後、新しい FE 設定
mv_use_creator_based_authorizationを追加。falseに設定すると root 権限でリフレッシュを実行し、LDAP 認証方式のクラスタに対応)。 #62396 - List パーティションテーブル名が大文字小文字のみ異なる場合にマテリアライズドビューのリフレッシュが失敗する問題(修正後、パーティション名に対して大文字小文字を区別しない一意性チェックを実施し、OLAP テーブルのセマンティクスと一致させました)。 #62389
3.5.4
リリース日: 2025年8月22日
改善点
- タブレットを修復できない理由を明確にするログを追加。 #61959
- ログ内の DROP PARTITION 情報を最適化。 #61787
- 統計情報が不明なテーブルに対して、大きな(ただし設定可能な)行数を割り当て。 #61332
- ラベル位置に基づくバランス統計を追加。 #61905
- クラスター監視を改善するためにコロケーショングループのバランス統計を追加。 #61736
- 正常なレプリカ数がデフォルトのレプリカ数を超える場合、Publish の待機フェーズをスキップ。 #61820
- タブレットレポートにタブレット情報収集時間を追加。 #61643
- タグ付き Starlet ファイルの書き込みをサポート。 #61605
- クラスターのバランス統計の表示をサポート。 #61578
- librdkafka を 2.11.0 にアップグレードし、Kafka 4.0 をサポート。非推奨設定を削除。 #61698
- Stream Load トランザクションインターフェイスに
prepared_timeout設定を追加。 #61539 - StarOS を v3.5-rc3 にアップグレード。 #61685
バグ修正
次の問題が修正されました:
- ランダム分布テーブルにおける Dict バージョンの誤り。 #61933
- コンテキスト条件でのクエリコンテキスト誤り。 #61929
- ALTER 操作中、シャドウタブレットに対する同期 Publish による Publish 失敗。 #61887
- CVE-2025-55163 問題を修正。 #62041
- Apache Kafka からのリアルタイムデータ取り込み時のメモリリーク。 #61698
- レイク永続インデックスにおけるリビルドファイル数の誤り。 #61859
- 生成式カラムの統計収集によりクロスデータベースクエリが失敗。 #61829
- Query Cache が共有ナッシング型クラスターで不整合を引き起こす。 #61783
- CatalogRecycleBin に削除済みパーティション情報が保持され、高メモリ使用を引き起こす。 #61582
- SQL Server JDBC 接続が 65,535 ミリ秒を超えるタイムアウトで失敗。 #61719
- セキュリティ統合がパスワードを暗号化できず、機密情報が漏洩。 #60666
- Iceberg パーティション列の
MIN()およびMAX()が NULL を返す問題。 #61858 - 非プッシュダウンサブフィールドを含む Join の述語が誤って書き換えられる。 #61868
- QueryContext のキャンセルにより use-after-free が発生する可能性。 #61897
- CBO のテーブルプルーニングが他の述語を見落とす。 #61881
COLUMN_UPSERT_MODEにおける部分更新が、自動増分列をゼロで上書きする可能性。 #61341- JDBC TIME 型変換で誤ったタイムゾーンオフセットを使用し、不正な時刻値となる問題。 #61783
- Routine Load ジョブで
max_filter_ratioがシリアライズされない。 #61755 - Stream Load の
now(precision)関数における精度損失。 #61721 - クエリキャンセル時に「query id not found」エラーが発生する可能性。 #61667
- LDAP 認証が検索中に PartialResultException を見逃す可能性。 #60667
- Paimon Timestamp のタイムゾーン変換が DATETIME 条件を含む場合に誤る。 #60473
3.5.3
リリース日: 2025年8月11日
改善点
- Lake Compaction にセグメント書き込み時間統計情報を追加。 #60891
- パフォーマンス低下を避けるため、Data Cache 書き込みの Inline モードを無効化。 #60530
- Iceberg メタデータスキャンで共有ファイル I/O をサポート。 #61012
- すべての PENDING 状態の ANALYZE タスクの終了をサポート。 #61118
- CTE ノードが多すぎる場合、最適化時間が長くならないように強制的に再利用。 #60983
- クラスターバランス結果に
BALANCEタイプを追加。 #61081 - 外部テーブルを含む物化ビューの書き換えを最適化。 #61037
- システム変数
enable_materialized_view_agg_pushdown_rewriteのデフォルト値をtrueに変更し、マテリアライズドビューに対する集計関数のプッシュダウンをデフォルトで有効化。 #60976 - パーティション統計のロック競合を最適化。 #61041
バグ修正
次の問題が修正されました:
- 列の切り取り後、チャンク列のサイズが不一致。 #61271
- 非同期実行のパーティション統計ロードでデッドロックが発生する可能性。 #61300
array_mapが定数配列列を処理する際にクラッシュ。 #61309- 自動増分列を NULL に設定すると、システムエラーが発生し、同一チャンク内の有効データが拒否される。 #61255
- 実際の JDBC 接続数が
jdbc_connection_pool_size制限を超える可能性。 #61038 - FQDN モードで IP アドレスがキャッシュキーとして使用されない。 #61203
- 配列比較中に配列列のクローンエラー。 #61036
- シリアライズされたスレッドプールをデプロイする際にブロックが発生し、クエリのパフォーマンスが低下しています。 #61150
- heartbeatRetryTimes カウンターのリセット後、OK hbResponse が同期されない。 #61249
hour_from_unixtime関数の結果が誤っている。 #61206- ALTER TABLE タスクとパーティション作成の競合。 #60890
- v3.3 から v3.4 以降にアップグレード後、キャッシュが効かない。 #60973
- ベクトルインデックス指標
hit_countが設定されていない。 #61102 - Stream Load トランザクションがコーディネータノードを見つけられない。 #60154
- OOM パーティションを読み込む際にBEがクラッシュ。 #60778
- 手動作成したパーティションで INSERT OVERWRITE 実行時に失敗。 #60858
- パーティション値が異なっても名前が大文字小文字を区別しない場合にパーティション作成が失敗。 #60909
- PostgreSQL UUID 型がサポートされていない。 #61021
FILES()経由で Parquet データをインポート時、列名の大文字小文字の問題。 #61059
3.5.2
リリース日: 2025年7月18日
改善点
- ARRAY 列に対する NDV 統計の収集を追加し、クエリプランの精度を向上。#60623
- 共有データクラスタで、Colocate テーブルのレプリカ均衡とタブレットスケジューリングを無効化し、不要なログ出力を抑制。#60737
- FE 起動時、外部データソースへのアクセスを非同期かつ遅延させるように最適化し、外部サービスの利用不可による起動停止を防止。#60614
- プレディケートプッシュダウンを制御するセッション変数
enable_predicate_expr_reuseを追加。#60603 - Kafka Partition 情報の取得失敗時に自動リトライを実装。#60513
- マテリアライズドビューとベーステーブル間のパーティション列の 1 対 1 制約を撤廃。#60565
- 集約フェーズでのデータフィルタリングを通じてパフォーマンスを向上させる Runtime In-Filter をサポート。#59288
バグ修正
以下の問題を修正しました:
- 低カーディナリティ最適化が原因で、複数列の COUNT DISTINCT クエリがクラッシュする問題を修正。#60664
- 同名のグローバル UDF が複数存在する場合に関数が誤ってマッチする問題を修正。#60550
- Stream Load によるインポート時の NPE を修正。#60755
- クラスタスナップショットからの復旧時に FE が NPE で起動に失敗する問題を修正。#60604
- 無順序値列のショートサーキットクエリ処理時、列モード不一致により BE がクラッシュする問題を修正。#60466
- SUBMIT TASK ステートメントで PROPERTIES を使って設定したセッション変数が無効だった問題を修正。#60584
- 特定条件下で
SELECT min/maxクエリが誤った結果を返す問題を修正。#60601 - プレディケートの左辺が関数である場合、誤ったバケットが使用され、クエリ結果が間違ってしまう問題を修正。#60467
- Arrow Flight SQL プロトコルで存在しない
query_idをクエリした際にクラッシュする問題を修正。#60497
動作の変更
lake_compaction_allow_partial_successのデフォルト値をtrueに変更。Compaction タスクが一部のみ成功しても成功とみなされ、後続のタスクがブロックされるのを回避可能に。#60643
3.5.1
リリース日:2025年7月1日
新機能
- [実験的] バージョン 3.5.1 以降、StarRocks は Apache Arrow Flight SQL プロトコルに基づく高性能なデータ転送パイプラインを導入しました。これにより、データ読み取り経路を全面的に最適化し、転送効率を大幅に向上させます。このソリューションは、StarRocks のカラムナー実行エンジンからクライアントまで、エンドツーエンドのカラムナーデータ転送を実現し、従来の JDBC や ODBC インターフェースで発生する頻繁な行列変換やシリアライズのオーバーヘッドを回避します。真のゼロコピー、低レイテンシー、高スループットのデータ転送を可能にします。 #57956
- Java Scalar UDF(ユーザー定義関数)の入力パラメータとして ARRAY 型および MAP 型をサポートしました。 #55356
- ノード間キャッシュ共有機能:コンピュートノード間でリモートデータレイク上の外部テーブルデータのキャッシュをネットワーク経由で共有できます。ローカルキャッシュがヒットしない場合、同一クラスタ内の他のノードのキャッシュから優先的にデータを取得し、全ノードのキャッシュがヒットしない場合のみリモートストレージから再取得します。この機能により、スケールイン/アウト時のキャッシュ無効化による性能の揺らぎを抑え、クエリ性能の安定性を確保します。新しいFE設定パラメータ
enable_trace_historical_nodeでこの挙動を制御できます(デフォルト:false)。 #57083 - Storage Volume が Google Cloud Storage (GCS) をネイティブサポート:GCS をバックエンドストレージとして利用でき、ネイティブ SDK で GCS リソースの管理・アクセスが可能です。 #58815
改善点
- Hive 外部テーブル作成失敗時のエラーメッセージを改善。 #60076
- Iceberg メタデータの
file_record_countを利用し、count(1)クエリの性能を最適化。 #60022 - Compaction スケジューリングロジックを改善し、全てのサブタスク成功時の遅延スケジューリングを防止。 #59998
- BE/CN ノードを JDK17 にアップグレード後、
JAVA_OPTS="--add-opens=java.base/java.util=ALL-UNNAMED"を追加。 #59947 - Kafka Broker のエンドポイント変更時、ALTER ROUTINE LOAD で
kafka_broker_listプロパティを修正可能に。 #59787 - Docker Base Image ビルド時の依存関係をパラメータで簡略化可能に。 #59772
- Managed Identity 認証による Azure アクセスをサポート。 #59657
Files()関数で外部データをクエリする際のパス列の重複エラーを改善。 #59597- LIMIT プッシュダウンロジックを最適化。 #59265
バグ修正
以下の問題を修正しました:
- クエリが Max/Min 集計と空パーティションを含む場合のパーティションプルーニングの問題。 #60162
- マテリアライズドビューでクエリを書き換えた際、NULL パーティションが欠落し正しい結果が得られない問題。 #60087
- Iceberg 外部テーブルで
str2dateを用いたパーティション式が原因でリフレッシュが失敗する問題。 #60089 - START END 方式で作成した一時パーティションの範囲が正しくない問題。 #60014
- 非リーダー FE ノードで Routine Load メトリクスが正しく表示されない問題。 #59985
COUNT(*)ウィンドウ関数を含むクエリで BE/CN がクラッシュする問題。 #60003- Stream Load でテーブル名に中国語が含まれるとインポートに失敗する問題。 #59722
- 3 レプリカテーブルへのインポート時、一部セカンダリレプリカの失敗により全体が失敗する問題。 #59762
- SHOW CREATE VIEW でパラメータが欠落する問題。 #59714
動作の変更
- 一部の FE メトリクスに
is_leaderラベルを追加。 #59883
3.5.0
リリース日: 2025 年 6 月 13 日
共有データクラスタ機能強化
- 共有データクラスタで生成列(Generated Column)をサポートしました。#53526
- 共有データクラスタ内のクラウドネイティブな主キーテーブルで、特定インデックスの再構築をサポートし、インデックスの性能も最適化しました。#53971 #54178
- 大規模なデータロード操作の実行ロジックを最適化し、メモリ制限による Rowset の小ファイルの大量生成を回避。ロード中、システムは一時的なデータブロックをマージして小さなファイルの生成を減らし、ロード後のクエリパフォーマンスを向上させるとともに、その後のコンパクション操作を減らしてシステムリソースの使用率を向上させます。#53954
データレイク分析
- [Beta] Hive Metastore 統合による Iceberg Catalog での Iceberg ビューの作成サポートしました。また、ALTER VIEW 文を使って Iceberg ビューの SQL 方言の追加・変更が可能になり、外部システムとの互換性が向上しました。#56120
- Iceberg REST Catalog におけるネストされた名前空間をサポートしました。#58016
- Iceberg REST Catalog にて、
IcebergAwsClientFactoryを使用して AWS クライアントを作成できる、Vended Credential をサポートしました。#58296 - Parquet Reader が Bloom Filter を使用したデータフィルタリングをサポートしました。#56445
- Parquet 形式の Hive/Iceberg テーブルに対し、クエリ実行時に低カーディナリティ列のグローバル辞書を自動生成する機能をサポートしました。#55167
パフォーマンスとクエリ最適化
- 統計情報の最適化:
- Table Sample をサポート。物理ファイルのデータブロックをサンプリングすることで、統計の精度とクエリ性能を改善。#52787
- クエリで使用される述語列を記録し、対象列に対して効率的な統計情報収集を可能に。#53204
- パーティション単位でのカーディナリティ推定をサポート。システムビュー
_statistics_.column_statisticsを使用して各パーティションの NDV を記録。#51513 - 複数列に対する Joint NDV の収集をサポートし、列間に相関がある場合の CBO 最適化精度を向上。#56481 #56715 #56766 #56836
- ヒストグラムを使用した Join ノードのカーディナリティと in_predicate の選択性推定をサポートし、データ偏り時の精度を改善。#57874
- Query Feedback を最適化。同一構造で異なるパラメータ値を持つクエリを同一グループに分類し、実行計画の最適化に役立つ情報を共有。#58306
- 特定のシナリオで Bloom Filter に代わる最適化手段として Runtime Bitset Filter をサポート。#57157
- Join Runtime Filter のストレージレイヤへのプッシュダウンをサポート。#55124
- Pipeline Event Scheduler をサポート。#54259
パーティション管理
- 時間関数に基づいた式パーティションのマージを ALTER TABLE で実行可能にし、ストレージ効率とクエリ性能を改善。#56840
- List パーティションテーブルおよびマテリアライズドビューに対するパーティションの TTL をサポートし、
partition_retention_conditionプロパティを設定することで柔軟なパーティション削除ポリシーを実現。#53117 - 一般的なパーティション式に基づいた複数パーティションの削除を ALTER TABLE で実行可能に。#53118
クラスタ管理
- FE の Java コンパイルターゲットを Java 11 から Java 17 にアップグレードし、システムの安定性と性能を改善。#53617
セキュリティと認証
- MySQL プロトコルに基づいた SSL 暗号化接続をサポート。#54877
- 外部認証との統合強化:
- OAuth 2.0 と JSON Web Token(JWT)を使用して StarRocks ユーザーを作成可能に。
- Security Integration 機能を導入し、LDAP、OAuth 2.0、JWT との認証統合を簡素化。#55846
- Group Provider をサポート。LDAP、OS、ファイルからユーザーグループ情報を取得し、認証・認可に利用可能。関数
current_group()を使って所属グループを確認できます。#56670
マテリアライズドビュー
- 複数のパーティション列を持つマテリアライズドビューの作成をサポートし、より柔軟なパーティショニング戦略を構成可能に。#52576
query_rewrite_consistencyをforce_mvに設定することで、クエリリライト時にマテリアライズドビューの使用を強制可能に。これにより、ある程度のデータ鮮度を犠牲にしてパフォーマンスの安定性を確保。#53819
ロードとアンロード
- JSON 解析エラーが発生した場合、
pause_on_json_parse_errorプロパティをtrueに設定することで Routine Load ジョブを一時停止可能に。#56062 - [Beta] 複数の SQL 文を含むトランザクション(現時点では INSERT のみ対応)をサポート。トランザクションの開始・適用・取り消しにより、複数のロード操作に ACID 特性を提供。#53978
関数
- セッションおよびグローバルレベルでシステム変数
lower_upper_support_utf8を導入し、upper()やlower()などの大文字・小文字変換関数が UTF-8(特に非 ASCII 文字)をより適切に扱えるように改善。#56192 - 新しい関数を追加: