
Immich の Live Photo が静止画で保存されるとき:メタデータを変える前にペアを確認
Immich 上での再生、ファイル内の識別子の一致、画像の保存は、それぞれ別のことを示します。静止画だけのダウンロードを復元済みのバックアップと見なす前に、元のペアと「写真」に復元された項目を確認しましょう。
WATCH AT EASE · 実用ガイド
日常の疑問に、現在も役立つことを確認した答えを。
1–24 / 359

Immich 上での再生、ファイル内の識別子の一致、画像の保存は、それぞれ別のことを示します。静止画だけのダウンロードを復元済みのバックアップと見なす前に、元のペアと「写真」に復元された項目を確認しましょう。

最初の PermissionError と後の削除失敗は原因が異なります。削除境界を決め、すべての二次ハンドルをその前に閉じます。

UTC 変換結果との直接比較では、繰り返される時間帯の両方が無効と判定されることがあります。まず現地時刻の往復変換を確認し、曖昧さの解消と瞬間を表すキーの選択を分けます。

タスクの直列化前に失敗することがあります。一時ディレクトリとAF_UNIXポリシー拒否を分け、spawn、単一worker、または根拠あるコンテキストを選びます。

フィールドの除外が間に合わない場合があります。再帰型、実際の参照循環、共有される子を区別して JSON の形を決めます。

gatherは最初の例外を伝えるが兄弟を取消さない。一緒に失敗させるならTaskGroup、選択的ならTaskを保持して取消と終了待ちを行う。

コピー元の未確定更新、使用中のコピー先、別接続のロックを切り分けます。トランザクションのフラグだけでは対処を決められません。

Python 3.12はcached_propertyの旧ロックを削除した。重複実行が有害か確認し、必要なら成功値をロック内で保存する。

バイトオフセットは表現の識別子ではありません。Range と If-Range を使い、正しい 206 だけを追記し、200 ならゼロから置換して検証します。

添付画像を除外し、候補数を確認。同じファイルの実際のストリーム番号でプレビューを検証します。

一覧に出ない、空になった、曲を開けないという症状では対処が違う。証拠を保存してから復旧方法を選ぶ。

欠落は移動、一時オフライン、本当の削除のいずれかです。worktree ごとの HEAD と index を保存してから分類し、repair、lock、prune を選びます。

バックアップ呼び出しの完了はコピー終了を示すだけです。候補ファイルを読み取り専用で再オープンし、SQLiteとアプリの検査後に昇格し、旧正常版は最後にローテーションします。

Task、to_thread、スレッドとプロセスの違いを整理。投入のたびにコンテキストをコピーし、変更は戻り値で渡します。

28項目のローカル検証で、終了後の末尾再投入、最初のメンバーだけの出力、全文が出ても未完了な第2メンバーを区別しました。

libraryやsubprocessへ渡す前に、隠れたfileno rolloverとEOF位置を分離します。

28項目のローカル検証で、clear_cache()、新しい既定dircmp、diff_filesだけの深い比較がそれぞれ見落とす理由を確認しました。

20件の実測で、Python 3.12の仮実装、ZIPのUnix種別情報、CRC整合性、標準展開器が実際に作るオブジェクトを分ける。

厳格な alphabet 検査と RFC 4648 の canonical encoding は別物です。Python 3.15+ は canonical=True、旧版は decode 後の exact re-encode 比較を使います。

引用符オプションが存在しても、読み取り動作まで実装されているとは限らない。20件の実測で、解析の問題、復元できない出力時の欠落、文字列かNoneだけを扱う代替規則を分ける。

厳格なデコードと単一の正規表記は別の確認だ。17項目のローカル対照で、未使用ビット、版ごとの引数、長さ制限、デコード後のバイトの意味を分ける。

空のキューと未完了タスク台帳を分け、停止したコンシューマー、番兵、Python 3.13+ の終了方式を証拠で判定します。

親ビューを解放し配列名を削除しても、スライスや別名が残る場合があります。結果がマッピングを借用するのか、独立したコピーを持つのか確認します。

Executor インスタンス、インタープリタ終了、asyncio の既定プールを分けてから再試行や再生成を判断します。