Alaska Software Inc. - Xbase app not responding with Advantage Server
Username: Password:
AuthorTopic: Xbase app not responding with Advantage Server
Don SchmitzXbase app not responding with Advantage Server
on Tue, 19 Jan 2010 12:29:52 -0600
I have an Xbase app 1.90 v355 which runs on a network using the Advantage
Database Server v9.1 that at times quits responding.
I thought this was an issue with Advantage server so I open a support issue
with them.  They (Advantage) have looked at a number of Workstation dumps as
well as packet Traces on the network and think there could be a problem with
an Xbase.DLL waiting for something to happen.
I have included this info from Advantage folks in hopes that someone (Form
or Alaska) could help identify what is going on.

We have been reviewing the dump files and packet captures you sent.  They 
do provide some information, but unfortunately don't give us an answer.

All the packet captures show that there were not any disconnects on the 
network side.  However there are large chunks of invalid packets with bad 
checksums.  This definitely shows errors on the network side, but does not 
show any disconnects.  Most network captures we have looked at show a 
couple bad packets but these logs you sent contain a large number.

The dump files also confirm that the communication is working at the time 
the dump file was taken.  However they do give some interesting 
information. Each dump shows that the application has 4 threads running. 
Thread 3 in each application is the Advantage Keep Alive thread.  This 
looks to be in fine shape and, as I mentioned above, the captures appear 
to confirm this (with the understanding that they are not matched sets). 
However, the more interesting pattern from the dumps is that threads 0 and 
1 are both inside the same function and thread 2 is in another function. 
What is interesting is that both applications/dumps show the same 
information.  In other words both applications were hung in exactly the 
same spot when the dump was taken.  Unfortunately the threads are from an 
xBase DLL and we do not know enough about xBase to suggest which thread 
does what (assuming one if for gui, etc) or what the issue may be. 
However, I would like to pass on what our Engineering team found, and 
perhaps the xBase team will be able to help you understand what the 
functions are and why there is a hang.  (See information from engineering 
below).

Information from Engineering
------------------------------------
Each application has 4 threads running.  Thread 3 in each application is 
the 
Advantage keep alive thread, which is in fine shape and from the captures 
we 
can tell it is running correctly.  The more interesting pattern is in 
threads 0, 1, 2.  In both dumps threads 0 and 1 are inside the function 
XPPRT1!initExeHeap waiting for an event.  In both dumps thread 2 is inside 

of the function initExeHeap trying to find a user message in the 
xbpDeinstall__Fv function.  I don't know what the message is or what any 
of 
the XBase functions are doing, but they probably need to work with XBase 
support on this issue.

DLL:
60110000 60380000   XPPRT1     (export symbols)       XPPRT1.DLL
    Loaded symbol image file: XPPRT1.DLL
    Image path: G:\Win32\TransplantApps\XPPRT1.DLL
    Image name: XPPRT1.DLL
    Timestamp:        Thu Apr 09 14:47:12 2009 (49DE5ED0)
    CheckSum:         001C9CE0
    ImageSize:        00270000
    File version:     1.90.355.0
    Product version:  0.0.0.0
    File flags:       0 (Mask 0)
    File OS:          0 Unknown Base
    File type:        1.0 App
    File date:        00000000.00000000
    Translations:     0000.04e4
    CompanyName:      Alaska Software
    ProductName:      Alaska Xbase++
    OriginalFilename: XppRt1.dll
    ProductVersion:   1.90
    FileVersion:      1.90.0355
    FileDescription:  Xbase++ Runtime DLL
    LegalCopyright:   Copyright © Alaska Software 1997-2009

Stack Trace from both dump files:
Nancy2.dmp

.  0  Id: b38.8d0 Suspend: 0 Teb: 7ffdf000 Unfrozen

ntdll!KiFastSystemCallRet
ntdll!NtWaitForSingleObject
kernel32!WaitForSingleObjectEx
kernel32!WaitForSingleObject
WARNING: Stack unwind information not available. Following frames may be 
wrong.
XPPRT1!initExeHeap__Fv
XPPRT1!EVMDispatchActiveXMsgs
XPPRT1!evmQCreateMsgQueue__FUlP11EvmThreadCB
XPPRT1!FindMsg__7EvmMsgQFP7EvmQMsgUlP14MomHandleEntry
XPPRT1!evmGetThreadMsgQ
XPPRT1!evmGetAppEventBlock__Fl
XPPRT1!TBCOLUMN
XPPRT1!conIsNil
XPPRT1!SYMSAVE
XPPRT1!conAssignNil
XPPRT1!WAIT
TX
TX
TX
XPPRT1!floadTos
TX

   1  Id: b38.b58 Suspend: 0 Teb: 7ffde000 Unfrozen

ntdll!KiFastSystemCallRet
ntdll!NtWaitForSingleObject
kernel32!WaitForSingleObjectEx
kernel32!WaitForSingleObject
WARNING: Stack unwind information not available. Following frames may be 
wrong.
XPPRT1!initExeHeap__Fv
XPPRT1!sysCreateThread__FUlPF__l1_Pv_vPcT1
XPPRT1!initExeHeap__Fv
kernel32!BaseThreadStart

   2  Id: b38.944 Suspend: 0 Teb: 7ffdd000 Unfrozen

ntdll!KiFastSystemCallRet
user32!NtUserGetMessage
WARNING: Stack unwind information not available. Following frames may be 
wrong.
XPPUI1!xbpDeinstall__Fv
XPPRT1!_evmGetMsg__FP7EvmQMsg
XPPRT1!SYMSAVE
XPPRT1!sysCreateThread__FUlPF__l1_Pv_vPcT1
XPPRT1!initExeHeap__Fv
kernel32!BaseThreadStart

   3  Id: b38.8d4 Suspend: 0 Teb: 7ffdc000 Unfrozen

ntdll!KiFastSystemCallRet
ntdll!NtWaitForSingleObject
kernel32!WaitForSingleObjectEx
kernel32!WaitForSingleObject
AXCWS32!KeepAliveThreadMainLoop
AXCWS32!KeepAliveThread
kernel32!BaseThreadStart

Dave1.dmp

#  0  Id: adc.fa0 Suspend: 0 Teb: 7ffdf000 Unfrozen

ntdll!KiFastSystemCallRet
ntdll!NtWaitForSingleObject
kernel32!WaitForSingleObjectEx
kernel32!WaitForSingleObject
WARNING: Stack unwind information not available. Following frames may be 
wrong.
XPPRT1!initExeHeap__Fv
XPPRT1!EVMDispatchActiveXMsgs
XPPRT1!evmQCreateMsgQueue__FUlP11EvmThreadCB
XPPRT1!FindMsg__7EvmMsgQFP7EvmQMsgUlP14MomHandleEntry
XPPRT1!evmGetThreadMsgQ
XPPRT1!evmGetAppEventBlock__Fl
TX

   1  Id: adc.17dc Suspend: 0 Teb: 7ffde000 Unfrozen

ntdll!KiFastSystemCallRet
ntdll!NtWaitForSingleObject
kernel32!WaitForSingleObjectEx
kernel32!WaitForSingleObject
WARNING: Stack unwind information not available. Following frames may be 
wrong.
XPPRT1!initExeHeap__Fv
XPPRT1!sysCreateThread__FUlPF__l1_Pv_vPcT1
XPPRT1!initExeHeap__Fv
kernel32!BaseThreadStart

   2  Id: adc.14f8 Suspend: 0 Teb: 7ffdd000 Unfrozen

ntdll!KiFastSystemCallRet
user32!NtUserGetMessage
WARNING: Stack unwind information not available. Following frames may be 
wrong.
XPPUI1!xbpDeinstall__Fv
XPPRT1!_evmGetMsg__FP7EvmQMsg
XPPRT1!SYMSAVE
XPPRT1!sysCreateThread__FUlPF__l1_Pv_vPcT1
XPPRT1!initExeHeap__Fv
kernel32!BaseThreadStart

   3  Id: adc.1500 Suspend: 0 Teb: 7ffdb000 Unfrozen

ntdll!KiFastSystemCallRet
ntdll!NtWaitForSingleObject
kernel32!WaitForSingleObjectEx
kernel32!WaitForSingleObject
AXCWS32!KeepAliveThreadMainLoop
AXCWS32!KeepAliveThread
kernel32!BaseThreadStart


Thanks





*********************************************
Don Schmitz
University Hospital Surgery Dept.
600 Highland Ave. F8-164
Madison, WI  53792
(608) 263-9307
Email: Dons@surgery.wisc.edu
Don SchmitzRe: Xbase app not responding with Advantage Server
on Thu, 04 Feb 2010 16:26:53 -0600
Update:

On two workstations both running XPsp2 I have upgraded the RAM from 1GB to
2GB and seems to have help or may have eliminated the problem.
Its only been a week but neither workstation is showing the problem anymore.
 The issue seems to be related to the amount of RAM on the PC.
Still would like to know what Alaska Tech thinks about the issue.


*********************************************
Don Schmitz
University Hospital Surgery Dept.
600 Highland Ave. F8-164
Madison, WI  53792
(608) 263-9307
Email: Dons@surgery.wisc.edu



>>> On 1/19/2010 at 12:29 PM, in message
<4B55A5C0.EF0B.0090.1@surgery.wisc.edu>, Don Schmitz<DONS@surgery.wisc.edu>
wrote:
> I have an Xbase app 1.90 v355 which runs on a network using the Advantage
> Database Server v9.1 that at times quits responding.
> I thought this was an issue with Advantage server so I open a support 
> issue
> with them.  They (Advantage) have looked at a number of Workstation 
> dumps as
> well as packet Traces on the network and think there could be a problem 
> with
> an Xbase.DLL waiting for something to happen.
> I have included this info from Advantage folks in hopes that someone 
> (Form
> or Alaska) could help identify what is going on.
> 
> We have been reviewing the dump files and packet captures you sent.  
> They 
> do provide some information, but unfortunately don't give us an answer.
> 
> All the packet captures show that there were not any disconnects on the 
> network side.  However there are large chunks of invalid packets with 
> bad 
> checksums.  This definitely shows errors on the network side, but does 
> not 
> show any disconnects.  Most network captures we have looked at show a 
> couple bad packets but these logs you sent contain a large number.
> 
> The dump files also confirm that the communication is working at the 
> time 
> the dump file was taken.  However they do give some interesting 
> information. Each dump shows that the application has 4 threads running. 
> 
> Thread 3 in each application is the Advantage Keep Alive thread.  This 
> looks to be in fine shape and, as I mentioned above, the captures appear 
> 
> to confirm this (with the understanding that they are not matched sets). 
> 
> However, the more interesting pattern from the dumps is that threads 0 
> and 
> 1 are both inside the same function and thread 2 is in another function. 
> 
> What is interesting is that both applications/dumps show the same 
> information.  In other words both applications were hung in exactly the 
> same spot when the dump was taken.  Unfortunately the threads are from 
> an 
> xBase DLL and we do not know enough about xBase to suggest which thread 
> does what (assuming one if for gui, etc) or what the issue may be. 
> However, I would like to pass on what our Engineering team found, and 
> perhaps the xBase team will be able to help you understand what the 
> functions are and why there is a hang.  (See information from 
> engineering 
> below).
> 
> Information from Engineering
> ------------------------------------
> Each application has 4 threads running.  Thread 3 in each application is 
> 
> the 
> Advantage keep alive thread, which is in fine shape and from the 
> captures 
> we 
> can tell it is running correctly.  The more interesting pattern is in 
> threads 0, 1, 2.  In both dumps threads 0 and 1 are inside the function 
> XPPRT1!initExeHeap waiting for an event.  In both dumps thread 2 is 
> inside 
> 
> of the function initExeHeap trying to find a user message in the 
> xbpDeinstall__Fv function.  I don't know what the message is or what any 
> 
> of 
> the XBase functions are doing, but they probably need to work with XBase 
> 
> support on this issue.
> 
> DLL:
> 60110000 60380000   XPPRT1     (export symbols)       XPPRT1.DLL
>     Loaded symbol image file: XPPRT1.DLL
>     Image path: G:\Win32\TransplantApps\XPPRT1.DLL
>     Image name: XPPRT1.DLL
>     Timestamp:        Thu Apr 09 14:47:12 2009 (49DE5ED0)
>     CheckSum:         001C9CE0
>     ImageSize:        00270000
>     File version:     1.90.355.0
>     Product version:  0.0.0.0
>     File flags:       0 (Mask 0)
>     File OS:          0 Unknown Base
>     File type:        1.0 App
>     File date:        00000000.00000000
>     Translations:     0000.04e4
>     CompanyName:      Alaska Software
>     ProductName:      Alaska Xbase++
>     OriginalFilename: XppRt1.dll
>     ProductVersion:   1.90
>     FileVersion:      1.90.0355
>     FileDescription:  Xbase++ Runtime DLL
>     LegalCopyright:   Copyright © Alaska Software 1997-2009
> 
> Stack Trace from both dump files:
> Nancy2.dmp
> 
> .  0  Id: b38.8d0 Suspend: 0 Teb: 7ffdf000 Unfrozen
> 
> ntdll!KiFastSystemCallRet
> ntdll!NtWaitForSingleObject
> kernel32!WaitForSingleObjectEx
> kernel32!WaitForSingleObject
> WARNING: Stack unwind information not available. Following frames may be 
> 
> wrong.
> XPPRT1!initExeHeap__Fv
> XPPRT1!EVMDispatchActiveXMsgs
> XPPRT1!evmQCreateMsgQueue__FUlP11EvmThreadCB
> XPPRT1!FindMsg__7EvmMsgQFP7EvmQMsgUlP14MomHandleEntry
> XPPRT1!evmGetThreadMsgQ
> XPPRT1!evmGetAppEventBlock__Fl
> XPPRT1!TBCOLUMN
> XPPRT1!conIsNil
> XPPRT1!SYMSAVE
> XPPRT1!conAssignNil
> XPPRT1!WAIT
> TX
> TX
> TX
> XPPRT1!floadTos
> TX
> 
>    1  Id: b38.b58 Suspend: 0 Teb: 7ffde000 Unfrozen
> 
> ntdll!KiFastSystemCallRet
> ntdll!NtWaitForSingleObject
> kernel32!WaitForSingleObjectEx
> kernel32!WaitForSingleObject
> WARNING: Stack unwind information not available. Following frames may be 
> 
> wrong.
> XPPRT1!initExeHeap__Fv
> XPPRT1!sysCreateThread__FUlPF__l1_Pv_vPcT1
> XPPRT1!initExeHeap__Fv
> kernel32!BaseThreadStart
> 
>    2  Id: b38.944 Suspend: 0 Teb: 7ffdd000 Unfrozen
> 
> ntdll!KiFastSystemCallRet
> user32!NtUserGetMessage
> WARNING: Stack unwind information not available. Following frames may be 
> 
> wrong.
> XPPUI1!xbpDeinstall__Fv
> XPPRT1!_evmGetMsg__FP7EvmQMsg
> XPPRT1!SYMSAVE
> XPPRT1!sysCreateThread__FUlPF__l1_Pv_vPcT1
> XPPRT1!initExeHeap__Fv
> kernel32!BaseThreadStart
> 
>    3  Id: b38.8d4 Suspend: 0 Teb: 7ffdc000 Unfrozen
> 
> ntdll!KiFastSystemCallRet
> ntdll!NtWaitForSingleObject
> kernel32!WaitForSingleObjectEx
> kernel32!WaitForSingleObject
> AXCWS32!KeepAliveThreadMainLoop
> AXCWS32!KeepAliveThread
> kernel32!BaseThreadStart
> 
> Dave1.dmp
> 
> #  0  Id: adc.fa0 Suspend: 0 Teb: 7ffdf000 Unfrozen
> 
> ntdll!KiFastSystemCallRet
> ntdll!NtWaitForSingleObject
> kernel32!WaitForSingleObjectEx
> kernel32!WaitForSingleObject
> WARNING: Stack unwind information not available. Following frames may be 
> 
> wrong.
> XPPRT1!initExeHeap__Fv
> XPPRT1!EVMDispatchActiveXMsgs
> XPPRT1!evmQCreateMsgQueue__FUlP11EvmThreadCB
> XPPRT1!FindMsg__7EvmMsgQFP7EvmQMsgUlP14MomHandleEntry
> XPPRT1!evmGetThreadMsgQ
> XPPRT1!evmGetAppEventBlock__Fl
> TX
> 
>    1  Id: adc.17dc Suspend: 0 Teb: 7ffde000 Unfrozen
> 
> ntdll!KiFastSystemCallRet
> ntdll!NtWaitForSingleObject
> kernel32!WaitForSingleObjectEx
> kernel32!WaitForSingleObject
> WARNING: Stack unwind information not available. Following frames may be 
> 
> wrong.
> XPPRT1!initExeHeap__Fv
> XPPRT1!sysCreateThread__FUlPF__l1_Pv_vPcT1
> XPPRT1!initExeHeap__Fv
> kernel32!BaseThreadStart
> 
>    2  Id: adc.14f8 Suspend: 0 Teb: 7ffdd000 Unfrozen
> 
> ntdll!KiFastSystemCallRet
> user32!NtUserGetMessage
> WARNING: Stack unwind information not available. Following frames may be 
> 
> wrong.
> XPPUI1!xbpDeinstall__Fv
> XPPRT1!_evmGetMsg__FP7EvmQMsg
> XPPRT1!SYMSAVE
> XPPRT1!sysCreateThread__FUlPF__l1_Pv_vPcT1
> XPPRT1!initExeHeap__Fv
> kernel32!BaseThreadStart
> 
>    3  Id: adc.1500 Suspend: 0 Teb: 7ffdb000 Unfrozen
> 
> ntdll!KiFastSystemCallRet
> ntdll!NtWaitForSingleObject
> kernel32!WaitForSingleObjectEx
> kernel32!WaitForSingleObject
> AXCWS32!KeepAliveThreadMainLoop
> AXCWS32!KeepAliveThread
> kernel32!BaseThreadStart
> 
> 
> Thanks
> 
> 
> 
> 
> 
> *********************************************
> Don Schmitz
> University Hospital Surgery Dept.
> 600 Highland Ave. F8-164
> Madison, WI  53792
> (608) 263-9307
> Email: Dons@surgery.wisc.edu

on

on

on

on

on

on

on

on