Příznaky
Když spustíte mnoho hromadných vložení clusterového úložiště sloupců současně v Microsoft SQL Server 2017 a 2019 na počítači, který nemá dostatečnou paměť, může se zobrazit chybová zpráva o udělení časového limitu paměti.
Stav
Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.
Více informací
Dotazy hromadného vkládání do úložiště sloupců můžou vyžadovat velké množství paměti pro operátor vložení úložiště sloupců a jakékoli jiné operátory náročné na paměť v dotazu, například řazení.
Ve výchozím SQL Server počká 25 sekund na udělení paměti. Pokud hromadná vložení stále nemůže získat potřebnou paměť, vrátí se zpět do smyšlené vložení, abyste se ujistili, že dotazy mohou postupovat. (Další informace o trickle inserts najdete v tématu Indexy Columnstore – pokyny pro načítání dat).
K tomu ale dochází jenom v případě, že počet aktivních relací s udělením paměti v aktuálním fondu zdrojů je menší než konkrétní mezní hodnota, která je úměrná počtu logických jader. Pokud je počet těchto souběžných relací příliš vysoký, může selhat dotaz hromadného vložení a po 25 sekundách vygenerovat chybu časového limitu pro udělení paměti. To může způsobit neočekávané problémy s aplikacemi pro načítání dat. Tato aktualizace mění způsob, jakým hromadné vložení čeká na udělení paměti. Vložení teď použije hodnotu časového limitu, která se vypočítá podobně jako jakýkoli jiný druh dotazu.
Řešení
Tento problém je opravený v následujících kumulativních aktualizacích SQL Server:
Každá nová kumulativní aktualizace pro SQL Server obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozí kumulativní aktualizace. Podívejte se na nejnovější kumulativní aktualizace pro SQL Server:
Odkazy
Přečtěte si o terminologii,kterou Microsoft používá k popisu aktualizací softwaru.