Võtke ühendust toega

Vastame e-postiga, tavaliselt kahe päeva jooksul.

Väärkasutuse vältimiseks kontrollib seda saadetist Google reCAPTCHA. Seejuures edastatakse andmeid Googlele. Skript laaditakse alles selle vormi avamisel.

← Kõik postitused

Loenduri numbreid kontrollitakse nüüd mõlema tabeli vastu

Sisust ja selle ülevaatamisest

Selles artiklis

Igal siinsel loenduril on number. See esineb manustamiskoodis, statistika aadressis ja nii paljudel lehtedel, kui omanik selle pani. Numbreid jagatakse nii, et valitakse juhuslik number vahemikus 100 kuni 9 999 999 999 ja kontrollitakse, kas see on juba võetud.

Kontrolliti ühte tabelit.

Teine tabel

Loendurid, mis pole pikka aega ühtegi vaatamist registreerinud, viiakse arhiivitabelisse. See on tavaline korrastustöö — see hoiab tööpõhja tabeli väikese ja päringud selle vastu kiired. 24. augustil 2026 oli arhiivis 212 771 numbrit ja mitte ükski neist ei olnud tabelis, mida generaator kontrollib.

Seega oli igaüks neist vaba uuesti välja andmiseks.

Kümne miljardi võimaliku numbri vastu on see kokkupõrke tõenäosus umbes 0,002 protsenti: ligikaudu üks 47 000 uuest loendurist saaks numbri, mis oli kuulunud kellelegi teisele. Haruldane, aga mitte abstraktne. Arhiveeritud loendur on arhiveeritud just seetõttu, et selle leht vaikseks jäi — kuid vaikne leht ei ole tingimata kustutatud leht. Kui vana manus on endiselt kusagil unustatud külgribal ja see leht saab külastaja, satub vaatamine võõra statistikasse, aastaid hiljem loodud loendurile.

47 ruutu, igaüks tuhat uut loenduritumbes üks neist 47 000 loendurist saab taaskasutatud numbriarhiveeritud numbrid, mida generaator ei kontrollinud: 212 771umbes kümne miljardi võimaliku numbri ruumis

Kas seda kunagi juhtus, ei saa andmetest kindlaks teha: miski ei eralda sel viisil saabunud vaatamist ühestki teisest. Kindlaks saab teha, et see ei saa enam juhtuda.

Kaks muudatust

Generaator kontrollib nüüd mõlemat tabelit. Ja loenduri kustutamine — mida omanik saab samast päevast alates ise teha — jätab maha hauakivi: rea, mis koosneb ainult numbrist, et seda ei saaks kunagi uuesti välja anda. Kustutamine eemaldab kahekümne tabeli andmed ühe tehinguga ega jäta koopiat, mis ongi kustutamise mõte; number on ainus asi, mis peab jääma põletatuks.

Miks see märkamata jäi

Generaator kirjutati siis, kui tabel oli üks. Arhiiv tuli hiljem, teisel põhjusel, teist probleemi lahendades, ja miski ei ühendanud neid kahte mõtet. Mõlemad osad olid iseenesest õiged.

See on enamiku selliste vigade kuju. Mitte viga, mille keegi ühes kohas tegi, vaid tagajärg, mida keegi ei olnud positsioonil nägema. Ainus kaitse on tahtlikult otsima minna ja küsimus, mis selle leidis, oli tavaline: enne kustutamise ehitamist, kus veel loenduri number elab?

Reklaam