Why do I get error "Failed to receive packet header" when using the ODBC-ODBC Bridge?
If you get the following error after making repeated connections to the Windows ODBC-ODBC Bridge server running in multi-process mode:
[S1000][unixODBC][Easysoft ODBC (Client)]Failed to receive packet header, recv()=-1 - Connection reset by peer (errno=104) [08001][unixODBC][Easysoft ODBC (Client)]Client unable to establish connection [ISQL]ERROR: Could not SQLConnect
- Turn on ODBC-ODBC Bridge server tracing in the ODBC-ODBC Bridge web administrator. To do this, in a web browser, go to
http://oob_server_machine:8890
. In the Configuration page, change Logging from0
to0xffffff
, and click Submit. - Try connecting again. If you get the same error, open the ODBC-ODBC Bridge server log file
esoobstart.log
. This file is located in the directory specified by LogDir. The default location is:drive:\%ProgramFiles%\Easysoft\Easysoft ODBC-ODBC Bridge\Logs
For example:
C:\Program Files\Easysoft\Easysoft ODBC-ODBC Bridge\Logs
- Search
esoobstart.log
file for an entry similar to:Thread/Process no longer active - exit code -1073741502
This entry usually means that no more memory is available to the ODBC-ODBC Bridge server. As a consequence, the ODBC-ODBC Bridge is unable to start any new processes.
- Turn logging off by changing the Logging attribute value from
0xffffff
to0
. - In Registry Editor (either
regedit.exe
orregedit32.exe
), locate this subkey:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems
- In the right pane of the Registry Editor window, double-click the
Windows
value.The
Windows
value sets a number of parameters, includingWindows SharedSection
. For example:Windows SharedSection=1024,3072,512
The numeric values following
SharedSection=
control how of the memory heap is allocated. These values are specified in kilobytes (KB). Increasing the third number in the comma separated list results in a larger memory heap being allocated to services such as the ODBC-ODBC Bridge server. This increases the number of processes that the ODBC-ODBC Bridge server can run. Note that a reboot is required before any changes you make to this setting take effect.For more information about the
Windows SharedSection
parameter, refer to Microsoft KB 184802User32.dll
orKernel32.dll
fails to initialize and Microsoft Advanced Windows Debugging and Troubleshooting: Desktop Heap Overview.Caution Back up the registry before modifying it. For information about how to do this, refer to Microsoft KB 322756 How to back up and restore the registry in Windows.