Exadata’s onecommand fails to validate NTP servers on storage servers

This will be simple and short post on an issue I had recently. I got the following error while running the first step of onecommand – Validate Configuration File:

2015-07-01 12:31:03,712 [INFO  ][    main][     ValidationUtils:761] SUCCESS: NTP servers on machine exa01db02.local.net verified successfully
2015-07-01 12:31:03,713 [INFO  ][    main][     ValidationUtils:761] SUCCESS: NTP servers on machine exa01db01.local.net verified successfully
2015-07-01 12:31:03,714 [INFO  ][    main][     ValidationUtils:778] Following errors were found...
2015-07-01 12:31:03,714 [INFO  ][     (more...)

ODTUG Kscope15 Review: It was the best of times, it was the best of times!

Last week AuraPlayer headed south to attend ODTUG’s annual KScope conference in Hollywood, Florida. It was very exciting to play many pivotal roles; serving as an ODTUG Board member, an Exhibitor, a 2 time speaker and an Oracle ACE Director. The event was definitely a highlight – I truly learned a lot and, of course, had a lot of fun.

With that being said, so much happened that it would be nearly impossible to provide an (more...)

Oracle Tidbits – May & June 2015

“Oracle *daily* TidBits” (#oratidbit) published at https://www.facebook.com/oraclenotes on weekdays in May and June 2015. You will also see these tidbits, one tidbit at a time, for each page refresh on the right side of this blog as well… Hope you find these helpful to learn something new or to remind you of its existence and use… Date TidBit 11-May […]

Good new SQL tuning book

People ask me from time to time what are some good SQL tuning books. It’s a tough question to answer. There are some seminal books such as “SQL Tuning” by Dan Tow and “Cost Based Optimizer Fundamentals” by Jonathan Lewis, but these are advanced books  that few I know have actually read from cover to cover. If you are looking for practical SQL tuning cookbooks you might want something a little less advanced.  For a practical (more...)

Performance #datachat

 

2920562020_e808543f0b_o

 

photo by Tom Woodward

 Summary of responses to questions from Solarwinds #datachat back in the fall.

1. Why do performance issues happen?


Performance issues happen mainly because of bad design.  Performance issues occasionally happen because of hardware undersizing (IO, CPU, Memory, Network) but that’s the 20 (or less) of 80/20.
At  IOUG a last year someone tweeted out a slide that said 80% of performance problems were from IO and  Kevin Closson tweeted the other 80% are (more...)

Our Top 10 ODTUG #Kscope15 Sessions for Mobile / ADF/ Cloud / Forms Developers

It’s that time of year again; Kscope time, and I’m sure you are as excited as we are. You are most likely spending every moment of your free time reading the never-ending list of sessions tryinaurakscopeg to decide which ones to attend. Although there are over 300 to choose from, it’s time to bite the bullet and make decisions, because schedules must be made. To help you on your way, Mia, AuraPlayer’s CEO, has compiled a (more...)

Flushing Shared Pool Does Not Slow Its Growth

I’m still working on resolving the issues caused by bug 13914613.

Oracle support recommended that we apply a parameter change to resolve the issue but that change requires us to bounce the database  and I was looking for a resolution that does not need a bounce.  The bug caused very bad shared pool latch waits when the automatic memory management feature of our 11.2.0.3 database expanded the shared pool.  Oracle support recommending setting _enable_shared_pool_durations=false (more...)

Functional programming a brief introduction to Scala

In this blogpost I’ll try to explain on a very basic level what functional programming (FP) is about. look at is as an introduction to the amazing world of FP. FP is already here for quite a few decades. It was mostly used in the academic world and specialized industries. Since the coming of Scala http://www.scala-lang.org, FP became more and more mainstream.

So what is functional programming?

(from Wikipedia http://en.wikipedia.org/wiki/Functional_programming) (more...)

Overall I/O Query

I hacked together a query today that shows the overall I/O performance that a database is experiencing.

The output looks like this:

End snapshot time   number of IOs ave IO time (ms) ave IO size (bytes)
------------------- ------------- ---------------- -------------------
2015-06-15 15:00:59        359254               20              711636
2015-06-15 16:00:59        805884               16              793033
2015-06-15 17:00:13        516576               13              472478
2015-06-15 18:00:27        471098                6              123565
2015-06-15 19:00:41        201820                9              294858
2015-06-15 20:00:55        117887                5              158778
2015-06-15 21:00:09         85629                1               79129
 (more...)

5 Minute JavaScript #19: Polyfills

The past few weeks were dedicated to the useful array methods. However these methods have been implemented in ECMAScript 5 and are therefore not available in older browsers such as IE8 and sometimes we have to support legacy browsers.

In JavaScript, we use polyfills to create behavior that is not implemented in browser. We can use polyfills to add every kind of behaviour to our application and a lot of websites provide these polyfills.

Basically (more...)

Bug 13914613 Example Shared Pool Latch Waits

Oracle support says we have hit bug 13914613.  Here is what our wait events looked like in an AWR report:

Top 5 Timed Foreground Events

Event Waits Time(s) Avg wait (ms) % DB time Wait Class
latch: shared pool 3,497 17,482 4999 38.83 Concurrency
latch: row cache objects 885 12,834 14502 28.51 Concurrency
db file sequential read 1,517,968 8,206 5 18.23 User I/O
DB CPU 4,443 9.87
library cache: mutex X 7,124 (more...)

Surprising calibrate_io result

Recently I used DBMS_RESOURCE_MANAGER.calibrate_io to measure disk I/O performance using a call like this:

DECLARE
 l_latency PLS_INTEGER;
 l_iops PLS_INTEGER;
 l_mbps PLS_INTEGER;
BEGIN

 DBMS_RESOURCE_MANAGER.calibrate_io (num_physical_disks => 10,
 max_latency => 20,
 max_iops => l_iops,
 max_mbps => l_mbps,
 actual_latency => l_latency);

 DBMS_OUTPUT.put_line('Max IOPS = ' || l_iops);
 DBMS_OUTPUT.put_line('Max MBPS = ' || l_mbps);
 DBMS_OUTPUT.put_line('Latency = ' || l_latency);

END;
/

Using this call I have a surprising result.  This test returns very different results when (more...)

DHCP: Virtualbox vs VMware on laptops

I’ve been using VMware Fusion on my Mac but it costs about $60. Not that much but Virtualbox is free, so I also have Virtualbox as well.

For my VMs I use DHCP and this has caused some problems but mainly on Virtualbox. With VMware Fusion (and VMware Workstation) everything works fine.

VMware

With VMware, under “Edit Hardware Settings” then “Network Adaptor” I just set the network

  • Mac:  “Share with MAC”
  • PC:  NAT

This causes (more...)

5 Minute JavaScript #18: reduce

The past weeks we dived in the wonderful world of array methods. Previously we already discussed forEach, filter, some and every, and map. Today we’ll take a look at the reduce method. While being extremely useful, its concept can be hard to grasp.

Also known as fold (in this case foldLeft) in other functional programming languages, reduce kan be used to combine all elements of an array into one single return value. That return (more...)

SQL Performance, Part IV. Heap tables.

Demo script


Oracle #DB12c New – MAX_STRING_SIZE

In pre-12c database releases, VARCHAR2, NVARCHAR2 data types were limited to 4000 bytes and RAW data type was limited to 2000 bytes. If there is a need to store more data in VARCHAR2 column, you can in 12c after setting the parameter MAX_STRING_SIZE to EXTENDED. With setting MAX_STRING_SIZE to EXTENDED, you can store up to […]

Part1 Configuration Evodesk

Installation was not bad.

Evodesk is the 2nd company I am aware of for using recesss nuts for desktop installation.

This makes much more sense than using wood screws.

However, pondering if Evodeskk will be the first company to used recess nuts for all components and get rid of wood screws.

Don’t you think the legs make  great towel rack?

install1

install2


Delphix announces masking acquisition

I’m excited to announce the first acquisition by Delphix (portending many to come). Dephix has just acquired the data masking company  Axis Technology Software. Delphix is integrating the Axis masking technology into the core Delphix product. Masking is a feature that 9 out of 10 customers have asked for after buying Delphix. Delphix eliminates the data cloning bottleneck  for application development environments and naturally the next concern that arises is how to mask the data from production (more...)

Writing tips and techniques

It’s been a while since I’ve posted anything on my blog, and this is a slightly different post to the rest, as it’s not technical in any way…  Instead it’s a quick post about a series of fantastic writing tips and techniques posted recently, from my good friend Tim Hall at ORACLE-BASE.  I’ve tweeted a few of these

Read More...

SQL performance, Part III. Data storage strategies

Imagine that you’re on a desert island where some pirates hid their treasure. You don’t know where exactly it is hidden, but you want to find it. How should you approach this – e.g. should you dig randomly? Or should you follow some sort of a system – and if yes, then which?

I think most readers have smelled a trap right away (it’s not a very sophisticated trap anyway) – of course it (more...)