Oracle Managed Data Provider 12.1.0.2 performs significantly worse than classic ODP on Connection.Open (3 secs vs 0.2 secs)
Oracle Managed Provider has many advantages over the classic Oracle Data Provider for .net.
However, our test show that connection.open take 3 seconds, where the classic ODP takes 0.2 seonds. Subsequent opens against the same connectionstring perform similarly for the two (0.1 seconds). Subsequest opens against a new connectionstring (another database) take 2 seconds for the managed provider and 0.1 seconds for classic.
This is not acceptable in some cases, but may be acceptable in others.
Has anyone seem similar behavior? Any suggestions that can improve connection.open performance?
Regards Niels Jespersen
Hi Alex
Thanks for helping out. I use simple username/password in the connectionstring: con.ConnectionString = "User Id=opslag;Password=xxxxxxxx;Data Source=DB_DST;";
Tracing gives me a tracefile of about 200 KB, which I will not quote here in its entirety. However, I can see that time spent is mostly spent around the snippet quoted below, if that reveals anything important. I will be happy to share the full trace-file and the source of the program. Please let me know.
Regards Niels
2015-01-23 12:55:54.998286 TID:1 (CFG) (SQLNET) FilePath : O:\OraXP\TNS-Admin\sqlnet.ora
2015-01-23 12:55:54.998286 TID:1 (CFG) (TNSNAMES) FilePath : O:\OraXP\TNS-Admin\tnsnames.ora
2015-01-23 12:55:54.999286 TID:1 (PUB) (ENT) OracleConnection.ctor()
2015-01-23 12:55:54.999286 TID:1 (PUB) (EXT) OracleConnection.ctor()
2015-01-23 12:55:55.005287 TID:1 (PRI) (ENT) (CP) ConnectionString.GetCS()
2015-01-23 12:55:55.009287 TID:1 (PRI) (ENT) (CP) ConnectionString.ctor()
2015-01-23 12:55:55.020288 TID:1 (PRI) (ENT) (CP) ConnectionString.Parse()
2015-01-23 12:55:55.031289 TID:1 (PRI) (ENT) (CP) ConnectionString.SetProperty()
2015-01-23 12:55:55.031289 TID:1 (PRI) (EXT) (CP) ConnectionString.SetProperty()
2015-01-23 12:55:55.031289 TID:1 (PRI) (ENT) (CP) ConnectionString.SetProperty()
2015-01-23 12:55:55.031289 TID:1 (PRI) (EXT) (CP) ConnectionString.SetProperty()
2015-01-23 12:55:55.031289 TID:1 (PRI) (ENT) (CP) ConnectionString.SetProperty()
2015-01-23 12:55:55.031289 TID:1 (PRI) (EXT) (CP) ConnectionString.SetProperty()
2015-01-23 12:55:55.031289 TID:1 (PRI) (EXT) (CP) ConnectionString.Parse()
2015-01-23 12:55:55.032289 TID:1 (PRI) (EXT) (CP) ConnectionString.ctor()
2015-01-23 12:55:55.032289 TID:1 (PRI) (EXT) (CP) ConnectionString.GetCS()
2015-01-23 12:55:55.055292 TID:1 (PUB) (ENT) OracleConnection.Open() (conid=65204782) (state=Closed) (sessid=0) (implid=0) (pooling=T) (txnid=n/a)
2015-01-23 12:55:55.060292 TID:1 (PRI) (ENT) (CP) OracleConnectionDispenser`3..cctor()
2015-01-23 12:55:55.061292 TID:1 (PRI) (EXT) (CP) OracleConnectionDispenser`3..cctor()
2015-01-23 12:55:55.061292 TID:1 (PRI) (ENT) (CP) OracleConnectionDispenser`3.Get()
2015-01-23 12:55:55.066293 TID:1 (PRI) (ENT) (CP) PoolManager`3.ctor()
2015-01-23 12:55:55.066293 TID:1 (PRI) (EXT) (CP) PoolManager`3.ctor()
2015-01-23 12:55:55.071293 TID:1 (PRI) (ENT) (CP) PoolManager`3.Initialize() (constr=User Id=opslag;Data Source=DB_DST;)
2015-01-23 12:55:55.073293 TID:1 (PRI) (ENT) (CP) ConnectionString.Secure()
2015-01-23 12:55:55.073293 TID:1 (PRI) (EXT) (CP) ConnectionString.Secure()
2015-01-23 12:55:57.662552 TID:1 (PRI) (EXT) (CP) PoolManager`3.Initialize() (pmid=56680499) (constr=User Id=opslag;Data Source=DB_DST;)
2015-01-23 12:55:57.664552 TID:1 (PRI) (BUF) (OBP.CTOR) (poolid:40362448) (OracleConnectionDispenser`3.GetPM)
2015-01-23 12:55:57.676554 TID:1 (PRI) (ENT) (CP) OraclePoolManager.Get()
2015-01-23 12:55:57.704556 TID:1 (PRI) (ENT) (CP) PoolManager`3.Get() (txnid=n/a) (bForceMatch=F)
2015-01-23 12:55:57.710557 TID:1 (PRI) (ENT) (CP) PoolManager`3.CreateNewPR() (txnid=n/a)
2015-01-23 12:55:57.922578 TID:1 (PRI) (ENT) TimeStamp.GetLocalTZOffset()
2015-01-23 12:55:57.922578 TID:1 (PRI) (EXT) TimeStamp.GetLocalTZOffset()
2015-01-23 12:55:57.932579 TID:1 (PRI) (ENT) (CP) ConnectionString.GetStringFromSecureString()
Similar Messages
-
Need to Match Result in Report to Data Provider
Hi!
My report is using an Excel file to populate my "Payout" data provider. The data provider has the following values
Performance/Payment/Level
10 pt /5% /1
15 pt /7% /2
My report is calculating a performance of 12 pt which I am trying to match against the "Payout" data provider to get the Payment of 5%. Is this possible in DeskI and if so how?
Any help you can provide will be appreciated.
Thanks!
Edited by: akrupa on Sep 25, 2009 8:45 PM
Edited by: akrupa on Sep 25, 2009 8:47 PM
Edited by: akrupa on Sep 25, 2009 8:49 PMHi,
If the number of payment levels is not to big you might concider to put them on one line in the excel file.
Like:
level 1 points | level 1 percentage | level 2 points | level 2 percentage
10 | 5 | 15 | 7
When you read that into BusinessObjects you can then assign the percentages by using the formula:
=If <performance> < <level 1 points> Then 0 Else If <performance> < <level 2 points> Then <level 1 percentage>
Else <level 2 percentage>
Regards,
Harry -
File locations / Oracle Managed Files / raw
Hi,
looking into installing 10g on a multidisk Linux box and I'm trying to understand the best way to lay out the box for best resilience, performance etc.
What I'm trying to understand is whether I should use raw devices for datafiles, or Oracle Managed Files? I'm guessing for performance reasons that the ideal is to run the database server on a different drive from the OS (both of which use hardware RAID1) but can OMF sit on top of hardware RAID - what about raw device on top of hardware RAID?
If we had RAM to play with (we do) would there be a significant performance gain in having the database server run from a ramdisk, or is it better to devote the RAM to, say, a larger SGA or PGA ?
Thanks in advance,
AndyI found it:
ALTER DATABASE ADD LOGFILE SIZE 51200K;
I had a little trouble finding it so if anyone needs it. -
Oracle Management server is not started
hey all,
i have installed oracle 8i on windows 2000 professional. i want to import some database. for that purpose when i want to login in oracle management server, and put login and password, it gives error "VTK-1000 unable to connect to Management Server galaxy.pk.oracle.com. Please verify that u have entered the correct hostname and the status of the Management server."
i checked the status of the management server from control panel/services. it was manual. i started that but in the end it gave me error
"could not start the OracleOraHome81Management Service on Local computer. the service did not return an error. this can be an internal window error or an interanl service error.if the problem persist contact ur administrator."
Plz help me in this regard.
waiting for anyone s kind response"could not start the OracleOraHome81Management Service on Local computer. the service did not return an error. this can be an internal window error or an interanl service error.if the problem persist contact ur administrator."Did you use the EMCA to create the OEM repository in one of your databases?
William Coldiron -
Oracle Data Provider for Oracle 10g
We have an application certified on the ODP 9.2.0.2102, Oracle Client and Oracle ODBC 9.2.0.6. We have a client who is moving to Oracle 10g client within the next few months but will still be hitting an Oracle 9.2 backend.
My question is: Is the 9.2.0.2102 ODP compatible with the 10g client, or do we need to certify against a newer version of the ODP? And if the latter, what version of ODP is recommended?
We plan to certify against the latest of both this year, but for now, we need the path of least resistence.
Thanks for your help.
ToddIt is not "hard" to create your own geocoding schema though you will need to know how to create tables (with Oracle Spatial columns) in Oracle and before you do create the tables you should read through the documentation to be certain you have all of the required data and metadata.
Navteq, a data provider, also has sample geocoding data (http://www.oracle.com/technology/products/spatial/htdocs/spatial_partners_data.html) as well as data for sale. Downloading and importing the Navteq data might give you a good idea about what you will need to do if you were to build your own geocoding schema using your data.
I hope this helps.
-Justin -
Oracle Data Provider (ODP)
Does the new Oracle Data Provider 9.2.0.1.1 (from Visual Basic .Net) support passing arrays to PL/SQL Packages whose procedures accept table arrays as the input parameters?
oo4o supported this functionality.Does the new Oracle Data Provider 9.2.0.1.1 (from Visual Basic .Net) support passing arrays to PL/SQL Packages whose procedures accept table arrays as the input parameters?
oo4o supported this functionality. I am also wondering about this. The beta doesn't but will the final version? If not, why not? -
Oracle Data Provider (ODP) Passing Arrays to PL/SQL
Does anyone know how to pass an array or collection of data (from VB.net) to PL/SQL using the new Oracle Data Provider?
My PL/SQL procedure is accepting type Table (Table array).
This was easily done with Oracle Objects (in VB6) but I've found no way to do this with the new provider with .Net.
It seems like a serious limitation if it can't be done.
Anyones help would be appreciated.Just out of interest, what are the performance implications of using REF CURSORS for retrieving resultsets from Oracle stored procedures via ODP.NET?
When coding the PL/SQL for these, the REF CURSOR is left OPEN and not explicitly CLOSED. When does the cursor actualy get closed? Is there a risk of reaching "maximum open cursors" or some other limit more quickly if REF CURSORS are used in this manner?
I haven't found any documentation of this issue as yet. -
When I use the new Oracle Data Provider for .Net ver 9.2.0.4 I get the following web error:
"The located assembly's manifest definition with name 'Oracle.DataAccess' does not match the assembly reference."
The Oracle.DataAccess reference is displayed in the solution explorer of .Net and the path property is correct.
I am running a web base application. The old Oracle Data Provider which I was using ver 9.2.0.1.1 works fine. Any ideas?Scott,
To solve this, you need to recompile your web application with the new ODP.NET driver. This is one of the tenets of .NET. Thou shall avoid DLL hell by binding to a specific DLL version for your application...or something like that. You can't just plug in a new DLL anymore in an application without recompiling -
Where do i get Oracle Data Provider version 9.2.0.4.01
Hi
Does anyone knows if Oracle Database 9.2.0 media kit comes with
Oracle Data Provider version 9.2.0.4.01 as database component ?
Else how do i get this Oracle Data Provider version 9.2.0.4.01 .
Thanks
FrancisAre you referring to Oracle Data Provider for .NET (1.x)?
I would guess that a 9.2.0.1 base release is old enough to not include the component. (But it is easy enough to check by starting up the installer, faking an install, and take a look what's available under Windows Interfaces.)
Do you need that specific version, 9.2.0.4.01?
Otherwise there's Oracle 9.2 ODAC that includes ODP.NET 9.2.0.7. (Note: for .NET Framework 1.x).
I'd say the component is usually installed on the client side (e.g. app server) but you should be able to use odac to add the component to a database server install as well (as long as version etc. requirements are followed). -
Script to Stop and Start Oracle Meter Data Management
Hi,
This is my first post in Oracle forums so if i open this in the wrong thread please forgive me.
I tried to create a windows batch script to stop and start Oracle Meter Data Management but i can´t.
@echo off
D:\spl\MDMDEV\bin\splenviron.cmd -e MDMDEV
D:\spl\MDMDEV\bin\spl.cmd stop
D:\spl\MDMDEV\bin\splenviron.cmd -e MDMDEV
D:\spl\MDMDEV\bin\spl.cmd stop
The batch exits in the first command and i can´t understand why.
Another thing is if i use spl.cmd stop command it doesn´t do nothing, is this normal?
Thanks in advanced for all replies.
Best Regards.
NunoI had to put a call command in mine. I think it is because you are trying to run a .cmd file within your bat file. You're actually changing shells. Thats why you need the call.
call d:\spl\mdmdev\bin\splenviron.cmd -e mdmdev
call d:\spl\mdmdev\bin\spl.cmd start
I actually set mine up to use variables so all I had to change from script to script was the environment...
<snip>
SET SPLENV=MDMDEV
SET INSTALLDRIVE=D:
SET INSTALLDIR=SPL
SET BINDIR=%INSTALLDRIVE%\%INSTALLDIR%\%SPLENV%\bin
%INSTALLDRIVE%
cd %BINDIR%
REM Set envornment
call %BINDIR%\splenviron.cmd -e %SPLENV%
REM Wait a few seconds for environment to setup
ping localhost -n 5 > nul
REM Start SPL Web
call %BINDIR%\spl.cmd start
</snip>
I was unable to find a way to get this to run as a service. Have you?
I'm currently running these scripts in the startup/shutdown script section of the local machine policy (gpedit.msc). -
Hi experts,
Does Oracle 9i Data Guard Manager software comes with oracle Enterprise edition.
Please tell from where to get this software
Thankshi,
Yes it does. You can access it from the command line with the utility dgmgrl.
rgds
alan -
Oracle data provider not appearing in MS Business Intelligence reporting
Oracle Data provider does appear is VS 2005 server explorer but NOT as a data source in the reporting project type.
This is in oracle ODAC beta 11
Is this supported?I believe your developer encounters a hang when using the Microsoft reports wizard with MS OracleClient. I don't know why this is happening, but this issue would need to be resolved by Microsoft. They build both the reports wizard and MS OracleClient. They would need to identify what in their code is causing the problem. If they find out the underlying cause is a call they are making into Oracle, then Oracle will fix it.
Oracle builds ODP.NET, which I haven't seen work with the reports wizard query builder. But I haven't fully investigated why. There may be additional configuration needed to wire these together.
If you would like to discuss this in detail, you can email me at alex.keh [at] oracle.com -
Oracle OLE DB provider truncates LONG field's data
I am using Visual Basic 6, Oracle 8.1, and use ADO to connect to the Oracle database.
I have a problem with OLE DB provider OraOLEDB.Oracle reading a LONG field (MEMO field in Access).
When I tried to get the value of the LONG field, it truncates it to 100 characters.
I do not have the problem using Microsoft Oracle OLE DB Provider MSDAORA.
This is the Oracle table:
CREATE TABLE tblA (
tblA_KEY NUMBER(10) NOT NULL,
tblA_MEMO LONG NULL
This is the VB 6 code:
Set rs = New ADODB.Recordset
rs.Open ssql, adoConn, adOpenForwardOnly, adLockReadOnly
sMemo = "" & rs.Fields("tblA_Memo") -->> sMemo contains only the first 100
characters of tblA_Memo
How can I fix this?
Thank you.Thanks. I assume you are talking about 9.2 version of Oracle, right?
While we are in the subject of LONG field. In Oracle 8.1, I can not do the following sql stt:
select * from tblA where tblA_Memo like '%york%'
It gives me the error "ORA-00932: inconsistent datatypes"
Can I do this in Oracle 9.2 ?
Thank you. -
Background
1. Weblogic 10.3.6.0 running on Oracle Linux 6.5 with Oracle JRockit(R) (build R28.2.3-13-149708-1.6.0_31-20120327-1523-linux-x86_64, compiled mode)
2. Oracle Apex 4.2.1
3. Apex Listener 1.1.3
4. Apex and Apex Listener running on the Weblogic box above
5. SQL Developer 4.0.2 running on Windows 7 64 bit / Java 1.7.0_55
Updated Apex to 4.2.5 via p17966818_425_Generic.zip patchset. Apex environment running fine as do all applications via Listener 1.1.3
Updated Oracle Listener to the latest version of Oracle REST Data Services 2.0.7
Current Status
Apex Applications and RESTful services are running fine.
Problem
Unable to connect SQL Developer 4.0.2 to Oracle REST Data Services 2.0.7
Error message in SQL Developer - Cannot connect to DEV. HTTP/1.1 403 Target service not allowed
Additional Information
Steps followed -
1. The oracle users APEX_LISTENER and APEX_REST_PUBLIC_USER did not exist, so I ran apex_rest_config.sql from the APEX 2.4.1 patchset whilst connected sys as sysdba and provided the same password as APEX_PUBLIC_USER for both users.
2. I also ran
grant insert, delete on APEX_040200.wwv_flow_rt$privilege_groups to APEX_LISTENER;
alter session set current_schema = APEX_LISTENER;
create or replace synonym wwv_flow_rt$privilege_groups for APEX_040200.wwv_flow_rt$privilege_groups;
as per Oracle SQL Developer User's Guide Release 4.0
3. copied ords.war to apex.war
4. java -jar apex.war configdir /u01/app/oracle/admin/apex/devdomain1/
5. java -jar apex.war
Jun 5, 2014 5:15:31 PM oracle.dbtools.common.config.file.ConfigurationFolder logConfigFolder
INFO: Using configuration folder: /u01/app/oracle/admin/apex/devdomain1/apex
Enter the name of the database server [localhost]:dbservername
Enter the database listen port [1521]:
Enter 1 to specify the database service name, or 2 to specify the database SID [1]:1
Enter the database service name:dbservicename
Enter the database user name [APEX_PUBLIC_USER]:
Enter the database password for APEX_PUBLIC_USER:
Confirm password:
Enter 1 to enter passwords for the RESTful Services database users (APEX_LISTENER,APEX_REST_PUBLIC_USER), 2 to use the same password as used for APEX_PUBLIC_USER or, 3 to skip this step [1]:2
Jun 5, 2014 5:16:52 PM oracle.dbtools.common.config.file.ConfigurationFiles update
INFO: Updated configurations: defaults, apex, apex_al, apex_rt
Enter 1 if you wish to start in standalone mode or 2 to exit [1]:2
6. java -jar apex.war user adminlistener "Listener Administrator"
Jun 5, 2014 5:18:52 PM oracle.dbtools.common.config.file.ConfigurationFolder logConfigFolder
INFO: Using configuration folder: /u01/app/oracle/admin/apex/devdomain1/apex
Enter a password for user adminlistener:
Confirm password for user adminlistener:
Jun 6, 2014 5:19:12 PM AM oracle.dbtools.standalone.ModifyUser execute
INFO: Created user: adminlistener in file: /u01/app/oracle/admin/apex/devdomain1/apex/credentials
7. Updated the defaults.xml file
Added
<entry key="apex.security.user.roles">RESTful Services</entry>
<entry key="apex.security.developer.roles">OAuth2 Client Developer, SQL Developer</entry>
as per Oracle SQL Developer User's Guide Release 4.0
Changed
<entry key="debug.printDebugToScreen">false</entry>
to
<entry key="debug.printDebugToScreen">true</entry>
for RESTful debugging
Added
<entry key="security.verifySSL">false</entry>
to use OAuth2 in Non HTTPS Environment as per Oracle® REST Data Services Installation and Configuration Guide, Release 2.0
8. Deleted the Admin and Manager Roles within the apex application deployment which were part of the Apex Listener 1.1.3 install
9. Deployed the apex.war in weblogic
10. Stopped and started the weblogic server to which apex.war was deployed
11. In SQL Developer, View, RESTful Services. In the RESTful services windows hit connect, Create a new connection,
Connection Name DEV
Username adminlistener
selected http protocol
Hostname weblogicservername
Port 7250
Server Path /apex
Workspace (blank)
On the Authentication dialog
Username adminlistener
Password passwordsuppliedabove in step 6
Response is a dialog box titled Authentication Failed
message - Cannot connect to DEV. HTTP/1.1 403 Target service not allowed
NOTHING UNUSUAL IN ANY OF THE WEBLOGIC LOG FILES, EXCEPT THAT IT STATES
'Oracle REST Data Services version : 2.0.6.27.18.06' when I've installed 2.0.7.
Any help much appreciatedFurther to the above post, I thought I'd simplify my Apex Listener install just to see if I can connect to it via SQL Developer
So downloaded the latest version 2.0.8 and decided to configure and run the Listener on my pc whilst still connecting to the same database.
Operating system : Window 7 Pro 64 bit
Oracle Apex Listener 2.0.8
Java(TM) SE Runtime Environment (build 1.7.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
Went through the configuration as above, once started I tried again to access the listener via SQL Developer. This time I received this output from the listener:
INFO: Error: ORA-02291: integrity constraint (APEX_040200.WWV_FLOW_RT$APPROVALS_SGID_FK) violated - parent key not found, occurred during execution of: [CALL, insert into wwv_flow_rt$approvals (user_name,status,client_id,security_group_id,created_by,created_on,updated_by,updated_on) values(/*in:user_id*/?,/*in:status*/?,/*in:client_id*/?,/*in:tenant_id*/?,upper(/*in:user_id*/?),/*in:created*/?,upper(/*in:user_id*/?),/*in:created*/?), [tenant_id, in, class java.math.BigInteger], [client_id, in, class java.math.BigInteger], [user_id, in, class java.lang.String], [status, in, class oracle.dbtools.rt.oauth.ApprovalRequest$Status], [created, in, class java.sql.Timestamp]]with values: [adminlistener, APPROVED, 3858401374580004, -1, adminlistener, 2014-06-23 12:19:18.785, adminlistener, 2014-06-23 12:19:18.785]
SQL Developer responded with an Authentication Failed titled dialog with the following displayed in the body of the dialog
Cannot connect to DEV.
<!DOCTYPE html>
<!--[if lt IE 7 ]> <html class="ie6"> <![endif]-->
<!--[if IE 7 ]> <html class="ie7 no-css3"> <![endif]-->
<!--[if IE 8 ]> <html class="ie8 no-css3"> <![endif]-->
<!--[if IE 9 ]> <html class="ie9"> <![endif]-->
<!--[if (gt IE 9)|!(IE)]><!-->
<html>
<!--<![endif]-->
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<style type="text/css" media="screen">html,body,div,span,h3,p,ol,ul,li,header,hgroup{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}header,hgroup{display:block}body{font:normal 12px/16px Arial,sans-serif;margin:0 auto;background:#6a9cda}header#xHeader{border-bottom:1px solid #8fa4c0;position:relative;z-index:10;background:none #000}header#xHeader hgroup{width:974px;margin:0 auto;position:relative;height:36px;background:none #000}header#xHeader a#uLogo{margin:8px 0;display:inline-block;font:bold 14px/20px Arial,sans-serif;color:#AAA;text-decoration:none}header#xHeader a#uLogo span.logo{color:#F00}.no-css3 div#xContentContainer div.xContent{padding-top:14px}.no-css3 div#xContentContainer div.xContent div.xMainLeft h2{margin-top:0}div#xWhiteContentContainer{margin-bottom:30px}div#xWhiteContentContainer.xContentWide{background:#FFF;margin-bottom:0}div#xWhiteContentContainer.xContentWide div.xWhiteContent{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}div#xWhiteContentContainer div.xWhiteContent{width:974px;margin:0 auto;padding:0 0 20px 0;background:#FFF;min-height:500px;-moz-border-radius:0 4px 4px 4px;-webkit-border-radius:0 4px 4px 4px;border-radius:0 4px 4px 4px;-moz-box-shadow:0 1px 2px rgba(0,0,0,0.15);-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.15);box-shadow:0 1px 2px rgba(0,0,0,0.15)}div#xContentHeaderContainer{background:#6a9cda;-moz-box-shadow:0 -1px 0 rgba(0,0,0,0.15) inset;-webkit-box-shadow:0 -1px 0 rgba(0,0,0,0.15) inset;box-shadow:0 -1px 0 rgba(0,0,0,0.15) inset}div#xContentHeaderContainer div.xContentHeader{width:974px;margin:0 auto;padding:30px 0 32px 0;position:relative;min-height:60px}div#xContentHeaderContainer div.xContentHeader h3{font:bold 24px/24px Arial,sans-serif;color:#fff;text-shadow:0 2px 1px rgba(0,0,0,0.25);margin:0 0 20px 0}div#xFooterContainer{min-height:200px;border-top:1px solid rgba(0,0,0,0.15);background:#6a9cda}body.errorPage div#xContentHeaderContainer div.xContentHeader{min-height:30px}body.errorPage div#xContentHeaderContainer div.xContentHeader h3{font:bold 30px/30px Arial,sans-serif;color:#FFF;text-shadow:0 1px 2px rgba(0,0,0,0.25);margin:0}div.errorPage p{font:normal 14px/20px Arial,sans-seri;color:#666;padding:0 0 10px 0}div.errorPage ul{list-style:disc outside;padding:0 10px 0;margin:0 0 20px 0}div.errorPage ul li{font:normal 12px/16px Arial,sans-serif;color:#666;margin:0 0 8px 10px}pre{font-family:Consolas,"Lucida Console","Courier New",Courier,monospace}
</style>
<script type="text/javascript" charset="utf-8">
'header hgroup'.replace(/\w+/g,
function(n) {
document.createElement(n)
</script>
<title>Internal Server Error</title>
</head>
<body class="errorPage">
<header id="xHeader">
<hgroup>
<a id="uLogo" href="./"><span class="logo">ORACLE</span>
REST DATA SERVICES</a>
</hgroup>
</header>
<div id="xContentHeaderContainer">
<div class="xContentHeader">
<h3>
<span class="statusCode">500</span> - <span
class="statusMessage">Internal Server Error</span>
</h3>
</div>
</div>
<div id="xWhiteContentContainer" class="xContentWide">
<div class="xWhiteContent">
<div class="errorPage">
<p>
<ul class="reasons">
</ul>
</p>
<p>
<pre>Request Path passes syntax validation
Mapping request to database pool: PoolMap [_failed=false, _lastUpdate=-1, _pattern=null, _poolName=apex, _regex=null, _type=REGEX, _workspaceIdentifier=null, _serviceName=null]
Applied database connection info
Attempting to process with PL/SQL Gateway
Not processed as PL/SQL Gateway request
Attempting to process as a RESTful Service
Choosing: oracle.dbtools.rt.oauth.TokenHandler as current candidate with score: Score [handle=null, score=0, scope=SecurityConfig [constraint=secure, realm=OAUTH_CLIENT, logonConfig=NONE], originsAllowed=[], corsEnabled=true]
Determining if request can be dispatched as a Tenanted RESTful Service
Request path has one path segment, continuing processing
No Tenant Principal established yet, continuing processing
APEX_LISTENER pool exists, continuing processing
No matching tenant found for: oauth2, cannot dispatch
Chose oracle.dbtools.rt.oauth.TokenHandler as the final candidate with score: Score [handle=null, score=0, scope=SecurityConfig [constraint=secure, realm=OAUTH_CLIENT, logonConfig=NONE], originsAllowed=[], corsEnabled=true] for: POST oauth2/token
oauth2/token authorized as: p6xycV-2QceFnFHkWyJlnA..
</pre>
</p>
<p>
<pre>WebException [statusCode=500]
at oracle.dbtools.rt.web.WebException.webException(WebException.java:343)
at oracle.dbtools.rt.web.WebException.internalError(WebException.java:262)
at oracle.dbtools.rt.oauth.jdbc.JDBCOAuthDataAccess.createApproval(JDBCOAuthDataAccess.java:514)
at oracle.dbtools.rt.oauth.jdbc.JDBCOAuthDataAccess.createApprovedRequest(JDBCOAuthDataAccess.java:181)
at oracle.dbtools.rt.oauth.OAuthAuthorization.resourceOwnerCredentials(OAuthAuthorization.java:654)
at oracle.dbtools.rt.oauth.OAuthAuthorization.tokenRequest(OAuthAuthorization.java:273)
at oracle.dbtools.rt.oauth.TokenHandler.post(TokenHandler.java:44)
at oracle.dbtools.rt.web.RequestHandler.response(RequestHandler.java:268)
at oracle.dbtools.rt.web.RequestHandler.dispatch(RequestHandler.java:361)
at oracle.dbtools.rt.web.RequestHandler.dispatch(RequestHandler.java:85)
at oracle.dbtools.rt.web.RequestDispatchers.dispatch(RequestDispatchers.java:93)
at oracle.dbtools.rt.web.ETags.checkPrecondition(ETags.java:93)
at oracle.dbtools.rt.web.HttpEndpointBase.restfulServices(HttpEndpointBase.java:426)
at oracle.dbtools.rt.web.HttpEndpointBase.service(HttpEndpointBase.java:164)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at com.sun.grizzly.http.servlet.ServletAdapter$FilterChainImpl.doFilter(ServletAdapter.java:1059)
at com.sun.grizzly.http.servlet.ServletAdapter$FilterChainImpl.invokeFilterChain(ServletAdapter.java:999)
at com.sun.grizzly.http.servlet.ServletAdapter.doService(ServletAdapter.java:434)
at oracle.dbtools.standalone.SecureServletAdapter.doService(SecureServletAdapter.java:91)
at com.sun.grizzly.http.servlet.ServletAdapter.service(ServletAdapter.java:379)
at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:179)
at com.sun.grizzly.tcp.http11.GrizzlyAdapterChain.service(GrizzlyAdapterChain.java:196)
at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:179)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:849)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:746)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1045)
at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:228)
at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Unknown Source)
Caused by: java.sql.SQLIntegrityConstraintViolationException: ORA-02291: integrity constraint (APEX_040200.WWV_FLOW_RT$APPROVALS_SGID_FK) violated - parent key not found
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:447)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:879)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:505)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:223)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:208)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:1046)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1336)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3612)
at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3713)
at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1378)
at sun.reflect.GeneratedMethodAccessor28.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at oracle.ucp.jdbc.proxy.StatementProxyFactory.invoke(StatementProxyFactory.java:230)
at oracle.ucp.jdbc.proxy.PreparedStatementProxyFactory.invoke(PreparedStatementProxyFactory.java:124)
at com.sun.proxy.$Proxy44.execute(Unknown Source)
at oracle.dbtools.common.jdbc.JDBCInsert.execute(JDBCInsert.java:58)
at oracle.dbtools.rt.oauth.jdbc.JDBCOAuthDataAccess.createApproval(JDBCOAuthDataAccess.java:487)
... 34 more
</pre>
</p>
</div>
</div>
</div>
<div id="xFooterContainer">
</div>
</body>
</html>
I am assuming this must be part of the problem I am seeing this the Weblogic deployment in my original post.
Does anyone have any suggestions on how best to tackle this?
Regards,
Derek -
Data provider internal error(-3000) during DataAdapter.Fill
I get this error sporadically.
From other messages on this forum, it seems others are having similar problems. It appears the Oracle staff
is still struggling to identify and fix (or did I miss a post?)
I hope the next release can include some more informative diagnostic error messages. (no judgment implied, just a suggestion).
But I need this to work, so I'm posting my
info as well in hopes it will help.
Sorry for the length, but I think all the detail may be needed to diagnose.
I have been using ODP.Net for weeks without trouble
until recently. I just added a CLOB field to my table yesterday, and
the problem started. I don't know whether that's cause or coincidence.
Possible workarounds I will try:
1) Explicit select of columns rather than select *
2) Retry once on failure after short delay
Below, I'm including the exception message from the ASP.Net page.
It occurs at the same spot in my code, but often
it works fine. Now, an hour later, I cannot repeat the problem.
I've edited the "Source Error" section to
provide more of the code, so you can see the full context.
I've also pasted the stored procedure called so you can see what that is about.
I need this to work, so feel free to contact me if you need further information
to diagnose this in order to fix it.
I go live on March 7, so if I don't get a fix soon and can't find
a workaround, I'll just make a lame error message like "Site is very busy, please try again".
Even though the site is NOT busy. But having them try again seems to work.
And I don't want to tell them why I'm asking them to try again <grin>.
I am thinking of putting a try/catch block and sleeping for a second and then trying one more
time in my code. I'll let you know if that is an effective work-around.
David Kreth Allen
University of Minnesota
Carlson School of Management
[email protected] remove XYZ to send emails
612-625-0386
<WebPageError>
Server Error in '/ScholarshipApplicationWeb' Application.
Data provider internal error(-3000)
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: Oracle.DataAccess.Client.OracleException: Data provider internal error(-3000)
Source Error:
OracleCommand cmd = new OracleCommand();
cmd.Connection = new OracleConnection(
ApplicationEnvironment.current.database.OracleConnectionString);
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "pkg_batch.get_details";
cmd.Parameters.Add("batch_id",OracleDbType.Int32,
batchId,ParameterDirection.Input);
cmd.Parameters.Add("batchCursor",OracleDbType.RefCursor,
DBNull.Value,ParameterDirection.Output);
cmd.Parameters.Add("majorsCursor",OracleDbType.RefCursor,
DBNull.Value,ParameterDirection.Output);
cmd.Parameters.Add("detailCursor",OracleDbType.RefCursor,
DBNull.Value,ParameterDirection.Output);
OracleDataAdapter da = new OracleDataAdapter(cmd);
DataSet ds = new DataSet("batches");
da.Fill(ds);
DataTable dt = ds.Tables[0];
dt.TableName = "batch";
Source File: C:\Projects\ScholarshipSolution\ScholarshipLibrary\Data\ScholarshipApplicationBatch.cs Line: 329
Stack Trace:
[OracleException: Data provider internal error(-3000)]
Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, IntPtr opsSqlCtx, Object src, String procedure, String[] args)
Oracle.DataAccess.Client.OracleDataReader.NextResult() +1259
System.Data.Common.DbDataAdapter.FillNextResult(IDataReader dataReader) +98
System.Data.Common.DbDataAdapter.FillFromReader(Object data, String srcTable, IDataReader dataReader, Int32 startRecord, Int32 maxRecords, DataColumn parentChapterColumn, Object parentChapterValue) +261
System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable, IDataReader dataReader, Int32 startRecord, Int32 maxRecords) +129
Oracle.DataAccess.Client.OracleDataAdapter.Fill(DataSet dataSet, String srcTable, IDataReader dataReader, Int32 startRecord, Int32 maxRecords) +516
Oracle.DataAccess.Client.OracleDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) +290
System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) +38
CSOM.ScholarshipLibrary.Data.ScholarshipApplicationBatch.getDataById(Int32 batchId) in C:\Projects\ScholarshipSolution\ScholarshipLibrary\Data\ScholarshipApplicationBatch.cs:329
CSOM.ScholarshipLibrary.Data.ScholarshipApplicationBatch.GetById(Int32 batchId) in C:\Projects\ScholarshipSolution\ScholarshipLibrary\Data\ScholarshipApplicationBatch.cs:290
CSOM.ScholarshipApplicationWeb.BatchSummaryControl.Edit_Click(Object sender, CommandEventArgs e) in c:\inetpub\wwwroot\ScholarshipApplicationWeb\BatchSummaryControl.cs:68
System.Web.UI.WebControls.LinkButton.OnCommand(CommandEventArgs e) +110
System.Web.UI.WebControls.LinkButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +115
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +18
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +138
System.Web.UI.Page.ProcessRequestMain() +1244
Version Information: Microsoft .NET Framework Version:1.0.3705.288; ASP.NET Version:1.0.3705.288
</WebPageError>
<PackageBody>
PROCEDURE GET_DETAILS(
p_batch_id IN number,
batchCursor OUT pkg_batch.refcur,
majorsCursor OUT pkg_batch.refcur,
applicationsCursor OUT pkg_batch.refcur
IS
BEGIN
OPEN batchCursor FOR SELECT
* FROM scholarshipApplicationBatch
where scholarshipApplicationBatch_id = p_batch_id;
OPEN majorsCursor FOR SELECT
* FROM major_response
where batch_id = p_batch_id;
OPEN applicationsCursor FOR SELECT
* FROM schol_detail
where batch_id = p_batch_id;
END GET_DETAILS;
</PackageBody>One workaround that seems to work is to retry in a loop.
Sample code is pasted below.
Obviously it may still fail, but less often.
I'll report any further changes that affect
the behavior in hopes it will assist the Oracle staff in
fixing it.
<CODE>
try
da.Fill(ds);
catch (OracleException excp)
const int maxTrys = 5;
int failureCount = 1;
bool succeeded = false;
for (int i = 0;i<maxTrys;i++)
try
System.Threading.Thread.Sleep(
TimeSpan.FromSeconds(1));
ds.Clear();
da.Fill(ds);
i = maxTrys;
succeeded = true;
}//try
catch
failureCount ++;
}//for
errorHandler.Report(
String.Format(
"Failure in da.Fill in ScholAppBatch. " +
" Failed {0} times. Finally Succeeded = {1}.",
failureCount.ToString(),
succeeded.ToString()),
excp);
}//catch
</CODE>
Maybe you are looking for
-
My 2005 iMac (which can't be updated to Snow Leopard or Mountain Lion and so is stuck with iTunes 10) has thousands of my songs, over 80GB of music mostly from CDs and other uploads/downloads. In 2008 we got an iMac for the family room; somehow alth
-
I Need help in converting a pdf into word. I've purchased it a few months ago and now for the first time I tried to use word and I can't it only gives me the option to convert it into a pdf when it is already a pdf! Urgent help please
-
Lenovo b50-45 won't detect my r5 m230 video card
Hello everyone....I have a problem with my laptop...I just bought it few weeks ago and it can't detect my r5 graphic card. I downloaded all drivers from lenovo official site but..it still won't work...I'm running windows 7 64 bit. When I opened devic
-
URL Policy Agent/Portal not for gateway
Consider LDAP (for intranet) and Radius (for intranet). We would like to limit the access to certain URL's based upon the authentication scheme. To do this we've created a policy: URL Polict Agent URL=X and Authentication Radius OK from IP Internet U
-
Restricting Broswer Controlled Font Sizing
Hi Gang, I'm a bit new to Dreamweaver (have CS3) and have a question about font formatting and sizing. I have a tables / cell-based text column layout using CSS. It looks great when I have the type size set on "normal", but when the type is enlarged