BAPI_DOCUMENT_CHECKOUTVIEW2 erzeugt Massen von Unix-Prozesse

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
11 Beiträge • Seite 1 von 1
11 Beiträge Seite 1 von 1

BAPI_DOCUMENT_CHECKOUTVIEW2 erzeugt Massen von Unix-Prozesse

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
Moin,

ich habe einen Report, der ein paar tausend Dokumente per BAPI_DOCUMENT_CHECKOUTVIEW2 exportiert (sonst macht das Ding eigentlich nix). Die Systemverwaltung hat mir mitgeteilt, dass dieses Programm auf Betriebssystemebene zehntausende "Zombie-Prozesse" erzeugt, die das ganze System lahmlegen. Wenn das Programm beendet oder abgeschossen wird, verschwinden diese Prozesse wieder.

Wie kann das sein bzw. was kann ich dagegen tun?


Ralf

Nachtrag: Lt. Admin sind das sog. "defunct"-Prozesse / Zombie-Prozsse, mir persönlich sagt das nix, aber vielleicht einem von euch....
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: BAPI_DOCUMENT_CHECKOUTVIEW2 erzeugt Massen von Unix-Proz

Beitrag von black_adept (Top Expert / 4099 / 128 / 941 ) »
Hi Ralf,

Idee:
Wenn die Reihenfolge egal ist könntest du das Programm aufsplitten und blockweise in einem Hintergrundprozess ( Job ) abarbeiten lassen. Das hätte den Effekt, dass die einzelnen Jobs sich recht zeitnah selbst beenden und damit dann vielleicht die Zombieprozesse mit dem Ende des Jobs auch entfernt werden.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: BAPI_DOCUMENT_CHECKOUTVIEW2 erzeugt Massen von Unix-Proz

Beitrag von jensschladitz (Specialist / 417 / 0 / 56 ) »
Sali Ralf,

setzt du nach jedem - Checkout - einen Commit ab - falls nicht wäre das vielleicht ein Ansatz, damit die LUW abgeschlossen ist

Gruss
thanks Jens

Re: BAPI_DOCUMENT_CHECKOUTVIEW2 erzeugt Massen von Unix-Proz

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
black_adept hat geschrieben:Hi Ralf,
Idee:
Wenn die Reihenfolge egal ist könntest du das Programm aufsplitten und blockweise in einem Hintergrundprozess ( Job ) abarbeiten lassen. Das hätte den Effekt, dass die einzelnen Jobs sich recht zeitnah selbst beenden und damit dann vielleicht die Zombieprozesse mit dem Ende des Jobs auch entfernt werden.
Richtig, aber ich wüsste gar nicht, wie ich das aufsplitten sollte - man müsste ja irgendwie die Selektion einschränken (und der Anwender kann schlecht einschätzen, welche "Blockgröße" da sinnvoll ist und wie viele Dokumente es überhaupt gibt).

Eine Krücke, die man aber für den Notfall ziehen kann.
jensschladitz hat geschrieben:Sali Ralf,
setzt du nach jedem - Checkout - einen Commit ab - falls nicht wäre das vielleicht ein Ansatz, damit die LUW abgeschlossen ist
Moin,

damit hab ich das Problem mal in den Griff bekommen - aber durch eine Programmerweiterung steigt die Zahl der Dateien nochmal deutlich an und es hat mich wieder eingeholt.

Genauer gesagt habe ich einen CALL FUNCTION 'TH_REDISPATCH' gemacht, der aber dieselben Auswirkungen hat.
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: BAPI_DOCUMENT_CHECKOUTVIEW2 erzeugt Massen von Unix-Proz

Beitrag von jensschladitz (Specialist / 417 / 0 / 56 ) »
Sali,

vielleicht ist ja dieser SAP Hinweis ein Ansatz / Hilfe - 1246652 - Kind-Prozesse eines WPs bleiben als Zombie-Prozesse stehen

Gruss
thanks Jens

Re: BAPI_DOCUMENT_CHECKOUTVIEW2 erzeugt Massen von Unix-Proz

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
jensschladitz hat geschrieben:Sali,

vielleicht ist ja dieser SAP Hinweis ein Ansatz / Hilfe - 1246652 - Kind-Prozesse eines WPs bleiben als Zombie-Prozesse stehen

Gruss
Moin,

der ist leider für ein Release weit unter unserem (wir haben hier 7.40). Schade, wäre schön gewesen....


Trotzdem danke für den Tipp
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: BAPI_DOCUMENT_CHECKOUTVIEW2 erzeugt Massen von Unix-Proz

Beitrag von jensschladitz (Specialist / 417 / 0 / 56 ) »
sali,

aber such mal im OSS noch nach diesen defunct - da hat es das ein oder andere - vielleicht passt ja noch etwas oder schon mal den Parameter PF_FTP_DEST probiert - vielleicht liegt es ja daran, dass der FTP nicht richtig geschlossen wird und dadurch diese Zombies entstehen, denn am ende des FUBA wird der FTP close ja aufgerufen.

Gruss
thanks Jens

Re: BAPI_DOCUMENT_CHECKOUTVIEW2 erzeugt Massen von Unix-Proz

Beitrag von black_adept (Top Expert / 4099 / 128 / 941 ) »
ralf.wenzel hat geschrieben:
black_adept hat geschrieben:Hi Ralf,
Idee:
Wenn die Reihenfolge egal ist könntest du das Programm aufsplitten und blockweise in einem Hintergrundprozess ( Job ) abarbeiten lassen. Das hätte den Effekt, dass die einzelnen Jobs sich recht zeitnah selbst beenden und damit dann vielleicht die Zombieprozesse mit dem Ende des Jobs auch entfernt werden.
Richtig, aber ich wüsste gar nicht, wie ich das aufsplitten sollte - man müsste ja irgendwie die Selektion einschränken (und der Anwender kann schlecht einschätzen, welche "Blockgröße" da sinnvoll ist und wie viele Dokumente es überhaupt gibt).

Eine Krücke, die man aber für den Notfall ziehen kann.
Ganz so trivial hatte ich das auch gar nicht gemeint.
Der "Hauptprozess" liest erst mal den Workload und schiebt dann eine fest definierte Anzahl von Blöcken in Hintergrundjobs ( musst du halt etwas experimentieren, was eine sinnvolle Blockgröße ist und wie viele Prozesse du gleichzeitig anstarten kannst ). Das Main-Programm schaut jetzt ob sich einer der Jobs schon beendet hat und sobald das der Fall ist und wenn noch zu verarbeitende Sätze in der Queue stehen wird halt der nächst Job/Block angeworfen.
Und da du ja mit Release 7.40 aufwärts arbeitest könntest mal schauen, ob die Subprozesse via Messaging-Channel an den Hauptprozess zurückmelden können, sobald sie fertig sind.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: BAPI_DOCUMENT_CHECKOUTVIEW2 erzeugt Massen von Unix-Proz

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
black_adept hat geschrieben:Ganz so trivial hatte ich das auch gar nicht gemeint. (Lange Erklärung gelöscht)
Alter Schwede - du hast keine Ahnung, wie niedrig das Budget dafür ist ;)
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: BAPI_DOCUMENT_CHECKOUTVIEW2 erzeugt Massen von Unix-Proz

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
jensschladitz hat geschrieben:sali,

aber such mal im OSS noch nach diesen defunct - da hat es das ein oder andere - vielleicht passt ja noch etwas oder schon mal den Parameter PF_FTP_DEST probiert - vielleicht liegt es ja daran, dass der FTP nicht richtig geschlossen wird und dadurch diese Zombies entstehen, denn am ende des FUBA wird der FTP close ja aufgerufen.

Gruss
Ich hab mal rumgeguckt, aber nichts wirklich Zielführendes gefunden - außer "das OS ist schuld"
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: BAPI_DOCUMENT_CHECKOUTVIEW2 erzeugt Massen von Unix-Proz

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
Der Übeltäter ist erwischt - bei einer genauen Analyse haben wir festgestellt, dass nicht der ins Visier genommene FB den Fehler verursacht, sondern SXPG_COMMAND_EXECUTE, den ich zum Anlegen von Verzeichnissen verwendet habe (von denen ich abertausende erstelle). Leider arbeitet der per CPIC, so dass jeder Prozess offenbleibt, bis der Report beendet ist. Ich habe den Funktionsbaustein durch einen call 'SYSTEM'-Aufruf ersetzt, der mir die Verzeichnisse erstellt und siehe da: Keine Zombie-Prozesse mehr!


Ralf
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Seite 1 von 1

Vergleichbare Themen

1
Antw.
3133
Views
Prozesse als EPKs anzeigen.
von bn006 » 22.04.2006 16:30 • Verfasst in SAP - Allgemeines
15
Antw.
7556
Views
Prozesse auf mehrere Server verteilen
von ABAP_BEGINNER » 19.05.2010 22:51 • Verfasst in ABAP® Core
1
Antw.
1284
Views
Unix...
von olivindia » 17.01.2005 08:45 • Verfasst in ABAP® Core
0
Antw.
2177
Views
DOCUMENT VIEWER
von SAP_ENTWICKLER » 17.01.2015 15:34 • Verfasst in ABAP® Core
5
Antw.
2986
Views
Unix befehl
von alluecken » 07.11.2005 13:14 • Verfasst in ABAP® für Anfänger

Aktuelle Forenbeiträge

Regex in where
vor 15 Stunden von tar 8 / 348
Daten an Tabelle binden
Gestern von Bright4.5 3 / 1628
Programm anlegen mit Vorlage
vor 2 Tagen von DeathAndPain 2 / 275
IT0024 Qualifikationen CP-ID
vor 2 Tagen von DeathAndPain 2 / 518

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

Regex in where
vor 15 Stunden von tar 8 / 348
Daten an Tabelle binden
Gestern von Bright4.5 3 / 1628
Programm anlegen mit Vorlage
vor 2 Tagen von DeathAndPain 2 / 275
IT0024 Qualifikationen CP-ID
vor 2 Tagen von DeathAndPain 2 / 518

Unbeantwortete Forenbeiträge

BUSOBJEKT zu CMIS PHIO ermitteln
vor 2 Tagen von snooga87 1 / 212
aRFC im OO-Kontext
letzen Monat von ralf.wenzel 1 / 3393
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9945