Sümptomid
Oletame, et teil on tabel, mis on klasterdatud columnstore indeks Microsoft SQL Server 2014. Olemasoleva veeru andmetüübi muutmiseks käivitate tabeli suhtes DDL-päringu. Näiteks saate värskendada Column_1 andmetüüpi Table_1 VARCHAR (499) ja NVARCHAR (500) jaoks, käivitades järgmise käsu:
ALTER TABLE Table_1 ALTER COLUMN Column_1 NVARCHAR(500) NOT NULL
Sellises olukorras ilmneb mitu kinnitustõrget ja kuvatakse järgmine tõrketeade:
Märkus.
Asukoht: <Faili tee>\xmcolenc.inl:413
Avaldis: PF_CURRENT_STATUS == PFS_OK
(XMColumnEncoder-s<unsigned char *>::EncodeValueForSecondary)
SPID: <SPID>
Protsessi ID: <protsessi ID>
Kirjeldus: h: 0x0
Asukoht: <Faili tee>\xmerror.cpp:43
Avaldis: 0
(PFSetLastErroris)
SPID: <SPID>
Protsessi ID: <protsessi ID>
Kirjeldus: h: 0x0
Lisaks genereeritakse kaustas SQL Server tõrkelogi mitu mälutõmmisefaili ja SQL Server tõrkelogisse logitakse mitu järgmist tõrketeadet:
Märkus.
<
Kuupäev ja kellaaeg> spid<ID> ***Pinutõmmis saadetakse kettale <nimi>:\Program Files\Microsoft SQL Server\MSSQL12.SQL2014\MSSQL\LOG\SQLDump0002.txt
<
Kuupäev ja kellaaeg> spid<ID> * *******************************************************************************
<
Kuupäev ja kellaaeg> spid<ID>*
<
Kuupäev ja kellaaeg> spid<ID>* BEGIN STACK DUMP:
<
Kuupäev ja kellaaeg> spid<ID>* <Kuupäeva ja kellaaja>spID< ID>
<
Kuupäev ja kellaaeg> spid<ID>* – eraserveri järk.
<
Kuupäev ja kellaaeg> spid<ID>*
<
Kuupäev ja kellaaeg> spid<ID>* Asukoht: <Faili tee>\xmcolenc.inl:413
<
Kuupäev ja kellaaeg> spid<ID>* avaldis: PF_CURRENT_STATUS == PFS_OK
<
Kuupäev ja kellaaeg> spid<ID>* (in XMColumnEncoder<unsigned char *>::EncodeValueForSecondary)
<
Kuupäev ja kellaaeg> spid<ID>* SPID: 60
<
Kuupäev ja kellaaeg> spid<ID>* Protsessi ID: 3680
<
Kuupäev ja kellaaeg> spid<ID>* Kirjeldus: h: 0x0
<
Kuupäev ja kellaaeg> spid<ID>*
<
Kuupäev ja kellaaeg> spid<ID>* Sisendpuhver 136 baiti -
<
Kuupäev ja kellaaeg> spid<ID>* ALTER TABLE Table_1 ALTER COLUMN COL1 NVARCHAR(500) NOT NULL;
Lahendus
Pärast selle kiirparanduse rakendamist võite saada järgmise uue tõrketeate, kui DDL-päring nurjub:
Märkus.
Lause ALTER TABLE nurjus, kuna teisene sõnastik saavutas suurima lubatud mahupiirangu. Kaaluge veergude talletamise indeksi kukutamist, veeru muutmist ja seejärel uue veerusalve indeksi loomist.
See parandus takistab ka mälutõmmise failide genereerimist SQL Server tõrkelogis.
Probleem lahendati esmalt järgmistes SQL Server koondvärskendustes.
Soovitus: installige SQL Server uusim koondvärskendus
Iga uus koondvärskendus SQL Server sisaldab kõiki kiirparandusi ja kõiki turbeparandusi, mis olid kaasatud eelmise koondvärskenduse. Soovitame teil alla laadida ja installida SQL Server uusimad koondvärskendused.
Olek
Microsoft on kinnitanud, et see on jaotises „Rakenduskoht“ loetletud Microsofti toodete korral esinev probleem.