ya, Anda memerlukan penguncian yang lebih baik pada model rumah, untuk menunjukkan bahwa addItem sedang berlangsung.
Masalahnya adalah beberapa permintaan dapat memanggil findById dan melihat rumah yang sama.items.length, kemudian masing-masing menentukan berdasarkan snapshot (kedaluwarsa) bahwa boleh menambahkan satu item lagi. Batas atomitas nodejs adalah panggilan balik; antara panggilan asinkron dan panggilan baliknya, permintaan lain dapat dijalankan.
Satu perbaikan mudah adalah melacak tidak hanya jumlah item di rumah tetapi juga jumlah item tambahan yang diinginkan. Saat masuk ke addItem, tekan hitungan "ingin menambahkan lebih banyak", dan uji itu.