לדלג לתוכן

פרויקט מאגר ושירות מקומי

נחבר אחרי פרק 8 את הWAL מפרק 7 לשירות בעל named pipe מאומת. ההרחבה מוסיפה משתמשים נפרדים, קבלת עבודה durable, query וretry. השירות צריך לעלות מחדש עם אותו מידע שהבטיח לשמור לפני שנפל.

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

מזריקים קריסה בכל גבול כתיבה וflush, דיסק מלא, ניתוק client וstop של השירות. מפרידים בין בדיקת process exit לבין בדיקת אובדן חשמל; הדוח מציין איזה חוזה אחסון נבדק בפועל.

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