ผลต่อเนื่องจากบันทึกก่อนหน้านี้ ครับ หลังจากงมโค๊ดจนสามารถแก้ไขปัญหา แล้วทำการเพิ่มฟังก์ชั่นไปได้ และกำลังเข้าสู่ขั้นตอนการทดสอบการส่งข้อมูลไปยัง server อีกตัวหนึ่งของระบบที่มีความสำคัญ(มากๆ) ตัวหนึ่งของบริษัท จากการอ่านคู่มือที่ทำไว้ และจากการแกะโค๊ด จับใจความได้ว่าให้ไปแก้ไฟล์ config เพื่อชี้ไปยัง server ตัวทดสอบ โอเคคครับ แก้ไขให้ชี้ url ไปยังตัวทดสอบ ปรากฎว่าไม่ได้ อะต้องมีอะไรผิดพลาดแน่ๆ พบว่ามันไปติดตัวแปร static ตัวหนึ่งที่จะเก็บไว้ที่ server ตลอดเวลาและกำหนดค่าเป็น "จริง" เสมอ แต่เมื่อเช็คค่าแล้วกลับให้ผลตรงกันข้าม !!!
เอ๊ะ ! เกิดอะไรขึ้น (คิดในใจซ่อนกลไกส่วนตัวเอาไว้อีกแล้วซิ hard code แหง่มๆ ) เลยโทรไปสอบถามโปรแกรมเมอร์คนที่ทำระบบนี้มาก่อนพบว่าต้องไปเซทค่าอีกที่หนึ่งซึ่ง..
ไม่ได้เขียนไว้ในคู่มือ และชื่อไฟล์ไม่ได้บ่งบอกเอาซะเลย - -"
โอเค เซทค่าได้ละ ทดสอบๆๆๆๆ ^^
ไม่กี่ชม ถัดมา เสียงโหวกเหวกจากผู้ดูแลระบบ server เครื่อง production โวยวายๆ ข้อมูลหาย (จะโวยวายทำไมเนี้ย - -a) หลังจากโวยวายได้ไม่นาน สรุปว่าข้อมูลที่หายนั้นเกิดจากโปรแกรมที่ผมเข้าไปแก้ไข - -" เอาแล้วไง ผิดที่ฟ้าอีกแล้ว T^T
ค้นพบว่า config ห่าเหวอะไรนั้นไม่ได้ใช้เลย เป็นแค่ตัวหลอก และข้อมูลทั้งหมดที่ทำการทดสอบถูกส่งเข้า server ตัวจริงทั้งหมด เหอะๆๆ
โดยที่ช่องทางการเซทค่าจริงๆ นั้นถูกซ่อนไว้อีกที่หนึ่งต่างหาก โทรไปสอบถามโปรแกรมเมอร์อีกครั้ง ได้รับคำตอบว่า " เรื่องมันยาว " หะ หะ หะ - -"
ชีวิตที่แสนเศร้าของห่วงโซ่สุดท้าย ของการเขียนโปรแกรม T^T
ทำผิด ทำไม่ถูก เป็นบทเรียนที่ดีจ้า
มาเขียนบันทึกเล่าอีกนะ จะได้มาตามอ่านอีกค่ะ
เหอๆ น่าสงสารจริงๆ เข้าใจหัวอกเดียวกาน ที่ต้องทำโปรแกรมต่อจากคนอื่นใช่มะ
เหมือนของผมเลย แต่ที่ผมซวคือ ของผมมันดันทำต่อเป็นรุ่นที่ 3 นี่ดิ