Momentálne ste offline a čaká sa, kým sa znova pripojíte na internet

Max_Queue_Readers vlastnosť ignoruje pri pokuse obmedziť Aktivácia úloh agent služby

DÔLEŽITÉ: Tento článok je preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft a možno ho opraviť prostredníctvom technológie Community Translation Framework (CTF). Microsoft ponúka strojovo preložené články, články upravené komunitou aj články preložené prekladateľmi, aby zabezpečil prístup ku všetkým článkom databázy Knowledge Base vo viacerých jazykoch. Strojovo preložené články aj upravené články môžu obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky. Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené neprávnym prekladom obsahu alebo jeho použitím zo strany našich zákazníkov. Ďalšie informácie o technológii CTF nájdete na lokalite http://support.microsoft.com/gp/machine-translation-corrections/sk.

Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem: 3163368
Príznaky
Predstavte si nasledujúcu situáciu:
  • Používate agent služby Microsoft SQL Server 2014 alebo Microsoft SQL Server 2012.
  • Agent služby nastavíte vykonanie asynchrónna uloženej procedúry.
  • Nastaviť vlastnosť Max_Queue_Readers špecifickou hodnotou agent služby frontu obmedziť počet inštancií aktivácie uložené postup spustiť súčasne
V tomto prípade zistíte, že aktivovať ďalšie úlohy spustené hodnotu, ktorá je nastavená naMax_Queue_Readers.
Príčina
Tento problém sa môže vyskytnúť, ak databázu agent služby zapnutý z jedného používateľského režimu (RESTRICTED_USER) režim viacerých používateľov (MULTI_USER) spustite nasledujúce:

alter database <dbname> set multi_user
Po zmene režimu používateľa v databáze služby Broker je vypnutie a reštartovanie. Počas tohto procesu existujúci objekt QueueMonitor vynechá a vytvorí ďalšiu inštanciu objektu QueueMonitor. Ak proces aktivácie je spustenú operáciu dlhé vypína agent služby, stav QueueMonitor objekt sa zmení na "prerušené."

Existujúce inštancie objektu QueueMonitor sa však neodstránia, pretože jeho počet odkazov nedosiahne nula. Ak proces aktivácie je spustené po reštartovaní služby agent, novú inštanciu objektu QueueMonitor a prerušené QueueMonitor objekt bude existovať v rovnakom frontu. Prerušené inštanciu objektu QueueMonitor odstránia pri ďalšom spustení agent služby.
Ako problém obísť
Tento problém, uistite sa, že spustenie "zmeniť nastavenie multi_user databázy [dbname]" keď aktivovaný postup je spustený. Na použite jeden z nasledujúcich postupov:

  • Pred zmenou režimu používateľa, vypnite všetky fronty v databáze a potom znova povoliť všetky fronty.
  • Pred zmenou režimu používateľa, vypnutie procesu aktivácie pre všetky príslušné frontov spustením nasledujúceho príkazu a potom znova povoliť procesu aktivácie:

    alter queue <queueName> with activation ( status = off)
Ďalšie informácie
Môžete skontrolovať počet Aktivácia postupy, ktoré používate pre konkrétne front spustením dotaz "sys.dm_broker_activated_tasks" nasledovne:

select * from sys.dm_broker_activated_tasks where queue_id = <queue number>
Spustením nasledujúceho dotazu môžete dotaz stav monitorovania frontu:

Select * from sys.dm_broker_queue_monitors where queue_id = <queue number>
Stav monitorovania frontu sa zobrazuje ako "klesla" režim používateľa databázy sa zmenil.

Upozornenie: Tento článok bol preložený automaticky.

Vlastnosti

ID článku: 3163368 – Posledná kontrola: 05/19/2016 18:25:00 – Revízia: 1.0

Microsoft SQL Server 2016 Developer, Microsoft SQL Server 2016 Enterprise, Microsoft SQL Server 2016 Standard, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Enterprise Core, Microsoft SQL Server 2014 Business Intelligence, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2012 Developer, Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2012 Enterprise Core, Microsoft SQL Server 2012 Standard, Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Standard, Microsoft SQL Server 2008 R2 Workgroup

  • kbprb kbsurveynew kbexpertiseadvanced kbmt KB3163368 KbMtsk
Pripomienky