סימפטומים
נניח שאתה משתמש בשכפול טרנזקציות ב- Microsoft SQL Server 2008, ויש שאילתת עדכון שפועלת בפרסום. כאשר אתה משדרג את SQL Server ל- SQL Server 2012 או ל- SQL Server 2014, ושאילתת העדכון אינה מופצת לפני השדרוג, סוכן קורא יומן הרישום עלול להיכשל עם השגיאה הבאה:
הערה
<תאריך><ושעה> מפרסם: {call sp_replcmds (500, 0, 0, , 0, 500000)}
<תאריך><ושעה> מצב: 0, קוד: 20011, טקסט: 'לתהליך לא היתה אפשרות לבצע את 'sp_replcmds' ב- '< שם> המפרסם'.'.
<תאריך><ושעה> לתהליך לא היתה אפשרות לבצע 'sp_replcmds' ב'שם<> המפרסם'.
<תאריך><שעה> מצב סוכן Repl: 6
<תאריך><ושעה> מצב: 0, קוד: 542, טקסט: 'המערכת נתקלה בערך תאריך ושעה לא חוקי. הערך עולה על השנה 9999.'.
<תאריך><שעה> מצב: 0, קוד: 3621, טקסט: 'ההצהרה הסתיימה.'.
<תאריך><ושעה> מצב: 0, קוד: 22037, טקסט: 'לתהליך לא היתה אפשרות לבצע את 'sp_replcmds' ב'שם<> המפרסם'.'.
גם אם בעיה זו לא התרחשה, רשומות יומן רישום משודרגות עבור משפטי עדכון עדיין עלולות להתפרש באופן שגוי על-ידי סוכן קורא יומן הרישום והשגיאה הבאה עלולה להתעורר ב- Distribution Agent:
הערה
515 אין אפשרות להוסיף את הערך NULL לעמודה '<שם> עמודה', טבלה '<שם> טבלה'; עמודה אינה מאפשרת ערכי Null. העדכון נכשל.
הערה
- סוגי נתונים ואילוצים שונים עלולים לגרום לדיווח על שגיאות שונות, ובעיה זו אף עלולה לגרום לאי-התכנסות.
- הבעיה מתרחשת כשאתה משדרג מ SQL Server 2008 או SQL Server 2008 R2 ל- SQL Server 2012 או SQL Server 2014.
פתרון
אם השגיאה '515 אין אפשרות להוסיף את הערך NULL לעמודה '<שם> עמודה', טבלה '<שם> טבלה'; COLUMN אינו מאפשר ערכי Null. UPDATE fails" in Distribution Agent התרחש, עליך לאתחל מחדש את השכפול. תיקון חם זה אינו מתקן שגיאה זו. כדי להימנע משגיאה זו, עליך להפוך את סוכן קורא יומן הרישום ללא זמין לפני השדרוג, לאחר מכן לשדרג עד לתיקון זה ולאחר מכן להפוך מחדש את סוכן קורא יומן הרישום לזמין.
הבעיה תוקנה לראשונה בעדכון המצטבר הבא של SQL Server.
עדכון מצטבר 2 עבור SQL Server 2012 SP2 /he-il/help/2983175
עדכון מצטבר 3 עבור SQL Server 2014 /he-il/help/2984923
עדכון מצטבר 11 עבור SQL Server 2012 SP1 /en-us/help/2975396
אודות עדכונים מצטברים עבור SQL Server
כל עדכון מצטבר חדש עבור SQL SQL Server מכיל את כל התיקונים החמים ואת כל תיקוני האבטחה שנכללו בעדכון המצטבר הקודם. עיין בעדכונים המצטברים האחרונים עבור SQL Server:
- העדכון המצטבר האחרון עבור SQL Server 2012 SP2
- העדכון המצטבר האחרון עבור SQL Server 2014
- העדכון המצטבר האחרון עבור SQL Server 2012 SP1
מצב
Microsoft אישרה שזוהי בעיה במוצרי Microsoft המפורטים בסעיף "חל על".