Match PDO MySQL lastInsertId() behavior in edge cases
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 55/100
調査の方向性
WP_MySQL_On_SQLite::lastInsertId() と、#471 で参照されている PDO のカバレッジ作業から始めてください。列挙された INSERT および REPLACE のケースのカバレッジを追加し、返される ID が SQLite の接続レベルの last row ID ではなく、PDO MySQL の動作と一致することを確認してください。
索引モデルが issue の本文から書いたものです。
説明
Problem
WP_MySQL_On_SQLite::lastInsertId() snapshots SQLite's last row ID, but SQLite and PDO MySQL differ in several cases:
- A multi-row insert returns SQLite's last generated ID; PDO MySQL returns the first.
- An insert into a table without
AUTO_INCREMENTcan expose a SQLite row ID; PDO MySQL returns"0". - A fully ignored insert can expose a stale or advanced SQLite ID; PDO MySQL returns
"0".
The PDO coverage work in #471 handles initialization, operation resets, and isolation from internal SQLite writes, but not these differences.
Expected behavior
Derive the ID from the user-issued MySQL INSERT or REPLACE operation rather than directly exposing SQLite's connection-level last row ID.
Add coverage for single-row, multi-row, explicit-ID, non-auto-increment, ignored, replace, and duplicate-key-update cases.
- 主要言語
- PHP
- スター
- 362
- フォーク
- 69
- 平均マージ
- 3日 11時間
- マージ済み PR(30日)
- 12
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドなし
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
WordPress/sqlite-database-integration のほかの issue
-
MySQL-on-SQLite does not translate DATE arithmetic with INTERVAL HOUR対応中かも @samuelmbabhazi が 26 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
WordPress/sqlite-database-integration#454 · コメント 3 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 40/100
WordPress/sqlite-database-integration#531 ·
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
WordPress/sqlite-database-integration#529 ·
メンテナーはふだん 1 日以内に返信
-
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
WordPress/sqlite-database-integration#528 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 1〜2日 初心者へのやさしさ 52/100
WordPress/sqlite-database-integration#527 ·
メンテナーはふだん 1 日以内に返信
WordPress/sqlite-database-integration の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
-
Featured image not passed to checks in the Tasks column or publish blocks対応中かも @roborourke が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
humanmade/publication-checklist#100 ·
メンテナーはふだん 1 日以内に返信
-
bug customer-reported
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
MagnaCapax/PMSS#1072 ·
メンテナーはふだん 5 日以内に返信
-
難易度 2/5 半日 初心者へのやさしさ 68/100
components-web-app/docs#244 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 64/100
getgrav/grav-plugin-api#60 ·