เคอร์เนลลินุกซ์รุ่นเก่ามีปัญหา Leap Second ทำระบบล่มในช่วงเปลี่ยนวันใหม่

by mk
13 January 2015 - 08:47

วันที่ 30 มิถุนายนปีนี้ โลกของเราจะมี "วินาที" เพิ่มเข้ามาอีกหนึ่งวินาที (leap second หรือ อธิกวินาที) เพื่อชดเชยระบบการนับเวลาที่อาจไม่พอดีกับการหมุนของโลกแบบเป๊ะๆ

เรื่องนี้ไม่ใช่เรื่องใหม่ เพราะโลกของเรามีการใส่วินาทีเพิ่มเข้ามาแล้วทั้งหมด 25 ครั้ง (ครั้งล่าสุดในปี 2012 นี้เอง) อย่างไรก็ตาม การใส่วินาทีแปลกปลอมเพิ่มเข้ามากลับสร้างปัญหาให้ระบบคอมพิวเตอร์ที่ไม่ได้ออกแบบมาสำหรับเรื่องนี้ตั้งแต่ต้น (ลักษณะเดียวกับปัญหา Y2K)

การใส่วินาทีเพิ่มในปี 2012 ส่งผลกระทบกับเซิร์ฟเวอร์สาย Linux/Unix รุ่นเก่าอย่างแรงในช่วงรอยต่อของวัน เหตุการณ์ระบบล่มครั้งสำคัญคือระบบจองตั๋วเครื่องบิน Altea ของบริษัท Amadeus ซึ่งเป็นบริษัทรายใหญ่ของโลกด้านนี้ถึงกับล่มไป 48 นาที ทำให้สายการบินในออสเตรเลีย (ที่ข้ามเส้นแบ่งวันก่อนประเทศอื่นๆ) ต้องจองตั๋วและเช็คอินด้วยกระดาษแทน นอกจากนี้ยังมีบริษัทหลายแห่งที่ได้รับผลกระทบ เช่น Yelp, LinkedIn, Reddit, Foursquare

สาเหตุของปัญหาเกิดจากเคอร์เนลลินุกซ์รุ่นเก่าที่มีบั๊กนี้ (เคอร์เนลเวอร์ชัน 2.2.26-3.3) และระบบซอฟต์แวร์อื่นๆ เช่น Java หรือ Hadoop ก็มีปัญหานี้เช่นกัน

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

ที่มา - The Register, Wired

Blognone Jobs Premium