Oracle 9i and XP
quick question here...trying to install 9i on my laptop running XP service pack 2. is this possible? when i click the setup file it starts to work (about .25s worth of hourglass spin) and then stops. i was reading on the site that this combination isn't supported anymore ... help anyone?
thanks ahead of time,
craig
Craig,
We do this all the time, but there are a couple of things you need to know:
1) Make sure you have disabled your windows firewall that ships with SP2 before installing... this can cause a problem when Windows blocks the execution of javaw.exe, which is needed during the install.
2) If the setup.exe in the root directory of Disk 1 doesn't work, navigate to the following and execute:
X:/install/setup.exe
I have found that this often resolves the hourglass and stop problem with the installer.
If none of that works, I would suggest that you either terminate all javaw.exe processes on your system and/or reboot, then re-run the installer. I use that as a last resort.
Hope this helps,
John N. Julian, Sr.
Quilogy Corporation
[email protected]
Similar Messages
-
Oracle, Null and empty Strings
Currently I'm facing problems with a class, which contains a String, which
is set to "" (empty String).
When the class is persistent, oracle writes null to the table column
(which seems to be common oracle behaviour) and when retrieving the class,
the field is set to null as well, giving me a lot of null-pointer
exceptions.
Anyway ... I can cope with that (just a lot of extra work)
far worse is the problem, wenn searching objects, that have this field set
to "" oder null.
Oracle can't find the records because JDO creates Querys "where
string=null" or "where string=''" , where oracle expects "where string is
null" to find the records.
Is there a workaround or solution ?Yeah, that would work as well, thx, but since I have to cope with
null-Strings now everywhere in my program, it doesn't hurt just to forbid
empty strings on the program side.
In future times I'll test on Oracle first, then porting to DB/2 - this way
I suppose work is far less to garant compability.
Nevertheless ... having to set the bankcode into quotes is a kodo bug in
my opinion.
Kodo knows the type of classfields (in this case string) and shouldn't
send the parameter as a BigDecimal to the database.
Given that, and having only bankcodes of null (only neccesary when using
Oracle), the method would look like:
public Collection getAccounts (String bankCode)
throws Exception
return getAccounts (Account.class, "bankcode=="+bankcode);
which is how a transparent persistent layer, um, should be , um , I mean
... just transparent ;-D
Marc Prud'hommeaux wrote:
Stefan-
Couldn't you just do something like:
public Collection getAccounts (String bankCode)
throws Exception
String filter;
if (bankCode == null || bankCode.length () == 0)
filter = "(bankCode == null || bankCode == "")";
else
filter = "bankCode == "" + bankCode + """;
return getAccounts (Account.class, filter);
If I understand the problem correctly, this should work for all the
databases.
In article <[email protected]>, Stefan wrote:
What operations are you performing to cause this SQL to be issued? You
say you are having trouble removing objects, but this is clearly not a
DELETE statement. Is this the SQL that is issued when looking up
objects by identity?I'm not removing objects, I was removing just quotes from parameters ;-)
A string column... is it also represented as a string field in your class?Yeah ... just to give you an impression of the code:
First we have a class, representing a bank account:
public class Account {
private AccountMgr myAccountMgr;
private String bankCode;
private String id;
Note, that in nearly all cases bankCode will be a number or null.
I have a second class "AccountMgr", which does all of the persistant stuff
(seaching, making persistent etc.)
This class has two methods, one versatile (protected) to retrieve accounts
by a given filterString and one who just returns accounts by bankCode,
building the expected filterstring. Here is my current working version:
public class AccountMgr {
public Collection getAccounts(String bankCode) throws Exception {
if (bankCode!=null) {
if (bankCode.equals("")) {
throw new Exception("check code, bankCode='' not allowed to get
same behavior from DB2 and Oracle");
// if set, quote the bankCode
bankCode="""+bankCode+""";
return getAccounts(Account.class,"bankCode=="+bankCode);
protected Collection getAccounts(Class accountClass, String filterAdd)
throws Exception {
PersistenceManager pm = MyHelper.getPersistenceManager();
String filter="";
if (filterAdd!=null && !filterAdd.trim().equals("")) {
filter+=filterAdd + " && ";
filter += "myAccountMgr==_accMgr";
Query query = pm.newQuery(accountClass, filter);
query.declareParameters("AccountMgr _accMgr");
return (Collection) query.execute(this);
As you can see, in the first method I have to set the bankCode into
quotes, when it's not null.
This is because otherwise a filter like "bankCode=1234" will be translated
in a way, where 1234 is send as a BigDecimal to the database:
[...] executing statement <4239745>: (SELECT [...] FROM JDO_ACCOUNT t0
WHERE t0.BANKCODE = ? : [reused=1;params={(BigDecimal) 1234}]
Marc Prud'hommeaux [email protected]
SolarMetric Inc. http://www.solarmetric.com -
Select query differences between oracle 9 and oracle 8.
Hi,
I have a problem using the select query between oracle 7 and oracle 9i I don't have the same result :
ex:
With oracle7
SQL> select 'champ1','champ2' from DUAL;
'CHAMP 'CHAMP
champ1 champ2
With Oracle 9
SQL> select 'champ1','champ2' from DUAL;
'CHAMP1' 'CHAMP2'
champ1 champ2
So Can someone tell me how to solve this problem ? Is there a parameter in oracle 9 to set?
Thanx.Whenever you are posting anything over internet forums like this - you should be very careful about not just posting the details which requires to solve the problem - also should be sensible about your question.
This is not at all desired when you are posting such question. It may be because - you may not well aware of the fact.
My suggestion is -> First Go through the basics Of SQL in general.
Then go for any specific product like Oracle/ SQL Server/ Sybase etc.
And, finally learn the advanced commands of that DB.
You asked it - may be you thought the difference in output in terms of lines. But, that is not your actual output. That is the graphical display part only.
Anyway,
You can get the quite familier output by first type the following command ->
set lin 310Regards.
Satyaki De. -
What is the Diffrence between Oracle 11 and 11i
What is the Diffrence between Oracle 11 and Oracle11i ?.
With Rgds
Arun J.IsaacOracle 11i is internet based and run with java platform where we can see the applets downloading alongwith oracle forms and it refreshes all the jar files in oracle default directory.
Oracle 11 is not intergrated with Java its an Oracle standalone platform.
Regards,
Arumugam S. -
Oracle Forms and Reports Installation - Creating domain failed
I installed the weblogic 10.3.6 (Oracle WebLogic Server 11gR1 (10.3.6) + Coherence + OEPE - Package Installer) in my Microsoft Windows(32-bit JVM) system first.
But there was an error occorred when the package of forms and reports (Oracle Forms and Reports 11gR2 (11.1.2.2.0)) was installing.
Please find the following error message for your reference.
Do you have any idea? Please kindly advise.
Thanks a lot!
2014-04-02 14:11:14,099 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - read template from "C:/Users/GZ/AppData/Local/Temp//tmp1396419069239wls.jar"
2014-04-02 14:11:16,185 INFO [main] com.oracle.cie.domain.template.catalog.impl.ComponentsXMLConverter - C:\Oracle\Middleware\wlserver_10.3\common\lib\components.xml does not contain component elements and will be skipped
2014-04-02 14:11:17,556 INFO [main] com.oracle.cie.domain.WLSTemplateBuilder - No config-groups.xml found in template
2014-04-02 14:11:17,556 INFO [main] com.oracle.cie.domain.WLSTemplateBuilder - No template-database.xml found in template
2014-04-02 14:11:18,205 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: read template from "C:/Users/GZ/AppData/Local/Temp//tmp1396419069239wls.jar"
2014-04-02 14:11:18,477 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - set config option ServerStartMode to "prod"
2014-04-02 14:11:18,477 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set config option ServerStartMode to "prod"
2014-04-02 14:11:18,490 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - create Machine "PC-42A26D.GZAD.MSAD.LOCAL" as obj0
2014-04-02 14:11:18,604 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: create Machine "PC-42A26D.GZAD.MSAD.LOCAL" as obj0
2014-04-02 14:11:18,612 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - find Server "AdminServer" as obj1
2014-04-02 14:11:18,652 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: find Server "AdminServer" as obj1
2014-04-02 14:11:18,698 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - set obj1 attribute Machine to "PC-42A26D.GZAD.MSAD.LOCAL"
2014-04-02 14:11:18,705 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj1 attribute Machine to "PC-42A26D.GZAD.MSAD.LOCAL"
2014-04-02 14:11:18,706 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - set obj1 attribute ListenPort to "7002"
2014-04-02 14:11:18,716 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj1 attribute ListenPort to "7002"
2014-04-02 14:11:18,716 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - create Server!SSL "AdminServer!AdminServer" as obj2
2014-04-02 14:11:18,724 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: create Server!SSL "AdminServer!AdminServer" as obj2
2014-04-02 14:11:18,735 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - set obj2 attribute HostnameVerificationIgnored to "true"
2014-04-02 14:11:18,739 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj2 attribute HostnameVerificationIgnored to "true"
2014-04-02 14:11:18,739 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - find User "weblogic" as obj3
2014-04-02 14:11:18,755 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: find User "weblogic" as obj3
2014-04-02 14:11:18,755 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - delete obj3
2014-04-02 14:11:18,763 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: delete obj3
2014-04-02 14:11:18,764 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - create User "weblogic" as obj4
2014-04-02 14:11:18,768 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: create User "weblogic" as obj4
2014-04-02 14:11:18,771 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - set obj1 attribute PeriodLength to "200000"
2014-04-02 14:11:18,807 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj1 attribute PeriodLength to "200000"
2014-04-02 14:11:18,807 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - set obj1 attribute IdlePeriodsUntilTimeout to "20"
2014-04-02 14:11:18,815 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj1 attribute IdlePeriodsUntilTimeout to "20"
2014-04-02 14:11:18,815 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - set obj1 attribute DGCIdlePeriodsUntilTimeout to "21"
2014-04-02 14:11:18,821 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj1 attribute DGCIdlePeriodsUntilTimeout to "21"
2014-04-02 14:11:18,822 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - set obj1 attribute IdleConnectionTimeout to "1000"
2014-04-02 14:11:18,830 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj1 attribute IdleConnectionTimeout to "1000"
2014-04-02 14:11:18,833 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - set obj4 attribute Password to "********"
2014-04-02 14:11:18,837 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj4 attribute Password to "********"
2014-04-02 14:11:18,837 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - set config option OverwriteDomain to "true"
2014-04-02 14:11:18,837 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set config option OverwriteDomain to "true"
2014-04-02 14:11:18,837 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - set config option JavaHome to "C:/Oracle/Middleware/jdk160_29"
2014-04-02 14:11:18,837 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set config option JavaHome to "C:/Oracle/Middleware/jdk160_29"
2014-04-02 14:11:18,948 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - validateConfig "KeyStorePasswords"
2014-04-02 14:11:18,953 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: validateConfig "KeyStorePasswords"
2014-04-02 14:11:18,954 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - write Domain to "C:/Oracle/Middleware/user_projects/domains/base_domain"
2014-04-02 14:11:19,441 INFO [main] com.oracle.cie.domain.DomainChecker - ListenPort internal Validation result= [null]
2014-04-02 14:11:19,441 INFO [main] com.oracle.cie.domain.DomainChecker - ListenPort external Validation result= [null]
2014-04-02 14:11:21,609 INFO [Thread-1] com.oracle.cie.domain.StartMenu - Creating start menu program=C:\Oracle\Middleware\user_projects\domains\base_domain\bin\startWebLogic.cmd link=Start Admin Server for Weblogic Server Domain
2014-04-02 14:11:21,659 INFO [Thread-1] com.oracle.cie.domain.StartMenu - Creating start menu program=C:\Oracle\Middleware\user_projects\domains\base_domain\bin\stopWebLogic.cmd link=Stop Admin Server
2014-04-02 14:11:21,667 INFO [Thread-1] com.oracle.cie.domain.StartMenu - Creating start menu program=C:\Windows\system32\rundll32.exe link=Admin Server Console
2014-04-02 14:11:21,759 INFO [Thread-1] com.oracle.cie.domain.DomainRegistryWrapper - need to initialize domainRegistrydocument object
2014-04-02 14:11:21,777 INFO [Thread-1] com.oracle.cie.domain.DomainGenerator - Domain Generation Successful!
2014-04-02 14:11:21,783 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: write Domain to "C:/Oracle/Middleware/user_projects/domains/base_domain"
2014-04-02 14:11:21,784 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - close template
2014-04-02 14:11:21,784 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: close template
2014-04-02 14:11:21,784 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - read domain from "C:/Oracle/Middleware/user_projects/domains/base_domain"
2014-04-02 14:11:21,967 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: read domain from "C:/Oracle/Middleware/user_projects/domains/base_domain"
2014-04-02 14:11:21,967 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - add template C:/Oracle/Middleware/oracle_common/common/templates/applications/jrf_template_11.1.1.jar to domain
2014-04-02 14:11:22,011 WARN [main] com.oracle.cie.domain.template.dependency.TemplateSelectionTarget - Catalog does not have matching template for location C:\Users\GZ\AppData\Local\Temp\tmp1396419069239wls.jar
2014-04-02 14:11:22,071 INFO [main] com.oracle.cie.domain.WLSTemplateBuilder - No template-database.xml found in template
2014-04-02 14:11:22,100 INFO [main] com.oracle.cie.domain.WLSTemplateBuilder - No template-database.xml found in template
2014-04-02 14:11:22,101 ERROR [main] com.oracle.cie.domain.ConfigGroupsEngine$ConfigTopology - Multiple definitions of server-group BI-ADF-ADMIN-SVR are not allowed
2014-04-02 14:11:22,101 INFO [main] com.oracle.cie.domain.script.ScriptExecutor - fail: add template C:/Oracle/Middleware/oracle_common/common/templates/applications/jrf_template_11.1.1.jar to domain
2014-04-02 14:11:22,101 ERROR [main] com.oracle.cie.domain.script.ScriptExecutor - fail: add template C:/Oracle/Middleware/oracle_common/common/templates/applications/jrf_template_11.1.1.jar to domain
com.oracle.cie.domain.ConfigGroupsException: Multiple definitions of server-group BI-ADF-ADMIN-SVR are not allowed
at com.oracle.cie.domain.ConfigGroupsEngine$ConfigTopology.merge(ConfigGroupsEngine.java:2762)
at com.oracle.cie.domain.ConfigGroupsEngine.mergeTopology(ConfigGroupsEngine.java:551)
at com.oracle.cie.domain.ConfigGroupsEngine.merge(ConfigGroupsEngine.java:479)
at com.oracle.cie.domain.AbstractTemplate.addConfigGroups(AbstractTemplate.java:314)
at com.oracle.cie.domain.script.ScriptExecutor.addTemplate(ScriptExecutor.java:605)
at com.oracle.cie.domain.script.jython.WLScriptContext.addTemplate(WLScriptContext.java:416)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.python.core.PyReflectedFunction.__call__(Unknown Source)
at org.python.core.PyMethod.__call__(Unknown Source)
at org.python.core.PyObject.__call__(Unknown Source)
at org.python.core.PyInstance.invoke(Unknown Source)
at org.python.pycode._pyx3.addTemplate$20(C:\Users\GZ\AppData\Local\Temp\WLSTOfflineIni364664194239939514.py:89)
at org.python.pycode._pyx3.call_function(C:\Users\GZ\AppData\Local\Temp\WLSTOfflineIni364664194239939514.py)
at org.python.core.PyTableCode.call(Unknown Source)
at org.python.core.PyTableCode.call(Unknown Source)
at org.python.core.PyFunction.__call__(Unknown Source)
at org.python.pycode._pyx15.f$0(C:\Users\GZ\AppData\Local\Temp\tmp1396419069304.py:42)
at org.python.pycode._pyx15.call_function(C:\Users\GZ\AppData\Local\Temp\tmp1396419069304.py)
at org.python.core.PyTableCode.call(Unknown Source)
at org.python.core.PyCode.call(Unknown Source)
at org.python.core.Py.runCode(Unknown Source)
at org.python.util.PythonInterpreter.execfile(Unknown Source)
at weblogic.management.scripting.WLST.main(WLST.java:139)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at weblogic.WLST.main(WLST.java:29)hi user ...
on windows there are some steps in front of installation and configuration.
1) cleare the Windows Env (Path .. Programme x86 )
no Blank in Path and so on
2) insert into your local host file your server and IP Adress
3) in Windows 32 setup of WLS is JDK included so you don't have to install the jdk in front of WLS
4) verify if you are using the right installation medium (jdk 32 bit, wls 32 bit , fmw 32 bit
in your OraInventory/logs directory is a *.out file for your installation please can you put this file in the forum
is there a nodemanager up and running (if so please stop)
Jan-Peter -
Oracle Portal and Discoverer Integration
Portal Version: 9.0.2.0.1
RDBMS Versjion: 9.0.1.3
OS/Vers. Where Portal is Installed:: Suse 7 SLES
Error Number(s)::
Oracle Portal and Discoverer Integration
We're trying to integrate Discoverer with Portal unsuccessfully.
We made many things in accordance with oracle's documentation until add discoverer portlets (worksheet and list of workbooks) in a test page.
In view mode, the worksheet portlet shows the error:
"The portlet has not been defined. The publisher must define the portlet by clicking on Edit Defaults for the portlet on the edit mode of this page. Please contact the publisher of this page."
We think we have to edit properties before. Is this? Anyway edit worksheet portlet crashes between step 1 and 2. The error is: "The listener returned the following Message: 500 Internal Server Error".
We have a public conection created in EM and a discoverer application which can be viewed using plus or viewer.
Furthermore, it's not possible delete the added portlets neither the page that contain it. The error at delete is:
Error: An unexpected error occurred: User-Defined Exception (WWC-44082)
(WWC-00000)
An unexpected error has occurred in portlet instances: User-Defined Exception (WWC-
44846)
An unexpected error occurred: User-Defined Exception (WWC-43000)
The following error occurred during the call to Web provider:
oracle.portal.provider.v2.PortletNotFoundException
at oracle.portal.utils.v2.ContainerException.fillInStackTrace(Unknown Source)
at java.lang.Throwable.<init>(Throwable.java:78)
at java.lang.Exception.<init>(Exception.java:29)
at oracle.portal.utils.v2.ContainerException.<init>(Unknown Source)
at oracle.portal.provider.v2.PortletException.<init>(Unknown Source)
at oracle.portal.provider.v2.PortletNotFoundException.<init>(Unknown Source)
at oracle.disco.portlet.provider.DiscoPortletPersonalizationMgr.destroy
(DiscoPortletPersonalizationMgr.java:65)
at oracle.portal.provider.v2.DefaultPortletInstance.deregister(Unknown Source)
at oracle.webdb.provider.v2.adapter.soapV1.ProviderAdapter.deregisterPortlet
(Unknown Source)
at java.lang.reflect.Method.invoke(Native Method)
at oracle.webdb.provider.v2.utils.soap.SOAPProcessor.doMethodCall(Unknown Source)
at oracle.webdb.provider.v2.utils.soap.SOAPProcessor.processInternal(Unknown Source)
at oracle.webdb.provider.v2.utils.soap.SOAPProcessor.process(Unknown Source)
at oracle.webdb.provider.v2.adapter.SOAPServlet.doSOAPCall(Unknown Source)
at oracle.webdb.provider.v2.adapter.SOAPServlet.service(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:336)
at com.evermind.server.http.ResourceFilterChain.doFilter
(ResourceFilterChain.java:59)
at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:283)
at com.evermind.server.http.ServletRequestDispatcher.invoke
(ServletRequestDispatcher.java:523)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal
(ServletRequestDispatcher.java:269)
at com.evermind.server.http.HttpRequestHandler.processRequest
(HttpRequestHandler.java:735)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:151)
at com.evermind.util.ThreadPoolThread.run(ThreadPoolThread.java:64)
(WWC-43147)
Edit properties for portlet List of Workbook works but in view mode we have the error in the portlet area:
"Failed to refresh portlet. Please verify that the information used to create the
portlet instance or customization is still valid. Otherwise, please contact your
iAS administrator. oracle.discoiv.controller.FatalControllerException:
DiscoNetworkException - Nested exception: org.omg.CORBA.OBJECT_NOT_EXIST: minor
code: 0 completed: No null"
Any ideas?
ThanksHi there,
Have you applied any patches to 9ias since it was first installed? We had the same problem and had to apply a couple of patches to get the portlets working.
1. Apply the 9.0.2.53.16 one-off patch for Oracle 9iAS Discoverer which takes Discoverer up to 9.0.2.53.16. This patch appears to be password protected and you need to get someone at Oracle support to give you a password.
2. Apply the Discoverer Portlet Provider: 9.0.2.53.00c patch (patch no. 2595444) which gives you a new discportal.xsl file that actually works. It's this second step that solves your problem but you need to do step 1 before this. This is password protected as well.
3. As you've upgraded Disco on the server to 9.0.2.53, you'll need to upgrade Disco Admin & Desktop within your 9iDS installation using patch no. 2555265. This is because Disco 9.0.2.53 uses an upgraded EUL that Disco Admin & Desktop need to be patched to use.
This was the course of action Oracle support advised us about nine months ago. Of course they may have released a further patch to Disco that does 1 & 2 in one go, but we regularly carry out steps 1 and 2 on servers we use and we can use the Disco portlets successfully.
Hope this helps
Mark Rittman
[email protected] -
Oracle optimizer and heterogeneous services (Transparent Gateway for ODBC)
Hi everyone!
We have the following configuration:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production.
Oracle Database Gateway for ODBC 11.2.0.2.0 on the same machine as Oracle DB.
Non-Oracle DB installed on a different hardware accessed through Oracle Gateway for ODBC via dblink.
Now, we have to query the remote non-Oracle system and retrieve some data. For the sake of brevity let's suppose we have the following table in our non-Oracle DB:
create table test (
ip_address varchar(15),
start_time datetime,
end_time datetime
And we run the following SQL query against the remote table on our Oracle DB:
SELECT start_time,end_time,ip_address
FROM remote_table@db_link
WHERE
end_time >= to_date('2011-10-11 00:00:00','rrrr-mm-dd hh24:mi:ss')
OR (
end_time IS NULL AND start_time >= to_date('2011-10-11 00:00:00','rrrr-mm-dd hh24:mi:ss')
AND start_time <= to_date('2011-10-12 00:00:00','rrrr-mm-dd hh24:mi:ss')
AND ip_address = '127.0.0.1';
But, having query monitoring on the remote DB enabled, we see that the actual query on the remote site looks like this:
SELECT "START_TIME","END_TIME","IP_ADDRESS"
FROM "REMOTE_TABLE"
WHERE "IP_ADDRESS"='127.0.0.1' AND "START_TIME"<=?
All references to END_TIME column are gone from WHERE clause for whatever reason.
However, Oracle execution plan shows us the following:
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | Inst |IN-OUT|
| 0 | SELECT STATEMENT | | 1 | 27 | 200 (0)| 00:00:03 | | |
|* 1 | FILTER | | 1 | 27 | 200 (0)| 00:00:03 | | |
| 2 | REMOTE | REMOTE_TABLE | | | | | DB_LINK | R->S |
Predicate Information (identified by operation id):
1 - filter("END_TIME">=TO_DATE('2011-10-11 00:00:00','rrrr-mm-dd hh24:mi:ss') OR
"END_TIME" IS NULL AND "START_TIME">=TO_DATE('2011-10-11 00:00:00','rrrr-mm-dd hh24:mi:ss'))
Remote SQL Information (identified by operation id):
2 - SELECT "END_TIME","IP_ADDRESS","START_TIME" FROM "REMOTE_TABLE" WHERE
"IP_ADDRESS"='127.0.0.1' AND "START_TIME"<=:1 (accessing 'DB_LINK' )
This actually means that Oracle CBO decided that it will apply filter on END_TIME column after having retrieved the data from the remote site. We don't want this behaviour but have no idea how to affect execution plan in this case.
So, the question is: How can we force Oracle CBO to not change the initial query and pass it to the remote site "as is"? Is there any way we can achieve this goal?
Edited by: user12024904 on 28-Oct-2011 04:05Hi,
Our Oracle DB and Gateway are running on the following system:
HP-UX B.11.31 U ia64
The following SQL code is executed in SQLPlus:
SELECT start_time,end_time,ip_address
FROM ip_acc_complete@gr_link
WHERE
END_TIME >= to_date('2010-10-21 00:00:00','rrrr-mm-dd hh24:mi:ss')
OR (
END_TIME is null AND START_TIME >= to_date('2010-10-21 00:00:00','rrrr-mm-dd hh24:mi:ss')
AND START_TIME <= to_date('2010-10-22 00:00:00','rrrr-mm-dd hh24:mi:ss')
AND IP_ADDRESS = '127.0.0.1';
Gateway debug trace shows the following:
Oracle Corporation --- TUESDAY NOV 01 2011 14:59:15.254
Heterogeneous Agent Release
11.2.0.2.0
Oracle Corporation --- TUESDAY NOV 01 2011 14:59:15.254
Version 11.2.0.2.0
HOSGIP for "HS_FDS_TRACE_LEVEL" returned "ON"
HOSGIP for "HS_FDS_SHAREABLE_NAME" returned "/usr/local/greenwich64/lib/libodbc.so.1"
HOSGIP for "HS_OPEN_CURSORS" returned "50"
HOSGIP for "HS_FDS_FETCH_ROWS" returned "100"
HOSGIP for "HS_LONG_PIECE_TRANSFER_SIZE" returned "65536"
HOSGIP for "HS_NLS_NUMERIC_CHARACTER" returned ".,"
HOSGIP for "HS_KEEP_REMOTE_COLUMN_SIZE" returned "OFF"
HOSGIP for "HS_FDS_DELAYED_OPEN" returned "TRUE"
HOSGIP for "HS_FDS_WORKAROUNDS" returned "0"
HOSGIP for "HS_FDS_MBCS_TO_GRAPHIC" returned "FALSE"
HOSGIP for "HS_FDS_GRAPHIC_TO_MBCS" returned "FALSE"
HOSGIP for "HS_FDS_RECOVERY_ACCOUNT" returned "RECOVER"
HOSGIP for "HS_FDS_TRANSACTION_LOG" returned "HS_TRANSACTION_LOG"
HOSGIP for "HS_FDS_TIMESTAMP_MAPPING" returned "DATE"
HOSGIP for "HS_FDS_DATE_MAPPING" returned "DATE"
HOSGIP for "HS_FDS_MAP_NCHAR" returned "TRUE"
HOSGIP for "HS_FDS_RESULTSET_SUPPORT" returned "FALSE"
HOSGIP for "HS_FDS_RSET_RETURN_ROWCOUNT" returned "FALSE"
HOSGIP for "HS_FDS_PROC_IS_FUNC" returned "FALSE"
HOSGIP for "HS_FDS_REPORT_REAL_AS_DOUBLE" returned "FALSE"
using query as default value for "HS_FDS_DEFAULT_OWNER"
HOSGIP for "HS_SQL_HANDLE_STMT_REUSE" returned "FALSE"
SQL text from hgopars, id=1, len=117 ...
00: 53454C45 43542022 454E445F 54494D45 [SELECT "END_TIME]
10: 222C2249 505F4144 44524553 53222C22 [","IP_ADDRESS","]
20: 53544152 545F5449 4D452220 46524F4D [START_TIME" FROM]
30: 20224950 5F414343 5F434F4D 504C4554 [ "IP_ACC_COMPLET]
40: 45222057 48455245 20224950 5F414444 [E" WHERE "IP_ADD]
50: 52455353 223D2731 32372E30 2E302E31 [RESS"='127.0.0.1]
60: 2720414E 44202253 54415254 5F54494D [' AND "START_TIM]
70: 45223C3D 3F [E"<=?]
Deferred open until first fetch.
Performing delayed open.
The non-Oracle DB is CopperEye Retrieval Server with its own custom ODBC driver.
CopperEye query log shows that the following query is received from Oracle Gateway:
01/11/2011 14:26:31 - NEW QUERY :
SELECT "END_TIME","IP_ADDRESS","START_TIME" FROM "IP_ACC_COMPLETE" WHERE "IP_ADDRESS"='127.0.0.1' AND "START_TIME"<=?
which complies with the information in Oracle Gateway trace file.
So, it seems that it's Oracle DB decision to split the original WHERE clause into two parts, delegate one part to the remote site, retrieve the data and then apply the remaining filter locally. -
Hello all,
I installed Oracle XE on RHEL 4 Linux and I found out that database character set is AL32UTF8. Does anyone know why oracle choose this character set? Maybe because of NLS_LANG env variable? Is it possible to change it to EE8ISO8859P2? Since database is still empty I can drop it and crate new database.
Do you think it is possible to set some env variables and do new oracle xe instalation including database with iso charset?
I want to have EE8ISO8859P2 charset because of doing exp/imp from another oracle iso db to oracle xe and it is much easier to do this without charset conversion.
Any help will be appreciated.
regards,
MihaWhen you download XE, you have a choice - take the 'western european' character set download, or the 'unicode' download.
No other choices.
Join us over in the XE forum where people have discussed this and found workarounds. Info about finding that forum at Re: Oracle XE Installation failed -
Hi,
I have written an applet using Oracle Thin (classes111.zip and Oracle 7.3.4 and JDK 1.1.4).
I have my Oracle Server and my Web Server on the same machine.
Everything works fine with Netscape 4.7.
But with IE4 I have this message:
java.sql.SQLException: No suitable driver
java.lang.NullPointerException
Can anyone explain me what it means and what I have to do ?
Thanks a lot.
Ing. TOUSSET Olivier
nullCan you try registering the driver explicitly using DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()). I think that there was some issue with Microsoft's VM that doing Class.forName() doesn't register the driver automatically. But I am not 100% sure.
-
Oracle Arrays and getVendorConnection API and Class Cast Exception
I 've gone through various threads relating to the topic of Oracle Arrays and the getVendorConnecton API call to avoid the class Cast Exception.. i ve used all these but am still facing the problem...
I would appreciate it if some one could resolve the following queries :
I am using Weblogic 8.1 SP5 with oracle 8i
1. I read that the need to use the getVendorConnection API to make pl/sql proc calls with oracle arrays from the WL Server wont be required to avoid classCastException...
I tried to use the connection from the WL connection pool ..but it didnot work....I used the getVendorConnection API ..which also doesnot seem to work..
I got the Heurisitc Hazard exception...I used the Oracle 9i driver ie ojdbc14.jar ...after this the exception is not coming but still the code doesnt seem to work...
the snippet of the code is pasted below :
~~~~~~~~~~~~~~~~~~~~~~~code is : ~~~~~~~~~~~~~~~~~~~
/*below :
logicalCon is the Connection from the WL connection pool
JDBCcon is the JDBC connection. */
<div> try </div>
<div>{ </div>
<div>
<b>vendorConn</b> = ((WLConnection)logicalCon).getVendorConnection();
</div>
<div>
//Calling the procedure
</div>
<div>
//java.util.Map childMap1 = JDBCcon.getTypeMap();
</div>
<div>
java.util.Map childMap1 = <b>vendorConn</b>.getTypeMap();
</div>
<div>
childMap1.put("SST_ROUTE_ENTRY", Class.forName("svm.stport.ejb.StaticRouteEntry"));
</div>
<div>
//JDBCcon.setTypeMap(childMap1);
<b>vendorConn</b>.setTypeMap(childMap1);
</div>
<div>
// Create an oracle.sql.ARRAY object to hold the values
</div>
<div>
/*oracle.sql.ArrayDescriptor arrayDesc1 = oracle.sql.ArrayDescriptor.createDescriptor("SST_ROUTE_ENTRY_ARR", JDBCcon); */
</div>
<div>
oracle.sql.ArrayDescriptor arrayDesc1 =
oracle.sql.ArrayDescriptor.createDescriptor("SST_ROUTE_ENTRY_ARR", <b>vendorConn</b>); // here if i use the JDBCcon it works perfectly.... <u>^%^%^%</u>
</div>
<div>
code to fill in the sst route entry array....
.....arrayValues1 */
</div>
<div>
/* oracle.sql.ARRAY array1 = new oracle.sql.ARRAY(arrayDesc1, JDBCcon, arrayValues1); */
</div>
<div>
oracle.sql.ARRAY array1 = new oracle.sql.ARRAY(arrayDesc1, <b>vendorConn</b>, arrayValues1);
</div>
<div>
callStatement = logicalCon.prepareCall( "? = call procName(?, ?, ?)");
</div>
<div>
/* ..code to set the ?s ie array1 */
</div>
<div>
callStatement.execute();
</div>
<div>
}catch(Exceptio e){
</div>
<div>
}</div>
<div>
finally </div>
</div>{</div>
<div>System.out.println(" I ve come to finally"); </div>
<div>}</div>
<div>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~code snippet ends here ~~~~~~~~~~~~~~``
</div>
I have observed that the control immediately comes to the finally block after the call to the createDescriptor line above with <u>^%^%^%</u> in the comment. If i use the JDBCCon in this line...it works perfectly fine.
Any pointers to where anything is getting wrong.
I have jst set the vendorCon to null in the end of the file and not closed it. Subsequently i have closed the logicalCon. This has been mentioned in some of the thread in this forum also.
Thanks,
-jwJatinder Wadhwa wrote:
I 've gone through various threads relating to the topic of Oracle Arrays and the getVendorConnecton API call to avoid the class Cast Exception.. i ve used all these but am still facing the problem...
I would appreciate it if some one could resolve the following queries :
I am using Weblogic 8.1 SP5 with oracle 8i
1. I read that the need to use the getVendorConnection API to make pl/sql proc calls with oracle arrays from the WL Server wont be required to avoid classCastException...
I tried to use the connection from the WL connection pool ..but it didnot work....I used the getVendorConnection API ..which also doesnot seem to work..
I got the Heurisitc Hazard exception...I used the Oracle 9i driver ie ojdbc14.jar ...after this the exception is not coming but still the code doesnt seem to work...
the snippet of the code is pasted below :
~~~~~~~~~~~~~~~~~~~~~~~code is : ~~~~~~~~~~~~~~~~~~~Hi. Show me the whole exception and stacktrace if you do:
try
vendorConn = ((WLConnection)logicalCon).getVendorConnection();
java.util.Map childMap1 = vendorConn.getTypeMap();
childMap1.put("SST_ROUTE_ENTRY" Class.forName("svm.stport.ejb.StaticRouteEntry"));
vendorConn.setTypeMap(childMap1);
oracle.sql.ArrayDescriptor arrayDesc1 =
oracle.sql.ArrayDescriptor.createDescriptor("SST_ROUTE_ENTRY_ARR",
vendorConn);
oracle.sql.ARRAY array1 = new oracle.sql.ARRAY(arrayDesc1, vendorConn, arrayValues1);
callStatement = logicalCon.prepareCall( "? = call procName(? ? ?)");
callStatement.execute();
}catch(Exception e){
e.printStackTrace();
finally
try{logicalCon.close();}catch(Exception ignore){}
System.out.println(" I ve come to finally");
/*below :
logicalCon is the Connection from the WL connection pool
JDBCcon is the JDBC connection. */
<div> try </div>
<div>{ </div>
<div>
<b>vendorConn</b> = ((WLConnection)logicalCon).getVendorConnection();
</div>
<div>
//Calling the procedure
</div>
<div>
//java.util.Map childMap1 = JDBCcon.getTypeMap();
</div>
<div>
java.util.Map childMap1 = <b>vendorConn</b>.getTypeMap();
</div>
<div>
childMap1.put("SST_ROUTE_ENTRY", Class.forName("svm.stport.ejb.StaticRouteEntry"));
</div>
<div>
//JDBCcon.setTypeMap(childMap1);
<b>vendorConn</b>.setTypeMap(childMap1);
</div>
<div>
// Create an oracle.sql.ARRAY object to hold the values
</div>
<div>
/*oracle.sql.ArrayDescriptor arrayDesc1 = oracle.sql.ArrayDescriptor.createDescriptor("SST_ROUTE_ENTRY_ARR", JDBCcon); */
</div>
<div>
oracle.sql.ArrayDescriptor arrayDesc1 =
oracle.sql.ArrayDescriptor.createDescriptor("SST_ROUTE_ENTRY_ARR", <b>vendorConn</b>); // here if i use the JDBCcon it works perfectly.... <u>^%^%^%</u>
</div>
<div>
code to fill in the sst route entry array....
.....arrayValues1 */
</div>
<div>
/* oracle.sql.ARRAY array1 = new oracle.sql.ARRAY(arrayDesc1, JDBCcon, arrayValues1); */
</div>
<div>
oracle.sql.ARRAY array1 = new oracle.sql.ARRAY(arrayDesc1, <b>vendorConn</b>, arrayValues1);
</div>
<div>
callStatement = logicalCon.prepareCall( "? = call procName(?, ?, ?)");
</div>
<div>
/* ..code to set the ?s ie array1 */
</div>
<div>
callStatement.execute();
</div>
<div>
}catch(Exceptio e){
</div>
<div>
}</div>
<div>
finally </div>
</div>{</div>
<div>System.out.println(" I ve come to finally"); </div>
<div>}</div>
<div>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~code snippet ends here ~~~~~~~~~~~~~~``
</div>
I have observed that the control immediately comes to the finally block after the call to the createDescriptor line above with <u>^%^%^%</u> in the comment. If i use the JDBCCon in this line...it works perfectly fine.
Any pointers to where anything is getting wrong.
I have jst set the vendorCon to null in the end of the file and not closed it. Subsequently i have closed the logicalCon. This has been mentioned in some of the thread in this forum also.
Thanks,
-jw -
I have written a win32 client application with Visual C++ for accessing an oracle 8.0.5 server on a linux platform.I have used an ODBC connection (MFC classes CDatabase e CRecordset). In application I have used a recordset on a view for updating the view's base table. On a view I have defined an instead of update trigger. All works fine. Now I must migrating it on an oracle 8.1.7 oracle server (or on win2k or linux). End now start the problem. On 8i server, after executing the query on the view, the function SQLGetStmtOption with SQL_CONCURRENCY param return SQL_CONCUR_READ_ONLY, making the recordset read only and i don't modify the view. What's the differences between Oracle 8 and Oracle 8i ODBC driver? Why with Oracle 8i I don't modify a view?
nullExecuted query is
SELECT * FROM VIEW_NAME WHERE ID = value
where ID is a primary key of the only key preserving table of the view. -
Hi
I am using Oracle 8i and Oas 4.0.7. I wanted to load gif/jpeg files into Oracle Database and then I wanted to display it in the HTML page ? Is it possible to do like this in Orcale ? If anybody tried this, please advice me
nullHi,
This may reach you late. but if you havent yet solved your problem...
Oracle provides a utility called Oracle Intermedia which is downloadable from the Oracle site.
This utility can be used with Oracle 8i and comes with a clipboard utility. You will be able to store and retrieve images, audio and video from the database using this.
Ciao,
null -
Oracle ifs and BEA weblogic
We have one application server with weblogic and and ifs 1.0.9 , and one db server with Oracle 8.1.7.
with the following configuration:
Web server
appl server with weblogic 6.0 and ifs 1.1.9
Oracle 8i Enterprise with interMedia text
We need to use the iFS API call for our application.
As I know, weblogic 6.0 support JDK1.3 but ifs 1.1.9 supports up to JDK1.2.
Is this configuration possible?
Any conflict if two version JDK co-exist inside same machine?
Any suggestion?
If I separate the appl. server into two machines, that is,
one server installed with weblogic, the other one installed with ifs.
How could I make use the ifs API call from appl. server?
Is there any configuration guides for this setting?
Thanks a lot.
null<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by Luis:
The iFS API is 100% pure Java. You can use it from any other Java application, be it JSP, EJB, or a standalone application.
So it really comes down to the CLASSPATH. The iFS API is split among a set of .jar files, and some of the configuration information is stored in .properties files that are outside of these .jar files. All of this stuff needs to be in the CLASSPATH of whatever JVM is calling the iFS API.
The iFS API uses the Oracle JDBC driver to communicate with the Oracle database. This is another requirement. You can't use another JDBC driver; you have to use ours.
So again, it's all about configuration.<HR></BLOCKQUOTE>
Would you mind to share more detail on configurating weblogic to integrate the iFS API?
null -
Oracle Spatial and Oracle Forms
Hi,
Does anyone have experience with Oracle Spatial and Oracle Forms?
I have generated a form, which is based on a view. The view uses the mdsys.sdo_relate operator. Somehow I am unable to get the form to perform (to get one record it takes over 20 minutes). While useing sql-navigator to process the same statement it seems no problem. The query that also uses the view, is then processed in 10 seconds.
I also noticed that when text-functions like ' lower' of ' upper' are used to query the view, the query is processed within 15 seconds. If I don't use ' lower' or ' upper' it takes a long time (> 20 minutes) to process the query. Is it possible that this causes the bad performance of the form?
On metalink I have found that forms and spatial do not cooperate because of the pl/sql version that
forms6 uses. There is no solution presented, does anyone know of a work around?
My configuration is:
Oracle 8.1.7 on WIN2K @ PIII-800Mhz 256 Mb memory.
Formsbuilder 6
If requested I can post the queries that I have made.
With regards,
Gerjan Walrecht
[email protected]
nullHello Priya,
Look into the following.
1. Book - Pro Oracle Spatial for Oracle Database 11g by r. Kothuri, A. Godfrind, E. Beinat. This book provides a nice introduction on Oracle Spatial concepts and have examples.
2. Look at the Oracle Spatial & Graph User Guide
2. Book - Applying and Extending Oracle Spatial by S. Greener and S. Ravada. This book provides hands on information for advanced oracle spatial application developers. Practical guide on hands-on examples, Data models and develop cross-vendor database solutions.
3. This oracle spatial forum, once you understand these concepts.
In the future consider Certification on Oracle Spatial 11g Certified Implementation Specialist.
Best
Navaneet -
ORACLE SERVER AND UNIX TP MONITOR-2
제품 : ORACLE SERVER
작성날짜 : 1995-01-24
Subject: Oracle Server and UNIX Transaction Processing Monitors-2
Page(3/4)
This file contains commonly asked questions about Oracle7 Server and UNIX
Transaction Processing Monitors (TPMs). The topics covered in this article are
o Oracle Parallel Server and TP Monitors
o Oracle and DCE-based TP Monitors
o Other commonly asked questions
The questions answered in part 3 provide additional detail to the information
provided in part 1.
Oracle Parallel Server and TP Monitors
======================================
How does Oracle Parallel Server (OPS) work with TP Monitors?
If you are using Oracle-managed transactions, there are no special
considerations. But if you are using TPM-managed transactions, and
thus need to use the XA interface, then Oracle requires release 7.1.3
or later and a special version of the Distributed Lock Manager, called
the session-based lock manager. This version of the DLM is not yet
available for all platforms. To understand this restriction, let's take
a look at one of the technical details of XA.
The XA specification requires that the Resource Manager be able to
move a transaction from one process to another, and even to be
able to commit in a separate process. In Oracle, transactions are
attached to sessions, so that means that we also have to be able to
move sessions. Therefore, the session/transaction can't have any state
which is tied to a particular process. The first generation distributed
lock managers were all built to use the process id as the lock owner,
which doesn't work for locks which need to move with the transaction.
Oracle and DCE-based TP Monitors
================================
How does Oracle interface to the Encina TP monitor? To CICS/6000? I've
heard that they require OSF DCE facilities in order to run?
Oracle interfaces to Encina and CICS/6000 just as it does to any other
TP Monitor. The TP Monitor issues XA commands to control transactions, and
Oracle executes the commands. Encina and CICS/6000 do use DCE features for
their own operation. However, this use is transparent to the Oracle Server.
What DCE facilities can Oracle products take advantage of when working with
a DCE-based TP Monitor?
The two most commonly mentioned DCE features which might be useful
to Oracle users are multi-threading and security. We look at these in
the subsequent questions in this section.
Encina documentation suggests that a Resource Manager such as Oracle can
be either single-threaded or multi-threaded? Which way is Oracle XA
implemented?
The Oracle XA implementation is single-threaded, as is any Oracle client.
Within a single process, at most one thread can access Oracle at a time.
Does that mean that only a single Encina application can access an instance
of Oracle transactionally at any given moment?
No. Oracle XA is only single-threaded within a single application server
process. Multiple applications can access Oracle simultaneously using XA
by using different application processes. Encina allows
(1) serial reuse of a single server by different clients. There are
two options for this. The server can use long term reservation
but be defined to be in shared or concurrent access mode, which
allows the server to be used by another client as soon as an RPC
completes. Alternatively, the server can use default reservation
and exclusive mode, which allows the server to be used by another
client as soon as the current transaction ends.
(2) concurrent execution by multiple servers, even if they are accessing
the same Oracle database. These may be executing the same or different
procedures.
These two features should let you get as much concurrency as you need.
Why isn't the Oracle XA library multi-threaded?
The XA specification specifically states that its use of the phrase
"thread of control" means a process. If an RM were to multi-thread its
XA, it would be in violation of the specification. This restriction
was put place in because at the time the specification was written,
there were numerous thread packages: if the TM used one, the application
another, and perhaps the RM yet a third, there's no way it could work.
As threads standards settle down, the later versions of XA will probably
relax this restriction.
Will Oracle change if the XA specification changes?
Very likely. The exact time frame will of course depend on the priority of
all work items at that time.
Does Oracle use DCE security via the TP Monitors?
The integrity of the connection between a DCE TP Monitor client and DCE
TP Monitor server is protected by the DCE security functionality.
Theoretically, the TP Monitor could make the DCE-protected client security
information available to Oracle. Unfortunately, there's no standard way
for a TP Monitor to pass security information information to a Resource
Manager such as Oracle. Oracle is leading an effort to extend the X/Open
model to allow use of the security information provided by the Monitor.
In the meantime, the basic DCE security features such as encryption are
useful within TP Monitors.
Effective use of DCE security would normally also mean that the security of
the TP Monitor client be passed through the TP Monitor, through the Oracle
client (application server), to the Oracle Server, and possibly on
to other Oracle Servers through database links. The ability to transfer
security information to other processes, called delegation, is missing
in DCE version 1.0. DCE version 1.1, expected to emerge in late 1994,
has some delegation features. Oracle is examining these features to see
how they might be used.
Are there any special considerations for CICS/6000?
There are two:
(1) It is inefficient to run without XA. CICS/6000 is designed to
use XA. It uses XA so that the CICS server can log on to Oracle
when it starts, after which it makes that Oracle connection available
to any transaction it executes. If you don't use XA, the CICS server
does not itself log on to Oracle so each transaction has to log on
and log off - a very expensive mode of operation. Also, it is very
un-cics-like in that the application does the log{on,off} and also
commits - in a mainframe CICS database program CICS would implicitly
do these operations. Oracle does not recommend this mode because of the
performance penalty.
(2) CICS servers are generic and dynamically load application modules.
In order for these modules to access the Oracle connection made by
CICS, the applications must be built with a shared object version of
the Oracle libraries. This is an installation option on platforms which
support CICS/6000 and other products using its architecture such as
CICS 9000.
Other commonly asked questions
==============================
What other Resource Managers can be included in an Oracle XA transaction?
Several other relational database vendors have an XA implementation
available or in progress. There is an XA C-ISAM product from
Gresham Telecomputing. There are also Resource Managers contained
within some of the TP Monitors which can be coordinated in the same
transaction. For example, CICS/6000 has VSAM files and other data
stores, Encina has its RQS queuing system, and Tuxedo has its /Q queuing
system.
What is Recoverable Queuing Service (RQS) and how does it interoperate with
Oracle7 and Encina? What about /Q?
Recoverable Queuing Service is a feature provided by Encina which allows
transactional, distributed queuing (enqueue/dequeue). Tuxedo has a similar
product called /Q. Because these products are themselves coordinated by the
TM component of the TP Monitor, their queue operations are atomically
coordinated with with operations on XA Resource Managers such as Oracle7
Server. That is, they can atomically put something on one of their queues
and commit an Oracle transaction, then at some later time dequeue an
entry atomically with doing some other Oracle transaction. The queue
system guarantees that the message will not be lost or transmitted twice.
Can I mix TP Monitor applications with standard Oracle7 Server applications?
Yes, you can have existing Oracle applications connected to the database
with alongside TPM applications against the same database. The TPM does
not manage the whole database, just those transactions which are started
by the TPM. The Oracle Server will properly handle concurrency control
between the transactions managed by itself and those managed by the TPM.
Is Oracle planning to change its tools to be more suitable for TP Monitors?
With Oracle Procedure Builder 1.5, to be available with CDE2,
Oracle will provide a foreign function interface that allows you to
dynamically set up PL/SQL calls that access C functions. In other
words, you can access C routines in Windows DLLs from within your
PL/SQL procedures. This will allow PL/SQL under Windows easy access to
TP Monitor APIs.
Does Oracle7 Server itself use XA-compliant TPMs as the interface to
foreign RMs?
No, for this purpose Oracle Server uses the SQL*Connect products or the new
Transparent and Procedural Gateway products.
Does Oracle7 Server use XA to coordinate Oracle7-only distributed
transactions?
No, it uses an internal mechanism.
Can database links be used with XA?
If an Oracle7 database is running under XA, it can access other Oracle7
databases through database links, with some restrictions. First, the
access to the other database must use SQL*Net V2 and be running MTS.
Second, it must currently be to another Oracle7 database. Assuming those
restrictions, the Oracle 7 database can do distributed update to another
Oracle 7 database by using a database link, whether it is started by an
Oracle application or a TP Monitor application. The TPM will see Oracle
as only a single RM, but Oracle7 will propagate all the transaction
commands to the other database, including the two-phase commit. If
the transaction is started by a TP Monitor application and is using XA,
it can also update non-Oracle resources managed by the TPM. If it
is started from an Oracle application, it can only include resources
managed by Oracle.
Here's a sample configuration:
| TPM | | TPM |
| client | | client |
| |
| |
| TPM |
| |
| |
| Oracle | Forms, Forms, | Oracle | | non-XA | | XA |
| client | Plus, Plus, | client | | TPM | | TPM |
--------- Pro, Pro, --------- | server | | server |
| Financials, Financials, | |(note 1)| ----------
| etc. etc. | ---------- |
| | | |
| SQL | SQL | SQL | XA
| commit | commit | commit | commit
| | | |
| Oracle | | Oracle | | Oracle | | Oracle |
| server | | server | | server | | server |
| | | |
| | | |
| | | |
| Database 1 | | Database 2 |
| | | |
| A | A
| | dblink to database 1 | |
| ------------------------------------ |
| |
dblink to database 2
Note 1: Oracle will work having both XA and non-XA servers but some TPMs
may have restrictions on this.
Are multiple direct connections possible from a Pro* program?
Using XA, you can not only specify multiple direct connections to Oracle7
databases, you can also update them both in the SAME transaction. The
way to do this is to use a precompiler feature called a named database.
When you use a named database, you qualify the SQL statement with the
database name. For example, you write EXEC SQL AT dbname UPDATE emp ....
We have a complementary feature in the xa open string to let the user
associate the name with a particular RM instance, called the DB clause.
You will also want to use the SqlNet clause in the open string so you
can give the two different SIDs. This clause does not require the use of
the SQL*Net product, it is just a naming convention. For more information,
see Oracle7 Server for UNIX Administrator's Reference Guide.
Some TP Monitors may not support having multiple Resource Mangers in the
same server; check with the TPM vendor.
Is there any collateral available for XA or TP Monitors?
Oracle At Work 52684.0692
Oracle7 Server for UNIX Administrator's #A10324-1
Reference Guide
Guide to Oracle's Products and Services #A10560
Oracle7 Server and CICS/6000 #A14200
Where can I get more information on the DTP model?
X/Open's address is
X/Open company Ltd (Publications)
P O Box 109
Penn
High Wycombe
Bucks HP10 8NP
Tel: +44 (0)494 813844
Fax: +44 (0)494 814989
Request
G307 Distributed Transaction Processing: Reference Model Version 2
X/Open Guide G307 ISBN 1-859120-19-9 28cm.44p.pbk.220g.11/93
Page(4/4)
This file contains commonly asked questions about Oracle Server and UNIX
Transaction Processing Monitors (TPMs). The topics covered in this article are
o Performance with Oracle Server and TP monitors
o Performance using Oracle's XA Library
The questions answered in part 4 provide additional detail to the information
provided in part 1.
Performance with Oracle Server and TP Monitors
==============================================
I have heard that Transaction Processing Monitors (TPMs) will increase
Oracle Server performance. Is this true?
Several hardware and TPM vendors have made the claim that TPMs
will increase RDBMS performance. This claim is based on TPC-A
benchmarks. The key point to understand about TPC-A is that it
requires, for every transaction-per-second, ten times that many
users to be connected. For example, to get 600 TPS, you need 6000
users. The next question will answer in more detail how the the
three-tier architecture addresses this requirement, but first let's
look more generally at what TP Monitors can and can't do to improve
performance.
TP Monitors can provide better performance:
(1) When there are more than several hundred users connected.
This is because of the TP Monitor's role in the three-tier
architecture, described in the next question. In this
architecture, terminal handling is offloaded to one or more
separate machines, freeing up those cycles to do database work.
Note that this does NOT mean that Oracle itself runs faster,
just that we've given it more CPU cycles to use.
(2) When, because of the high potential concurrency of requests,
significant resource contention exists. Use of a TP Monitor can
limit the degree of concurrency and thus reduce contention.
TP Monitors can not provide better performance:
(1) For existing applications. The applications must be designed
to fit the TP Monitor architecture.
(2) For applications which are highly interactive in their use of
the database. These applications put many messages
through the transport system, and the TP Monitor is not as
efficient as SQL*Net for point-to-point communication.
(3) For CPU intensive single-query decision support. When executing
a single large command, Oracle query facilities work efficiently,
especially with the use of Oracle Parallel Query, available in 7.1.
How does the three-tier solution help TPC-A, or other situations with
thousands of on-line users?
The TPC-A test calls for a large number of users to produce a given
result. In the high-end results we produced in June, 1992, for example,
6150 terminals were simulated to produce 618 TPC-A transactions.
Thus, terminal concentration accounts for a large portion of the total
processing time used.
First, let's look at how the Multi Threaded Server would work for
this benchmark. In this case, there are many client processes,
but only a few server processes, which handle client requests on a
first-come first serve basis. When they are done with a request,
they take another client's request.
ORACLE7 CLIENT/SERVER ARCHITECTURE WITH MULTI THREADED SERVER
| Client | | Server |
| __________ |______________|_____ _____________ _____________ |
| | Client | | SQL*Net | |_|Dispatcher | | | |
| | Process| | | ____| Process |___| | |
| |________| | | | __|___________| | | |
|____________| | | | | | | | |
| | | | | | Oracle7 | |
______________ | | | __|__|____ | Server | |
| Client | | | | __|_|_____ | | | |
| __________ | | | | | Shared | |____| | |
| | Client | | SQL*Net | | | | Server |_|____| | |
| | Process|_|______________|__| | | Process|_| | | |
| |________| | | | |________| |___________| |
|____________| | | |
| | |
______________ | | |
| Client | | | |
| __________ | | | |
| | Client | | SQL*Net | | |
| | Process|_|______________|____| |
| |________| | | |
|____________| | |
|_______________________________________|
Client processes = N Dispatcher processes >= 1
Shared server processes >= 1
If there are 500 clients in this environment, there will be one or more
dispatcher processes, dynamically tunable, and one or more shared
server processes, dynamically tunable, on the server. The reduction
in the total number of processes handled by the server system
results in more processing time available for RDBMS activity. Thus
higher RDBMS transaction throughput can be obtained on the
server system.
But the problem for the TPC-A, and for certain large customer
configurations, is not the only ability of the Oracle Server to
process transactions, but also the ability of the operating
system to handle huge numbers of incoming connections.
There is one incoming connection for each client. Most UNIX
operating systems have a limit on how many such connections they can
handle. Even if a particular operating system allows a large number of
connections, each takes some amount of overhead to manage.
In order to service all 6150 terminals, we selected a 3-tier hardware
environment where the middle tier, using a TPM, acted as a terminal
concentrator. The high-end TPC-A architecture looked like the following.
The Application Servers, which contain the Pro*C statements used to
perform the transaction also run on the terminal concentrator machine
in order to offload as much work from the database serve as possible.
They send the compiled SQL over SQL*Net to the Oracle7 Server processes.
ORACLE7 TPS-A CLIENT/SERVER ARCHITECTURE
| Client | | Terminal | | Server |
| ________ | | Concentrator | | |
| | Client | |TPM | | | |
| | Process|_|_____|__ _____ | | |
| |________| |Comm | | | | | | |
|____________| | | | | | | |
| |__| | | | |
____________ | | TPM | | | |
| Client | | ___| | _______ | | ________ _______ |
| ________ | | | | |_| |__|_______|__| Oracle | | | |
| | Client | |TPM | | | | |Appl. | |SQL*Net| | Server |__| | |
| | Process|_|_____|_| |_____| |Server | | | | Process| | | |
| |________| |Comm | |_______| | | |________| | | |
|____________| | | | | | |
|_______________________| | | | |
| | | |
____________ _______________________ | |Oracle7| |
| Client | | Terminal | | |Server | |
| ________ | | Concentrator | | | | |
| | Client | |TPM | | | | | |
| | Process|_|_____|__ _____ | | __________ | | |
| |________| |Comm | | | | _______ |SQL*Net| | Oracle | | | |
|____________| | | | |_| |__|_______|__| Server |__| | |
| |__| | |Appl. | | | | Process| | | |
____________ | | TPM | |Server | | | |________| |_______| |
| Client | | ___| | |_______| | | |
| ________ | | | | | | | |
| | Client | |TPM | | | | | | |
| | Process|_|_____|_| |_____| | | |
| |________| |Comm | | | |
|____________| | | | |
|_______________________| |________________________|
Clients = 6150 Terminal concentrators = 17
TP Monitor instances = 17
Application server processes Oracle Server processes
= 17*8 = 17*8
The TPM is the software component of the terminal concentrator. In this role
it offloads terminal handling from the the machine running Oracle Server.
Since more than one terminal concentrator can be configured, whereas the
database in this case had to run on a single machine, concentrator machines
can be added until the performance of the back-end machine was optimized.
This three-tier solution resulted in the outstanding transaction throughput
announced with Oracle7 Server. Even with Oracle Parallel Server, it may pay
to offload the terminal handling so that the cluster can be exclusively used
for database operations.
Can you summarize the performance discussion for me?
Depending on the number of users required, different architectures may be
used in a client/server environment to maximize performance:
1) For a small number of users, the traditional Oracle two-task
architecture can be used. In this case, there is a one-to-one
correspondence between client processes and server processes. It's
simple, straightforward, and efficient.
2) For a large number of users, Multi Threaded Server might be a better
approach. Although some tuning may be required, Multi Threaded Server
can handle a relatively large number of users for each machine size
compared to the traditional Oracle approach. Using this approach,
customers will be able to handle many hundreds of users on many
platforms. Furthermore, current Oracle applications can move to this
environment without change.
3) For a very large number of users, where transactions are simple and
terminal input concentration is the overriding performance issue, a
3-tier architecture incorporating a TPM may be useful. In this case,
terminal concentration is handled by the TPM in the middle tier. As
you might expect, it is a more complex environment requiring more
system management. For existing Oracle customers, significant Oracle
application modifications will be required.
Oracle provides all of these choices.
Performance using Oracle's XA Library
=====================================
Are there any performance implications to using the XA library (in other
words, to using TPM-managed transactions)?
(1) The XA library imposes some performance penalty. You should use
TPM-managed transactions only if you actually need them. Even if you
are getting the one-phase commit optimization, the code path is
longer because we need to map back and forth between external
formats and internal ones. Also, prior to 7.1, XA requires you
to release all cursors at the end of a transaction, which results
in extra parsing. Even with shared cursors, there is time spent
looking up the one you need and re-validating it. This has been
improved for 7.1.
(2) If you need to use two-phase commit, this will incur additional cost
since extra I/Os are required. If you do need 2PC, you need to account
for that when sizing the application.
(3) Although some TPMs allow parallel execution of services (such as Tuxedo's
"tpacall"), this will not normally enhance performance unless different
resource managers are being used. In fact, Oracle Server must serialize
accesses to the same transaction by the same Oracle instance, and the
block/resume code will in fact degrade performance in that case compared
to running the services sequentially.hello,
the role is the same on all plattforms. the reports server takes requests for running reports, spawns an engine that executes the request. in addition to that, the server also provides scheduling services and security features for the reports environment.
regards,
the oracle reports team -
Problem running SQL PLUS in Oracle 8i and 9i on Windows XP
I've tried installing both Oracle 8.17 Personal Edition and also 9i in Windows XP Professional (each on a different occassion). I have run into the same problem each time. The installation itself goes fine in both cases, but when I run SQL PLUS, the Log On screen appears for 1-2 seconds then whole thing just closes automatically, so I can't ever access that application which is the only thing I need to work with. Any ideas on what's going wrong? Thanks.
Patrick,
Well a few things. Did you try TNSPING to see if the listener is up? If it's ok, can you connect with FREE toad? Download Oracle OEM and install that (the SQL net and sql plus portions). If you can't get tnsping to work, sqlplus isn't going too either. I don't know why the sqplus is actually shutting down, but I'm guessing the TNS NAMES entry isnt there (in the tnsnames.ora file). If the tnsnames entry is there then tnsping should work. Get tnsping to work first.
Tyler.
Maybe you are looking for
-
Oracle instance crashing when enabling use_indirect_data_buffers=true
I have a Windows 2003 EE server (32bit) with 16GB of ram hosting a 10.2.0.2 Oracle server which is used to support a commercial software package (arcsight). I'm trying to get the Oracle backend to leverage the available system memory. I've read 50-60
-
Client Socket Problem: retrieving data from my Simple http Server...
here's the main part of the "sending" of data from my server class: write(b.getBytes()); outtStream.write(version.getBytes()); outStream.write(replyCode.getBytes()); here the server sends the data back to the client...i've tested this on a webbrowser
-
After F4 selection ,where can i filter the product result table
I have created F4 help for product search in Web U for extra field Component:PRD01QR and view:Search Help under context node :SEARCH.. 1)After selecting the value from f4,From where can i get the selected value inside the program 2)How can i use thi
-
How can I install QT without dialogs
Tell me please, how can I install QT player 7 without dialogs. In QT6 use QuickTimeInstaller.ini (no_dialogs=true) Thanks for your help Windows XP Pro
-
Where is "Saved to drive"?
Ok, this is my first apple product and I have a stupid question. I attempted to download and attachment which was in "wpd" format. It said it was "saved to device". What does that mean and how to I find it?? Thanks in advance.