Re: CTXSYS (Oracle Text) - PLS-00201 problems invoking procedure

From: stef <stef99R_at_hotmail.com>
Date: 14 Apr 2003 00:08:38 -0700
Message-ID: <5e7a0b07.0304132308.78fd3f4d_at_posting.google.com>


stef99R_at_hotmail.com (stef) wrote in message news:<5e7a0b07.0304110052.59af84ef_at_posting.google.com>...
> Frank <fvanbortel_at_netscape.net> wrote in message news:<3E947232.4010102_at_netscape.net>...
> > stef wrote:
> > > begin
> > > ctx_dll.sync_index('IDX_FULLTEXT','2M');
> > > end;
> > >
> > >
> > > PLS-00201: Identifier 'CTXSYS.CTX_DLL' must be declared...
> > >
> > > I am trying to execute a procedure residing under schema CTXSYS from
> > > under schema X. I granted a role (CTXAPP) to user X that grants the
> > > execute privilege for multiple objects under CTXSYS.
> > > In an Oracle manual I found that this behaviour (error PLS-00201) is
> > > normal and that the grant execute should be given explicitly to user
> > > X. So, I did do this. Besides that I gave X DBA rights (EXECUTE
> > > ANY). But still, I receive the same error.
> > >
> > > Any ideas ?
> > >
> > > tx
> >
> > Your executing user does not know ctx_dll. Try ctxapp.ctx_dll, or
> > create a synonym (either private, or public) for ctxapp.ctx_dll
>
> Dank u Frank,
>
> Using a public synonym works. I still ask myself if it is not
> possible to call the procedure directly. I tried
> "ctxsys.ctx_dll.sync_index(...);" but it resulted in PLS-00201. I
> suppose the syntax is wrong ? Can anyone provide the correct syntax
> or tell me where to look for it ?

As it seems during database installation Oracle creates a whole bunch of synonyms. Those for Oracle Text all point to package body objects.  I suppose it would work if they would point to the package objects (as it works after I created the synonym for the package object). Is this intended or is this a mistake from Oracle ? Received on Mon Apr 14 2003 - 09:08:38 CEST

Original text of this message