Freeable 3.18.6 — แก้บั๊กสำคัญ: งานอัตโนมัติรันซ้ำสองรอบ
บั๊กสำคัญที่สุดของชุด 3.18 และเป็นต้นเรื่องของการตรวจสอบอีกหลายรีลีสที่ตามมา
อาการ
งานอัตโนมัติถูกลงทะเบียนไว้สองที่ — ทั้งในกระบวนการรวมและในกระบวนการแยก ผลคือรันพร้อมกันสองรอบ
ทำไมถึงร้ายแรง
งานอัตโนมัติส่วนใหญ่ออกแบบมาโดยสมมติว่ามีตัวเองรันอยู่ตัวเดียว พอมีสองตัวรันพร้อมกันจะเกิดสองปัญหา
- ผลซ้ำ — ส่งแจ้งเตือนสองครั้ง สร้างเอกสารซ้ำ หรือหักยอดสองรอบ
- แย่งกันทำงาน — ทั้งสองตัวอ่านสถานะเดียวกันพร้อมกัน เห็นว่า “ยังไม่มีใครทำ” แล้วต่างคนต่างทำ
อาการแบบนี้ไม่คงที่ บางครั้งเกิดบางครั้งไม่ ขึ้นกับจังหวะ ทำให้ไล่หาสาเหตุยากมาก
วิธีแก้
ให้เหลือที่เดียวที่รับผิดชอบการรันงานเบื้องหลัง และเพิ่มการตรวจสอบไม่ให้บันทึกรายการแจ้งเตือนเดิมซ้ำภายในรอบเดียวกัน
การค้นพบนี้นำไปสู่การไล่ตรวจทั้งระบบในรีลีสถัดไป ว่ายังมีจุดไหนอีกที่มีปัญหาแบบเดียวกัน
บริหารจัดการข้อมูลในองค์กร ครบในที่เดียว