← Blog

Freeable 3.18.1 — แก้งานอัตโนมัติที่ปิดตัวเองซ้ำ และการแจ้งเตือนที่เงียบหาย

ชุดแก้บั๊กของระบบงานเบื้องหลัง ซึ่งเป็นส่วนที่ผู้ใช้ไม่เห็นแต่กระทบทุกอย่าง

งานอัตโนมัติวนปิดตัวเองซ้ำ

ระบบมีกลไกปิดงานอัตโนมัติเมื่อล้มเหลวติดกันหลายครั้ง เพื่อไม่ให้งานที่พังยิงซ้ำไปเรื่อย ๆ แต่พบว่างานที่ถูกปิดไปแล้ว พอเปิดใหม่ก็ถูกปิดซ้ำทันที โดยไม่ทันได้ลองรันด้วยซ้ำ

ผลคือกลไกที่ควรช่วยกลายเป็นกับดัก — ปิดแล้วเปิดกลับไม่ได้เลย

แจ้งเตือนแล้วเงียบถาวร

เมื่องานถูกปิดอัตโนมัติ ระบบจะส่งอีเมลแจ้งผู้ดูแล แต่ถ้าส่งอีเมลไม่สำเร็จ ระบบจะถือว่าแจ้งไปแล้วและไม่แจ้งอีกเลย

สถานการณ์ที่แย่ที่สุดคือ ระบบส่งอีเมลมีปัญหาพร้อมกับงานล้มเหลว ซึ่งเกิดพร้อมกันได้ง่ายเพราะทั้งคู่มักมาจากสาเหตุเดียวกัน ผลคือไม่มีใครรู้เลยว่ามีอะไรพัง

แก้ด้วยการเก็บสถานะการแจ้งเตือนไว้ เพื่อให้เตือนซ้ำได้เมื่อส่งไม่สำเร็จ

งานรายวันไม่เข้าเงื่อนไขแจ้งเตือน

เงื่อนไขการเตือน “ล้มเหลวซ้ำ” เดิมดูย้อนหลัง 24 ชั่วโมงและเก็บประวัติแค่ 5 ครั้ง ซึ่งใช้ได้กับงานที่รันบ่อย แต่งานที่รันวันละครั้งจะมีข้อมูลไม่เกิน 1 รายการในหน้าต่างนั้น จึงไม่มีวันเข้าเกณฑ์

งานรายวันมักเป็นงานสำคัญ เช่นสรุปยอดหรือคำนวณต้นทุน การที่มันล้มเหลวโดยไม่มีใครรู้จึงเป็นปัญหาใหญ่

ระบบต่ออายุการเชื่อมต่อร้านค้า

แยกกรณี “ต้องเชื่อมต่อใหม่” (การเชื่อมต่อตายแล้ว ต้องให้เจ้าของร้านไปกดอนุญาตใหม่) ออกจาก “ล้มเหลวชั่วคราว” (ลองใหม่รอบหน้าได้)

เดิมรวมเป็นกรณีเดียวกัน ทำให้ระบบข้ามร้านที่จริง ๆ แล้วยังกู้คืนได้

ข้อความจาก Facebook

  • สองเหตุการณ์รหัสซ้ำในชุดเดียวทำให้ทั้งชุดล้มเหลว — Facebook ส่งข้อมูลมาเป็นชุด ถ้ามีสองรายการที่ระบบมองว่ารหัสซ้ำกัน ทั้งชุดจะถูกปฏิเสธ ผลคือข้อความอื่นในชุดเดียวกันหายไปด้วย
  • รหัสอ้างอิงยาวเกินความจุ — ขยายจาก 200 เป็น 512 ตัวอักษร
Freeable

บริหารจัดการข้อมูลในองค์กร ครบในที่เดียว

ดูรายละเอียด →

อ่านต่อ

Freeable

รหัสผ่าน 2026 — อักษรพิเศษ มาตรฐานสากล กฎหมายไทย และ 2FA/3FA ที่ควรรู้

กฎรหัสผ่านที่เราคุ้นเคย — ต้องมีตัวใหญ่ ตัวเล็ก ตัวเลข อักษรพิเศษ และเปลี่ยนทุก 90 วัน — ถูกมาตรฐานสากลถอดออกไปแล้ว บทความนี้รวบรวมว่าปัจจุบันมาตรฐานว่าอย่างไร กฎหมายไทยกำหนดอะไร และ 2FA ช่วยตรงไหนที่รหัสผ่านช่วยไม่ได้

Freeable

ค่าหนึ่งค่ามี 4 หน้าที่ — มาตรฐานการแทนค่า เก็บ · ส่ง · คำนวณ · แสดง

ปัญหาเรื่องวันที่ไม่ใช่ปัญหาของวันที่ แต่เป็นหนึ่งตัวอย่างของปัญหาตระกูลเดียวกัน — ค่าหนึ่งค่าถูกใช้ทำ 4 หน้าที่ที่ต่างกัน พอรูปแบบของหน้าที่หนึ่งรั่วไปอีกหน้าที่ ตัวเลขก็เพี้ยนเงียบ ๆ

Freeable

เวลาในระบบมีหลายชั้น และมันไม่ตรงกัน — บทเรียนจากบั๊กที่ไล่ 8 วันแล้วสรุปผิดหลายรอบ

บนเครื่องจริงของเรามีเขตเวลาอยู่ 3 ชั้นและไม่ตรงกันสักคู่ ทำให้ตัวเลขที่ดูเหมือนเทียบกันได้จริง ๆ เทียบไม่ได้ บทความนี้เล่าว่าเวลาซ่อนอยู่ที่ไหนบ้าง ทำไม "วันนี้" ถึงเป็นคำที่อันตราย และงานอัตโนมัติที่ค้าง 11 วันเพราะนาฬิกาเดินล้ำหน้า