Announcement

Collapse
No announcement yet.

distrib.exe bringt Fehlermeldung 0xc0000142

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • distrib.exe bringt Fehlermeldung 0xc0000142


    In unserem System befinden sich 2 Datenbankserver und rund 70 Clients. Jeder Datenbankserver verfügt über eine SQL-Server-Instanz mit je 4 Datenbanken (A, B, C, D).
    Diese 4 Datenbanken werden als 4 Publikationen zur Replikation zur Verfügung gestellt.
    Die Datenbankserver replizieren untereinander alle 4 Datenbanken.
    Die Clients replizieren nur 2 Datenbanken (A, B) mit einem der Datenbankserver per Push-Abonnement.

    Das ging auch eine Weile gut. Doch nun kommen weitere Clients hinzu und plötzlich erscheinen auf dem Datenbankserver mehrere Fehlermeldungen mit dem Inhalt:
    Distrib.exe "Application Error : The application failed to initialize properly (0xc0000142)."

    Ich habe herausgefunden, dass für jeden Client auf dem Server zwei distrib.exe-Prozesse angelegt werden. Dies geht gut bis rund 40 Clients = 80 Prozesse.

    Kommt ein neuer Client hinzu, dann erscheint eine Fehlermeldung(„failed to initialize…“) und 81 distrib.exe-Prozesse laufen.
    Kommt ein weiterer hinzu, dann gibt es 3 Fehlermeldungen und so weiter. Pro Client 2 neue Fehlermeldungen.

    Ich scheine also irgendeine Grenze überschritten zu haben.
    Im Taskmanager sind CPU-Auslastung und Speicherbelegung allerdings im grünen Bereich mit viel Platz nach oben.

    Klickt man die Fehlermeldungen weg, erscheinen sie nach 1 Minute wieder.

    Wenn man im SQL-Server-Manager die Replikationen überprüft, so ist auf den Datenbankservern unter den Publikationen das Abonnement der neuen Clients richtig eingetragen.
    Auf den Clients hingegen fehlt der Eintrag/das Abo. bzw. es ist nur ein Abo eingetragen.

    Meine bisherige Fehlersuche ergab folgende Lösungsansätze:

    1. der Desktop Heap ist zu klein
    http://support.microsoft.com/kb/949296/en-us (Some SQL Server replication agents cannot run when you configure many replication agents to run on a server)
    http://support.microsoft.com/kb/824422/en-us (Unexpected behavior occurs when you run many processes on a computer that is running SQL Server)
    http://support.microsoft.com/kb/126962/en-us ("Out of Memory" error message appears when you have a large number of programs running)


    Die Prüfung des DesktopHeaps mit dem Desktop Heap Monitor ergab keine erhöhten Heap-Werte.
    Das testweise erhöhen des Heaps hat (wie erwartet) auch nichts gebracht.

    2. CreateProcess mit anderem Account
    http://support.microsoft.com/kb/960266/en-us (Error message when you call the CreateProcess function to start a process of a console application by using an account other than the current logon account in Windows Server 2003: "The application failed to initialize properly (0xc0000142)")

    Da die distrib.exe-Prozesse unter einem anderen Account starten habe ich das SQL Server Service Pack 2 und den Hotfix installiert.
    Das hat allerdings auch nichts gebracht.

    Kann mir vielleicht hier jemand weiterhelfen und hat eine Idee, woher der Fehler kommt und was man dagegen tun könnte?

    Gibt es ein Limit für Abonnements?


    Danke für eure Antworten

    Carsten aus München



    Meine Systemkonfiguration:
    DatenbankServer:
    Windows Server 2008 Standard SP2
    SQL Server 2008 Enterprise SP2 10.0.4000.0


    Client
    Windows XP Professional 2002 SP3
    SQL Server 2008 Express 10.0.1600.0
Working...
X