[gelöst] Nicht genutzte Codeunit verhindert RTC-Start

12. Juni 2017 10:59

Hallo zusammen.

Ich habe eine Codeunit angelegt, ohne Code darin zu hinterlegen (quasi die ID reserviert). Der Inhalt der Codeunit besteht lediglich aus einer lokalen Rec-Variablen auf die Tabelle "Object" und einer Kommentarzeile im OnRun-Trigger.
Kurz nachdem ich diese angelegt hatte, ließ sich der RTC nicht mehr starten - keine Verbindung zur Datenbank möglich. DEV funktionierte einwandfrei. Nachdem diese Codeunit gelöscht wurde, funktionierte wieder alles.

Ist das normal? Wo ist der Zusammenhang zwischen so einer Codeunit, die auch nirgendwo aufgerufen wird, und einem startendem RTC?

Kennt das jemand von euch?


Grüße
Kai
Zuletzt geändert von Bongo am 12. Juni 2017 11:57, insgesamt 1-mal geändert.

Re: Nicht genutzte Codeunit verhinder RTC-Start

12. Juni 2017 11:13

Hey,

kann es sein, dass Extensions installiert sind?
Mir ist dieses verhalten nämlich aufgefallen, wenn man Objekte anlegt, welche die Extension nutzt.

Re: Nicht genutzte Codeunit verhinder RTC-Start

12. Juni 2017 11:13

Ich kann dein Problem mit dem Cumulativen Update 7 (und installierten Extensions) nicht nachstellen.
Vielleicht waren deine Objekte noch nicht sauber synchronisiert, vielleicht hätte ein Dienstneustart geholfen?

Normalerweise besteht ein Zusammenhang zum Clientstart nur dann, wenn eine Funktion in deiner Codeunit einen Subscriber auf Codeunit 1 OnOpenCompany (o.ä.) enthält.

Re: Nicht genutzte Codeunit verhinder RTC-Start

12. Juni 2017 11:24

Ted hat geschrieben:Hey,

kann es sein, dass Extensions installiert sind?
Mir ist dieses verhalten nämlich aufgefallen, wenn man Objekte anlegt, welche die Extension nutzt.

Also, Extensions sind nicht installiert.

Natalie hat geschrieben:Ich kann dein Problem mit dem Cumulativen Update 7 (und installierten Extensions) nicht nachstellen.
Vielleicht waren deine Objekte noch nicht sauber synchronisiert, vielleicht hätte ein Dienstneustart geholfen?

Normalerweise besteht ein Zusammenhang zum Clientstart nur dann, wenn eine Funktion in deiner Codeunit einen Subscriber auf Codeunit 1 OnOpenCompany (o.ä.) enthält.

Diese Codeunit enthält, ausser dieser Variablen nix weiter. Allerdings hatte ich vergessen zu schreiben, dass beim Versuch den RTC zu starten, der Dienst beendet wurde. Der Dienst ließ sich starten und sobald der RTC gestartet wurde - peng - war der Dienst wieder tot.

Re: Nicht genutzte Codeunit verhinder RTC-Start

12. Juni 2017 11:26

Und wenn du die Codeunit wieder einfügst, ist der Fehler wieder da? Was steht denn im Event Viewer?

Re: Nicht genutzte Codeunit verhinder RTC-Start

12. Juni 2017 11:27

Das klingt eher nach einer unsynchronisierten Tabelle. Ein Codeunit ohne Code löst so etwas nicht aus.

Re: Nicht genutzte Codeunit verhinder RTC-Start

12. Juni 2017 11:57

Natalie hat geschrieben:Und wenn du die Codeunit wieder einfügst, ist der Fehler wieder da? Was steht denn im Event Viewer?

Habe unseren Systemadmin mal ins Event-Protokoll schauen lassen und sahen da den angehängten Fehler.

Diese Codeunit, die der Fehlermeldung nach bereits existiert, habe ich aber nicht gesehen - sonst wäre ja auch ein Anlegen mit dieser ID nicht möglich gewesen. Allerdings habe ich bereits eine Codeunit mit dieser ID in einer anderen Datenbank angelegt, als ich mit Extensions experimentiert habe (@Ted: da war ich wohl etwas voreilig). Diese erstelle Extension wurde dann einmal testweise in der "Problem"-Datenbank installiert und nach einem Test wieder deinstalliert. Die Exentsion ist aber, wenn auch nicht mehr installiert, ein Bestandteil dieser Datenbank.
Der RTC wurde also nicht gestartet, weil eine Codeunit mit derselben ID zwar in der Datenbank durch die Extension existierte, ich konnte sie allerdings im DEV nicht sehen.

Ich danke für eure Hilfe.


Viele Grüße
Kai
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Re: Nicht genutzte Codeunit verhinder RTC-Start

12. Juni 2017 13:53

Natalie hat geschrieben:Ich kann dein Problem mit dem Cumulativen Update 7 (und installierten Extensions) nicht nachstellen.


Installier dir mal eine Extension welche Codeunit 50000 nutzt.
Die Codeunit wird dir im Dev Client ja nicht angezeigt... nun leg die Codeunit 50000 an. Im CU3 hat das definitv den Server abschmieren lassen.

Auch der Fehler aus dem Eventlog sieht ja in die Richtung aus...
@Bongo, hat die Codeunit die du angelegt hast die Id 81500 ?

edit:
huch ich haette deinen Text fertig lesen sollen.
Extensions werden im DEV Client nicht angezeigt

Re: Nicht genutzte Codeunit verhinder RTC-Start

12. Juni 2017 14:06

Ted hat geschrieben:Installier dir mal eine Extension welche Codeunit 50000 nutzt.
Ich werde mich hüten, irgendwelche Extensions zu installieren :mrgreen:

Nein im Ernst, eröffnet doch bitte einen Supportfall bei Microsoft diesbezüglich, damit entweder der Compiler das abfängt oder zumindest der Client stabil bleibt.