Select to view content in your preferred language

PostgreSQL client (ArcGIS 10.1 SP1) "failed to load"

5034
2
02-18-2013 05:38 PM
BrianCulpepper
Occasional Contributor
Hello,

I'm having trouble connecting to my PostgreSQL 9.0.5 database (Win7 64bit) from my ArcGIS Server 10.1 (sp1 64bit) machine using ArcCatalog 10.1 (SP1).

While attempting to run "Create Enterprise Geodatabase" i receive the following error:

"Cannot connect to database because the database client software failed to load. Be sure the database client software is installed and configured correctly. Failed to execute."

So, I've double-checked the archives and confirmed that i have copied the 64bit versions of the .dll's into my 'client BIN directories' which includes "Server\bin" and I also copied the st.geometry.dll into the \lib folder on my PostgreSQL machine.

*other than confirming that I've copied these files into the proper directory and that I'm using the .dll's provided by ESRI within their
PostgreSQL Client install bundle, I'm not sure what to try / test next to trouble-shoot this issue.

I have also configured my PostgreSQL install to accept remote connections from my ArcGIS Server machine. I did notice that within the ESRI provided 'read-me file' for the PostgreSQL 9.0.5 Client install, that there are only 4 .dll's specifed to copy within
the 64-bit PostgreSQL 9.0.5 Client Libraries BUT there are 5 .dll's listed within the 32-bit client libraries... Is that a problem?

I've copied these libraries twice just to double-check that i've copied the correct version (64-bit) and I've rebooted both machines and restarted the applications and services but no change..

I have not installed ArcSDE 10.1 (sp1) on the database machine/server. I didn't think it was necessary.

any help or ideas would be greatly appreciated!
thanks much in advance,

brian
0 Kudos
2 Replies
VinceAngelo
Esri Esteemed Contributor
The thing to keep in mind here is that 32-bit applications can't use 64-bit libraries and
64-bit applications can't use 32-bit libraries.  ArcGIS Desktop is a 32-bit application --
either the 32-bit library is not present, or the 64-bit library is being found before the
32-bit in the PATH.  I wish Windows would skip incompatible libraries (with a warning
message), but it doesn't -- it just returns "file not found" when the wrong file is found
first.

Technically, installing the application server is not necesary, but it is best practice
(if the libraries are on the machine, the full tool set should be available for trouble-
shooting, even if the application server is not run).

- V
0 Kudos
BrianCulpepper
Occasional Contributor
V,

Yes, this was indeed my problem (rookie mistake/overlook on my part!) and it dawned on me this morning
while re-reading the Tutorial: Getting started with geodatabases in PostgreSQL

I had ignored the fact that ArcGIS Desktop is still 32-bit and since I was installing onto Win7 (64-bit) machines, I was using
the Windows 64-bit PostgreSQL 9.0.5 Client Libraries only and had been copying those into both the Server and the Desktop "bin" folders... WRONG thing to do!! 32-bit PostgreSQL Client libraries go into the ArcGIS Desktop \bin and the 64-bit Client Libraries go into the Server\bin folders... The 'readme.doc' within our onsite PostgreSQL Client installation folder didn't specify the need for both 32 and 64 libraries, BUT the tutorial (listed above) does and I missed it during my initial setup.. Oh well, I'm happy for the moment; on to the next 'bug' / issue...haha!

Thanks very much for your help/reply and I hope this explanation helps another user at some point.. maybe I'm not the only idiot in
the bunch.. 🙂

cheers,
brian


The thing to keep in mind here is that 32-bit applications can't use 64-bit libraries and 
64-bit applications can't use 32-bit libraries. ArcGIS Desktop is a 32-bit application -- 
either the 32-bit library is not present, or the 64-bit library is being found before the 
32-bit in the PATH. I wish Windows would skip incompatible libraries (with a warning 
message), but it doesn't -- it just returns "file not found" when the wrong file is found 
first. 

Technically, installing the application server is not necesary, but it is best practice 
(if the libraries are on the machine, the full tool set should be available for trouble- 
shooting, even if the application server is not run). 

- V
0 Kudos