mysqlnd (+ mysqli etc.) - expose the gtid to PHP in the OkPacket
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- C
- Sterne
- 40.4k
- Forks
- 8.1k
- Ø Merge
- 2 T. 13 Std.
- Gemergte PRs (30 T.)
- 96
Beschreibung
Description
Looks like the gtid is already being parsed, but not exposed in PHP. It would be great to just be able to access it from the OkPacket with something like packet->gtid or packet->state_changes->gtid.
why
I can use it to track what user did what gtid change to with a gtid aware cdc on mysql. This is already working on a nodejs server (using mysql2). From my PHP server, I can only track from my ORM with timestamp + table + primary-key-id instead of gtid.
The other state changes would also be helpful from PHP-land, e.g. database for limiting the number of pools I need to run in a multi-db environment, which i cant implement in PHP at all.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, nachzuverfolgen, wie mysqlnd das MySQL OkPacket über mysqli analysiert und verfügbar macht, mit Fokus auf die vorhandene Verarbeitung von Paketen und Zustandsänderungen. Als abgeschlossen gilt die Aufgabe, wenn PHP-Code auf die GTID des Pakets und, sofern verfügbar, auf die anderen angeforderten Zustandsänderungen zugreifen kann; überprüfe das Verhalten mit einem MySQL-Setup, das GTID-fähige Antworten erzeugt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- c, mysql
- Bereich
- databases
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 42/100