Kbase P170156: Runaway processes causes CPU overload
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  20/07/2010 |
|
Status: Unverified
SYMPTOM(s):
Runaway processes causes CPU overload
Killing the process generates a protrace
Protrace reads:
+++STACK
uttraceback : 0x0000001c
uttrace : 0x0000017c
utcore : 0x0000010c
drexit : 0x00000428
drSigFatal : 0x000000d4
rnexec_entry : 0x00000514
rninterpret : 0x00000054
rnudfunc_local : 0x000000d4
rnudfunc_Exec : 0x00000244
rnudfunc_Body : 0x000005f4
rnudfunc_run : 0x000001d4
rnudfunc : 0x000001b8
fmE_UDFUNC : 0x00000290
fmeval : 0x00000720
rnprt : 0x00000328
rnexec_entry : 0x000004b0
rninterpret : 0x00000054
rnudfunc_local : 0x000000d4
rnudfunc_Exec : 0x00000244
rnudfunc_Body : 0x000005f4
rnudfunc_run : 0x000001d4
rnudfunc : 0x000001b8
fmE_UDFUNC : 0x00000290
fmeval : 0x00000720
rnexpstmt : 0x00000064
rnexec_entry : 0x000004b0
rninterpret : 0x00000054
umeDispatchEvent : 0x00001190
webRunDispatcher : 0x00000780
wvRunDispatcher : 0x0000006c
iodispatch : 0x000000b4
rnrq : 0x00000100
main : 0x000003cc
---STACK
---ID Node 0 Process 1671242 Thread 1
---LCB
FACT(s) (Environment):
User inputs data via the UI leaving a field empty
All Supported Operating Systems
OpenEdge 10.1C
CAUSE:
The following statement causes an infinite loop in the application:
DO WHILE (( substring (lvcTemp , 1 , 1) = " " ) or ( substring (lvcTemp , 1 , 1) = "," ))
The field left empty by the user is stored in lvcTemp variable which in return equal to the null string. Evaluating substring (lvcTemp , 1 , 1) = " " ) always returns true, causing an infinite loop in the DO WHILE statement.
FIX:
Fix the loop in the code.