I've been completely stumped by this for days. I installed InterMedia
when I installed Oracle 8i, but I am unable to do anything with it
whatsoever because I haven't been able to successfully configure the tns
listener. I have followed the documentation and also other people's
suggestions, but to no avail. Please help me troubleshoot this.
Here's the error I'm getting now:
SQL> create index myindex on docs(text) indextype is ctxsys.context;
create index myindex on docs(text) indextype is ctxsys.context
*
ERROR at line 1:
ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
ORA-20000: ConText error:
ORA-28576: lost RPC connection to external procedure agent
ORA-06512: at "CTXSYS.DRUE", line 122
ORA-06512: at "CTXSYS.TEXTINDEXMETHODS", line 34
ORA-06512: at line 1
My listener.ora looks like this:
LISTENER =
(
DESCRIPTION_LIST=
(
ADDRESS_LIST=
(ADDRESS=(PROTOCOL=ipc)(KEY=extproc))
(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
(ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY)
)
)
)
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
# #BEQUEATH CONFIG
(GLOBAL_DBNAME= blackadder.fastwebmedia.co.uk)
(SID_NAME=MEGSOC)
(ORACLE_HOME=/usr/local/oracle/8i/u01/app/oracle/product/8.1.5)
)
(SID_DESC =
(SID_NAME = extproc)
(ORACLE_HOME =
/usr/local/oracle/8i/u01/app/oracle/product/8.1.5)
(ENVS =
LD_LIBRARY_PATH=/usr/local/oracle/8i/u01/app/oracle/product/8.1.5/ctx/lib)
(PROGRAM = extproc)
)
)
...and the tnsnames.ora file looks like this:
MEGSOC =
(DESCRIPTION =
(ADDRESS = (PROTOCOL= TCP)(Host=
blackadder.fastwebmedia.co.uk)(Port= 1521)) (CONNECT_DATA = (SID =
MEGSOC))
)
MEGSOC_BEQ =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = BEQ)(PROGRAM =
/usr/local/oracle/8i/u01/app/oracle/product/8.1.5)
(argv0 = oracleMEGSOC)
(args = '(DESCRIPTION =
(LOCAL=YES)(ADDRESS=(PROTOCOL=BEQ)))')
(envs =
'ORACLE_HOME=/usr/local/oracle/8i/u01/app/oracle/product/8.1.5,ORACLE_SID=MEGSOC')
)
)
extproc_connection_data =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = ipc)
(KEY = extproc))
(CONNECT_DATA = (SID = MEGSOC))
)
When I start the listener with 'lsnrctl start' I get this output:
LSNRCTL> start
Starting /usr/local/oracle/8i/u01/app/oracle/product/8.1.5/bin/tnslsnr:
please wait...
TNSLSNR for Linux: Version 8.1.5.0.0 - Production
System parameter file is
/usr/local/oracle/8i/u01/app/oracle/product/8.1.5/network/admin/listener.ora
Log messages written to
/usr/local/oracle/8i/u01/app/oracle/product/8.1.5/network/log/listener.log
Listening on: (ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
Listening on: (ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY))
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 8.1.5.0.0 -
Production
Start Date 12-APR-00 14:25:05
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security OFF
SNMP OFF
Listener Parameter File
/usr/local/oracle/8i/u01/app/oracle/product/8.1.5/network/admin/listener.ora
Listener Log File
/usr/local/oracle/8i/u01/app/oracle/product/8.1.5/network/log/listener.log
Services Summary...
MEGSOC has 1 service handler(s)
extproc has 1 service handler(s)
The command completed successfully
So the listener appears to be configured correctly (?).
How do I fix this?
TIA,
- Kev
[edited to try to improve readability]
28576, 00000, "lost RPC connection to external procedure agent"
*Cause: A fatal error occurred in either an RPC network connection,
the extproc agent, or the invoked 3GL after communication had
been established successfully.
*Action: First check the 3GL code you are invoking, and make sure there
are no network problems. Most likely, the invoked "C" routine is
terminating abnormally.
If all components appear to be normal but the problem persists, this
could be an internal logic error in the transfer code. Contact your
customer support representative.
---------
In article <38F48DC2...@fast.no>,
Good luck.
--
Mark D. Powell -- The only advice that counts is the advice that
you follow so follow your own advice --
Sent via Deja.com http://www.deja.com/
Before you buy.
- Kev
SQL> execute ctx_output.start_log('log');
If the procedure doesn't execute successfully, then there is a problem
with one of you .ora files.
Below are some possible changes that need to be made to your
listener.ora and tnsnames.ora files (answers are inline following a #
sign). After you
make any changes be sure to reload your listener.
# make sure the value for the HOST corresponds to HOST value
# in your tnsnames.ora file
> (ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
# try commenting this out, but not sure
# (ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY)
> )
> )
> )
>
> SID_LIST_LISTENER=
> (SID_LIST=
> (SID_DESC=
> # #BEQUEATH CONFIG
> (GLOBAL_DBNAME= blackadder.fastwebmedia.co.uk)
> (SID_NAME=MEGSOC)
>
> (ORACLE_HOME=/usr/local/oracle/8i/u01/app/oracle/product/8.1.5)
> )
> (SID_DESC =
> (SID_NAME = extproc)
> (ORACLE_HOME =
> /usr/local/oracle/8i/u01/app/oracle/product/8.1.5)
> (ENVS =
>
LD_LIBRARY_PATH=/usr/local/oracle/8i/u01/app/oracle/product/8.1.5/ctx/lib)
>
> (PROGRAM = extproc)
> )
> )
>
> ...and the tnsnames.ora file looks like this:
>
> =
> (DESCRIPTION =
> (ADDRESS = (PROTOCOL= TCP)(Host=
> blackadder.fastwebmedia.co.uk)(Port= 1521)) (CONNECT_DATA = (SID =
> MEGSOC))
> )
>
> MEGSOC_BEQ =
> (DESCRIPTION =
> (ADDRESS = (PROTOCOL = BEQ)(PROGRAM =
> /usr/local/oracle/8i/u01/app/oracle/product/8.1.5)
> (argv0 = oracleMEGSOC)
> (args = '(DESCRIPTION =
> (LOCAL=YES)(ADDRESS=(PROTOCOL=BEQ)))')
> (envs =
>
'ORACLE_HOME=/usr/local/oracle/8i/u01/app/oracle/product/8.1.5,ORACLE_SID=MEGSOC')
>
> )
> )
>
> extproc_connection_data =
> (DESCRIPTION =
> (ADDRESS = (PROTOCOL = ipc)
> (KEY = extproc))
> (CONNECT_DATA = (SID = MEGSOC)
# add the service name, that is listed in your
# init<SID>.ora parameter file
#(SERVICE_NAME = MEGSOC.xxxxx)
)
> )
>
> When I start the listener with 'lsnrctl start' I get this output:
>
> LSNRCTL> start
> Starting
/usr/local/oracle/8i/u01/app/oracle/product/8.1.5/bin/tnslsnr:
> please wait...
>
> TNSLSNR for Linux: Version 8.1.5.0.0 - Production
> System parameter file is
>
/usr/local/oracle/8i/u01/app/oracle/product/8.1.5/network/admin/listener.ora
>
> Log messages written to
>
/usr/local/oracle/8i/u01/app/oracle/product/8.1.5/network/log/listener.log
>
> Listening on: (ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
> Listening on: (ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY))
>
> Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
> STATUS of the LISTENER
> ------------------------
> Alias LISTENER
> Version TNSLSNR for Linux: Version 8.1.5.0.0 -
> Production
> Start Date 12-APR-00 14:25:05
> Uptime 0 days 0 hr. 0 min. 0 sec
> Trace Level off
> Security OFF
> SNMP OFF
> Listener Parameter File
>
/usr/local/oracle/8i/u01/app/oracle/product/8.1.5/network/admin/listener.ora
>
> Listener Log File
>
/usr/local/oracle/8i/u01/app/oracle/product/8.1.5/network/log/listener.log
>
> Services Summary...
> MEGSOC has 1 service handler(s)
> extproc has 1 service handler(s)
> The command completed successfully
>
> So the listener appears to be configured correctly (?).
>
> How do I fix this?
>
> TIA,
>
> - Kev
>
>
I've used interMedia on 8.1.5 with Solaris 2.6, and am now using it with
8.1.6 on Solaris 7. We really haven't had any problems with it, execpt
for some "missing" values that we didn't set up correctly, or were
missing in our path.
HTH,
John
thanks, but I'm still no closer.
Doing the IPC test (as CTXSYS) gives:
SQL> execute ctx_output.start_log('log');
BEGIN ctx_output.start_log('log'); END;
*
ERROR at line 1:
ORA-20000: ConText error:
ORA-28576: lost RPC connection to external procedure agent
ORA-06512: at "CTXSYS.DRUE", line 122
ORA-06512: at "CTXSYS.CTX_OUTPUT", line 39
ORA-06512: at line 1
As regards the 'service name', in my initMEGSOC.ora file I have the line
"service_names = GEORGE".
Does this mean I must use 'MEGSOC.GEORGE' or just 'GEORGE'? Anyway, I tried both, no
difference again.
Can anyone supply me with working tnsnames.ora and listener.ora files which are
annotated with EXPLANATIONS? I have seen a few sample files, but trying to work out
what mine should look like from other people's has proved impossible. I need to
understand what each parameter is for, and whether it is needed. I have read the
docs, but they're not much help unless you're advanced enough Oracle-wise to
understand all the terminology...
- Kev