O řízení PostgreSQL commitfestu jsem psal již dříve.
Během vývojového cyklu PostgreSQL 13 jsem to udělal znovu. Tentokrát jsem použil jinou strategii, většinou proto, že jsem cítil, že se zde příliš hromadí velmi staré patche, kterým nebyla věnována dostatečná pozornost. Takže kromě oprav chyb (které jsou vždy speciální případy) jsem se zaměřil na opravy, které stály ve frontě déle.
Jedna věc, kterou jsem si všiml, je, že některé patche nebyly aktualizovány na základě zpětné vazby nebo po bit-rottingu, a to ani po opakovaném pobízení od předchozích manažerů commitfestu. Přesouvají se z jednoho commitfestu do druhého bez jakékoli další aktivity. Některé z nich jsou od lidí, kteří přešli z vývoje PostgreSQL; jiné mohou být opuštěné projekty. Podle mého názoru nemá smysl je držet, pokud se nic neděje, takže jsem je uzavřel a poskytl seznam, aby se ostatní mohli podívat a převzít vlastnictví, pokud si to přejí. (Následný příspěvek obsahuje některé další). Doufám, že pokud má někdo o tyto funkce zájem, vyzvedne si záplaty a znovu je odešle poté, co se vyjádří k jakékoli zpětné vazbě a bit-rot.
Další věcí, která se stává běžnou, je to, že mnoho patchů se zdržuje s malou kontrolou – nebo někdy dokonce s podstatnou kontrolou nikdy nedosáhnou bodu, kdy je zadavatel vyzvedne. V některých z těchto případů jsem přistupoval tak, že jsem pobízel konkrétní lidi, o kterých jsem si myslel, že by mohli pomoci s recenzí; v ostatních případech jsem si záplaty prohlédl sám. Někdy se zdá, že pouhé položení otázky stačilo k tomu, aby se ostatní zapojili do diskuze, takže i když je něčí přímý příspěvek malý, má mnohem užitečnější účinek.
Sám jsem se také přihlásil jako recenzent/pověřenec pro pár oprav. Byl jsem v tom středně úspěšný, skončil jsem s 24 odevzdáním a 10 odevzdanými položkami označenými jako potvrzené… neboli asi 25 % z celkového počtu odevzdaných položek commitfest. Není to špatné, co?
V e-mailu se zprávou o uzavření jsem zveřejnil tuto tabulku:
Stav | 1. týden | týden2 | 3. týden | 4. týden | konečné |
Potřebuje kontrolu | 165 | 138 | 116 | 118 | 0 |
Čekání na autora | 30 | 44 | 51 | 44 | 0 |
Připraveno na Committer | 11 | 5 | 8 | 11 | 0 |
Vráceno se zpětnou vazbou | 1 | 4 | 5 | 5 | 28 |
Přesunuto do dalšího CF | 2 | 4 | 4 | 4 | 191 |
Zavázáno | 14 | 23 | 32 | 34 | 42 |
Zamítnuto | 1 | 1 | 1 | 1 | 1 |
Staženo | 4 | 9 | 11 | 11 | 12 |
Jedna věc, která stojí za zmínku, je, jak „vráceno se zpětnou vazbou“ zůstalo po celou dobu pěkně nízko a vyskočilo až na samém konci, a to ve velkém počtu. Cvičení, které navrhuji budoucím CFM, je zdravě zavřít neaktivní, bit-rot patche na konci jejich mandátu, namísto přesunu takových patchů na příští commitfest. Poslední operace by měla být vyhrazena pro záplaty, které byly aktivní během CF, nebo ty, které stále platí, nebo ty, které na autory čekaly teprve nedávno. Další věc, která stojí za zmínku, je počet odeslaných patchů… nebo spíše to, jak pomalu stoupal. Někteří pachatelé byli rozptýleni pomoc s vydáním Postgres 12; jiní byli velmi aktivní v opravách, které nebyly součástí commitfestu. Očekávám, že několik komisařů bude příště věnovat větší pozornost a pak uvidíme nějaký skutečný pokrok.
Commitfest bot Thomase Munroa je neocenitelný nástroj; autoři patchů by tomu měli věnovat větší pozornost. Bylo by mnohem lepší mít tuto službu integrovanou do infrastruktury naší komunity; Myslím, že to vyžaduje jen nějaké kulaté školné.
Některé věci, které bych si přál mít:
- aktualizovaný pg_dump dat commitfest pro místní dotazování.
- Týdně jsem získával výpisy tak, že jsem se zeptal správné osoby a napsal několik hrubých dotazů. Mohli bychom poskytnout výsledky (vylepšených verzí) takových dotazů jako přehledy v aplikacích.
- Také by bylo vítáno nějaké vylepšené filtrování v aplikaci commitfest.
- Akt přesouvání záplat hromadně na další CF by mohl být lépe automatizován.
Celkově vzato to byl velmi uspokojivý měsíc a doufám, že byl cenný pro vývoj PostgreSQL. Jsem vděčný, že mi 2. kvadrant dal příležitost strávit měsíc tím… ale i tak se těším na návrat ke svým pravidelným povinnostem.