Does Ellison deserve to be No. 1?

Know who was just ranked No. 1 on Forbes’ list of top-paid CEOs in technology companies in 2007, with a one-year net compensation of almost $193 million?

Here’s a hint: it’s not Apple CEO Steve Jobs, who was knocked down to No. 11 after holding the top spot in 2006.

So, who took Jobs’ place? That would be Oracle CEO Larry Ellison, who also ranked No. 1 on Forbes’ list of overall best-paid CEOs (a list on which Jobs ranked No. 120).

The rankings were based on “the overall compensation for the past year for executives, factoring in salary, cash bonuses, vested stock grants, stock gains and exercised stock options.” Nabeel Gareeb of MEMC Electronic Materials and John Chambers of Cisco Systems rounded out the top three of tech CEOs.

It’s interesting to take a look at what the blogosphere has been saying about Ellison’s “victory.” Silicon Valley reporter Sarah Lacy says that “he may not deserve how much he’s making, but he deserves to be one of the most highly paid CEOs in the Valley.”

She goes on to list Ellison’s accomplishments, including that he both “gets where technology is going” and “gets where technology business is going.”

And to all the Ellison loathers out there, Lacy (who seems to question why she isn’t one herself) had this to say: “But shareholders are not electing him president or best friend. They’re paying him to be a good CEO, and he may be one of the only ones worth what he’s being paid.”

CNET News.com blogger Charlie Cooper has a different take on things. He says that a CEO’s success should be measured by their company’s stock performance, and given Oracle’s stock performance over the last 10 years, Ellison is not worth $193 million (even though many readers leave comments criticizing the data he presents).

What do you think is the best way to measure the worth of a tech CEO? Does Ellison (or anyone, for that matter) deserve to make $193 million in a year? Or, do you think such rankings don’t even matter at all?

drop all objects

do not try this as sys, this script is destructive with no confirmation

One Good Year …

Advait | May 14, 2008 06:20 -0600

First of all, I would like to thank all the visitors of this blog for there support and co-operation extended and making this blog a success !!! THANKS A TON !!!

I started this blog exactly an year a go… with an intention to keep notes of the things that I do, so that some time down the line, this might help.

I never thought it will grow this big and will serve so many people around globe…

During this year, I have learned many new things, and posted many critical and general things about Oracle technology. I never limited the information to just Oracle Database, but explored other technologies of Oracle as well. I tried to provide uncommon things which one may not be able to see on any other sites. I also tried to consolidate the things which are present at different places (giving the references) so that a visitor should get everything he/she wanted at one place.

Most of the steps and procedure mentioned in my post are executed by me and posted only after a successful try. Therefore all visitors can definitely trust the reliability of any post on this site.

Last thing, I would like to present the statistics for this blog. In 1 year, I posted 72 Posts, 18 Pages distributed among 17 categories.

Below graph shows the month wise status for the year.

Total number of hits in 1 year is close to 45000 ( 44,820 Exact)

Thanks all again for the support and I look forward for more knowledge sharing and growth in the upcoming years. I will be posting more and more information about Oracle technology. Please let me know if you have any feedback for me.

THANKS !!

Bigfile Tablespaces

Bigfile Tablespaces may become a standard implementation on databases using high end storage and Oracle Automatic Storage Management.

In order to avoid potential performance issues Bigfile Tablespaces must being built on top of a file system that can grow up dynamically and that support file striping, both characteristics are native to ASM.

<meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"><title></title><meta name="GENERATOR" content="OpenOffice.org 2.3 (Linux)">This feature not only address the need of very large databases enabling datafile sizes of up to 4G blocks per tablespace of storage, the maximum database size using Bigfile tablespaces is 8 exabytes whit 32K blocksize.

Combined with Oracle Managed Files (OMF), Bigfile tablespaces makes datafile management completely transparent to the DBA, thus greatly simplifying small - medium and very large databases storage management.

The DBA will need to be aware and only check that enough free space is always available at the level of ASM DiskGroup, to support the natural growth pace of its applications.

Bigfile tablespaces can be implemented at database creation.

Using DBCA, you will need to edit the definition of each tablespace and check the 'use Bigfile' checkbox.

To add a Bigfile tablespace using OMF enter this command:

SQL> create bigfile tablespace dev;

Tablespace created.

SQL>  select TABLESPACE_NAME,BLOCK_SIZE,BIGFILE,SEGMENT_SPACE_MANAGEMENT from dba_tablespaces;
TABLESPACE_NAME                BLOCK_SIZE BIG SEGMEN
------------------------------ ---------- --- ------
SYSTEM                              16384 YES MANUAL
SYSAUX                              16384 YES AUTO
UNDOTBS1                            16384 YES MANUAL
TEMP                                16384 YES MANUAL
USERS                               16384 YES AUTO
DEV                                 16384 YES AUTO

6 rows selected.

SQL> select bytes,file_name from dba_data_files where tablespace_name='DEV'
/
     BYTES 	FILE_NAME
---------- --------------------------------------------------
104857600 +DATADG/redpanda/datafile/dev.276.654704777






JAX-WS RI 2.1.4 released

Gerard Davison | May 14, 2008 05:20 -0600

JAX-WS RI progresses at a pace. Has a the "simplified" bottom-up deployment model that you have been able to enjoy in OC4J for a while.

They also have a nice example of using the sun-jaxws.xml file to speficy dual bindings for the same class file:

<endpoints xmlns='http://java.sun.com/xml/ns/jax-ws/ri/runtime' version='2.0'>
    <endpoint
        name='soap'
        implementation='dual_binding.server.AddNumbersImpl'
        port='{http://server.dual_binding/}soap'
        url-pattern='/soap'/>
    <endpoint
        name='rest'
        implementation='dual_binding.server.AddNumbersImpl'
        port='{http://server.dual_binding/}rest'
        binding="http://jax-ws.dev.java.net/rest"
        url-pattern='/rest'/>
</endpoints>

It is nice to have the standard evolve so quickly.

KeepResident alternative

Gerard Davison | May 14, 2008 04:50 -0600

I stopped using windows some time ago as developement is so much faster on both Linux and OS X so it has been a long time since I have looked at keepResident. An alternative is to the use "sun.awt.keepWorkingSetOnMinimize" system property and set it to true. If you are starting JDeveloper this will look like:

jdev -J-Dsun.awt.keepWorkingSetOnMinimize=true

This will prevent JDeveloper from being swapped out when minimized; but it wont help with the other memeory issues. For that you need anything else bug Windows as you developer platform.

11g New Features - Tablespace Encryption

You might have heard about Transparent Data Encryption or TDE in 10g; In Oracle 11g, it has been taken to a next level with "tablespace encryption". So TDE which started at column level is available at tablespace level.

How does it help?
Now instead of encrypting the columns one-by-one in a table or for a set of tables, you can simply put all tables which need to be encrypted in a single tablespace and encrypt it.

How to do it?
- Create and open the wallet
- Create tablespace with encryption property

CREATE TABLESPACE encrypt_tbsp
DATAFILE '/
oradata/encrypt_tbsp01.dbf'
SIZE 100M

ENCRYPTION

DEFAULT STORAGE(ENCRYPT);


- Create tables in the encrypted tablespace

How to find if tablespace is encrypted or not?
- A new column "ENCRYPTED" has been added to DBA_TABLESPACES which will indicate if the tablespace is encrypted or not.
- Query a new dynamic performance view V$ENCRYPTED_TABLESPACES for encrypted tablespaces.

Do I need to do anything special to access data from a encrypted tablespace?
Not really, you continue to access data as usual BUT the wallet must be open. No modification whatsoever is required for the code/SQL to access data from encrypted tablespace.

What is supported and not supported with encrypted tablespaces?
Supported
- Move table back and forth between encrypted tablespace and non-encrypted tablespace
- Datapump is supported to export/import encrypted content/tablespaces

- Transportable tablespace is supported using datapump

Not Supported
- Tablespace encryption cannot be used for SYSTEM, SYSAUX, UNDO and TEMP tablespaces
- Existing tablespace cannot be encrypted

- Traditional export/import utilities for encrypted content


Though I have not been able to create an encrypted tablespace but still wanted to share this information. I will try to post my learnings from the exercise later. Hope this is useful. NJoy! encrypting and do let me know if I have missed out any key messaging herein.

References:- Oracle® Database Advanced Security Administrator's Guide 11g Release 1 (11.1) Part Number B28530-02

Using an authorization scheme for displaying a friendly “page under construction” message

Byte64 | May 14, 2008 03:40 -0600
Always check out the original article at http://www.oraclequirks.com for latest comments, fixes and updates.

In certain cases it can be useful to prevent users from entering a page while it is being updated or upgraded.
If you are not enthusiastic about the idea of delivering a generic page not found error page then read on.

Yesterday i had to upgrade a single page of a public application:

New Address

Stellan | May 14, 2008 03:10 -0600
Moved this blog to a new address. The new address is http://selectedthoughts.com, the old link should still continue to work.

uCertify…

Bas Klaassen | May 14, 2008 02:40 -0600
After writing a review for the Prepkit 10g OCP, uCertify posted some info about me on their own blog. http://www.ucertify.com/blog/bas-appraises-ucertifys-ocp-prepkit.html

Also they told me that anybody reading my blog can get a discount when buying any prepkit from uCertify. The discount will be 10%, all you have to do is use the following code "BASK10".
So, check it out....

Vote for APEX, somebody gets worried

Dimitri Gielis | May 14, 2008 02:20 -0600
OracleNerd, aka Chet Justice, wrote a blogpost that his poll about "Have you used Oracle Application Express" doesn't have that many votes for APEX.

I believe he's getting a bit worried, so I decided to call the tight APEX community to vote for APEX on his survey.

Maybe the APEX users don't read his blog or the people who voted just didn't know about APEX... Even without the big Oracle marketing machine, I can't believe that APEX is still not that known. Application Express is getting more and more adopted, especially with Oracle 11g it's taking off. So, I don't worry that much, otherwise I wouldn't have founded a company only doing APEX ;-)

Lets give OracleNerd a warm APEX vote, so he also feels a bit better!

The build tool; deploy AIA / BPEL / ESB / Java using ANT

Introduction
A few years ago, when Oracle had only the BPEL component, deployment was rather complex. Therefore I create my own build tool, replacing the obant tool and ignoring the existing build.xml files, supplied within your JDeveloper project.

Meanwhile, the tool has been extended during the implementation of projects. Every time, I was focussing that the tool should be independent of customer needs, making it generic.

Overview
In general development of BPEL processes is done via an IDE tools. These tools are:
  • Oracle JDeveloper 10g (http://www.oracle.com/technology/products/jdev)
  • obant tool.

The first product is a graphical tool to design and develop SOA components. The tool can also be used for compilation and deployment of a BPEL process for example. The obant tool is part of the BPEL software stack and can be used to compile and deploy a BPEL process. Combining these tools make is in general enough for designing and implementing BPEL applications.
It will be more complex if design and development must be done for various environments; developing new BPEL applications in development environment and fixing BPEL processes in a production environment.

Solution
The obant tool can compile from a current directory an ANT build.xml file. It will read the XML tags from this and interpret them. Oracle Jdeveloper generates this build.xml file when a new BPEL process is created. It is possible to extend this "build.xml" file with other ANT tasks. But this is not logical. When developing BPEL applications, it will result in many BPEL processes, each having it's own "build.xml" file.

A solution could be to have a general "build.xml" that is able to compile the BPEL processes.
A feature of the current obant tool, is that is only possible to use the core ANT tasks. It is not possible to use the optional tasks or even extend it with other tasks without changing the obant script.

The solution described in the next paragraphs will take this into account.

Functionality
The build tool covers the following features and can be easily change and extended to customer requirements:
  • Using full ANT tasks features, Ant 1.7 + Ant-Contrib tasks
  • Support of Multiple environments; Dev / Test / Acceptance / Production / ...
  • Compiling BPEL processes
  • Deploy BPEL processes
  • UnDeploy BPEL processes
  • Register ESB services
  • Unregister ESB services
  • Deploy AIA BPEL processes
  • Deploy AIA ESB services
  • Integration with SubServersion; download latests or tags
  • Stand-alone tool ; not depending on Oracle installation
  • Compile and Deploy Java programs
  • Supporting 'MakeAll'
  • Deploy domain value maps
As shown in the list of functionalities, the build system is now able to deploy AIAESB services. Therefore the build system is extended with AIA functionality. This means that AIA specific libraries have been added to the 'lib' directory of the build system. The unix script, obbuild.sh, has been changed to add specific files.

Pre-Requirements AIA only
To deploy a complete set of AIA custom developed services or single ones, you must verify that you meet the following requirements. You must have correct file permissions for AIA:

To deploy an ESB service on the linux machine, as a non oracle owner is possible. The ANT script along with the ESB service, does need specific read/write settings.

Make user that the following directories and files are open for read/write, (recursively):

$AIA_HOME/bin/bsracces.log
$AIA_HOME/install
$AIA_HOME/install/scripts/bsrwsdl.properties
$ORACLE_HOME/Apache/Apache/htdocs/AIAComponents/
$ORACLE_HOME/bpel/domains/default/config/fault-bindings.xml
$ORACLE_HOME/bpel/domains/default/config/fault-policies/
$AIA_HOME/config/

Configuration
To use the build tool some configuration must be made. Most of all settings are located in properties files. Configure the build tool configuration file to prepare the deployment for this release. Edit the following file:

$BUILD_TOOL/build.env

In build.env, edit ANT_HOME and ANT_JAVA_EXTENSIONS, change the first part of the path to where the package was copied to ($BUILD_TOOL). Also change LOG_DIR in build.env, log files will go to this directory.

An example of this file is here

JAVA_HOME=/app/oracle/product/10.1.3/soa/jdk
ANT_HOME=/app/projects/svn/aia/src/tools/build/ant/lib/apache-ant-1.7.0
ANT_JAVA_EXTENSIONS=/app/projects/svn/aia/src/tools/build/ant/lib
LOG_DIR=/tmp/aia/svn_tmp/log
#
# AIA_HOME is needed for AIA Specific deployment
#
export AIA_HOME=/app/oracle/product/AIA2.0

Manual Deployment
To deploy a the AIA components manually the following steps should be executed in this sequence.

Download
Download the latest version of the AIA components. Example for SystemTest environment:

obbuild.sh -e test Download

Example for tag 2.0.23 being the current version for acceptance:

obbuild.sh -e acc Download 2.0.22

Promote
Promote is a task that does a find and replace on the source code. It was build for replacing endpoints but the tool can find and replace almost anything in source code.

Example; promote the existing download for the test environment

obbuild.sh -e test Promote

Note: it will use the file replace_test.properties to execute the find and replace.

The replace_.properties file is used for a general replacement of tokens
in BPEL projects. The file describes hoe tokens can be replaced in one or
all BPEL processes, ESB services.

Syntax:

find..name=[all|]
[all|]..find.value=
[all|]..replace.value=

Example:
Replace in all BPEL files localhost:9700 into 127.0.0.1:8888

find.1.name=all
all.1.find.value=localhost:9700
all.1.replace.value=localhost:8888


Example:
Replace in HellWorld bpel process the default domain and the hostname

find.1.name=HelloWorld
HelloWorld.1.find.value=localhost:9700
HelloWorld.1.replace.value=192.168.0.1:8888


find.2.name=HelloWorld
HelloWorld.2.find.value=/orabpel/default
HelloWorld.2.replace.value=/orabpel/systest


XSD files (AIA related)
The AIA environment is using static XSD files that are located on the application server in the directory:

$ORACLE_HOME/Apache/Apache/htdocs

Make sure that the latest version of the XSD files from SubVersion ($SVN_HOME/aia/xsd)are copied to this directory.

note: make sure the right privileges are applied on the server see

obbuild.sh DeployAIAXSD

A zip file is created with the XSD of AIA. You can now copy and unzip the file on the server.

Deploy generic ESB service
Note that before deploying the ESB service, the services will be undeployed. Based on the property file esb_guid.properties. The GUID is read from this file. If the ESB service exists in this property it will be undeployed. Maintain this file if any new ESB services are added to the system

Deploy each ESB service separately, if they exists. Example for Test environment:

obbuild.sh -e test DeployESB HelloWorldEBS

Deploy generic BPEL process
Deploy each BPEL process separately. Example for Test environment:

For example: Compile and Deploy Helloworld 1.0 to the default domain

obbuild.sh -e test Compile HelloWorld
obbuild.sh -e test DeployBPEL HelloWorld 1.0 default

For example: Compile and Deploy Helloworld 1.1 to the MyDomain domain

obbuild.sh -e prod Compile HelloWorld
obbuild.sh -e prod DeployBPEL HelloWorld 1.1 MyDomain

Deploy AIA ESB service
Note that before deploying the ESB service, it will be undeployed. Based on the property file esb_guid.properties. The GUID is read from this file. If the ESB service exists in this property it will be undeployed. Maintain this file if any new ESB services are added to the system

Deploy each AIA ESB service separately.

For example for Test environment:

obbuild.sh -e test DeployAIAESB SalesOrderEBS

Deploy AIA BPEL process
Deploy each AIA/BPEL process separately.

For example for Test environment:

obbuild.sh -e test CompileBPEL UpdateOrderSiebelProvImplABCS
obbuild.sh -e test DeployAIABPEL UpdateOrderCordysProvImplABCS 1.0 default

Deploy Java WebService
Deploy each Java process separately. Example for Test environment:

obbuild.sh -e test DeployJava HelloJavaWorld

Note: default-application.xml must be included in source code.

Automatic Deployment
To deploy the whole system at once, use the task 'MakeAll'.

obbuild.sh -e test MakeAll

Note: This target is using the 'makeall_test.properties' that describes the correct sequence of all the AIA components (Java, BPEL, and ESB) that will be built and deployed. The next table shows an example of the 'makeall.properties' file.

makeall.properties
#
# Java
#
java.make.100=HelloJavaWorld
#
# BPEL
#
bpel.make.200=HelloBPELWorld
bpel.make.210=HelloWorld
#
# AIA BPEL
#
aiabpel.make.300=HelloBPELWorldProvABCSImpl
aiabpel.make.310=HelloWorldProvABCSImpl
#
# AIA ESB
#
aiaesb.make.400=SalesOrderEBS
aiaesb.make.410=SalesOrderOrchastrationEBS

Command line interface
The command line interface of the obbuild tool is as follows:
obbuild.sh -?
obbuild.sh [-[hvtV] [-e environment] [-f build-file]
[-r replace-file] [task] [arg1] [arg2] .. [arg6]]


-h Shows this help
-V Show the version of this program
-t Show all the tasks in the build file
-e Select envirnonment property file,
default 'dev', reading dev.properties

-f Read a specific build file, default is build.xml
in current directory

-r Read a specific replacement file,
use for promoting BPEL process to other environments.

-v Show verbose output
task The task to be executed, default is main
arg1..6 Optional arguments passed to the build file
as properties ANT.ARG1..ANT.ARG6

The tasks the build tool can execute:
obbuild.sh -t
obbuild.sh: Tasks in ./build.xml
CompileBPEL - Compile one or all BPEL processes (
[arg=bpel-process-name] arg2=version])
Download - Download latest source code
[arg=version]
CreateWar - Create WAR file, containing all
the BPEL processes
[arg=war-filename]
CreateEar - Create BPEL ear file
[arg=ear_filename]
main - Default task
Promote - Find/Replace on one or more BPEL processes,
see replace.properties
DeployAIABPEL - Deploy one or all AIA BPEL processes to a
domain on a remote server
[arg1=[Bpel-process|all]
arg2=version arg3=domain]
DeployBPEL - Deploy one or all BPEL processes to a domain
on a remote server
[arg1=[Bpel-process|all]
arg2=version arg3=domain]
DeployESB - Deploy one or all ESB services to a system
on a remote server
[arg1=[ESB-process|all] [arg2=system]]
CompileJava - Compile Java files
[arg1=name of the application]
WARJava - Create WAR file from class files
[arg1=name of application]
EARJava - Create EAR file from WAR file
[arg1=name of application]
DeployJava - Deploy an EAR file to OC4J container
[arg1=name of the application]
MakeAll - Create a new set of the application
[arg1=[bpel/esb version] [arg2=BPEL domain]
[arg3=ESB-system]
DeployAIAESB - Deploy one or all AIA ESB services
to a system on a remote server
[arg1=[ESB-process|all] [arg2=system]]
SendMail - Send a mail
[arg1=to arg2=subject arg3=text]
DeployAIAXSD - Deploy the AIA XSD files: creating a ZIP files
UndeployBPEL - Undeploy a BPEL process
[arg1=processname [arg2=version] [arg3=domain]]
UndeployESB - Undeploy one or all ESB services to
a system on a remote server
[arg1=[ESB-process|all] [arg2=system]]
DeployDVM - Deploy all or single DVM to the server
[arg1=[DVM name|all]]

ORA-14061: data type or length of an index partitioning column may not be changed

HunterX | May 13, 2008 23:00 -0600
We exported and imported Oracle database to Test Environment.
After that, I need to alter column on some tables:

SQL> desc TABLE

ID_NO varchar2(16)
NAME varchar2(50)

SQL> alter table TABLE modify (ID_NO varchar2(64))
*
ERROR at line 1:
ORA-14061: data type or length of an index partitioning column may not be changed


I found ID_NO column name, that is an unique constraints (name => ID_UNIQUE):

select CONSTRAINT_NAME, TABLE_NAME, CONSTRAINT_TYPE, INDEX_NAME from user_constraints where TABLE_NAME='TABLE'

So,
SQL> ALTER TABLE TABLE disable CONSTRAINT ID_UNIQUE;


SQL> alter table ACCTMGR.USAGE modify (ID_NO varchar2(64));
alter tabled.

SQL> ALTER TABLE TABLE enable CONSTRAINT ID_UNIQUE;

SQL> desc TABLE

ID_NO varchar2(64)
NAME varchar2(50)

Enjoy!

mix Oracle: Error popup

HunterX | May 13, 2008 22:00 -0600
I found an Error popup on Mix Oracle.

What Notification Types are available in Oracle Service

Ahmad | May 13, 2008 22:00 -0600

The following Notifications are available:”You can set up the application to automatically notify the service request owner and customer contacts associated with the service request whenever a certain event occurs, for example, whenever a service request is created, closed, or reassigned. Notifications can be sent via Oracle Workflow notifications or by e-mail.

Oracle TeleService includes a notification workflow and notification templates suitable for different types of events, but implementers must set up the rules that trigger the workflow. The rules make it possible to selectively notify users only about events of interest to the organization. This notification functionality enhances and replaces notifications through the Call Support Process workflow which can be associated with Service Request Types. The Call Support Process notifies users each and every time a service request is updated. This release includes one seeded notification rule: If service request status changes to closed, then notify the primary contacts of related service requests.

 

 

The following table describes the events that can trigger a notification message to be sent and the scope of the rule you can create.Contact Added to Service Request
Published Solution Added to Service Request
Service Request Status Changed
Service Request Created
Service Request Owner Changed
Relationship Created
Relationship Removed
Service Request Updated

 

 

The Notifications that are available in Oracle Service can be set up via the Customer Support -> Setup -> Service Requests -> Notification Rules form.

 

Reference

·         Metalink

  • Oracle® TeleService Implementation Guide

Laptop mouse pointer jumps all over the screen

Vikram Das | May 13, 2008 21:20 -0600
I am currently facing a very annoying problem with my Dell 610 laptop mouse pointer. The pointer goes out of control and either goes to one corner and stays there or randomly keeps jumping. Any attempts to control it are defeated. This is not a mouse problem. As I have tried normal mouse with balls, optical mouse, laser mouse. It even happens when I have no mouse attached to my laptop. Apparently this problem is common to XO Laptop (One laptop per child) as described here. I have tried a few suggestions given by them:

1. Put four fingers on each corner of the touchpad. Works but its back to jumpy mouse in seconds
2. Use hand lotion to rule out static electricity. Yet to try this

I think the most effective way to solve this would be to disable the touchpad. While googling for "disable touchpad" I found this link. Unfortunately the navigation given was not present in my laptop. So I switched off my laptop and started it again. Pressed F2. Went to BIOS settings. POST behavior -> Mouse and Touchpad -> Serial (use serial mouse, disable touchpad). Saved and rebooted. Now the touchpad no longer works, and as predicted, the mouse pointer has stopped jumping. Good riddance. I was terribly annoyed by this jumping mouse menace for a long time. I should have done this as soon as I faced this problem.

ApEx: Oracle Marketing WTF?

oraclenerd | May 13, 2008 21:00 -0600
At the time of writing, the score is 68 have not used ApEx leaving only 8 who have. Obviously this poll isn't scientific, but it does have to represent a small bit of the community. Perhaps Oracle Mix would be a better place to ask the question?

I guess my followup poll would be why? Why haven't you used it?

Did you not know about it?

If that's the case, then it's definitely an Oracle Marketing WTF.

Did you know about it but just never got around to trying it?

I'm completely dumb(quit snickering)-founded.

I believe the very first time I heard anything about the product was when it was referred to as Marvel (Project Marvel?) on AskTom. Am I the only one who read the site for enjoyment (probably, but it was the only thing I could read at work). That must have been 4 or 5 years ago. I started using it in May of 2005, now three years back.

Yes, Oracle has boatloads of products. I still don't know what the whole Fusion thing is (please don't say middleware, I don't know what that is either).

As someone pointed out in the comment section, it's one of the busiest forums on OTN.

I wonder if John and Dmitri run into this? Probably makes cold calling difficult.

As a [ApEx] community, what can we do to help promote it?

Oracle’s CPU Patch Naming

Jared | May 13, 2008 19:00 -0600
Just today I discovered that Oracle changed the nomenclature used to refer to Critical Patch Updates.

Up through the patch bundle issued in October 2007, these were referred to by the date of release. The October 2007 release was "Oracle Critical Patch Update - October 2007", often shortened to "CPU Oct 2007".
Oracle Critical Patch Update - October 2007

When viewing the documentation for the October 2007 CPU you will see this:

Oracle® DatabaseCritical Patch Update Note
Release 10.2.0.2 for Microsoft Windows (x64)

The documentation for the January 2008 CPU however looks a bit different:

Oracle® Database Server Version 10.2.0.2 Patch 17
Bundle Patch Update Note
Release 10.2.0.2 for Microsoft Windows (x64)


Note the difference. The Oct 2007 CPU is referred to by date, while the Jan 2008 CPU is referred to by patch number.

By digging down into the Oct 2007 CPU documentation you will find that it is referred to as "Patch 16".

Doing the same for the "Patch 17" documentation reveals that it is indeed the Jan 2008 CPU.

Why does it matter?

Imagine working with consultants for a major application system that uses Oracle as a database. Imagine also that these consultants also know only 'Patch 17', while you know only about 'Jan 2008 CPU'.

This can lead to a great deal of confusion, as it did for me (as well as the consultants) recently. Digging down into the docs revealed the change in nomenclature.

It led to (I am telling on myself here) me installing both the October 2007 CPU and the January 2008 CPU on a single database. This wouldn't be so bad, if they had been applied in the wrong order.

Maybe most other Oracle folks already know about this, and I just missed the memo explaining that Oracle would start referring to their CPU's by a different name.

In any case, not knowing this caused a lot of extra work.

Refreshing A Part of Your Page After a Pop-up

Shay Shmeltzer | May 13, 2008 18:50 -0600
A question from OTN: You have a page that shows some data in a table, then you pop-up a dialog window where you change the data. Then you close the window - but how do you refresh the table to show the change?

The trick is to invoke a partial page render event on your table when you return from the pop-up.

So in your first page you have a button that looks something like:
<af:commandButton text="Submit" action="dialog:go" useWindow="true" windowHeight="500" windowWidth="500" returnListener="#{backing_show.backFromPopup}"/>
Note the returnListener property - this one points to the following piece of code in a backing bean:
public void backFromPopup(ReturnEvent returnEvent) { AdfFacesContext.getCurrentInstance().addPartialTarget(table); }
And the table is the backing bean binding to the object you want to refresh.

Interesting notes

This (Oracle-related) blog site caught my eye a few days ago. There isn’t much on it at present, but what’s there is worth reading, so I thought I’d post a pointer to it for a few days.