עדכון מתנגש

תיאור

עדכון מתנגש מתרחש כאשר ל-review או ל-merchant יש מספר עדכונים (מנסים עם אותו מזהה review או merchant) עם תוכן שונה, אבל זהה last_update_timestamp. מכיוון שלרשומות האלה יש אותו last_update_timestamp, אנחנו לא יכולים לזהות איזה עדכון עדכני יותר.

איך לתקן

עליך לספק את review או merchant עם התוכן העדכני ביותר ועם last_update_timestamp מעודכן.

התנגשות בין יצירת חותמת זמן

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

כאשר יש שני עדכונים שמתנגשים כתוצאה מערכים שונים עבור create_timestamp, ולדעתך create_timestamp החדש הוא הנכון, יש לבצע את השלבים הבאים כדי להגדיר זמן יצירה חדש עבור review או merchant מבלי ליצור בעיית נתונים חדשה:

  1. עליך לשלוח את הפרמטר review או merchant שוב עם ה-create_timestamp המיועד ועודכן לאחרונה ב-Last_update_timestamp.
  2. מודיעים לצוות התמיכה שמתכוונים להשתמש בזמן היצירה החדש, ומזינים את שם הקובץ שמכיל את הרשומה עם זמן היצירה החדש. צוות התמיכה יבטיח שייעשה שימוש בזמן היצירה החדש ולא תיווצר בעיית נתונים חדשה.

התנגשות בשינוי בפורמט XML

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

  1. יש לעדכן את צוות התמיכה מדוע לא ניתן לעדכן את last_update_timestamp.
  2. יצירת קובץ עם התוכן העדכני ביותר (במקרה הזה, אין צורך לעדכן את last_update_timestamp)
  3. יש לספק לצוות התמיכה את שם הקובץ לתוכן העדכני ביותר. צוות התמיכה מוודא שהשימוש בתוכן העדכני ביותר יהיה עדכני.

דוגמה

ב-1 במרץ מעלים את קובץ הפיד "2017_03_01.xml" לנקודת הקצה. הקובץ מכיל את התוכן הבא:

<review id="156368" mid="2739">
  <reviewer_name>Ada</reviewer_name>
  <create_timestamp>2017-02-25T03:02:23Z</create_timestamp>
  <last_update_timestamp>2017-02-25T03:02:23Z</last_update_timestamp>
  <country_code>US</country_code>
  <title>Great prices</title>
  <content>My order arrived on time and I got a great price.</content>
  <ratings>
    <overall min="1" max="10">9</overall>
    <customer_service min="1" max="10">10</customer_service>
  </ratings>
  <collection_method>after_fulfillment</collection_method>
</review>

ב-5 במרץ מעלים את קובץ הפיד "2017_03_05.xml" לנקודת הקצה. הקובץ מכיל עריכת משתמש לכותרת של הביקורת, אבל last_update_timestamp לא השתנה מהערך הקודם שנשלח לבדיקה הזו:

<review id="156368" mid="2739">
  <reviewer_name>Ada</reviewer_name>
  <create_timestamp>2017-02-25T03:02:23Z</create_timestamp>
  <last_update_timestamp>2017-02-25T03:02:23Z</last_update_timestamp>
  <country_code>US</country_code>
  <title>Great prices and customer service!</title>
  <content>My order arrived on time and I got a great price.</content>
  <ratings>
    <overall min="1" max="10"<9>/overall>
    <customer_service min="1" max="10"<10>/customer_service>
  </ratings>
  <collection_method>after_fulfillment</collection_method>
</review>

לאחר שתקבלו הודעה מצוות התמיכה על כך שמתרחשת בעיה של התנגשות בין נתוני עדכונים עליכם להעלות את הכתובת "2017_03_10-fix.xml"לנקודת הקצה שלך כדי לפתור את הבעיה.

<review id="156368" mid="2739">
  <reviewer_name>Ada</reviewer_name>
  <create_timestamp>2017-02-25T03:02:23Z</create_timestamp>
  <last_update_timestamp>2017-03-04T02:01:20Z</last_update_timestamp>
  <country_code>US</country_code>
  <title>Great prices and customer service!</title>
  <content>My order arrived on time and I got a great price.</content>
  <ratings>
    <overall min="1" max="10">9</overall>
    <customer_service min="1" max="10">10</customer_service>
  </ratings>
  <collection_method>after_fulfillment</collection_method>
</review>