0

I am down the rabbit hole on TNS-12560.

I am working on a windows 7 computer. I have X86 & X64 versions of Oracle clients installed. The DB(s) are on remote computers. I can use TNSPING, SQLPLUS, SQLDEVELOPER to get to the DBs using the various TNSNAMES.ORA files and have no problems.

I am working on an X86 VB.NET program using VS2008 (also tried a different program using VS2010 with similar results). I am using Oracle.DataAccess.dll X86 in my project. The configuration in VS2008 is X86, I have changed my path on the system to have the X86 oracle path first.

When I run TNSPING it points to the X86 path's SQLNET.ORA. When I try to login to the DB I get the following in my SQLNET.LOG file;

TNS-12560: Message 12560 not found; No message file for product=NETWORK, facility=TNS
ns secondary err code: 0
nt main err code: 530

TNS-00530: Message 530 not found; No message file for product=NETWORK, facility=TNS
    nt secondary err code: 38
    nt OS err code: 0

I turned on tracing and in the trace file I notice that it references one of the other (X64) client home folders;

2017-01-11 13:25:36.744480 : Attempted load of system pfile source C:\app\paul\product\11.2.0\client_2\network\admin\sqlnet.ora
2017-01-11 13:25:36.744535 : Parameter source loaded successfully

Where TNSPING uses the x86 folder;

C:\>tnsping XXXX

TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 11-JAN-2
017 12:59:33

Copyright (c) 1997, 2010, Oracle.  All rights reserved.

Used parameter files:
C:\app\paul\product\11.2.0\client_x86\network\admin\sqlnet.ora

This leads me to believe that it is trying to mix X86 & X64 components, but I do not know what controls where it looks for the path.

The only other bit of error stuff from the trace that I do not know how to interpret is;

2017-01-11 13:25:36.760176 : nserror:nsres: id=0, op=65, ns=12560, ns2=0; nt[0]=530, nt[1]=38, nt[2]=0; ora[0]=0, ora[1]=0, ora[2]=0
2017-01-11 13:25:36.760189 : nsopen:unable to open transport

So, I am down the rabbit hole, and need some help in finding a map to get out. Anyone with pointers, will be rewarded "bigly" (to coin a phrase).

Paul Stearns
  • 856
  • 9
  • 30
  • How did you install x86 and x64 Oracle Client? Have a look at this instruction: http://stackoverflow.com/questions/24104210/badimageformatexception-this-will-occur-when-running-in-64-bit-mode-with-the-32#24120100 – Wernfried Domscheit Jan 11 '17 at 19:35
  • Is the 64 bit client directory first in your path? – DCookie Jan 11 '17 at 23:51
  • No, the x86 is first, I made sure of that. I am not even sure how to tell whether it is executing anything from the x64 path. I would have expected a reasonable (understandable at least) error in the trc or the log files – Paul Stearns Jan 12 '17 at 04:54
  • How did you set `TNS_ADMIN` value? As environment variable? In your Registry? – Wernfried Domscheit Jan 12 '17 at 10:26
  • I checked, and there is no environment variable, or registry entry for TNS_ADMIN. – Paul Stearns Jan 13 '17 at 16:19

0 Answers0