**pg_background**  
*PostgreSQLに重い処理を任せ、セッションは軽量に保ちます。*

2026/02/18 7:40

**pg_background** *PostgreSQLに重い処理を任せ、セッションは軽量に保ちます。*

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

pg_background は、クライアントセッションをブロックせずに専用のバックグラウンドワーカーで SQL を非同期実行できる PostgreSQL 拡張です。呼び出し側のトランザクションとは独立してコミットまたはロールバックする自律型トランザクションをサポートし、明示的なライフサイクル制御(launch, result, detach, cancel, wait)を提供します。

推奨される v2 API は

(pid, cookie)
ハンドルを使用して PID の再利用を回避します。
pg_background_stats_v2()
pg_background_progress()
、および新しい
pg_background_get_progress_v2()
を通じて強化された監視機能が提供されます。ワーカーは
max_worker_processes
からエントリを消費するため、この GUC はクラスターサイズに合わせて調整する必要があります。

典型的な本番環境での利用例には、バックグラウンド VACUUM/ANALYZE/REINDEX、非同期データ補完または修復、ファイア―アンド‑フォーゲット監査/アウトボックス書き込み、および高価な処理を遅延させるワークフローが含まれます。最近のリリース(v1.6–v1.8)では拡張機能が安定化し、古い PostgreSQL バージョンへのサポートを削除、セキュアなクッキー生成(

pg_strong_random()
)、専用
WorkerInfoMemoryContext
、指数バックオフのポーリング、NULL チェック、新しい統計/進捗関数、および Docker ベースの CI が追加されました。

既知の制限事項:Windows でのキャンセルは制限されています。COPY プロトコルは無効化されています;ワーカーはトランザクション内では実行できません。実践的なチェックリスト:

  • v2 API を優先する
  • detach は cancel と同じではないことを認識する
  • 結果はすぐに消費または保存する
  • セッションごとのワーカー上限とタイムアウトを設定する
  • 進捗と統計を可観測性に利用する
  • max_worker_processes
    の使用状況を監視する

pg_background は外部スケジューラなしでネイティブな非同期ジョブ機能を提供し、アプリケーションの応答性を向上させ、インフラストラクチャを簡素化し、PostgreSQL 内でワーカーリソースに対するオペレーターによる細かな制御を可能にします。

本文

pg_background – PostgreSQL の非同期 SQL 実行


pg_background とは(そして何ではないか)

  • 目的:PostgreSQL 内のバックグラウンドワーカーで任意の SQL コマンドを非同期に実行する。
  • スケジューラーやキューイングプラットフォームではない:単に SQL を走らせ、結果へのインタラクションは利用者が決定します。

本番環境で使う理由

pg_background は以下のシナリオで特に有効です。

機能メリット
ノンブロッキング操作クライアント接続を保持せずに長時間実行されるクエリを起動できます。
自律的トランザクション呼び出し元のトランザクションと独立してコミット/ロールバックが可能です。
リソース分離 & クリーンアップライフサイクルが明確:起動 → 結果取得 → 切り離し/キャンセル → 待機。
サーバー側可観測性
list_workers()
などでワーカーを一覧表示し、状態・エラーを検査できます(v2)。

典型的な本番パターン:

  • バックグラウンドでの
    VACUUM / ANALYZE / REINDEX
  • 非同期バックフィルやデータ修復
  • 「Fire‑and‑forget」監査/アウトボックス書き込み
  • OLTP が重いアプリで「高コスト処理を後回しにする」ワークフロー

推奨:v2 API(推奨)

プロジェクトは現在 v2 API を強く推奨しています。
(v2 は

(pid, cookie)
ハンドルを使い、PID 再利用による誤動作を防ぎます。)

v2 の主な特徴

  • Cookie ベースの識別
  • 明示的キャンセル vs. 切り離し
  • 同期待機
  • list_workers()
    での監視強化

語義注意detach は cancel ではありません。
detach はワーカーの追跡を停止するだけで、実行自体は継続します。


インストールと運用ルール

  1. エクステンションをビルドしてインストール (
    CREATE EXTENSION pg_background
    )。
  2. 背景ワーカーは
    max_worker_processes
    を消費
    するので、容量を意図的に設定してください。README に有効化手順と GUC の設定が記載されています。

リリースハイライト(v1.6 → v1.8)

バージョンハイライト
v1.6 (2026‑02‑05)本番安定化 + cookie ベースの v2 API 追加、DSM ライフサイクル改善、安全なエラーハンドリングとメモリクリーンアップ、診断機能向上。PostgreSQL 12–18 対応。
v1.7 (2026‑02‑13)セキュリティ&効率化:暗号学的に安全な cookie 生成 (
pg_strong_random()
)、
WorkerInfoMemoryContext
により長時間セッションの膨張防止、指数関数バックオフで待機/キャンセルループを最適化。NULL チェック改善。
v1.8 (2026‑02‑13)運用制御&可観測性:統計・進捗関数 (
pg_background_stats_v2()
,
pg_background_progress()
,
pg_background_get_progress_v2()
)、新 GUC (
pg_background.max_workers
,
pg_background.worker_timeout
,
pg_background.default_queue_size
)、Docker‑ベース CI リファクタリング、PostgreSQL 13 以前を非推奨化。

既知の制限事項:Windows のキャンセル上限、COPY プロトコルは意図的に無効、ワーカー内でのトランザクション制御は不可。


安全に利用するための実務チェックリスト

  • v2 を使用してください(レガシー依存がなければ)。PID 再利用保護は価値があります。
  • max_worker_processes
    は容量予算として扱い、背景作業が他と競合します。
  • detach ≠ cancel:detach は追跡停止のみです。
  • 一度きりの結果消費を想定し、必要なら結果を保存して再利用可能にしてください。
  • v1.8+ の新しいノブ(GUC)を活用:セッションごとのワーカー数上限、タイムアウト設定、キューサイズの適切なメモリ割り当て。
  • 進捗・統計関数で可観測性を高める。

終わりに

pg_background は PostgreSQL にクリーンかつ明示的な非同期実行レーンを提供します。v2 の安全ハンドル、v1.7 の強化された内部構造、v1.8 の運用・テレメトリ機能が揃い、VACUUM ジョブやバックフィル、自律トランザクションパターン、非同期 ETL などのユースケースに最適です。もしご自身の環境でこれらの用途を検討されている場合は、お気軽にお知らせください。v2 API を用いた本番向けパターンとガードレールをご提案します。

同じ日のほかのニュース

一覧に戻る →

2026/02/18 2:48

**Claude Sonnet 4.6**(クロード・ソネット 4.6)

## Japanese Translation: **Claude Sonnet 4.6** は Anthropic の最新かつ最も優れた Sonnet モデルで、現在すべての Claude プラン(Free と Pro)でデフォルトとなっています。価格は Sonnet 4.5 と同じままで、1 兆トークンあたり $3 / $15 です。このモデルは 1,000,000 トークンのコンテキストウィンドウ(ベータ版)、適応/拡張思考、コンテキスト圧縮、自動ウェブ検索フィルタリング、拡張ツール例、および Excel の MCP コネクタサポートを導入しています。 初期ユーザーは、Sonnet 4.5 に対してコードの正確性、一貫性、指示追従、全体的なパフォーマンスで大幅に優れていると報告しています。特に Opus 4.5 を約 70%(59%)上回る性能を発揮しています。OSWorld、Vending‑Bench Arena、OfficeQA、Financial Services Benchmark、保険ワークフローなどのベンチマークでは、複雑なスプレッドシートや多段階ウェブフォームでほぼ人間レベルの結果が得られ、Sonnet 4.6 は Opus 4.6 と同等またはそれに近い性能を示しつつ、コストも低く抑えられています。安全性評価では大きな不整合問題は確認されず、プロンプトインジェクション耐性は Opus 4.6 と同等です。 製品アップデートには、フロントエンド設計とコード修正の改善(例:楽天 AI 用の最高 iOS コード)や保険ベンチマークで 94% の精度率が含まれます。Claude Code、API、および主要クラウドプラットフォーム全体で拡張された可用性により、Sonnet 4.6 はスプレッドシート自動化、保険ワークフロー、複雑なウェブ操作などのタスクにおいて、コード精度の向上、安全な対話、および低い導入コストを提供し、多くの産業で生産性ツールを再構築する可能性があります。

2026/02/18 2:06

ありがとうございます、HNさん。おかげさまで約3万3千人もの命を救うことができました。

## Japanese Translation: ## Summary: Watsi.org は Show HN の立ち上げから始まり、Hacker News からの大量トラフィックに急速に引き寄せられ、寄付が急増し、世界中で手術ケアのために 2,000 万ドル以上を調達しました。このプラットフォームは、Hacker News の “pg” が Watsi を Y Combinator 最初の非営利団体として指摘したことで早期の信頼性を獲得し、創設者がユーザーと深く関わり、自らサイトをコーディングし、効率・透明性・継続的改善に注力するようになりました。消費財とは異なり、非営利団体は寄付への熱意曲線が弱く、ケア要請は爆発的に増加した一方で寄付額は線形にしか成長せず、バーンアウトと取締役会主導の持続可能な成長への転換を招きました。結果として Watsi の戦略は今や積極的拡大ではなく、安定した段階的スケーリングを重視し、長期的な実現可能性を目指しています。このモデルはテックコミュニティが非営利団体を持続可能に支援できる方法を示しており、将来の YC 非営利プロジェクトや広範なチャリティ・テック分野への影響力を持つ設計図となります。 ## Summary Skeleton **What the text is mainly trying to say (main message)** Watsi.org は Show HN で始まり、Hacker News のトラフィックにより急速に成長し、現在は手術のために 2,000 万ドル以上を調達した持続可能な非営利団体として運営されています。 **Evidence / reasoning (why this is said)** - Show HN を通じて立ち上げ → 大量トラフィックが発生。 - Hacker News の “pg” が最初の大きなチェックを行い、Watsi を YC 最初の非営利団体として認識。 - 創設者はユーザーと時間を共有し、自らコードを書き、効率・透明性・革新を優先。 **Related cases / background (context, past events, surrounding info)** - 非営利団体のプロダクト‑マーケットフィットは消費財とは異なり、寄付への熱意が弱い。 - 寄付額は線形に成長した一方でケア要請は爆発的に増加し、バーンアウトと取締役会による持続可能な成長への転換を招く。 **What may happen next (future developments / projections written in the text)** 戦略は急速な拡大ではなく、ゆっくりとした安定的で持続可能な軌道へシフトしており、継続的に段階的スケーリングと長期的実現性への焦点が期待される。 **What impacts this could have (users / companies / industry)** ユーザーは手術のための信頼できる資金調達を享受し、寄付者は資金の透明な使用を見ることができます。このモデルはテックコミュニティが非営利団体を持続可能に支援する方法を示しており、将来の YC 非営利プロジェクトや広範なチャリティ・テック分野への影響力を高める。

2026/02/18 4:24

**HN ストーリー:AsteroidOS 2.0 – みんなが聞かなくても、私たちはリリースしました**

## 日本語訳: **改訂概要** AsteroidOS 2.0は2026年2月17日にリリースされ、ファームウェアの機能セットとデバイスサポートを拡張し、将来の開発計画を概説しています。主要な新機能にはAlways‑on‑Displayモード、滑らかなUIアニメーション、電池寿命の向上、およびAndroid用に更新されたAsteroidOS Syncクライアントを動力付けるモジュラーBluetoothライブラリが含まれます。Gadgetbridge(v0.73.0)は同じライブラリをサポートし、Amazfish(SailfishOS/Linux)とTelescope(Ubuntu Touch)が同期エコシステムに追加されました。このリリースはウォッチの互換性を30デバイスに拡大し、Fossil Gen 4–6、Huawei Watch/Watch 2、LG Watch W7、Moto 360 2015、OPPO Watch、Polar M600、さまざまなTicwatchモデルをカバーします。また、Casio WSD‑F10/F20、LG Watch Urbane 2、Moto 360 1st gen、Samsung Gear 2/Liveの5つの実験的ウォッチが追加され、Sony Smartwatch 3は降格されました。 新しいUI改良にはランチャースタイルオプションとカスタマイズ可能なクイック設定が含まれます。コミュニティへの貢献も強調されており、Weblateを通じて20以上の言語に翻訳され、ウォッチフェイス作成ガイドが公開されました。また、moWerk、MagneFire、Dodoradio、Berosetなどの顕著な貢献者が認められています。インフラストラクチャーの更新には、FAQやウォッチギャラリーを備えた拡張ウェブサイト、MediaWikiへのドキュメント移行、公式サブレディットの立ち上げ、およびコミュニティ通信をMatrixとLibera.chatへシフトすることが含まれます。新しいコミュニティリポジトリは事前コンパイルされたパッケージ、ウォッチフェイス、ゲーム、およびエミュレーターをホストし、毎晩のリリースはより頻繁になりましたが、すべてのイメージを再構築するには約1週間かかります。 将来の計画には、統合フィットネスアプリ、設定経由でのWi‑Fiセットアップ、ウォッチフェイス作成とファームウェアフラッシュ用のWebベースツール、アプリストア、および1.0リリースサイクルから安定した頻繁なリリースを目指すクォーシー1.1ナイトリー型モデルへの移行が含まれます。ユーザーは公式ウェブサイトからAsteroidOS 2.0をダウンロードし、提供された手順でインストールし、GitHubのIssueやWeblate翻訳を通じて貢献するよう奨励されています

**pg_background** *PostgreSQLに重い処理を任せ、セッションは軽量に保ちます。* | そっか~ニュース