Anfang des Inhaltsbereichs

Hintergrunddokumentation Weitere Funktionen  Dokument im Navigationsbaum lokalisieren

Debugging im Produktivmandanten

Da die Konsistenz der Datenbankinhalte im Produktivmandanten immer gewährleistet sein muss, werden an das Debugging besondere Anforderungen gestellt:

      Der Produktivmandant enthält keinen Eintrag T im Feld CCCATEGORY der Tabelle T000.

Es ist nicht möglich im nicht-exklusiven Modus zu debuggen. Deswegen wird kein impliziter COMMIT WORK ausgeführt. Als Vorbedingung für exklusives Debugging konvertiert ein Dialogprozess im Debugging zu einem Debugging-Prozess, welcher dem Benutzer dieser Debugging-Sitzung zugewiesen ist.

      Damit nicht das gesamte System durch Debugging-Aufgaben blockiert werden kann, stehen nur die Hälfte aller Dialogprozesse für das Debugging zur Verfügung. Um Workprozesse nicht unnötig zu blockieren, sollten Sie den Debugger verlassen, wenn Sie ihn nicht mehr benötigen.

      In Testmandanten ist die Datenintegrität hingegen nicht von Bedeutung. Hier wird die Anzahl der für das Debugging zur Verfügung stehenden Dialogprozesse durch den Profilparameter rdisp/wpdbug_max_no bestimmt. Wir empfehlen diesen Parameter auf eine Zahl zu setzen, die der Hälfte der Dialog-Workprozesse entspricht (Profilparameter rdisp/wp_no_dia). Falls die Anzahl der Debug-Workprozesse überschritten wird, so benutzt das System einen normalen Dialog-Workprozess für das Debugging. In diesem Nicht-Exklusiven Modus werden implizite Datenbank-Commits für jede Debugger-Interaktion ausgeführt.

Entsperren der Datenbank

Wenn Sie Ihren Testlauf unterbrechen möchten, ohne Ihre Debugger-Sitzung zu beenden, sollten Sie die Datenbank entsperren, da sonst andere Benutzer keine Änderungen vornehmen können, solange Sie Ihre Debugger-Sitzung aufrecht erhalten.

      Wählen Sie dazu Bearbeiten Datenbank Commit (Entsperren), um die Datenbank zu entsperren und die Änderungen auf der Datenbank permanent festzuschreiben.

Bitte beachten Sie, dass durch diese Maßnahme unter Umständen Datenschiefstände entstehen können.

      Wenn Sie alle Datenbankänderungen seit dem letzten Commit rückgängig machen möchten, wählen Sie Bearbeiten Datenbank Rollback.

Speicheranalyse

Mit Hilfe der Speicheranalyse können Sie Momentaufnahmen des Speichers (Snapshots) erstellen und als Datei auf dem Anwendungsserver sichern. Diese können Sie dann zu einem späteren Zeitpunkt mit dem Memory Inspector analysieren und vergleichen.

Eine Momentaufnahme des Speichers beinhaltet Informationen über sämtliche Datenobjekte und Instanzen des aktuellen internen Modus und deren Speichernutzung. Momentaufnahmen des Speichers werden unter dem Dateinamen abDbgMemory_XX_YYYY abgelegt, wobei XX für die Nummer des aktuellen Work-Prozesses und YYYY für die Nummerierung innerhalb des aktuellen Workprozesses steht. Die Dateinamen sind eindeutig, bis der Workprozess neu gestartet wird. Danach beginnt die Zählung von vorn, und vorhandene Dateien werden überschrieben.

Um einen Speicherabzug zu erstellen, wählen Sie System Hilfsmittel Speicheranalyse Speicherabzug erzeugen.

Fehler während einer Debugger-Sitzung

Falls ein Fehler bei der Oberflächenaufbereitung in der laufenden Debugger-Sitzung auftritt, wird die Oberfläche automatisch neu gestartet. Sie gelangen auf ein Bild, auf dem Sie die Einstellungen löschen können, die Sie vorgenommen haben. Der Neustart erfolgt dann mit dem Standardlayout. Sie haben auch die Möglichkeit, zum klassischen Debugger zu wechseln. 

Dieser Neustart betrifft nur die Oberfläche, nicht aber die zu analysierende Anwendung. Alle Einstellungen und Breakpoints bleiben erhalten, und Sie können mit dem Debugging fortfahren.

Bei einem Fehler wird die Protokolldatei TPDA_ERROR in das Home-Verzeichnis DIR_HOME des aktuellen Anwendungsservers geschrieben. Diesen Report können Sie mit dem Report RSTPDAADMIN_TRACE löschen. Falsche Layout-Varianten können Sie mit dem Report RSTPDAADMIN löschen.

Fehler beim Start einer Debugger-Sitzung

Falls bei der Initialisierung des neuen Debuggers ein Fehler auftritt, gelangen Sie auf ein Dialogfenster mit den folgenden Optionen:

      Wechsel zum Klassischen Debugger

      Debugger beenden

      Löschen der Voreinstellungen und Debugger-Neustart

Zusätzlich erscheint in der Statusleiste eine Fehlermeldung mit einer Beschreibung des Fehlertyps.

 

 

 

 

Ende des Inhaltsbereichs