Oracle Observations

December 18, 2011

The UKOUG performance tuning round table.

Filed under: Uncategorized — bigdaveroberts @ 2:59 pm

At the tuning round table there were three experts: Jonathan Lewis, Maria coulgan and greg rhan.

Hopefully Jonathan Lewis needs no introduction, Maria Colgan has worked at oracle in the server technology performance team and Greg Rahn who works in the real world performance group specialising in data warehouses and parallel query.

The first question was how the merge command speeded up processing.

The answer was that it produces 2 arrays and does bulk inserts and bulk updates.

However it was stated that depending on the actual data, array processing with exceptions might be a more effective solution.

In a discussion on sub-query un-nesting it was observed that giving the oracle optimiser a nested sub-query gives oracle the opportunity to un-nest the query, if you un-nest the query yourself Oracle has less potential optimisations to consider.

However, when Oracle un-nests a query, it doesn’t always produce the same plan that would be generated if the optimiser was presented with an already un-nested query!

In a discussion of AutoDoP (Degree of Parallelism), it was noted that it doesn’t consider the cost of the insert. I.e. a CTAS might select the wrong degree of parallelism for the select if the insert cannot cope with the rate that data is generated by the query!

AutoDoP can also be confused by compressed data.

It was suggested that the lack of persistence in Oracle’s implementation of cardinality feedback was a problem.

The response was: ‘watch this space’, presumably indicating that functionality in this area is still evolving and this is one of the things that might change!

One interesting thing that I had not considered was the possibility of forcing the optimiser version used to execute a query can be forced using a hint.

Standard edition was then considered, primarily because Standard edition included stored outlines, which are now deprecated but can’t be replaced by SQL plan management because this is currently an enterprise only feature!

It was suggested that while stored outlines were deprecated, there were currently no plans to de-support this feature.

Slightly off topic the question was asked: What is your favourite new feature in standard edition?

The two answers offered were:

1. Extended statistics
and
2. Pending statistics

On the subject of flash cache, it was suggested that using flash cache was only of potential value when you had maxed out the ram in the machine. i.e. the overhead of managing data in memory was much lower than the overhead of managing data in flash cache through the disk i/o code path.

December 17, 2011

The UKOUG post conference post.

Filed under: Uncategorized — bigdaveroberts @ 11:38 am

Beyond the obvious opportunities to put faces to names on OTN and the oracle-l freelist group and the opportunity to drink beer and learn at the same time, there are the more tangible benefits of getting nuggets of information that you didn’t know you didn’t know and if you thought you needed to know, would take you an age to discover by yourself!

So the highlights:

According to Maria Colgan (http://blogs.oracle.com/optimizer/) dbms_stats should gather data relating to chained rows. If the data exists in the data dictionary, the optimiser will use it, but currently the only way to get this information is via the deprecated analyze command. So, I suppose If you do analyse your chained rows using the analyse command then there is no reason why you should delete these statistics before regenerating more accurate statistics using the appropriate dbms_atats command!

Something that possibly warrants further research!

NB. It is not currently possible to manually manipulate the chained rows stats, they are either generated by the analyze command or deleted.

There were some very curious facts in Frits Hooglands (http://fritshoogland.wordpress.com) presentation on multi-block reads.

Firstly, the implementation of multi-block reads is evolving over the 11.2.0.2 point releases. There can be significant changes to the behaviour of multi block reads between these point releases and you should anticipate significant performance changes even when you are performing even a minor patchset upgrade.

Secondly, most people take the ‘db file scattered read’ wait event as a proxy for the i/o subsystem performance. However it is apparent that with the complexities in place, the wait event may cover more than one read. i.e. if you have a peak wait time of 20ms, (which would be poor) this might actually be timing 2 consecutive reads resulting in the respectable average 10ms per read.

Ultimately you have to defer to the storage admin to accurately state the true maximum i/o subsystem read time!

From the Wolfgang Breitling (http://www.centrexcc.com/) session on the Oracle optimiser, there came the interesting fact that if you export statistics, no information is recorded regarding any tables (or columns) that do not have statistics defined. If you subsequently generate statistics for a table and these new statistics have a negative effect on performance, importing the previously saved statistics will not delete these newly generated statistics! To get back to the position you started at you need to delete all new statistics and then import the statistics from the backup!

Secondly, if you manually generate frequency histograms, always use 2 as a minimum! In some cases Oracle divides by 2 and then rounds down, so in that scenario, any value less than 2 will be lost!

Thirdly if you are generating your own histograms it might sometime be appropriate to miss out popular values. It is much more important to specify the occurrence of rare values!

From Connor McDonald I learnt that the circular animated icon that appears whenever the internet hasn’t yet done what you wanted to is actually called the ‘Infinite Progress Indicator’.

I also learnt that Connor is one of the most entertaining and subtly informative speakers and he should never be missed!

Finally in conclusion, it is apparent that in terms of Oracle support, not all platforms are created equal! If you are not using Linux or Solaris you are likely to wait longer for patches and those patches, due to the reduced crowd sourcing based testing might be inferior in quality!

I could explain what I learnt from Jonathan Lewis’s session, however as a previous incarnation of that is available online I will simply point you at that: http://jonathanlewis.wordpress.com/2011/06/23/video/

Lenz Grimmer gave a wealth of information about the Oracle Linux Kernel.

Oracle has protested in the past about how long it takes for fixes it makes to the Linux kernel to be incorporated into the RHEL Kernel. This session covered further the rationale behind Oracles decision to create its own kernel and the approach it has taken!

Ultimately Red Hat has customised the kernel (chiefly with bug fixes), but Red hat doesn’t automatically adopt changes to the kernel, they take changes to the kernel and then incorporate them into their own version of the kernel. It is largely this fact that when Oracle makes a fix and submits it to the main Kernel development team it can be an extended period of time before this patch is re-incorporated into the RHEL Linux fork and is then made generally available.

Oracle has taken the decision to adopt the mainstream Linux kernel and apply its fixes and optimisations directly to that.

This is done on the basis that, firstly, as most people running OEL will be running Oracle on top and will benefit from the changes sooner and secondly, that most applications running on Linux will be interfacing to the kernel using the GNU libc library and it is at that level that they are supporting compatibility with the RHEL kernel.

I.e. if you make low level calls to the Linux kernel bypassing the libc library then there is a small risk of incompatibility!

Secondly it was stated that the 64bit OEL Linux port is now the primary platform rather than the original 32bit version. This is probably a mechanical move, while the majority of Linux users will still be 32bit, most new work is likely to be 64bit in both the amateur and professional community!

There was also an incredibly interesting performance tuning roundtable, but I think that warrants a separate blog post!

December 4, 2011

Did someone shout Fenton?

Filed under: Uncategorized — bigdaveroberts @ 11:12 pm

Followed by a few frustrated blasphemous shouts of “John Cleese!”

 

It superficially seemed a somewhat innocuous way to end the day!

 

It concluded (for those not inclined to pursue the devils urine at the location of ill repute located conveniently close to the ICC) with a Panel Session with the topic “Performance & High Availability”.

Ultimately the ExeData machine was the topic of 90% of the questions.

In my own words, most of the questions consisted of the following:

“Getting ExeData experience would be beneficial to the Performance of my career! Why are ExeData resources not freely available on OTN for self study?”

To which was the unusually frank response was:

“Compare our behaviour with our peers, it’s no worse! We have the right to pursue whatever approach we believe will bring the greatest remuneration to our great leader and our shareholders. So if making the ExeData technology more exclusive is the way we chose to maximise our profits, then that’s that!”

While the Audience was somewhat aghast, I suspect everything would have calmed down, but with the audience in its already agitated state, someone shouted “Benton”. (or possibly “Clinton”).

The ensuing panic was unedifying.

Unfortunately I was unprepared and lack the required Photoshop skills, so unfortunately there will be no supporting footage on Flickr posted by me.

Duncan Mills was the Oracle employee furthest from the fire escape!

I hope he will be sufficiently recovered to present the Debugging ADF applications session tomorrow morning!
Obviously some of the above is subjective interpretation of the events that happened and any contradiction to third party testomony and provable fact is probably due to my dishonesty, or not, depending on, whatever!

December 2, 2011

The UKOUG mobile application – Brilliant in theory and quite good in practice!

Filed under: Uncategorized — bigdaveroberts @ 2:23 am

I downloaded the app the first time I had reliable Wi-Fi availability.

Pleasingly it appears it would have only grabbed about 7Mb of my 3G data allocation.

I should state that I’m an android user and my current phone of choice is an LG Optimus 940 3D.

Prior to this I owned the classic Nokia N95!

There are obvious but slight issues with the application.

The Twitter feed has an unfamiliar method of updating the twitter feeds (found under the News and social/Twitter tab) you have an update arrowed circle, but you sometimes get prompted to drag down for updates? A little unpolished!

Interests doesn’t seem to be enabled in the networking session, I suppose you could always add your interests to your profile!

And up till now, the agenda in the app appears to be updated after the standard online UKOUG agenda.

The above are all small issues, slightly more significant is the fact that your favourites appear to be recorded by steam and time. When the app was originally made available and the contents in the app were falling behind the agenda available online I took the opportunity to ‘like’ sessions that I knew had been cancelled and sessions that I knew had moved location or time.

Ultimately, the app obviously records ‘likes’ by time and by venue! If your favourite session movies your agenda will not be appropriately updated.

This is a significant fault, but being forewarned will hopefully resolve any issues for the readers of my blog!

I hope that users of the app will review the selected sessions before the conference starts to verify that the selected apps are still the ones originally selected.

On the plus side, I have downloaded 2 updates to the app today (although possibly the first update was available before today!) which hopefully indicates that there is a very proactive approach to pushing out updates!

Obviously there are some limitations to the app! But there is intelligent integration to twitter, linked-in and Google maps! The small amount of out of date information that I suspect will be remedied over the period of the conference, and the bits of the app that don’t appear to work on my phone are trivial and can be dismissed!

Overall, a huge new free benefit for members attending the conference, IMHOOC!

December 1, 2011

UKOUG adgenda updates.

Filed under: Uncategorized — bigdaveroberts @ 1:04 am

Since I began my planning for the UKOUG conference on the 30th of October there have been several amendments to the published agenda.

Monday:

New session:

10:00 – 10:45

EBS Roundtable
The secret of a successful R12 project – how Oracle GRC controls can help reduce implementation/upgrade risk

Chris Burt – Fulcrum Way
Co-presenter(s): Adil Khan – Fulcrum Way

Cancelled session:

10:00 – 10:45

Strategic Sourcing

Nimesh Sharma

Moved session

11:05 – 12:05

Coexistence of Oracle E-Business Suite and Fusion Applications – Technical Dive

Nadia Bendjedou – Oracle

Has been rescheduled for 10:00 – 10:45

New session

11:05 – 12:05

Oracle Fusion Applications: Technical Architecture Overview

Canceled session

14:30 – 15:15

Explaining the MySQL Explain

Ronald Bradford, ACE Director – EffectiveMySQL

Replaced by new session

14:30 – 15:15

When Dolphins Attack!

Tony Webb – Wellcome Trust Sanger Institute

New session

16:35 – 17:35

Event-Driven SOA: Events meet Services

Guido Schmutz, ACE Director – Trivadis AG

Canceled session

16:35 – 17:35

Improving MySQL performance with better indexes

Ronald Bradford, ACE Director -

Has been replaced by

16:35 – 17:35

Building Highly Available & Scalable, Real-Time Services with MySQL Cluster

Frazer Clement – Oracle

Tuesday

Newly confirmed session

11:15 – 12:15

How to get more out of your Sub-Ledgers using Sub Ledger Accounting

Rien Otterman – Oracle

Two sessions have swapped their time slots:

Pete Finnigans – Can people be identified in the database? Has been moved to 14:40 – 15:25

David Burnham – Cost Effective Highly Available Database Recipes for Limited Budgets has moved to 15:35 – 16:20

A newly confirmed session

17:50 -18:35

A beginner’s guide to SQL Tuning

Tony Hasler – Anvil Computer Services

Wednesday

Two sessions have swapped their time slots:

Steven Davelaar, ACE – Oracle

Building a Multi-Tasking ADF Application with Dynamic Regions and Dynamic Tabs

Has been moved to 09:00 – 10:00

Shaun Smith – Oracle

Cloud Enabled Java Persistence

has been moved to 11:20 – 12:20

November 20, 2011

Wednesday – UKOUG 2011 TEBS planned agenda day 4

Filed under: Uncategorized — bigdaveroberts @ 5:22 pm

Thankfully everyone plans to make it into the conference for 9am on Wednesday!

9:00 – 10:00

Niall plans to attend Redo – presumably a repeat of the session from OAK table Sunday.

Boneist plans to attend Statistics on Partitioned Objects, presented by Doug.

While I approve of both the above choices, I plan to attend Oracle 11g Database: Automatic Parallelism – it sounds like something I need to worry about and it’s by Mr Goodman, Oracle educator par excellonce!

10:10 – 10:55

Niall and Boneist plan to see Using Oracle GoldenGate to Minimize Database Upgrade Risk.

Doug has chosen About multiblock reads, a poor choice if you ask me, as if you turned up on time on Sunday you could already have attended this session!

I’ll probably attend Best Practices for Managing Oracle WebLogic Server.

11:20 – 12:20

Doug and Boneist will attend Latch Internals in 2011.

Niall will attend Oracle Database Smart Flash Cache Overview.

There are several good sessions here! Not highlighted by Doug, Boneist or Niall: Amazon RDS, EC2 and S3 for Oracle Databases and Join Techniques.

However having read the session overviews, I’ll probably do the Latch Internals 2011 with Doug and Boneist.

12:30 – 13:30

A three way split, which is unsurprising given the competition.

Niall votes Oracle RAC One-Node: What, Why, & How.

Doug Votes PGA Memory Management Revisited.

Boneist votes Avoiding Execution Plan instability with SQL Plan Baselines.

Of the above, I’d choose PGA Memory Management Revisited, However I plan to attend the Optimizer Roundtable, but I’d also mention ‘Practical uses for the APEX Dictionary’ that I’ve previously seen at the APEX SIG and is potentially useful if APEX is your thing.

14:25 – 15:10

Niall votes Six Easy Pieces: Essentials of Database Tuning for Packaged Applications.

Boneist votes for this and also votes for Faster, Leaner, More Efficient databases – Index Organised Tables.

Doug neglects to vote.

I’ll be attending the Migrating 1500 Forms modules to Apex session!

15:20 – 16:05

Niall goes with Simulating Workloads with RAT and Simora.

Doug and Boneist vote for Is This The Future of Load & Performance Testing?

My vote goes with Oracle Linux and the Unbreakable Enterprise Kernel: Status Update and Overview.

16:15 – 17:00

For the final session this year Doug selects Transaction Analysis & Diagnosis using Profiling.

Boneist selects Nialls’ session What shape is your data?, which Niall is also attending.

Having attended the last ever UNIX SIG at which Niall presented ‘What shape is your data?’ as the last ever UNIX SIG presentation, I thoroughly recommend this session. OTOH, as I’ve previously supped at this fountain already, I’ll be at the other session with Doug!

Then it’s a visit to my favorite hostelry, that always has Herefordshire Pale Ale on tap and then the trip home.

Tuesday. – UKOUG 2011 TEBS planned agenda day 3

Filed under: Uncategorized — bigdaveroberts @ 12:30 am

9:00 – 10:00

Strangely neither Doug or Boneist appear to be attending the first session of the Day.

Niall indicates his presence at the RAC Attack at certain points during the day, but will he be there at 9:00 am?

I’ll probably attend the Oracle GlassFish Server, Java Enterprise Edition and JVM Roadmap, obviously presuming I’m not with Niall and Doug the previous evening.

10:10 – 10:55

Doug is attending Who’s afraid of Analytic Functions? Which also receives a second vote by Boneist.

Boneist is also attending Nialls’ First Things First: Getting the basics right.

I’m torn between Nialls’ session and the APEX Roundtable. I may choose the roundtable on the basis that with Nialls’ commitment to the Oracle SIGs, I may get the opportunity to revisit his session at another time!

11:15 – 12:15

Niall votes for Troubleshooting RAC.

Doug votes for Execution Plan Interpretation which also receives a second vote from Boneist.

Boneist votes for Analysing Your Data with Analytic Functions.

While I believe I have a good understanding of Execution Plan Interpretation, Past experience of Joze Senegacni indicates that with humour you tend to not get quite what you expected from the session title, and I hope to be presently surprised again!

12:25 – 13:25

Niall and Doug both vote for Instrumentation – Why You Should Care.

Boneist votes for Oracle Optimizer – Best Practices for Managing Optimizer Statistics, Tuning, Refactoring, and Instrumenting Code for Developers and Troubleshooting the Most Complex Oracle Performance Problem I’ve Ever Seen.

My preference is almost always Taniel Poder! and while the session title makes me wonder if I will be able to widely apply what I learn here, I don’t think I’ll regret it!

14:40 – 15:25

Niall, Doug and Boneist have all voted for ASH Outliers: Detecting Unusual Events in Active Session History.

I have never heard of John Beresniewicz. This might be something I have to remedy before the conference!

However unless I’m interested by what I find in the meantime, I’ll be attending the Development tools roundtable!

15:35 – 16:20

Doug and Boneist will be attending Can people be identified in the database?

Niall will be attending Oracle on the Amazon Cloud – What should you consider.

I will be joining Niall in this case.

I should note that Pete Finigans’ session is excellent! I’ve already seen it twice! Pete planned to present this session in 2010 but was prevented by the snow. (Pete isn’t a man of great stature.) He has subsequently presented this at at least 2 SIGs and I strongly recommend this session in spite of the fact that I will not be there!

16:40 – 17:40

Niall votes My Case for Agile Methods.

Doug and Boneist vote for Beating the Oracle Optimizer.

I like to attend Mr Trichlers OTN hands on workshops. I also want to attend Beating the Oracle Optimizer and Moving from Oracle Forms to Oracle ADF: Case Studies.

17:50 – 18:35                                                                                         

Niall, Doug and Boneist are all attending Challenges and Chances of the 11g Query Optimizer.

Simply, Johnathon Lewis recommends Christian Antogninis’ book on the subject of performance troubleshooting.

There can be little higher recommendation!

I will however be attending SQL Developer Data Modeller as a replacement for Oracle Designer.

Hopefully, that will end early and then I’ll sneak into the end of the OTN Workshop!

November 19, 2011

Monday – UKOUG 2011 TEBS planned agenda day 2

Filed under: Uncategorized — bigdaveroberts @ 10:53 am

So Sunday, with at most 2 simultaneous sessions has already left me with one dilemma, obviously Monday brings several more!

10:00 – 10:45

Doug, Niall and Boneist all vote Kyle Hailey.

My vote would be Duncan mills – debugging ADF applications, however as this is an extra length session, it then clashes with other sessions.

11:05 – 12:05

Niall and Boneist vote Connor McDonald – Partitioning 101.

Doug votes Greg Rahn – Deep dive into the SQL Monitoring report.

As stated previously, I’m, inclined to Duncan Mills that  due to its length also clashes with both these sessions.

My natural preference would either be Greg Rhan or Grant Ronalds ‘Future of Forms’.

I suspect that it will be Duncan mills till 11:05, if the session is compelling I’ll stay, if not then depending on how good Connors OAK table session was on Sunday, I might try that or Gregs’ session.

I’m hoping that Grants session overlaps heavily with sessions I’ve done previously. I’ll download the slides though, just in case!

12:15 – 13:15

Doug and Boneist vote Maria Colgan - Upgrading to Oracle Database 11g without pain.

Niall votes Mariusz Piorkowski – Going deeper into Real Application Testing.

While both sessions sound interesting, my organisation is already on 11g, and the performance issues we experience are predominantly application design based issues. I’m not aware of any specific 11g performance issues beyond the fact that the  /*+rule hint tends to be substantially less beneficial in more cases than in the past.

So, I’m probably going for Bryn Llewellyn – Using the PL/SQL Hierarchical Performance Profiler.

14:30 – 15:15

Doug votes Wolfgang Breitling - Using Ashmon.

Niall votes John Hallas – Automatic Diagnostic Repository (Doug also casts a second vote for John).

Boneist votes Simon Haslam – High Availability Options for Modern Oracle Infrastructures. 

Of the above I’d choose Wolfgang, however I’m also tempted by Grant Ronald – ADF’s hidden gem – the Groovy scripting language in Oracle ADF.

Ultimately I’ll probably go to the Application server and fusion middleware Round table. Roundtables are the classic forum for networking with both obscure and interesting real problems!

15:25 – 16:05

Niall votes for MySQL: the least an Oracle DBA needs to know.

Doug has voted for Exadata I/O Resource Management.

Boneist has voted for Implementing Effective Oracle Database Auditing in 3 Steps.

I’ve already had the pleasure of experiencing Patricks’ MySQL session at a SIG. While he promised that he would extend the presentation for the conference, I’m satisfied with what he’s taught me about MySQL already.

And generally any session by an employee of Pythian is worthwhile.

However I plan to attend the ADF Patterns for Forms Conversions by Robert Nocera.

16:35 – 17:35

Both Niall and Boneist vote for Database I/O Performance: Measuring and Planning.

Doug votes for Adaptive Cursor Sharing – An Introduction and again takes a second vote for The DB Time Performance Method (part 1).

While Mr Gorbachev is always insightful, I’m probably going to vote with Dougs’ second choice for the DB Time performance method.

17:45 – 18:30

Niall and Boneist both vote for Doug who will be presenting his Performance and Stability with Oracle 11g SQL Plan Management.

Unfortunately The DB time Performance Method is a double length session and I am unable to attend Dougs’ session which would definitely be my second choice!

November 17, 2011

Four (good) days in December

Filed under: Uncategorized — bigdaveroberts @ 11:39 pm

Obviously I refer to the UKOUG 2011 TEBS Conference!

It is again that time of year, with the agenda published, when we begin to prepare.

Apart from obviously reviewing the now available online conference agenda, several people each year post online their own personal planned agendas.

Currently I have found three agendas posted.

Doug Burns has posted his planned agenda here:

http://oracledoug.com/serendipity/index.php?/archives/1658-Upcoming-UKOUG-Conference.html

Niall Litchfield has presented his proposed agenda here:

http://orawin.info/blog/2011/11/15/ukoug-agenda-2/

And Boneist has done likewise here:

http://www.orchestrapit.co.uk/?p=86                                                                             

So I have 3 sources to compare my preferences and whims against!

So to my choices, compared with the experts choices:

Day one.

Very pleasingly, there is a welcome return of the Oak Table day!

This occurs on Sunday and has limited places available with a requirement that the day is only available to people who have booked all three days at the main conference.

The first session:

12:15 – 13:15 Mogens Norgaard vs Jonathon Lewis.

Pleasingly both Niall and Boniest agree with my preference for Mr Nogood, Doug unfortunately doesn’t express a preference.

The basis of my decision is based partly on availability/access. While Jonathon makes multiple SIG presentations over the year that overlap with the topics he presents at the UKOUG conference, presentations by Moans are rarer.

This is reinforced by the occasions where Moans attempts to burn down his house, where he still attended the conference but failed to present.

Although he still made his customary appearances at all bar one!

Ultimately, while Jonathans’ presentation will make me a better DBA, Moans presentation will be more entertaining!

13:25 – 14:10 Frits Hoogland vs. Martin Widlake.

Neither Doug nor Boneist have indicated a preference for this slot.

Niall has voted Martin

While I spent an extremely pleasant evening with both Niall and Martin (amongst one other) at Birminghams’  best real ale establishment during last years’ UKOUG conference, I’m voting Frits!

While I appreciate the value of IOTs, I’m currently working on a very well established system and I know that there are substantially less exotic ways to optimise our systems before adopting IOTs.

OTOH, multiblock reads have apparently changed and this is the subject that is most likely to impact me in my current role!

14:35 – 15:20 Christian Antognini vs Connor McDonald

The first session voted on by Doug is for Connor.

Boneist votes for Christian and Niall votes for Connor.

I have attended sessions by Christian before. I have his book. Jonathon Lewis recommends his book. This will undoubtedly be an excellent session.

OTOH, apparently Connor is from Australia and his presence at the UKOUG conference is a rare event.

My vote currently is with Connor, only because of the votes by Doug and Niall although I’m open to persuasion!

15:30 – 16:15 James Morle vs Wolfgang Breitling

Doug, Niall and Boneist all vote for Wolfgang.

That was also my initial inclination.

The first ever presentation that I attended at a UKOUG conference that left me dumbstruck was by Wolfgang. Before that session I had no convincing explanation as to what the cost of a query was in Oracle explain plan terms.

Wolfgang is one of those giants on whose shoulders,  Johnathan Lewis (amongst others) stand upon.

James Morle, OTOH has a breadth of knowledge that can be extremely insightful in the real world.

This is my fist dilemma, as yet undecided!

May 10, 2011

Using default oracle forms icons and graphics.

Filed under: Oracle forms — bigdaveroberts @ 4:30 pm

One suggestion on tuning oracle forms applications included in the AMIS blog:  http://technology.amis.nl/blog/10141/oracle-forms-10g-tuning-tips was to use the icons included in the Oracle forms java runtime.

While I don’t imagine saving a few thousand bytes of data downloaded to the client PC will substantively improve performance, how do we use these free icons?

After a little experimentation it is apparent that all we need to do is to include a UNIX style (that is with a forward slash and case sensitive directory/file names) relative path.

For convenience the most useful icons are listed here:

oracle/forms/icons/badimage.gif  
oracle/forms/icons/canqry.gif  
oracle/ewt/laf/oracle/images/caution.gif  
oracle/ewt/laf/generic/images/caution.gif  
oracle/ewt/laf/oracle/images/colorChoice.gif  
oracle/forms/icons/copy.gif  
oracle/forms/icons/cut.gif  
oracle/forms/icons/delrec.gif  
oracle/forms/icons/ellipsis.gif  
oracle/forms/icons/entqry.gif  
oracle/forms/icons/exeqry.gif  
oracle/forms/icons/exit.gif  
oracle/ewt/laf/oracle/images/folder.gif  
oracle/forms/icons/frame.gif  
oracle/forms/icons/help.gif  
oracle/forms/icons/insrec.gif  
oracle/forms/icons/lockrec.gif  
oracle/ewt/laf/generic/images/multiItemDrag.gif  
oracle/ewt/laf/oracle/images/note.gif  
oracle/ewt/laf/generic/images/note.gif  
oracle/forms/icons/nxtblk.gif  
oracle/forms/icons/nxtrec.gif  
oracle/forms/icons/paste.gif  
oracle/forms/icons/print.gif  
oracle/forms/icons/prvblk.gif  
oracle/forms/icons/prvrec.gif  
oracle/forms/icons/pset.gif  
oracle/forms/icons/save.gif  
oracle/ewt/laf/oracle/images/stop.gif  
oracle/ewt/laf/generic/images/stop.gif  

 

And while it might only have a marginal effect on performance, it should be a good first step to establishing a consistent look and feel!

Next Page »

Theme: Rubric. Blog at WordPress.com.

Follow

Get every new post delivered to your Inbox.