Nomor penghitung kini diperiksa terhadap kedua tabel
Setiap penghitung di sini memiliki nomor. Nomor itu muncul di kode sematan, di alamat statistik, dan di berapa pun halaman tempat pemilik memasangnya. Nomor dibagikan dengan memilih angka acak antara 100 dan 9.999.999.999, lalu memeriksa apakah angka itu sudah dipakai.
Pemeriksaannya hanya pada satu tabel.
Tabel yang lain
Penghitung yang sudah lama tidak mencatat tayangan dipindahkan ke tabel arsip. Itu pemeliharaan biasa — tabel kerja tetap kecil dan kueri terhadapnya tetap cepat. Pada 24 Agustus 2026 arsip itu berisi 212.771 nomor, dan tidak satu pun ada di tabel yang diperiksa oleh generator.
Jadi setiap nomor itu bebas dibagikan lagi.
Dibandingkan dengan sepuluh miliar kemungkinan nomor, itu berarti tingkat tabrakan sekitar dua persen: kira-kira satu dari lima puluh penghitung baru akan menerima nomor yang dulu milik orang lain. Dan ini bukan tabrakan yang abstrak. Penghitung yang diarsipkan diarsipkan justru karena halamannya menjadi sepi — tetapi halaman yang sepi belum tentu halaman yang sudah dihapus. Jika sematan lama masih ada di suatu sidebar yang terlupakan dan halaman itu mendapat pengunjung, tayangan itu masuk ke statistik orang lain, pada penghitung yang dibuat bertahun-tahun kemudian.
Apakah hal itu pernah terjadi tidak dapat dipastikan dari data: tidak ada yang membedakan tayangan yang datang dengan cara ini dari tayangan lainnya. Yang dapat dipastikan adalah bahwa hal itu tidak bisa terjadi lagi.
Dua perubahan
Generator kini memeriksa kedua tabel. Dan penghapusan penghitung — yang sejak hari yang sama dapat dilakukan pemilik sendiri — meninggalkan penanda nisan: sebuah baris yang hanya berisi nomor itu, sehingga nomor tersebut tidak akan pernah dibagikan lagi. Penghapusan menghilangkan data dari dua puluh tabel dalam satu transaksi dan tidak menyimpan salinan, dan memang itulah inti dari penghapusan; nomor adalah satu-satunya hal yang harus tetap hangus.
Mengapa hal ini tidak disadari
Generator itu ditulis ketika hanya ada satu tabel. Arsip datang belakangan, dengan alasan lain, untuk memecahkan masalah lain, dan tidak ada yang menghubungkan kedua pemikiran itu. Kedua bagian itu masing-masing benar.
Begitulah bentuk sebagian besar masalah semacam ini. Bukan kesalahan yang dibuat seseorang di satu tempat, melainkan akibat yang tidak dapat dilihat siapa pun dari posisinya. Satu-satunya pertahanan adalah sengaja mencarinya, dan pertanyaan yang menemukan masalah ini cukup biasa: sebelum membangun fitur penghapusan, di mana lagi nomor penghitung tersimpan?