הסבר על קודי שגיאה

רלוונטי רק למהדורת Cloud Firestore Enterprise.

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

DeadlineExceeded ‏ (262)

הגורמים הבאים יכולים להגדיל את מספר השגיאות DeadlineExceeded (262):

  • העלייה בזמן האחזור גרמה לכך שמשך הזמן שנדרש להשלמת הפעולה היה ארוך יותר מהזמן המקסימלי (60 שניות כברירת מחדל).
DeadlineExceeded (262): Deadline exceeded.

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

בוטל (112)

המצבים הבאים עלולים להגדיל את מספר השגיאות Aborted (112):

  • מסמך שמקבל יותר מדי עדכונים בשנייה.
  • התנגשות מעסקאות חופפות.
  • תנועת גולשים שגדלה במהירות או נתקלת בנקודות חמות.
Aborted (112): Too much contention on these documents. Please try again

או

Aborted (112): Aborted due to cross-transaction contention. This occurs when
multiple transactions attempt to access the same data, requiring at least one
to be aborted in order to enforce serializability.

כדי לפתור את הבעיה:

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

InvalidArgument (2)

השגיאות הבאות עלולות להתרחש ב-InvalidArgument (2):

  • ניסיון לבצע פעולת Commit למסמך שגדול מהמגבלה של 7.5KiB‎ לרשומה באינדקס.

‫7.5KiB הוא הגבול של ערכי אינדקס. אי אפשר לחרוג מהמגבלה הזו, ואי אפשר לשנות אותה.

InvalidArgument (2): Index entry on field_name is larger than 7680 bytes.

כדי לפתור את הבעיה:

לגבי ערכי שדות עם אינדקס, צריך לפצל את השדה לכמה שדות. אם אפשר, כדאי ליצור שדה שלא נוסף לאינדקס ולהעביר אליו נתונים שלא צריך להוסיף לאינדקס.