Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Snowflake リリースに注意を払いたくなる話
Search
金綱 雅也
October 31, 2025
Programming
0
36
Snowflake リリースに注意を払いたくなる話
Snowvillage Unconference #7 にてSnowflakeリリース体系とbcr-1995について話しました。
金綱 雅也
October 31, 2025
Tweet
Share
Other Decks in Programming
See All in Programming
AI Agent 時代的開發者生存指南
eddie
4
2.2k
One Enishi After Another
snoozer05
PRO
0
170
React Nativeならぬ"Vue Native"が実現するかも?_新世代マルチプラットフォーム開発フレームワークのLynxとLynxのVue.js対応を追ってみよう_Vue Lynx
yut0naga1_fa
2
1.9k
スマホから Youtube Shortsを見られないようにする
lemolatoon
27
34k
AI時代に必須!状況言語化スキル / ai-context-verbalization
minodriven
2
200
エンジニアインターン「Treasure」とHonoの2年、そして未来へ / Our Journey with Hono Two Years at Treasure and Beyond
carta_engineering
0
450
Devvox Belgium - Agentic AI Patterns
kdubois
1
150
Amazon Verified Permissions実践入門 〜Cedar活用とAppSync導入事例/Practical Introduction to Amazon Verified Permissions
fossamagna
2
100
Building, Deploying, and Monitoring Ruby Web Applications with Falcon (Kaigi on Rails 2025)
ioquatix
4
2.6k
CSC305 Lecture 11
javiergs
PRO
0
310
CSC305 Lecture 09
javiergs
PRO
0
320
Vue 3.6 時代のリアクティビティ最前線 〜Vapor/alien-signals の実践とパフォーマンス最適化〜
hiranuma
2
250
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
A better future with KSS
kneath
239
18k
BBQ
matthewcrist
89
9.9k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
GitHub's CSS Performance
jonrohan
1032
470k
Typedesign – Prime Four
hannesfritz
42
2.8k
Six Lessons from altMBA
skipperchong
29
4k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
2
160
Scaling GitHub
holman
463
140k
Transcript
Snowflakeリリースに注意を払いたくなる話 株式会社サイバーエージェント AI事業本部 AIオペレーションテクノロジーカンパニー 金綱 雅也
金綱 雅也 (かねつな まさや) 所属 株式会社サイバーエージェント AI事業本部 AIオペレーションテクノロジーカンパニー ソフトウェアエンジニア 経歴
2025年4月入社 広告事業におけるレポーティングシステムの開発 主にSnowflake、Python、AWSを触っています
1. Snowflakeのリリース体系 2. Behavior Change Bundleについてブレークダウン 3. 2025_04 Bundleで起きた SQL
エラー 4. 教訓
Snowflakeのリリース体系
新機能・動作変更・緊急対応を支える 3+1本柱 Full release 新機能追加・改善 Patch release Behavior Change Bundle
Unbundled Behavior Change 新機能追加・改善 週次リリースで提供される UI/パフォーマンス改善を含む Patch release Full release後に必要に応じて実施される不具合 修正 Behavior Change Bundle 既存機能の挙動が変わる更新 テスト/オプトアウト期間が設けられる Unbundled Behavior Change バンドル外で実施される インフラ・セキュリティ関連の挙動変更
リリースをいちいち追いかけるのは面倒 → 気にするべきところだけを気にする習慣をつける
気にするべきリリースとは 新機能 / Patch release → 習慣的な追跡は不必要 × Unbundled Behavior
Change → 習慣的な追跡がかなり困難 × Behavior Change Bundle → 習慣的な追跡が必要かつ可能 ⚪ Full release 新機能追加・改善 Patch release Behavior Change Bundle Unbundled Behavior Change
Behavior Change Bundleについてブレークダウン
Behavior Change は気にしなくていいかもしれない
Behavior Change Bundleとは 多くの場合、約8週間かけてステータスを遷移させていく デフォルト無効化 → デフォルト有効化→ 一般有効化 デフォルト無効化期間は有効化可能 (逆も然り)
一般有効化されたら無効化不可能 デフォルト無効化期間 = テスト期間 デフォルト有効化期間 = オプトアウト期間 既存の振る舞いを変える変更を段階的にリリースするための仕組み →急激な互換性の破壊を避ける
2025_07 Bundle の例 (「Snowflake Bundle 2025_07」で検索) ⚪ 9.32release(10/13) ~ 10.1release
(2026年1月): テスト期間 (有効化できる) ⚪ 10.1release ~ 10.6release (2026年2月): オプトアウト期間 (無効化できる) ⚪ 10.6release ~ : 一般有効化 (無効化できなくなる )
2025_04 Bundleで起きた SQL compilation error
2025_04 Bundleで何が起きたか 8/4: オプトアウト期間が開始 (自動有効化) Snowparkにおいて、同一サブクエリが CTE化されるようになった (CTE最適化クラス) (「Snowflake bcr-1995」で検索
) A B_r C_r JOIN = A CTE(B) CTE(C) JOIN
bcr-1995の問題 CTE最適化が重複サブクエリを 1つのノードに統合、 左テーブル由来のエイリアスマップで更新 → 右テーブルのエイリアスマップに対して上書きが行われる → 元々付与していた rsuffix が失われる
→ 最終的なSQLで左右の列名が同一になるケースが発生、列名重複エラーを返却される 暫定対応: lsuffixで左テーブルの列名を変えることで衝突回避 (実はcte_optimization_enabledフラグを見てCTE最適化の適用可否を判断されていた )
やっぱり Behavior Change は気にするべきだと思う
教訓
教訓 これまで動いていたクエリがいきなり落ちた場合は → 直近で有効化された Behavior Change はあるか確認 Behavior change 由来のエラーでサポートへ問い合わせる場合は
→ 事象発生日・リリース番号・対象バンドルのステータスを添えて共通認識を作る
当方ではdev/prdの2アカウント体制をとっています dev prd
ありがとうございました