תיקוני תקלות 153081
בחודשים האחרונים קיבלתי מספר דיווחים על מקרים בהם משתמשים לחצו על קישור "תגובות חדשות", והגיעו למאמר ללא אף תגובה חדשה. בחלק מהמקרים הם חשבו שהתגובה הוסרה מהמערכת – ראו למשל תגובה 135040. אלא שלמעשה, מדובר בתקלה הנובעת מחוסר עקביות במסד הנתונים.

הבוקר איתרתי ותיקנתי את גורם הבעיה - חלקית, לפחות. תיקון מלא ידרוש עדכון תוכנה (חיצונית, לא תוכנת האייל) שלא יתאפשר ללא שידרוג החומרה. אני מקווה שכל הסיפור יסתיים בתוך חודש-חודשיים.

הראשונה לדווח על התקלה באופן מפורט מספיק כך שאוכל לנסות ולאתר את הבעיה היתה עדי. גם ליאור גולגר ואחרים דיווחו על בעיות דומות. תודה לכולכם.
תיקוני תקלות 153844
אני סקרן. איזו תוכנה ואיזו חומרה?
תיקוני תקלות 154072
תוכנת ה-DB, לגרסה שתתמוך באופן ראוי בטרנזקציות; להערכתנו, השרת הנוכחי לא יעמוד בעומס שיווצר (שכן DB טרנזקציוני הוא איטי יותר מעצם טבעו), ולכן אנו מהססים לעשות זאת לפני שדרוג החומרה.
סליחה על הבורות, אבל 154073
מה הם:
DB
טרנזקציות?
סליחה על הבורות, אבל 154087
DB - מסד נתונים, database - תוכנה המאפשרת שמירת נתונים כך שאיחזורם ועדכונם מתבצע באופן יעיל.
טרנזקציה - ביצוע אוסף של פעולות במסד נתונים כך שמובטח שבמידה ואחת הפעולות תכשל, אף לא אחת מהן תתבצע. שימושי במקרים בהם ישנם מספר נתונים התלויים זה בזה, ואנו רוצים למנוע מצב בו (בשל תקלה) עודכן נתון אחד ואילו השני לא עודכן.

דוגמא פשוטה: בנקים שומרים את נתוני החשבונות במסדי נתונים. פעולה נפוצה בבנק: העברת סכומים בין חשבונות. העברת 100 ש"ח מהחשבון שלי לחשבון של מיץ פטל דורשת שתי פעולות עדכון‏1: הורדת 100 ש"ח מהחשבון שלי, והוספת 100 ש"ח לחשבון של מיץ. אם ביצענו את העדכון הראשון, ואז יש הפסקת חשמל, הרי שבחשבון שלי יש 100 ש"ח פחות, אבל בחשבון של מיץ אין 100 ש"ח יותר. כדי למנוע מצבים כאלה, מסמנים את צמד הפעולות כטרנזקציה, ואז כאמור אם אחת נכשלת מסיבה כלשהי, גם השניה מבוטלת.

-----
1 מתכנתי הבנקים שבקהל מתבקשים שלא לתקן אותי, זוהי רק דוגמא.
תודה 154191
תיקוני תקלות 154077
טוב, בינתיים אני מציע לארגן תורנות בין המשתמשים, כדי שלא יהיו גישות בוזמניות לבסיס-הנתונים :-)
תיקוני תקלות 154086
הבעיה אינה בגישות בו-זמניות (כאלה יש בהמונים, ואין איתן כל בעיה) אלא בנפילות במהלך עדכון, מה שגורם לעדכון להשמר באופן חלקי בלבד. למשל, תגובה נשמרת, אבל מבני הנתונים התומכים בהצגת תגובות חדשות מעודכנים באופן חלקי בלבד. מספר העדכונים הנדרש לאחר שנשמרת תגובה הוא בסדר גודל של עומק עץ הדיון עד לתגובה החדשה; העצים באייל נוטים להיות עמוקים להחריד.
תיקוני תקלות 154094
זה היה ההסבר הראשון שעלה בדעתי לצורך בטרנזקציות, אבל פסלתי אותו כיוון שחשבתי שאין נפילות. למה שיהיו?
תיקוני תקלות 154096
מרפי, בעיקר.

חזרה לעמוד הראשי המאמר המלא

מערכת האייל הקורא אינה אחראית לתוכן תגובות שנכתבו בידי קוראים