Waits with OCI calls
I have a C++ app which access Oracle DB 10.1.0.4 via OCI from Linux redhat.
I have extensive waits between the app and the database.
How can I torubleshoot this problems?
Etherial show waits on the DB before to send it back to the app. but the execution time for the quesries do not cover the waiting time - like wait 1/2 sec, query runs for 22 millisec.
How can I figure out what is waiting and why?
Thanks,mj
Hi,
The whole problem is, I don't have access to the code which uses OCI. I cannot modify the code to set CURSOR_SHARING=FORCE, as it is third party code.
Is it possible to achieve the same with some setting in some configuration file?
E.g. if you have a glogin.sql file in $ORACLE_HOME/sqlplus/admin, every time you run sqlplus, after you login, this glogin.sql file will be executed automatically
Is any such thing possible with OCI programs? i.e. when a program using OCI starts running using certain client installation, we want to run some commands.
If that can be achieved, my problem is sorted.
Similar Messages
-
Problem with OCI call and how to install and use 'DEBUG_EXTPROC' on Linux
Hi,
Can any one let me know how I can install and use this debug_extproc package. I have installed oracle XE server on Linux machine(32-bit).
When I use : DEBUG_EXTPROC.STARTUP_EXTPROC_AGENT' ... i get an error saying that : it is not declared.
I tried looking in all the directories but did not find the dbgextp.sql(which is required in order to install that package).And tried searching on google but could not get any relevant information.
Also I am newbie to OCI call interface and also to C programming too: I have coded a external procedure or custom user aggregate in C. But since I was using C++ : 'set' STL. I have compiled my program using g++ instead of gcc and I have correspondingly modified the make file in public/demo directory.
So, is it fine to do it that way: using OCI (instead of OCCI(C++)) but again compiling the pgm as a regular C++ using g++ instead of gcc.(But rest of the pgm including printf statements : everything is in C).
Also I have created the library from my : custagg.so library:
SQL> create or replace library custagg is '$ORACLE_HOME/lib/custagg.so'
But my aggregate function implemented as external C function using OCI is either not recognised or else : if recognized then there is some error because of which i am getting the following errors : ORA-06522
SQL> select MinDistance(TT) from egg1;
select MinDistance(TT) from egg1
ERROR at line 1:
ORA-06520: PL/SQL: Error loading external library
ORA-06522: /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/custagg.so:
cannot dynamically load executable
Please kindly answers my queries and trying to resolve this for almost 4 days now and could not find any clue on how to get this done.
Thanks,
-NN#/bin/make
# Make file for OCI,OCCI and ODBC demos
# Usage :
# For compiling & linking the cdemo81.c file
# make -f demo_xe.mk buildoci CDEMOEXE=cdemo81 CDEMOOBJS=cdemo81.o
.SUFFIXES: .o .c .cpp
ICINCHOME=$(ORACLE_HOME)/rdbms/public/
ICLIBHOME=$(ORACLE_HOME)/lib
ICLIBPATH=-L$(ICLIBHOME)
THREADLIBS=-lthread
CCLIB=$(ICLIBPATH) -lclntsh $(THREADLIBS)
OCCILIB=$(ICLIBPATH) -locci -lclntsh $(THREADLIBS)
CCINCLUDES = -I$(ICINCHOME)
CCFLAGS=$(CCINCLUDES) -D_REENTRANT -g -xs
LDFLAGS=
SO_EXT=.so
EXTLDFLAGS=$(LDFLAGS) -shared
REMOVE=rm -rf
MKLINK=ln
MAKE=make
MAKEFILE=demo_xe.mk
CDEMOEXE=custagg.so
CDEMOOBJS=custagg.o
OCCIDEMO=occidml
OCCIOBJDEMO=occiobj
OTT=$(ORACLE_HOME)/bin/ott
OCCIOTTUSR=hr
OCCIOTTPWD=hr
ODBCDEMOEXE=odbcdemo
ODBCDEMOOBJS=odbcdemo.o
AQDEMOEXE=ociaqdemo00
AQDEMOOBJS=ociaqdemo00.o
EXTDEMO=extdemo2.so
CC=/usr/bin/g++
echo "LIBCLNT value is :" $(LIBCLNT)
echo "CC value is :" $(CC)
.c.o:
g++ -c -I$(ICINCHOME) $(CCFLAGS) $<
all: clean buildoci
echo "LIBCLNT value is :" $(LIBCLNT)
buildoci: $(LIBCLNT) $(CDEMOOBJS)
g++ -o $(CDEMOEXE) $(LDFLAGS) $(CDEMOOBJS) $(CCLIB)
echo "CC value is :" $(CC)
echo "LIBCLNT value is :" $(LIBCLNT)
clean:
$(REMOVE) $(CDEMOOBJS) $(CDEMOEXE)
# This port-specific file is currently empty on Solaris. Product
# lines may use this file to override compiler definitions and
# flags used in occi.mk.
# Linux compiler definitions
CC=/usr/bin/gcc
cc=/usr/bin/gcc
CCFLAGS=$(CCINCLUDES) -DLINUX -D_GNU_SOURCE -D_REENTRANT -g
LDFLAGS=-g
# This macro CCINCLUDES has to be redefined on Linux because of
# the existence of the 'new' directory in t_work. The name new
# clashes with a system header file.
CCINCLUDES = -idirafter .
THREADLIBS=-lpthread
ifdef BUILD_CCC296
CC=/usr/bin/g++296
endif
And I am executing the make file using the command :
make -f demo12.mk buildoci CDEMOEXE=custagg.so CDEMOOBJS=custagg.o
I am not getting any error while running this make file.
Can you please tell me whether PLSQL/Oracle is able to locate the file or not. Incase, if it is locating the file but due to some error in the custagg.so it is throwing that error. If this is the case, is there any way that i can debug the C program .....how can i install the debug_extproc package.. I am really new to C & OCI ... if the custagg.so is being located then there might be some problem with the way I am dynamically allocating memory to some variables.
Please kindly reply to this Post/response.
Please let me know if you also want to see my program code.
Thanks & Regards,
-NN -
EU_IMPORT5: DbSl Trace: OCI-call 'OCISessionBegin' failed with rc=1017
Hi,
The upgrade is on phase EU_IMPORT5 and it seems to run for a long time. But am afraid it this is really true. When I look in the file: E000006.DPR I find the following:
DbSl Trace: OCI-call 'OCISessionBegin' failed with rc=1017
DbSl Trace: CONNECT failed with sql error '1017'
(DB) INFO: connected to DB
(DB) INFO: DbSlControl(DBSL_CMD_NLS_CHARACTERSET_GET): WE8DEC
(SQL) INFO: SSEXC.SQL not found
(DB) INFO: DOKHL~ created #20081003122232
(IMP) INFO: import of DOKHL~ completed (2185665 rows) #20081003125935
(DB) INFO: DOKHL^0 created #20081003125948
(DB) INFO: DOKIL~ created #20081003125949
Is this means that it stoped?
Thanks in advance
HanseAtikHi,
Check in SAPup.log if you're not requested to do an action .
You'll probably see
>Continue ?
>Exit ?
If yes, just stop SAPup and restart, you'll be asked again.
Hope that was helpfull. -
Getting error with DbSl Trace: OCI-call 'olog' failed: rc = 1017
Hi,
We are working on osdbmigration, exporting from oracle to SQL Server.
When we run ./R3SETUP -f DBEXPORT.R3S getting the below error:
INFO 2011-06-10 05:17:46 R3SZCHK_IND_ORA R3ldctlDo:0
DbSl Trace: OCI-call 'olog' failed: rc = 1017
DbSl Trace: CONNECT failed with sql error 1017
We have performed allthe pre-checks successfully and can able to connect system/manager at SQL.
Regards,
Karthik.Have you followed the Note 400241 - Problems with ops$ or sapr3 connect to Oracle
-
OCI calls with hardcoded literals
Hi All,
I am on Oracle v11.2.0.2 on RedHat. Oracle client 11.2.0.3 used by OCI client.
We have a third party software running on our database. The component I want to discuss here is, batch processes written using OCI running on another Linux node. This batch process runs lots of SQLs with hardcoded literals (not using bind variables).
In v$sqlarea, I can see 100s of thousands of SQL like
SELECT a, b, c FROM table1 WHERE some_column = 'VALUE1' with only VALUE1 replaced by different values (nothing else changed).
Third party software cannot be changed (no surprise there !!).
Is it possible to get around this issue using database settings? OCI settings?
I know, if we change the database parameter CURSOR_SHARING to FORCE, this issue can be addressed. But that will affect all database and we will need to do impact analysis of this change on everything which runs on the database.
Are there any OCI settings or parameters (or something like that) which can do same effect as CURSOR_SHARING=FORCE, but only for the OCI processes/batches ??
Any thoughts are most welcome.
Thanks in advance.Hi,
The whole problem is, I don't have access to the code which uses OCI. I cannot modify the code to set CURSOR_SHARING=FORCE, as it is third party code.
Is it possible to achieve the same with some setting in some configuration file?
E.g. if you have a glogin.sql file in $ORACLE_HOME/sqlplus/admin, every time you run sqlplus, after you login, this glogin.sql file will be executed automatically
Is any such thing possible with OCI programs? i.e. when a program using OCI starts running using certain client installation, we want to run some commands.
If that can be achieved, my problem is sorted. -
With JDBC, calling a stored procedure with ARRAY as out parameter
Hi,
I want to use the data type ARRAY as an out parameter in an Oracle stored procedure. I want to call the stored procedure from
my java program using JDBC.
The problem it's i use a 8.1.7 client to acces with oci to a 7.1.3 Database.
With this configuration I can get back a Cursor but not an Array.
Does it's possible ?
Thanks for your help !
MichaklOriginally posted by JDBC Development Team:
It's very similar to other datatype except that it uses OracleTypes.ARRAY typecode and the value is mapped to a oracle.sql.ARRAY instance. The code looks as follows --
cstmt.registerOutParameter (idx, OracleTypes.ARRAY, "VARRAY_TYPE_NAME_HERE");
cstmt.execute ();
ARRAY array = (ARRAY) cstmt.getObject (idx);
Thanks for your reply.
I have to use:-
OracleCallableStatement cs1 = (OracleCallableStatement )conn.prepareCall
( "{call proj_array(?)}" ) ;
for retrieving a collection as an OUT parameter.
This gives me the errors:-
C:\jdbc\VarraySQL.java:0: The method oracle.jdbc2.Blob getBlob(int) declared in class oracle.jdbc.driver.OracleCallableStatement cannot override the method of the same signature declared in interface java.sql.CallableStatement. They must have the same return type.
import java.sql.*;
^
C:\jdbc\VarraySQL.java:0: The method oracle.jdbc2.Array getArray(int) declared in class oracle.jdbc.driver.OracleCallableStatement cannot override the method of the same signature declared in interface java.sql.CallableStatement. They must have the same return type.
import java.sql.*;
^
C:\jdbc\VarraySQL.java:0: The method oracle.jdbc2.Clob getClob(int) declared in class oracle.jdbc.driver.OracleCallableStatement cannot override the method of the same signature declared in interface java.sql.CallableStatement. They must have the same return type.
import java.sql.*;
^
C:\jdbc\VarraySQL.java:0: The method oracle.jdbc2.Ref getRef(int) declared in class oracle.jdbc.driver.OracleCallableStatement cannot override the method of the same signature declared in interface java.sql.CallableStatement. They must have the same return type.
import java.sql.*;
^
How do I get rid of these errors?
null -
Problem to create data source with OCI type of driver
Hi Experts
We are creating an XA datasource with OCI type of driver using an enterprise application with data-sources.xml, the xml is like this:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE data-sources SYSTEM "data-sources.dtd" >
<data-sources>
<data-source>
<data-source-name>OCI_DS_XA</data-source-name>
<driver-name>ORACLE_DRIVER</driver-name>
<init-connections>1</init-connections>
<max-connections>25</max-connections>
<max-time-to-wait-connection>120</max-time-to-wait-connection>
<expiration-control>
<connection-lifetime>60</connection-lifetime>
<run-cleanup-thread>300</run-cleanup-thread>
</expiration-control>
<sql-engine>Vendor_SQL</sql-engine>
<jdbc-2.0>
<xads-class-name>
oracle.jdbc.xa.client.OracleXADataSource
</xads-class-name>
<object-factory>
oracle.jdbc.pool.OracleDataSourceFactory
</object-factory>
<properties>
<property>
<property-name>serverName</property-name>
<property-value><SERVER_NAME></property-value>
</property>
<property>
<property-name>serverPort</property-name>
<property-value>1521</property-value>
</property>
<property>
<property-name>databaseName</property-name>
<property-value>ORCL</property-value>
</property>
<property>
<property-name>driverType</property-name>
<property-value>oci</property-value>
</property>
<property>
<property-name>user</property-name>
<property-value>username</property-value>
</property>
<property>
<property-name>password</property-name>
<property-value>password</property-value>
</property>
</properties>
</jdbc-2.0>
</data-source>
</data-sources>
We have installed oracle client in server M/C and configured all the environment variables. While we are deploying the application from CE developer studio IDE to the CE 7.1 AS, we are getting the following error:
Description:
1. Exception has been returned while the 'sap.com/DS_TEST_EAR' was starting. Warning/Exception :
[ERROR CODE DPL.DS.6193] Error while ; nested exception is:
com.sap.engine.services.deploy.exceptions.ServerDeploymentException: [ERROR CODE DPL.DS.5030] Clusterwide exception: server ID 7653550:com.sap.engine.services.dbpool.exceptions.BaseDeploymentException: Cannot create DataSource "OCI_DS_XA".
at com.sap.engine.services.dbpool.deploy.ContainerImpl.startDataSources(ContainerImpl.java:1467)
at com.sap.engine.services.dbpool.deploy.ContainerImpl.prepareStart(ContainerImpl.java:468)
at com.sap.engine.services.deploy.server.application.StartTransaction.prepareCommon(StartTransaction.java:219)
at com.sap.engine.services.deploy.server.application.StartTransaction.prepare(StartTransaction.java:179)
at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhasesOnOneServer(ApplicationTransaction.java:419)
at com.sap.engine.services.deploy.server.application.ParallelAdapter.makeAllPhasesImpl(ParallelAdapter.java:495)
at com.sap.engine.services.deploy.server.application.StartTransaction.makeAllPhasesImpl(StartTransaction.java:554)
at com.sap.engine.services.deploy.server.application.ParallelAdapter.runInTheSameThread(ParallelAdapter.java:248)
at com.sap.engine.services.deploy.server.application.ParallelAdapter.makeAllPhasesAndWait(ParallelAdapter.java:389)
at com.sap.engine.services.deploy.server.DeployServiceImpl.startApplicationAndWait(DeployServiceImpl.java:3387)
at com.sap.engine.services.deploy.server.DeployServiceImpl.startApplicationAndWait(DeployServiceImpl.java:3373)
at com.sap.engine.services.deploy.server.DeployServiceImpl.startApplicationAndWait(DeployServiceImpl.java:3276)
at com.sap.engine.services.deploy.server.DeployServiceImpl.startApplicationAndWait(DeployServiceImpl.java:3249)
at com.sap.engine.services.dc.lcm.impl.J2EELCMProcessor.doStart(J2EELCMProcessor.java:99)
at com.sap.engine.services.dc.lcm.impl.LifeCycleManagerImpl.start(LifeCycleManagerImpl.java:62)
at com.sap.engine.services.dc.cm.deploy.impl.LifeCycleManagerStartVisitor.visit(LifeCycleManagerStartVisitor.java:34)
at com.sap.engine.services.dc.cm.deploy.impl.DeploymentItemImpl.accept(DeploymentItemImpl.java:83)
at com.sap.engine.services.dc.cm.deploy.impl.DefaultDeployPostProcessor.postProcessLCMDeplItem(DefaultDeployPostProcessor.java:80)
at com.sap.engine.services.dc.cm.deploy.impl.DefaultDeployPostProcessor.postProcess(DefaultDeployPostProcessor.java:56)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.doPostProcessing(DeployerImpl.java:741)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.performDeploy(DeployerImpl.java:732)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.doDeploy(DeployerImpl.java:576)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.deploy(DeployerImpl.java:270)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.deploy(DeployerImpl.java:192)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImplp4_Skel.dispatch(DeployerImplp4_Skel.java:875)
at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:351)
at com.sap.engine.services.rmi_p4.server.ServerDispatchImpl.run(ServerDispatchImpl.java:70)
at com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:62)
at com.sap.engine.services.rmi_p4.P4Message.execute(P4Message.java:37)
at com.sap.engine.services.cross.fca.FCAConnectorImpl.executeRequest(FCAConnectorImpl.java:872)
at com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:53)
at com.sap.engine.services.cross.fca.MessageReader.run(MessageReader.java:58)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:108)
at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:304)
Caused by: com.sap.engine.frame.core.database.DatabaseException: Exception of type java.sql.SQLException occurred: Closed Connection.
at com.sap.engine.core.database.impl.DataSourceAdministratorImpl.createDataSource(DataSourceAdministratorImpl.java:49)
at com.sap.engine.services.dbpool.deploy.ContainerImpl.startDataSources(ContainerImpl.java:1400)
... 33 more
Caused by: java.sql.SQLException: Closed Connection
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:162)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:227)
at oracle.jdbc.driver.GetCharSetError.processError(T2CConnection.java:3082)
at oracle.jdbc.driver.T2CConnection.getCharSetIds(T2CConnection.java:2811)
at oracle.jdbc.driver.T2CConnection.logon(T2CConnection.java:300)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:344)
at oracle.jdbc.driver.T2CConnection.<init>(T2CConnection.java:136)
at oracle.jdbc.driver.T2CDriverExtension.getConnection(T2CDriverExtension.java:79)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:545)
at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:194)
at oracle.jdbc.pool.OracleConnectionPoolDataSource.getPhysicalConnection(OracleConnectionPoolDataSource.java:121)
at oracle.jdbc.xa.client.OracleXADataSource.getXAConnection(OracleXADataSource.java:333)
at oracle.jdbc.xa.client.OracleXADataSource.getXAConnection(OracleXADataSource.java:84)
at com.sap.sql.connect.factory.XADSPooledConnectionFactory.getPooledConnection(XADSPooledConnectionFactory.java:27)
at com.sap.sql.connect.datasource.DBDataSourceImpl.createPooledConnection(DBDataSourceImpl.java:677)
at com.sap.sql.connect.datasource.DBDataSourcePoolImpl.initConnections(DBDataSourcePoolImpl.java:1099)
at com.sap.sql.connect.datasource.DBDataSourcePoolImpl.<init>(DBDataSourcePoolImpl.java:49)
at com.sap.sql.connect.datasource.DataSourceManager.createDataSource(DataSourceManager.java:507)
at com.sap.sql.connect.datasource.DataSourceManager.createDataSource(DataSourceManager.java:136)
at com.sap.sql.manager.OpenSQLManager.createDataSource(OpenSQLManager.java:141)
at com.sap.engine.core.database.impl.DataSourceAdministratorImpl.createDataSource(DataSourceAdministratorImpl.java:42)
... 34 more
But when we are creating the datasource with thin type of driver, it is working fine. We have already created a driver with name ORACLE_DRIVER in server using the ojdbc14.jar using Netweaver administrator consol.
Same this is happening when we are creating the OCI type of datasource by using Netweaver administrator consol by specifying all the parameter as above and also the initial connection pool size is more than zero.
Same thing is happening for normal (JDBC 1x) datasource creation with OCI type driver.Hello,
I ran a search on SDN, related to your error code, i found the following:
UnsupportedClassVersionError in NWDS CE
DeploymentWarning-WebService-Collection
Maybe its useful to you
Regards,
Siddhesh -
OCI CALLS : Oracle 8.1.5 to Oracle 8.1.6
Hi
I am working on messaging product which was compiled and linked with Oracle 8.1.5. It was working on HPUX 11.0 machine. That product is a CORBA product which uses ORCALE to store message database. This product uses OCI calls to access ORACLE.
But I am having a new task of running that product on oracle 8.1.6 version. When I ran old bineries(compiled and built with oracle 8.1.5 libs) with oracle 8.1.6 product, I am getting following runtime errors. DBINIT is a executable.
$PROMPT>DBINIT -v
/usr/lib/dld.sl: Unresolved symbol: LhtStrCreate (code) from /opt/oracle/8.1.6/lib/libwtc8.sl
/usr/lib/dld.sl: Unresolved symbol: LhtStrInsert (code) from /opt/oracle/8.1.6/lib/libwtc8.sl
/usr/lib/dld.sl: Unresolved symbol: nauzaoss (code) from AmOraDbInit
/usr/lib/dld.sl: Unresolved symbol: nauzaoss (code) from /opt/TPBroker/AM/lib/libAmdOra.sl
Whether I need to compile and build whole product with oracle 8.1.6.
In my product I am using OCI calls, so whether I need to change those calls.
$PROMPT>chatr DBINT
shared executable
shared library dynamic path search:
SHLIB_PATH enabled first
embedded path disabled second Not Defined
shared library list:
dynamic /usr/lib/libpthread.1
dynamic /vobs/TPBroker/hpux/TPBroker/lib/libots_r.sl
dynamic /vobs/TPBroker/hpux/TPBroker/lib/libdcpmsg.sl
dynamic /vobs/bldenv/hp11/Visigenic/vbroker/lib/liborb_r.sl
dynamic /vobs/bldenv/hp11/Oracle/lib/libclntsh.sl.8.0
dynamic /usr/lib/libstd.2
dynamic /usr/lib/libstream.2
dynamic /usr/lib/libCsup.2
dynamic /usr/lib/libm.2
dynamic /usr/lib/libcl.2
dynamic /usr/lib/libc.2
static /usr/lib/libdld.2
shared library binding:
immediate
global hash table disabled
plabel caching disabled
global hash array size:1103
global hash array nbuckets:3
shared vtable support disabled
static branch prediction disabled
executable from stack: D (default)
kernel assisted branch prediction enabled
lazy swap allocation disabled
I haven't got any documents for this thing.
If anybody gone thru this problem, please help me for solving this problems.
Thank you
-Pravinapplets can only use jdbc thin drivers.
-
OCI calls failing for Oracle 11g 11.1.0.7 (64 bit)
Hi,
I have a 32bit app which we build and compile in a 32 bit OS, we then deploy this in a 64 bit Windows 2008 R1 machine which has a 11g 64 bit DB;
when the code make the OCI calls the app terminates.On debugging we found out that its failing to make OCI calls on the connect() method of a .cpp file.
This connect code is a custom wrapper class created for OCI which only accepts a complete SQL statement mainly used for looking after rollback segments, etc.
The code runs perfectly fine when we internally call the ORACMD of sqlplus and directly execute the sql from a script.
It only fails when our code tries to connect to the DB and make OCI calls.
I have also installed a 32 bit Oracle 11g Client 11.1.0.7 since I am using a 32 bit app.
Is there any compatibility issues between these 2 versions or the dll's?
Why is it failing while making OCI calls and is there any resolution?
My machine and setup details:
OS: Windows 2008 R1
DB : Oracle 11g R1 11.1.0.7 (64 bit)
Client: Oracle 11g R1 11.1.0.7 (32 bit)
Our App: 32 bit
ORACLE_HOME = // this is pointing to the 64 bit DB
I tried pointing the oracle_home to the client still no go.
Any suggestions on this will be appreciated.
Regards
Royuser13376823 wrote:
how do i find that my database is using big file tablespace management or not ?
SQL> select TABLESPACE_NAME,BIGFILE from dba_tablespaces;
TABLESPACE_NAME BIG
SYSTEM NO
UNDOTBS1 NO
SYSAUX NO
USERS NO
UNDOTBS2 NO
TEMP1 NO
TEMP3 NO
TEMP2 NO
8 rows selected.For tablespaces with smallfile datafile maximun datafile size is 32GB, where as bigfile datafile size is 8 exabytes. -
Hi,
I am developing a DLL in which i am using OCI calls to interact with Oracle. The Logon oci call "olog" itself fails when it is called from DLL. It is working fine in EXE. Whether OCI calls can be used in DLL? If so, let me know how to use it. If not, whether OCI calls can be used in COM or CORBA components?
Thanks in advance.
Ravi
nullThis is not a forum for OCI, but interMedia. Please look for an appropriate forum and post there. Also, I recommend to include your system envirment information in your post.
-
Skype with Video Calling for nokia c5-00-2
I have nokia c5-00-2 with 5MP camera. I'm looking for a skype version with video call option.. As one of my friend had it when he was in Suadi Arabia and used to call me video chat from his c5. Unfortunately he need that software but could not find it??? Does any body knows where we can download it??? Waiting for you replies.............
Skype for Symbian has been discontinued and stopped working. Since the Nokia C5 works with Symbian S60 you won't be able to use Skype any longer. Please read this:
https://support.skype.com/en/faq/FA10389/has-skype-for-symbian-been-discontinued -
We are getting the following core dump on an OCI call ....
fde12fe0 kpucHTDelete (f872ac, f68380, 0, 31, 203d203a, f7c684) + 9c
fddae464 kpursetstmttext (f872ac, f871c8, 8, fdd9fa84, d49c40,
fe449a64) + 9c
fddae61c kpurclientparse (f872ac, f7cc7c, f682e8, 9a, 400000, d49a14) +
28
fddae928 kpureq (f77338, f7cc7c, f682e8, 9a, 1, 0) + 150
fde69efc OCIStmtPrepare (f872ac, f7cc7c, f682e8, 9a, 1, 0) + 7c
004642b4 arb_internal_process_query (f68138, f68154, 0, 0, ffbfae28,
1037de2) + 594
00453178 arb_next_row (f68138, 10d6c58, 1037d88, ffbfaea4, 29, 2e) + 18
0028d64c ???????? (f61828, 1067d00, ffbfafa8, 0, 0, 80808080)
0028db68 list_abp_product_types (f61828, 1067d00, ffbfafa8, 1037c10,
1067d00, 1067d00) + 20
002e78a0 insert_abp_serv_inst_product (f61828, 103ee18, 1, ffbfb46c,
fecd29e8, fd9f0240) + 278
0014feb8 GTEAB_InsertMRC (ffbfbd54, ffbfc2d0, ffbfbda7, ffbfc2d0,
ffbfbd98, ffbfc2d0) + 33b8
000d193c run_pieces (e2f820, e33528, e35aa0, ffbfc3d4, e3f8c0, 0) + 1dc
000d11b0 handle_request (e2f820, 5, e33528, e34e48, 0, 0) + 278
000ce1a8 process_request (e2f820, 5, e33528, e34e48, fed73700,
fd9f2a00) + c8
000cdfd0 main (3, ffbfc9ac, ffbfc9bc, 79a000, fd9f0180, fd9f01c0) +
568
000cce08 _start (0, 0, 0, 0, 0, 0) + 108
It always seems to happen on the kpucHTDelete call. I have searched the net for kpucHTDelete but found nothing.
Can someone
1. describe what kpucHTDelete is supposed to accomplish and why it might fail.
2. Is there a way to trace / log OCI ?
3. Any other suggestions to help with this problem.
Thanks in advance.
GaryWell, it seems to me a bug.
You can enable tracing using NET 8 Assistant, and from there go to the tracing tab.
Select the SUPPORT trace level from the following pull down menu located in the Client Information section:
OFF: Tracing disabled.
USER: Trace information applicable for users.
ADMIN: Trace information applicable for database administrators.
SUPPORT: Trace information applicable for customer support staff.
Enter a valid directory name in the Trace Directory field in the Client Information section. This directory specification is where trace files are written on either the client or server.
Enter a valid filename in the Trace File field in the Client Information section. This filename specifies the name of the trace file on the client or server.
Click on the "unique File Trace Name" checkbox if you want a unique identifier appended to each new trace file created.
Save your configuration.
You can check the SQLNET.ORA file found in the net80/admin directory path to verify that tracing is enabled. There is an entry called TRACE_LEVEL_CLIENT=SUPPORT located in that file and entries that indicate the log file location and name that you specified in the Oracle Net8 Assistant.
regards -
All,
The program has set of OCI datatype converion calls from C native to Oracle types. The program crashes in OCI calls specifically in OCINumberFromReal. Below is the stack for the core dump created.
In call to OCINumberFromReal, when it refences lnxren function, the program crashes with SIGBUS.
The application in on solaris 10 and Oracle 11g.
pstack corecore 'core' of 163: quartzCABT -C dom=seirel620 -g 1 -i 127 -u sei4800 -U /home3/seirel620
f2520b7c _kill (2, ffbfb374, 1, f4517e90, f43e1c74, ffbfb370) + 8
f37fcfc0 skgesig_sigactionHandler (1, 9a400, 9bd08, 0, 0, 1) + 25c
f24656c8 __sighndlr (a, ffbfc898, ffbfc5e0, f37fcd64, 0, 0) + c
f245f320 call_user_handler (a, ffbfc898, ffbfc5e0, 0, 0, 0) + 234
f245f4d0 sigacthandler (a, ffbfc898, ffbfc5e0, de79ff, 44, 80ee8) + 64
--- called from signal handler with signal 10 (SIGBUS) ---
f341ebcc lnxren (d6694c, 8, de7b42, 0, 0, caee98) + 514
f36617f4 OCINumberFromReal (f432df90, caed70, 3, de7b42, 13d4, 0) + 5d4
ff3653f0 __1cPedbCreateCommit6FpnIxlDArray_r1rpc_nMMESSAGE_TYPE__ (d66ab0, ffbfd950, ffbfd7dc, fffffff8, 0, dc5da8) + 948
ff36cc8c __1cUinvokeExtnlDBService6FipnIxlDArray_r1_nMMESSAGE_TYPE__ (1, d66ab0, ffbfd950, 1, 2, abc14d) + 8c
002b9b48 __1cUCA_GLOBAL_SUBCA_LINKXCABT4003ModGlblSubCALnk6MpnIxlDArray__nMMESSAGE_TYPE__ (abc152, d64ae0, 13b88, b49cac, f476a08c, 20) + bb0
002ba774 sh_CABT4003ModG (ffbfdc44, abc1ea, ffbfdc2c, abc1f4, ffbfdbf4, abc209) + 9cc
Please suggest on how to resolve this.
Thanks in advance
satishhi Nikeda,
I replaced the sizeof(double) to DBL_DIG/FLT_DIG constant, now the program doesn't crashes but the conversion is not happening properly.
The result of any number after conversion is "0".
Any suggestions, Thanks in advance .. below is the code snippet u asked for ..
class ABC
double qty ;
ott structure
struct abc_ott
OCINumber qty ;
// pro*c code
EXEC SQL BEGIN DECLARE SECTION ;
abc_ott * abc_ott_inst ;
EXEC SQL END DECLARE SECTION ;
EXEC SQL ALLOCATE :abc_ott_inst ;
ABC * abc = new ABC ;
abc->qty = 100.0 ;
OCINumberFromReal(ociError, &abc->qty, (uword)sizeof(double), &abc_ott_inst->qty ) ;
// call with DBL_DIG
OCINumberFromReal(ociError, &abc->qty, DBL_DIG, &abc_ott_inst->qty ) ;
Edited by: user3894537 on May 20, 2010 8:25 AM
Edited by: user3894537 on May 20, 2010 8:38 AM -
Problems with OCI without an environment (ORACLE_HOME not set)
System: Solaris 9, Sun-Fire-V440
Our application has Oracle 9i as one of the possible persistence backends. Oracle is not always available at all clients sites so we use dlopen/dlsym to access the required OCI functions in clntsh on demand. Moreover, the app is started by inetd, so there is no environment and ORACLE_HOME is not set. The result is that OCIEnvCreate fails and returns -1. Presumably libclntsh.so.9.0 looks for ORACLE_HOME and falls over when it doesn't find it.
Q: Is there a work around for this purely in terms of 9i version software?
One work around we've found is to install Instant Client. IC is intended to run in cases where there is no ORACLE_HOME set. This now acts as a gateway between our app and 9i. However, in order to make our app work with IC we've had to 'crle' the install path of IC. This is not so desirable because it adds to the admin burden.
Q. If the answer to the first question is 'no', is there another way of connecting to Oracle without modifying lib search paths?
I am including skeleton.cpp and the corresponding skeleton.ksh which demonstrates the problem.
Any advice is very much appreciated.
Adam
############## skeleton.cpp ########################
#include <stdlib.h>
#include <stdio.h>
#include <dlfcn.h>
#include <link.h>
#include <oci.h>
#include <oratypes.h>
int main(int argc, char *argv[])
OCIEnv *envhp;
sword (*MY_OCIEnvCreate)(...);
char* dlerr;
sword ociret;
if(argc < 1)
exit(1);
char dllname = (char )argv[1];
void *mydll = dlopen(dllname,RTLD_NOW|RTLD_GLOBAL);
if (mydll==NULL)
fprintf(stderr,"Error while loading Oracle module. dlopen() failed.\n"
"OS says: %s.\n",
(dlerr=dlerror())?dlerr:"");
exit(1);
MY_OCIEnvCreate = (sword(*)(...)) dlsym(mydll,"OCIEnvCreate");
if (MY_OCIEnvCreate == NULL)
fprintf(stderr,"Error while loading Oracle module function %s.\n"
"OS says: %s.\n",
"OCIEnvCreate",
(dlerr=dlerror())?dlerr:"");
exit(1);
ociret = MY_OCIEnvCreate(&envhp, OCI_DEFAULT, (dvoid *)0,
0, 0, 0, (size_t)0, (dvoid **)0);
if (OCI_SUCCESS != ociret)
fprintf(stderr, "OCI Error %ld occurred.\n", ociret);
exit(1);
return 0;
########### skeleton.ksh #####################
#!/bin/ksh -vx
ORA_DIR=/usr/opt/oracle/product/9.2.0.1.0
INSTCLI_DIR=/d0/adam/instantclient/instantclient10_1
# Make with 9i libs
CC -ldl -I$ORA_DIR/rdbms/demo -I$ORA_DIR/rdbms/public -o skeleton skeleton.cpp
if [[ $? -ne 0 ]]; then
print "ERROR: compile 1 failed"
exit 1
fi
# expect to succeed with ORACLE_HOME set and fail with ORACLE_HOME unset
export ORACLE_HOME=$ORA_DIR
skeleton $ORA_DIR/lib32/libclntsh.so
if [[ $? -ne 0 ]]; then
print "ERROR: unexpectedly failed in 9i on ORACLE_HOME set"
exit 1
fi
unset ORACLE_HOME
skeleton $ORA_DIR/lib32/libclntsh.so
if [[ $? -eq 0 ]]; then
print "ERROR: unexpectedly succeeded in 9i on ORACLE_HOME set"
exit 1
fi
# Make with Instance Client libs
CC -ldl -I$ORA_DIR/rdbms/demo -I$ORA_DIR/rdbms/public -o skeleton skeleton.cpp
if [[ $? -ne 0 ]]; then
print "ERROR: compile 2 failed"
exit 1
fi
# expect to succeed with ORACLE_HOME unset
skeleton $INSTCLI_DIR/libclntsh.so
if [[ $? -ne 0 ]]; then
print "ERROR: unexpectedly failed with Instance Client 10.1 and ORACLE_HOME set"
exit 1
fi
exit 0
############################################After some investigation I have found a surprisingly simple solution to this problem. When inetd exec's a process, it provides a bare bones environment that comes from the /etc/default/login file. This environment can be extended using putenv(3C). Thus after dlopen/dlsym of clntsh, the program calls putenv with "ORACLE_HOME=/usr/opt/oracle/product/9.2.0.1.0" as argument. OCIEnvCreate and other OCI calls work fine after this.
Adam -
OCI call starcture for Purchase requisitions trans NME51N
Hi,
I am looking for any documentation on the OCI call structure ('Web service') for PO/Requisitions.
This it allow accessing external catalog via transaction NME51N using ERP 2005 PR/PO. The only documentation I have seen is related to the SRM EBP and OCI, which works fine for our SRM side.
But for integration with Purchasing via OCI we notice that the HOOK-URL value is NULL, so we do not have the return URL to the calling application upon the completing the catalog shopping,
KevinHi Kevin,
The only OCI documentation I know is about OCI version 4.0.
You are right that only SRM customizing is detailed.
For the return URL in parameter HOOK_URL, its content should be populated by the calling application (SRM, MM or PM).
That's why we must leave it blank in SRM catalog calling structure.
But in MM or PM, I don't know where it is handled.
Rgds
Christophe
Maybe you are looking for
-
When I try to install windows 7 on my mac, it always freezes at "Completing Installation". Does anyone know a fix for this?
-
Hello, We are planning to upgrade our SCCM 2012 SP1 VM to R2. We are a small environment with 200 clients and run everything on the same VM. Currently installed is - Windows Server 2012 - SQL Server 2012 SP1 - Windows Assesement and Deployment Kit 8.
-
I would like to float a landing page to capture email addresses, that is only shown once per visitor to the site, and not on return visits OR after they submit their email not to be asked again. thanks guys!
-
Hi, I'm very new in this SAP world. I downloaded the NSP to play with it a little bit but I didn't realize when my license expired. Now I cannot login in the system and the only available instructions I've found specifies to use a saplicene.exe progr
-
Login Notifications, Email Alert
I need login notifications just like facebook. I want to know if somebody else is using my skype account. is this too much to ask. This is for everybody's peace of mind. A much needed security please.