[progress Communities] [progress Openedge Abl] Forum Post: Re: Equivalent To...

  • Thread starter Thread starter slacroixak
  • Start date Start date
Status
Not open for further replies.
S

slacroixak

Guest
1. Say MyClass.cls does RUN myProc.p persistent. In myProc : MESSAGE THIS-PROCEDURE:INSTANTIATING-PROCEDURE VIEW-AS ALERT-BOX. => says unknown value Of course, my point is to query hproc:INSTANTIATING-PROCEDURE from the outside while walking through the session persistent procedures list. 2. I know logging, and the log-manager. I use it a lot in dev or test workspaces (I even made a tool to parse it and display a 4GL trace in a treeview with a lot of stuff). However my goal is to target production to spot parts that fall aside usual tests and just to be on THE real side. Our App is large (with a few dark corners like all big old apps...) and we have many users at some site, which make constant logging inappropriate. The utility I am talking about generates some log with the native log-manager and we get those logs. Perhaps it might become a kind of ProcedureGarbageCollector that may kill the leaked procedures that no longer have a valid instantiating-procedure (cheaper that identifying and curing the offending caller) but then I can have issues with procedures started from class as said in point #1. 3. As said in point 2, my target is production, so no debugger. 4. Indeed, it can help. 5. We deal with a little inconsistency here . If use only .p's then it is possible to obtain procedure call trees based on the instantiating-procedure attribute. We try to move progressively** to OO ABL structured code, so still with some .p's... but then we loose the possibility to retrieve how has leaked that proc. ** I love this word. That perhaps how progress should try to be named IMHO. I would add a 6th point 6. Finally, the instanciating-procedure is a bit poor, and the concerns we had in the past to save CPU cycle and memory look ridiculous today. A new attribute-property called InstantiatingTrace with the equivalent of PROGRAM-NAME(2) + handle (even a class has one kind of numeric instance id) would help. This guy would be enabled with a new startup param. Actually, something like "Procedure routine" or " routine" would be nice.?

Continue reading...
 
Status
Not open for further replies.
Back
Top