תופעות
בעת שימוש במופע חדש של Microsoft SQL Server 2016 (או 2017) או במופע של SQL Server 2016 (או 2017) ששודרג מגירסה קודמת של SQL Server, אתה נתקל בבעיות ביצועים עקב שימוש גבוה ב- CPU. בנוסף, אם אתה עורך שאילתה בטבלה sys.dm_os_spinlock_stats, אתה מבחין בערך גבוה בעמודה טווחים עבור השורות SECURITY_CACHE (מטמון אבטחה) ו- CMED_HASH_SET (מטמון מטה-נתונים) (בהשוואה לשורות אחרות בטבלה). לדוגמה, אתה מבחין בערכים הבאים.
סיבה
בעיה זו מתרחשת עקב התדחדות של נעילת טווח גבוהה במערכת בו-זמנית גבוהה. במערכות הפעלה אלה, הליכי משנה מרובים של CPU מתחרים על משאבים ומסתובבים עבור מרווח זמן מורחב בזמן שהם פועלים בלולאה מעת לעת כדי לקבוע אם המשאב זמין במקום לניב באופן מיידי. כאשר הליכי משנה מרובים של CPU מסתובבים (בלולאה בזמן) עבור משאב במקום לניב, הדבר גורם לבעיות גבוהות בשימוש ב- CPU ובביצועים.
פתרון
בעיה זו תוקנה בעדכונים המצטברים הבאים עבור SQL Server:
הערה לאחר החלת SQL Server 2016 המצטבר 2 (CU2), שמות SECURITY_CACHE ו- CMED_HASH_SET משתנים ל- LOCK_RW_SECURITY_CACHE ול- LOCK_RW_CMED_HASH_SET, בהתאמה. לאחר החלת CU2, הערכים מופיעים באופן הבא.
כל עדכון מצטבר חדש עבור SQL Server מכיל את כל התיקונים החמים ואת כל תיקוני האבטחה שנכללו בעדכון המצטבר הקודם. עיין בעדכונים המצטברים האחרונים עבור SQL Server:
מצב
Microsoft אישרה כי זוהי בעיה במוצרי Microsoft המפורטים בסעיף "חל על".
הפניות
למד על המינוח שבו Microsoft משתמשת כדי לתאר עדכוני תוכנה.
סקירה טכנית לאבחון ופתרון של התסת טווח ב- SQL Server דן בבעיות ובפתרונות הקשורים בהתנהלות טווח בפירוט.