ในแอปพลิเคชันของเราเราใช้ Hibernate และ PostgreSQL เพื่อเก็บข้อมูล ในตารางฐานข้อมูลหนึ่งในเรามีคอลัมน์ discriminator ซึ่งระบุเช่น "TIPPSPIEL" มันเป็นสตริงคงที่และไม่สามารถจัดการได้โดยผู้ใช้ใด ๆ
ทันใดนั้นเรามีหนึ่งรายการในตารางขนาดใหญ่นี้ที่เรามี "TIPPQPIEL" แทนที่จะเป็น "TIPPSPIEL" เราไม่มีเงื่อนงำว่าสิ่งนี้จะเกิดขึ้นได้อย่างไร
เป็นไปได้หรือไม่ว่าฮาร์ดไดรฟ์ของเราสลับหนึ่งบิตดังนั้นตัวอักษร "S" ของเราจึงไม่ถูกเข้ารหัสเป็น "1010001" อีกต่อไป แต่กลายเป็น "Q" บนฮาร์ดดิสก์โดยเปลี่ยนไปหนึ่งบิตเช่นนี้: 1010011?
ฉันไม่ใช่ผู้เชี่ยวชาญเรื่องฟิสิกส์ bit bit แต่ฉันเดาว่า OS หรือดิสก์มี checksums และสิ่งอื่น ๆ เพื่อให้แน่ใจว่าสิ่งนี้จะไม่เกิดขึ้น
เป็นไปได้หรือไม่ที่จะสลับเพียงหนึ่งบิตเพื่อให้ไฟล์ของฉันแสดงตัวอักษร "Q" แทน "S"
ปรับปรุง:เราทำการวิเคราะห์เพิ่มเติม ฐานข้อมูลทาสของเราได้รับ WAL Records จากต้นแบบ (คุณสมบัติ PostgreSQL) อะไรก็ตาม: เซิร์ฟเวอร์ทาสของเราควรจะซิงค์กัน แต่ทาสไม่ได้ซิงค์กันในแถวนี้ เราจะเห็นว่ามันเกิดขึ้นเมื่อสองสามวันก่อนโดยไม่มีการโต้ตอบใด ๆ จากผู้ใช้ในรายการนี้ ดังนั้นมันจะต้องพลิกไปรอบ ๆ น่ากลัว!