metalink里有说明,但没有for Linux的下载。
ORA-2035 : ILLEGAL BUNDLED OPERATION ERROR WHEN USING MOD_PLSQL AGAINST 8.0.6
--------------------------------------------------------------------------------
*** 04/24/01 07:10 pm ***
While running a simple PL/SQL procedure with mod_plsql of iAS, OCIStmtExecute
results in a ORA-2035 error : illegal bundled operation
Test Case Setup
---------------
1. Need an 8.0.x database (problem confirmed to exist on 8.0.5 and 8.0.6)
2. Need to install Oracle HTTP Listener (bundled with the 8.1.7 database)
3. Create the following procedure in the scott schema of an 8.0.6 database
create or replace procedure looptest(lcount in number)
is
begin
htp.htmlOpen;
htp.bodyOpen;
for i in 1..lcount loop
htp.print('COUNT=' || i || '<br>');
htp.print('====================================================<br>');
htp.print('======================= TEST =======================<br>');
htp.print('====================================================<br>');
end loop;
htp.bodyClose;
htp.htmlClose;
end looptest;
/
grant execute on looptest to public;
.
5. Start the Oracle HTTP listener
6. Create a new DAD in mod_plsql by doing the following
- Click on "Gateway Database Access Descriptor Settings"
- Click on "Add for WebDB 2.x configuration"
- Set "Database Access Descriptor = mydad"
- Set "Schema Name = scott"
- Set "Oracle User Name = scott"
- Set "Oracle Connect String" to "TNS Alias for 8.0.6 database"
- Click "OK" to save the new DAD called "mydad"
work
should fail with ORA-2035. In the browser, you should either see the error or
"
artial results" or you will get "The document contained no data"
9. The mod_plsql log files under $IAS_HOME/Apache/modplsql/log confirm that
the error was ORA-2035 which is encountered while doing an OCIStmtExecute to
fetch results for the result page
*** 04/24/01 07:16 pm ***
Please refer to bug#1713416 for more details. The results of the analysis are
summarized here :
- The problem does not happen against 8.1.7 databases
- The original problem was reported in a database with Japanese character set
but i could easily reproduce the problem with a database with US7ASCII
charset
- The only reference to ORA-2035 i could find was bug#594532 which mentions
that this kind of error should be an OCI problem
- The exact same problem is seen with another PL/SQL Gateway similar to
mod_plsql (called modowa) which is highly suggestive that the problem is
not in the mod_plsql code, but in the OCI stack
*** 04/24/01 07:23 pm ***
Details regarding mod_plsql
---------------------------
mod_plsql is an 8.1.7 OCI based program which is used to execute PL/SQL
procedures from your web browser. In simplistic terms, users who want to web
enable their PL/SQL procedures do the following
- Create the PL/SQL Application
- Make use of the OWA PL/SQL ToolKit that comes with mod_plsql to send back
HTTP responses to the client browser
- In the background, mod_plsql creates and executes an anonymous PL/SQL block
with the user specified procedure and parameters. All the output from the
PL/SQL procedure execution is collected in an internal buffer which is fetched
by mod_plsql and sent back to the browser. The ORA-2035 is being encountered
while doing one such fetch operation from the database
*** 04/24/01 07:26 pm ***
Interstingly, it gets easier to simulate the problem if i reduce the "Fetch
Buffer Size". Let me know if you need help in setting up the test case. The
only hitch is getting the Oracle HTTP Listener, but that should not be an
issue if you already have an 8.1.7 installation
*** 04/25/01 10:53 am *** (CHG: Asg->NEW OWNER)
*** 04/25/01 10:53 am ***
*** 04/26/01 08:58 am ***
*** 04/26/01 10:53 am *** (CHG: Asg->NEW OWNER)
*** 04/26/01 11:45 am *** (CHG: Sta->30)
*** 04/26/01 11:45 am ***
*** 05/09/01 09:23 am *** (CHG: Sta->11)
*** 05/09/01 09:23 am ***
The test case mentioned by snaidu seems to simulate the problem without using
an HTTP Listener. You just need SQL*Plus, an 8.0.6 instance and the OWA
packages. If you have trouble setting up the test case, please provide me
connect information to your 8.0.6 instance and i can setup the test case for
you to debug.
*** 05/09/01 09:25 am ***
FYI, i myself do not have an 8.0.6 instance in-house. When i reported the
issue, i was using someone else's database.
*** 05/10/01 10:45 am ***
Let me know if this is a gating factor in resolving this issue and i will try
to make such an instance available. I will not be the owner of this instance.
So, please make this request only when you are willing to dedicate the time in
debugging the problem as soon as it is available
*** 05/11/01 02:27 pm *** (CHG: Sta->30)
*** 05/11/01 02:27 pm ***
*** 05/14/01 06:46 am *** (CHG: Sta->11)
*** 05/15/01 11:08 am *** (CHG: Sta->30)
*** 05/15/01 11:08 am ***
I am unable to install the required OWA packages because DBMS_SYS_SQL is not
installed. Could you address this? Thanks
*** 05/15/01 11:11 am *** (CHG: Sta->11)
*** 05/18/01 11:08 am ***
Any updates on this?
*** 05/21/01 11:06 am *** (CHG: Sta->30)
*** 05/21/01 11:06 am ***
*** 05/21/01 05:38 pm *** (CHG: Sta->11)
*** 05/21/01 05:38 pm ***
Worked with jimai. Problem has been reproduced in the ADE view with 8.1.7
based SQL*Plus connecting to an 8.0.6 instance.
Steps to reproduce in an ADE view
* Install OWA ToolKit into the database
* Connect as scott and install the looptest procedure mentione above
* Create the following script to invoke looptest
-- Start of s.sql
set serveroutput on;
begin
owa.num_cgi_vars := 0;
htp.HTBUF_LEN := 84;
null;
scott.looptest(500);
end;
/
exec owa_util.showpage;
-- end of s.sql
Connect as scott and run s.sql to reproduce the problem.
Note : Problem does not happen with an 8.1.6 client or an 8.0.6 client
Problem does not happen for lower values for lcount in looptest
*** 05/22/01 11:37 am ***
*** 06/05/01 08:57 am ***
*** 06/05/01 07:09 pm ***
*** 06/06/01 03:09 pm *** (CHG: Sta->80)
*** 06/06/01 03:09 pm *** (CHG: Fixed->9.0.1)
*** 06/06/01 03:09 pm ***
Rediscovery Information:
when running mod_plsql against oracle 8.0.6 server and get ora-2035 error.
Invalid option "not compress fetch" was send to the 8.0.6 server who doesn't
recognize this option.
]]when running mod_plsql against oracle 8.0.6 server and get ora-2035 error.
*** 06/19/01 02:33 pm ***
*** 06/29/01 07:29 am ***
Summary
-------
The bug was in the 8.1.7.0 client libraries of Oracle which ship with iAS
v1.0.2.x. They were sending a new op-code to the 8.0.6 server which could not
be understood by the server. As per the DDR team in Oracle, the specific
op-code was related to some sort of "compression". The fix involves applying
the 8.1.7 client side patch to the iAS 1.0.2.x Oracle home. No patches/changes
are required on the backend 8.0.x database
*** 06/29/01 07:33 am ***
Except for one client, the workaround has not worked for anyone else which
suggests that the only option is to wait for the 8.1.7 patch which fixes this
issues (either a one-off for 8.1.7 or for the more formal 8.1.7.2 patch)
*** 07/02/01 10:12 pm ***
*** 07/18/01 07:33 am ***
*** 07/25/01 09:19 am ***
Be aware when applying this patch (1752365) to iAS Minimal install, the patch
will fail to install if running the patch script 'patch.sh'. To workaround
this, apply the steps in the patch manually.
.
1. Copy supplied kpuex.o to some location on disk,
below referred to as <patch directory>
.
2. Shutdown all instances in this ORACLE_HOME
3. Execute the following Unix commands
$ cd $ORACLE_HOME/lib
$ ar xv libclient8.a kpuex.o
$ mv kpuex.o kpuex.o.pre1865701
$ cd <patch directory>
$ ar crv $ORACLE_HOME/lib/libclient8.a kpuex.o
.
4. Relink oracle and the client shared libraries
.
$ cd $ORACLE_HOME/rdbms/lib
$ make -f ins_rdbms.mk client_sharedlib
.
Note: This issue with 'patch.sh' does not occur with iAS Server or Enterprise
editions.
.
I have tested this procedure with iAS HTTP Minimal install, and it does apply
successfully, and resolves the issue in the bug also.
.
*** 08/06/01 02:55 am ***
*** 08/06/01 02:55 am ***
*** 09/05/01 09:43 am ***
*** 09/05/01 09:43 am ***
*** 12/02/01 09:24 pm ***
*** 12/02/01 09:24 pm ***
*** 12/19/01 03:10 pm ***
*** 12/20/01 01:08 pm ***
*** 03/22/02 05:17 am ***
.
One of my customer is facing the same issue. Getting ORA-02035: illegal
bundled operation combination when executing a procedure from the web using
modplsql that generates html larger than 31k. The page aborts cutting off
the html code.
.
Customer is running Oracle 8.1.7.3 on Compaq Tru64 UNIX.
.
One more observation is that he can use a 9iAS on Windows NT and create
a DAD to the same database [ Oracle 8.1.7.3 on Compaq Tru64 ] and it works
fine.
.
Customer is using iAS 1.0.2.2.