Update: Löschen von Dimensionselement-in Dimension mit aktiviertem Schreibzugriff Service Neustart verursachen

Artikel-ID: 829899 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Auf dieser Seite

Problembeschreibung

Wenn die Analysis Services-Dienst führt Operationen für eine Dimension mit aktiviertem Schreibzugriff aktualisieren, kann ein Fehler auftreten, und Analysis Services wird heruntergefahren, nach Ausführung eine DROP MEMBER-Anweisung auf die Dimension. Nachdem die Anwendung heruntergefahren wird, der Dienst neu zu starten versucht, und der gleiche Fehler tritt erneut. Der Dienst weiterhin Fehler auftreten, bis der Datenordner für den Server, auf dem Analysis Services ausgeführt wird entweder gelöscht oder umbenannt.

Das Ereignisprotokoll der Anwendung wird einen Ereignis 117 Fehler mit MSSQLServerOLAPService als Quelle haben. Der Text der Ereignismeldung gibt an, dass der Analysis Services-Dienst einen unerwarteten schwerwiegenden Fehler aufgetreten, und, dass Sie versucht haben, um den Server neu zu starten.

Wenn SQL Server 2000 Analysis Services Service Pack 3 installiert wurde und automatische Fehlerberichterstattung aktiviert ist, auch möglicherweise ein Eintrag im Ereignisprotokoll Anwendung, das angibt, dass die Fehlerberichterstattung Prozess die Bucket-ID 40515735 als Teil der Berichterstellung Fehlerantwort empfangen.

Kann es eine oder mehrere kleine im Datenordner von Analysis Services generierte (Mdmp)-Dateien ausgeben. Wenn Sie die kleine Speicherabbilddatei in WinDBG oder ein ähnliches debugging Tool öffnen, werden den letzten Stack auf Fehlerkontext (.ecxr) festlegen und die Aufrufliste betrachten die folgenden Aufrufe angezeigt:

Msmdsrv! PNTreeIterator::GetVertexID + 0xcb
Msmdsrv! PNIMap2::WritePageIndex + 0x238
Msmdsrv! PNIMap2::WritePageIndex + 0x378
Msmdsrv! PNMapDataSegment2::BuildRequestResult + 0x236
Msmdsrv! PNMapDataSegment2::BuildReadRecords + 0 x 28
Msmdsrv! PNIMap2::BuildSegment + 0xc3
Msmdsrv! PNMolapProcess::ReadData2Build + 0x271
Msmdsrv! PNMolapProcess::Process + 0x36
Msmdsrv! PNThread::Process + 0x123
Msmdsrv! PNThread_StartThreadProcessAux + 0 x 20
Msmdsrv! PNThread_StartThreadProcess + 0x3a
MSVCRT! _endthreadex + 0 x 95
Kernel32! BaseThreadStart + 0 x 34


Für dieses Problem auftritt müssen alle folgenden Bedingungen erfüllt sein:
  • Der Cube, der die Dimension mit aktiviertem Schreibzugriff enthält, verwendet multidimensionale OLAP (MOLAP) Speicher.
  • Der Cube enthält eine Dimension mit der alle deaktiviert, und verfügt über mehr als ein Element auf der obersten Ebene.
  • Das Dimensionselement, das verworfen wird enthält keine Daten für das Standardelement oberster Ebene der Dimension mit ALL Ebene deaktiviert.
  • Das Dimensionselement, das verworfen wird enthält Daten für eine vom Standard abweichende oberen Ebene Element der Dimension mit ALL Ebene deaktiviert.

Ursache

Dimensionen mit aktiviertem Schreibzugriff ermöglichen Benutzern das Ende um den Inhalt der Dimension zu ändern und die unmittelbare Auswirkungen auf den Cube anzeigen. Um die Änderungen widerzuspiegeln, entfernt Analysis Services Aggregate, die Zwischenebenen der geänderte Dimension betreffen. Dies ist notwendig, weil Dimensionen mit aktiviertem Schreibzugriff die Bewegung der Endknoten Ebene Dimension-Mitgliedern von einem übergeordneten zu einem anderen ermöglichen und zuvor berechnete Aggregationen möglicherweise nicht mehr korrekt. In regelmäßigen Abständen Analysis-Server überprüft die Cubes auf dem Server und bestimmt, wenn Sie als Ergebnis einer einen Aktualisierungsvorgang für eine Dimension mit aktiviertem Schreibzugriff re-aggregated werden müssen. Wenn dies der Fall ist, initiiert er einen Back-Boden Re-aggregation-Prozess für diese Cubes. Der Dienst-Neustart, der im Abschnitt "Problembeschreibung" beschriebene tritt während der Re-aggregation-Prozess. Es ist das Ergebnis eines Problems die ALTER CUBE-Anweisung verarbeitet.

Analysis Services erstellt ein Aggregat auf die alle Ebene von Dimensionen mit aktiviertem Schreibzugriff und dem Endknoten angegeben. Als Ergebnis die DIMENSION MEMBER DROP-Funktionalität für die ALTER CUBE-Anweisung für Dimensionen mit aktiviertem Schreibzugriff beschränkt nur Löschen von Dimensionselementen ermöglichen, die keinen Tatsache Daten, die Sie in den Cubes, die die Dimension enthalten zugeordnet ist. Wenn eine MEMBER DROP-Anweisung empfangen wird, gibt Analysis Services daher eine Abfrage für die Cubes, die enthalten die Dimension, um zu überprüfen, dass keine Daten für das Element vorhanden ist, die abgelegt wird. Die Abfrage, mit dem Vorhandensein von Faktendaten, wählt das Standardelement aller Dimensionen im Cube außer der, die gelöscht werden, das Element enthält. Für die Dimension, die das Element enthält, die gelöscht werden, fordert die Abfrage Daten mithilfe der Membername in der DROP DIMENSION MEMBER-Klausel der ALTER CUBE-Anweisung.

Hier ist ein Beispiel:
ALTER CUBE [Sales] DROP DIMENSION MEMBER [Customers].[All Customers].[USA].[TX].[Dallas].[Stephanie Conroy]

Wenn Analysis Services mit diesem Befehl empfängt, überprüft er den Sales -Cube mithilfe einer Abfrage, die der folgenden ähnelt:
SELECT [Measures].members on 0
FROM [Sales]
WHERE [Customers].[All Customers].[USA].[TX].[Dallas].[Stephanie Conroy]


Da die Dimensionselemente für andere Dimensionen nicht in der Abfrage angegeben sind, verwendet das Analysis Server-Datenbankmodul das Standardelement diese Dimensionen. In Fällen, in denen alle Ebene aktiviert wurde, wird der alle Member als das Standardelement für die Dimension festgelegt, es sei denn, speziell der Analysis Services-Administrator geändert. Für Dimensionen, die alle Ebene deaktiviert wurde, ist jedoch das erste Element der obersten Ebene in der Dimension als Standardelement festlegen. Da es mehr als ein Element in der obersten Ebene einer Dimension (siehe die Zeitdimension in der FoodMart 2000 -Datenbank ), Abfrage, die für das Vorhandensein von Faktendaten während der löschen nicht genau das Vorhandensein von Faktendaten erkennen.

Wenn Sie das ALTER CUBE-Anweisung Beispiel weiter oben in diesem Artikel erwähnte verwenden davon gehen Sie aus, dass die Zeitdimension für den Sales -Cube auf dieselbe Weise wie in der FoodMart 2000 -Beispieldatenbank implementiert wird. Es enthält die Jahre 2000 bis 2004 auf der obersten Ebene der Zeitdimension und das Jahr 2000 ist das Standardelement. Falls der Debitor "Stephanie Conroy" Verkaufsdaten für 2003, aber keine für das Jahr 2000, dem Analysis Services-Server findet keine Daten für das Standardelement der Zeit -Dimension (2000), und es ermöglicht das Löschen von "Stephanie Conroy" aus der Customer -Dimension.

Nachdem das Element der Dimension gelöscht wurde, erkennt der Hintergrundthread Aggregationen für den Zwischenebenen des Customer -Dimension neu erstellt werden müssen. Daher beginnt beim Lesen der Endknoten Ebene Daten für den Cube und Neuerstellen Aggregate. Für einen Cube mit MOLAP-Speicher die Endknoten Ebene Daten werden in einem multidimensionalen Format auf dem Datenträger gespeichert und der Re-aggregation-Prozess liest die Daten aus dem multidimensionalen Speicher. Endknoten Ebene Daten besteht jedoch im mehrdimensionale Speicher für das gelöschte Kunden Dimensionselement ' "Stephanie Conroy." Wenn Analysis Services Daten für "Stephanie Conroy" findet, kann das Element nicht in der Customer -Dimension finden. Daher gibt einen schwerwiegenden Fehler, der den Dienst Neustart führt zurück. Wenn der Dienst neu gestartet wird, erkennt er die intermediate Aggregationen für die Customer -Dimension in der Sales -Cube fehlen, und er startet die Re-aggregation erneut. Jedoch, da das Element der Dimension noch für die Endknoten Ebene Daten in multidimensionalen Speicher fehlt, wird der Dienst erneut schwerwiegenden Fehler auftreten. Die einzige Möglichkeit, den Fehler zu vermeiden ist, die Datendateien für die betroffenen Cubes zu löschen und diese verarbeiten.

Der Hotfix aufgeführt im Abschnitt "Lösung" wird geändert von Erkennung Daten um sicherzustellen, dass die Einschränkung für die DIMENSION MEMBER DROP-Klausel Situationen erkannt wird, in denen Daten für nicht standardmäßige Mitglieder Dimensionen ohne eine alle-Ebene vorhanden. Dadurch wird die Situation, in denen Daten in den multidimensionalen Speicher für gelöschte Dimensionselement vorhanden.

Lösung

Informationen zu Service Packs

Installieren Sie das neueste Service Pack für Microsoft SQL Server 2000, um dieses Problem zu beheben. Weitere Informationen finden Sie im folgenden Artikel der Microsoft Knowledge Base:
290211So erhalten Sie das neueste Service Pack für SQL Server 2000

Hotfix-Informationen

Die englische Version dieses Updates weist die in der nachstehenden Tabelle aufgelisteten Dateiattribute (oder höher) auf. Die Datums- und Uhrzeitangaben für diese Dateien werden in Coordinated Universal Time aufgeführt (UTC). Wenn Sie sich die Dateiinformationen ansehen, werden diese Angaben in die lokale Zeit konvertiert. Um die Differenz zwischen UTC und der Ortszeit zu ermitteln verwenden Sie die Registerkarte Zeitzone des Tools ? Datum und Uhrzeit in der Systemsteuerung.

   Date         Time   Version            Size    File name
   --------------------------------------------------------------
   13-Sep-2003  22:50  8.0.806.0         217,668  Msmdcb80.dll     
   13-Sep-2003  22:50  8.0.0.843       4,055,616  Msmddo80.dll     
   27-Sep-2003  03:02  8.0.864.0       1,032,768  Msmdgd80.dll     
   13-Sep-2003  22:50  8.0.823.0         172,608  Msmdpump.dll     
   27-Sep-2003  03:02  8.0.0.864       9,638,468  Msmdsgn80.dll    
   27-Sep-2003  03:01  8.0.864.0       1,835,588  Msmdsrv.exe      
   13-Sep-2003  22:50  8.0.860.0       2,077,264  Msolap80.dll     
   10-May-2003  08:05  8.0.820.0         213,069  Msolap80.rll

				
Hinweis: Aufgrund wechselseitiger Abhängigkeiten zwischen kann das aktuellste Update oder Feature, das die Dateien enthält, auch weitere Dateien enthalten.

SQL Server 2000 Analysis Services 64-bit

Weitere Informationen über eine Hotfix-Build für einen Server mit SQL Server 2000 Analysis Services 64-Bit oder herausfinden, wenn ein Update geplant ist entwickelt wurde, die im SQL Server 2000 Analysis Services 64-Bit Servicepack 4 enthalten sein sollen, finden Sie die folgende KB-Artikelnummer:
825804Update: Hotfix-Informationen für Build 8.0.872 von SQL Server 2000 Analysis Services 64 bit


Status

Microsoft hat bestätigt, dass dies ein Problem in den Microsoft-Produkten ist, die im Abschnitt "Gilt für" dieses Artikels aufgeführt sind.

Dieses Problem wurde erstmals im Microsoft SQL Server 2000 Service Pack 4.

Eigenschaften

Artikel-ID: 829899 - Geändert am: Dienstag, 21. November 2006 - Version: 3.2
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft SQL Server 2000 Analysis Services
Keywords: 
kbmt kbqfe kbsqlserv2000presp4fix kbfix kbbug KB829899 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 829899
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns