ODAC 6: ORA-12154:TNS:could not resolve service name error.

Discussion of open issues, suggestions and bugs regarding ODAC (Oracle Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
wchris
Posts: 51
Joined: Thu 09 Jun 2005 09:44

ODAC 6: ORA-12154:TNS:could not resolve service name error.

Post by wchris » Thu 31 May 2007 14:51

We get this error since ODAC 6.05 everything was working fine with previous release on the same computer. We just did a recompile of our program and tryed the new exe on the same installation.

Client software is an oracle 8.1, there is only one oracle home on the workstation.

SQLnet.ora contains the following

# SQLNET.ORA Network Configuration File: c:\oracle\ora81\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.

NAMES.DEFAULT_DOMAIN = world

NAMES.DIRECTORY_PATH= (TNSNAMES)

TNSnames.ora contains the following

# TNSNAMES.ORA Network Configuration File: c:\oracle\ora81\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

ATALWIN.world =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.42.172.20)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ATAL)
)
)


Torasession.server is loader from a local config file on the station called ATALANTE.INI

in this config file we have set ORAserver=ATALWIN


If we modify our local config file and set ORAserver=ATALWIN.world it works.

But we cannot do this. Because our application is installed in big hospitals with more than 200 workstations and we cannot ask them to open all the config files and add .world they would'nt agree.

We cannot force .world by program, because it's not always .world. Some DBA can decide to change this...

It was working fine before, all we changed is ODAC 5 to ODAC 6, nothing else was changed on the workstation or the oracle server.

Is there something you can do to make ODAC 6 to use the NAMES.DEFAULT_DOMAIN value set in SQLnet.ora like before ?

Thanks

Plash
Devart Team
Posts: 2844
Joined: Wed 10 May 2006 07:09

Post by Plash » Fri 01 Jun 2007 11:19

We have fixed this problem. The fix will be included in the next build of ODAC.
As a workaround you can set the OCIEvents variable from the OraCall unit to False in the initialization section of one of your program units.

wchris
Posts: 51
Joined: Thu 09 Jun 2005 09:44

Post by wchris » Fri 01 Jun 2007 12:13

woaw you react really fast !

That's great ! Thank you very much. :D

In the meantime we switched back to odac 5.70, we'll check the new v6 release when available. I'll let you know if it works.

have a nice day

Post Reply