דלג לתוכן
Gevurah

שכבת הזיכרון

867 רשומות ששורדות כל סשן, ו-timeout אחד שפוגע באחזור.

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

הבעיה

סוכן ששוכח הוא סוכן שחוזר על הטעות.

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

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

867

רשומות זיכרון

3.1MB של מצב עמיד, מחוץ לכל סשן.

1,315

קישורים בין רשומות

הזיכרון הוא גרף. עובדה שעומדת לבדה היא בדרך כלל עובדה שאיש לא ימצא שוב.

2,942

מקטעים מאונדקסים ב-751 קבצים

אינדקס האחזור יושב מעל מאגר הרשומות ואינו מחליף אותו.

גרף קטן שבו צמתים מייצגים רשומות זיכרון וקווים מייצגים את הקשרים ביניהן.

עיצוב

עובדה אחת בכל רשומה, והסיבה צמודה אליה.

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

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

שער המיזוג

לפני שרשומות מתמזגות, שער בודק שכל קובץ נכנס נושא token ייחודי, כדי ששני כותבים לא ידרסו זה את זה בשקט. בביקורת האחרונה הוא זיהה token ייחודי ב-611 מתוך 661 קבצים. ב-50 הקבצים שלא הצליח לפתור מטפלים במפורש במקום להניח שהם תקינים.

אחזור

האינדקס אמיתי. מסלול השאילתה החי פגוע כרגע.

זה החלק שרוב המערכות היו משאירות מחוץ לעמוד כזה, ולכן הוא מופיע קרוב לראש העמוד שלנו. האינדקס הסמנטי קיים ומאוכלס. בשימוש חי, השאילתות נופלות כרגע לדירוג מילולי, מפני שה-timeout לפני תהליך האחזור הוא 30 שניות והתהליך נמשך 33 שניות.

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

מה איננו טוענים

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