סימפטומים
נניח שאתה משתמש במופע של Microsoft SQL Server 2016 Analysis Services. בעוד שיותר ויותר אובייקטים בהיקף כללי מאוחסנים במטמון, מטמונים אלה לעולם אינם מנוקים. הדבר עלול לגרום לגידול מתמשך בזיכרון ובסופו של דבר לקריסה של השרת.
הטווחים הכלליים מאוחסנים במטמון בהתבסס על דרישות האבטחה של כל משתמש. לכן, בדרך כלל תיתקל בבעיה זו רק כאשר תיתקל באחד מהתרחישים הבאים:
- קיימים ביטויים דינאמיים (לדוגמה, UserName(), CustomData()) במודל. זה לא חובה לראות את הבעיה, אבל זו סיבה נפוצה. כאשר קיימים ביטויים דינאמיים, כל משתמש ייחודי צריך לבנות טווח כללי ייחודי משלו. פעולה זו גורמת לגידול משמעותי במספר הטווחים הכלליים שיש ליצור ולאחסן במטמון.
- יש לך מודל מורכב הכולל מטה-נתונים ואבטחה רבים. זה משפיע על עלות הזיכרון לכל אובייקט היקף. ככל שמספר ההיקפים הגלובליים המאוחסנים במטמון גדל, טביעת הרגל של הזיכרון גדלה בהתבסס על עלות הזיכרון לכל אובייקט היקף.
- קיימים משתמשים ייחודיים רבים המתחברים לשרת. לדוגמה, PowerBI.com עשויה לרענן אריחים בלוח המחוונים שלה עבור כל משתמש בתזמון תכוף. במקרה כזה, Analysis Services מקבל חיבורים ושאילתות רבים עבור כל משתמש ייחודי, ומספר הטווחים הכלליים עולה ומשתמש בזיכרון רב.
הערה: לאחר החלת תיקון חם זה, גירסת SQL Server תהיה 13.0.2170.0.
פתרון
מידע עדכון מצטבר
התיקון לבעיה זו כלול בעדכון המצטבר הבא עבור SQL Server:
אודות עדכונים מצטברים עבור SQL Server
כל עדכון מצטבר חדש עבור SQL SQL Server מכיל את כל התיקונים החמים ואת כל תיקוני האבטחה שנכללו בעדכון המצטבר הקודם. עיין בעדכונים המצטברים האחרונים עבור SQL Server:
העדכון המצטבר האחרון עבור SQL Server 2016
פתרון
כדי לעקוף בעיה זו, הפעל באופן ידני פקודת <ClearCache> XMLA למסד הנתונים בתזמון מתאים. זה יאפשר לנקות את כל מטמוני ההיקף הגלובלי והזיכרון יצטמצם שוב. אפשרות זו תגרום לעלות מסוימת על הביצועים כאשר תתחבר בפעם הבאה מכיוון שלא תוכל לעשות שימוש חוזר בטווח הכללי המאוחסן במטמון.
מצב
Microsoft אישרה שזוהי בעיה במוצרי Microsoft המפורטים בסעיף "חל על".
חומרי עזר
קבל מידע על המינוח שבו משתמשת Microsoft כדי לתאר עדכוני תוכנה.