Kbase P4747: Errors occur within 4GL application on Windows XP with the Windows XP Theme enabled
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  23/09/2010 |
|
Status: Verified
SYMPTOM(s):
Application errors occur when opening a query and clicking too fast in the vertical scrollbars of the 4GL application browse
Performing a simple browse while holding down the left mouse button in the vertical scrollbar area causes error
Various errors are displayed within the application and database logfile
Attempt to GET from query <query> during another query operation. (3158)
Client attempting to access recid <record-number> not part of file <file-number>. (438)
SYSTEM ERROR: Locked or open without a cursor: cursid = . (2703)
SYSTEM ERROR: bfsort.c: fatal error 3 (491)
Error code <number> returned from fdget. (1411)
Ignoring free of picb <> of <> filename <table-name> filenum <filenum> fli flags <value>
Database log file contains errors:
Error <read/writing> socket, ret=<n>, errno=<n>. (778)
Incomplete write when writing to the server (735)
Disconnecting client <number> of dead server <number>. (2526)
Disconnecting dead server <number>. (2525)
Broker could not spawn a server. (1157)
Error connecting to a database in client/server mode.
prowin32.exe consumed all the CPU-time and has to be killed with Task Manager
Problem only occurs when running in Client/Server mode.
Setting the SESSION:MULTITASKING-INTERVAL attribute to value between 0 and 9999 does not resolve the problem
Cannot reproduce on Windows 2000
FACT(s) (Environment):
Windows XP
Progress 9.1x
CHANGE:
Upgraded to Windows XP with the Windows XP Theme enabled
CAUSE:
Bug# OE00108017
CAUSE:
As simple browse on Windows XP with the Windows XP Theme enabled and holding down the left mouse button in the vertical scrollbar area of the browse will cause error 438 or 2703. It is a timing issue, Windows processes the scroll messages differently in this mode. While waiting for a response from the database server, WinsockBlockingHook is called. During this, Windows is still processing scroll events, so the client ended up in the window procedure for the browse and trying to fetch more records while in the middle of an existing database operation.
FIX:
This issue was partially addressed in 9.1D06 then later under Progress 9.1E, OpenEdge 10.0B01 and 10.1A
Workaround:
1. MY COMPUTER -> PROPERTIES -> Advanced -> performance settings -> visual effects -> set "custom" toggle = true -> set "use visual styles on windows and buttons" check-box = false
2. Use the Windows Classic Desktop theme instead of Windows XP mode.
3. Connect self-service as opposed to client-server.