Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: Intermedia - External Proc Problem

Re: Intermedia - External Proc Problem

From: Vladimir M. Zakharychev <bob_at_dpsp-yes.com>
Date: Mon, 4 Mar 2002 17:13:11 +0300
Message-ID: <a5vvat$pce$1@babylon.agtel.net>


Pretty strange. If you can do it in sqlplus ran on server - you should be able to do it in sqlplus ran on client connected to that same server. Some suggestions:

  1. don't use alter index rebuild online parameters('sync') - it's deprecated way of synchronizing the index. Use begin ctx_ddl.sync_index('index_name') end; instead.
  2. Look at DBMS_JOB for scheduling the index sync. This way requesting user won't have to wait while the index is being synchronized - this will be done in background and index will still be queriable (though it may be incomplete).
  3. Apply the latest patchset to your 8.1.6 (8.1.6.3 for db and 8.1.6.4 for interMedia Text). Or better yet, move to 8.1.7.
  4. do tnsping extproc_connection_data on your server - if it can't ping, then you have something wrong with listener or tnsnames config.
  5. Some things need to be changed in both listener.ora and tnsnames.ora: listener.ora: remove (ENVS = LD_LIB.....) line - it is not necessary on NT and is confusing. tnsnames.ora: add (PRESENTATION=RO) to CONNECT_DATA section of extproc_connection_data. Not sure what it means and couldn't dig up any info on this presentation, but it appears to be in all conText-related tnsnames.ora examples. Anyone with in-depth knowledge of Net8 might provide some insight on this.

 Bounce the listener after changing these.

6. If you are running MTS, you need to add IPC MTS dispatcher(s), something

    like this in your init.ora:

MTS_DISPATCHERS="(DIS=2)(PROT=IPC)" # 2 dispatchers on IPC protocol

    and bounce the db. Dispatchers should listen to the same protocol as extproc.

7. if you have SQLNET.ORA on server, check if it has NAMES.DEFAULT_DOMAIN value specified - in this case extproc_connection_data should be appended with the value (will look like extproc_connection_data.my.domain=).

hope at least something of above will help :)

--
Vladimir Zakharychev (bob@dpsp-yes.com)                http://www.dpsp-yes.com
Dynamic PSP(tm) - the first true RAD toolkit for Oracle-based internet applications.
All opinions are mine and do not necessarily go in line with those of my employer.


"Eric" <eric_at_nortam.com> wrote in message news:3662159b.0203010622.7a4e6bb9_at_posting.google.com...

> Hi,
> I've browsed through the messages and so far, haven't found a
> solution to the problem I have, so I'll expose it here in details:
>
> 1. On the server if I issue this command in pl/sql it works fine:
> alter index ndx_blahblah rebuild online parameters('sync');
>
> 2. If I issue the same command with the same user but through a
> servlet running on the same server I get this error, the reaction is
> the same if I do it from a client PC:
> DRG-10595: ALTER INDEX NDX_RAW_RESULT failed
> DRG-50704: Net8 listener is not running or cannot start external
> procedures
> ORA-28575: unable to open RPC connection to external procedure agent
> ORA-12154: TNS:could not resolve service name
>
> 3. Oracle version 8.1.6
> Running on Win2K Server
>
> 4. Listener.ora on server
> LISTENER =
> (DESCRIPTION_LIST =
> (DESCRIPTION =
> (ADDRESS_LIST =
> (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
> )
> (ADDRESS_LIST =
> (ADDRESS = (PROTOCOL = TCP)(HOST = myhostname)(PORT = 1521))
> )
> )
> (DESCRIPTION =
> (PROTOCOL_STACK =
> (PRESENTATION = GIOP)
> (SESSION = RAW)
> )
> (ADDRESS = (PROTOCOL = TCP)(HOST = myhostname)(PORT = 2481))
> )
> )
>
> SID_LIST_LISTENER =
> (SID_LIST =
> (SID_DESC =
> (SID_NAME = ep_agt1)
> (ORACLE_HOME = C:\Oracle\Ora81)
> (ENVS = LD_LIBRARY_PATH=C:\oracle\Ora81\CTX\bin)
> (PROGRAM = extproc)
> )
> (SID_DESC =
> (GLOBAL_DBNAME = MyDB)
> (ORACLE_HOME = C:\Oracle\Ora81)
> (SID_NAME = MyDB)
> )
> )
> 5. TNSNAMES.ORA on server:
> ...
> extproc_connection_data =
> (DESCRIPTION =
> (ADDRESS = (PROTOCOL = IPC)
> (KEY = EXTPROC0))
> (CONNECT_DATA = (SID = ep_agt1)))
> 6. listener.log
> Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)))
> Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=myhostname)(PORT=1521)))
> Listening on:
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=myhostname)(PORT=2481))(PROTOCOL_STACK=(PRESENTATION=GIOP) (SESSION=RAW)))
> TIMESTAMP * CONNECT DATA [* PROTOCOL INFO] * EVENT [* SID] * RETURN
> CODE
> 01-MAR-2002 08:57:15 *
>
(CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=auser))(COMMAND=status)(ARGUMENTS=64)(SERVICE=LISTENER)(VE RSION=135290880))
> * status * 0
> Trace information written to
> C:\Oracle\Ora81\network\trace\listener.trc
> 01-MAR-2002 08:57:49 * trace * 0
> Trace information written to
> C:\Oracle\Ora81\network\trace\listener.trc
> 01-MAR-2002 08:57:53 * trace * 0
> Trace information written to
> C:\Oracle\Ora81\network\trace\listener.trc
> 01-MAR-2002 08:57:58 * trace * 0
> 01-MAR-2002 08:58:01 * service_register * MyDB * 0
> Trace information written to
> C:\Oracle\Ora81\network\trace\listener.trc
> 01-MAR-2002 08:58:36 * trace * 0
>
>
> 7. TNSNAMES.ORA on client
> extproc_connection_data =
> (DESCRIPTION =
> (ADDRESS = (PROTOCOL = IPC)(HOST=myhostname) ** Tried with and
> without host specified
> (KEY = EXTPROC0))
> (CONNECT_DATA = (SID = ep_agt1)))
>
> 8. sqlplus apps/apps_at_extproc_connection_data on server results in:
> 'Application Error' !!!
> 9. on client: ORA-12541: TNS:no listener
>
> So if you have any clues.. this would help..
> because I don't want to have ctxsrv (which works).. running when I'm
> doing MAJOR inserts on an indexed table, I want to control when the
> update is to happen
>
> Thanks
Received on Mon Mar 04 2002 - 08:13:11 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US