• Link to X
  • Link to LinkedIn
  • Link to Facebook
  • עברית עברית Hebrew he
  • English English English en
Real Time DBA Magic
  • Home
  • Oracle
    • Data Guard
    • Performance
    • SQL Developer and SQLcl
    • Oracle ACE Program
  • Big Data
    • Hadoop
    • Spark
  • Presentations
  • About
    • About Me
    • Contact Me
    • Privacy Policy
    • Non Technical Blog Posts
  • Click to open the search input field Click to open the search input field Search
  • Menu Menu

Script: Inactive Parallel QC Holding Parallel Processes

Performance

Working on a data warehouse system can be quite challenging, as I mentioned in the post from yesterday. One of the things we need to take care of is the amount of parallel processes that are in used at all times. Yesterday I wrote about how to locate downgraded sessions. Today we will look at another aspect – who “steals” parallel processes and what can we do to solve it.

One of the biggest thieves of parallel processes in a data warehouse environment are actually developers and DBAs. Sometime, while developing or just handling the system, DBAs run queries in GUI tools (TOAD, PL/SQL Developer, SQL Developer). That for itself isn’t a big deal, but those tools have a common feature. Instead of returning the entire data set, it sometimes return only a few records (the number depends on the tool). In that case, the cursor is being kept open and is waiting for then next fetch or until different query is ran. While waiting, the parallel processes are being reserved for that query, but the query coordinator is marked as Idle.

If there are couple of DBAs running those queries from multiple windows and they “forget” their queries (because sometime they run for very long) – that becomes a problem: “real” application queries are being downgraded causing the mess I described yesterday.

To solve that, we created the following query. We actually took that query and wrapped it with shell script to automatically kill the session, but let’s keep it to the basic query we used.

Read more →
24/01/2017/0 Comments/by Zohar Elkayam/Estimated Reading Time: 2 Minutes
https://www.realdbamagic.com/wp-content/uploads/2026/10/real-dba-magic-logo-1200w.png 0 0 Zohar Elkayam https://www.realdbamagic.com/wp-content/uploads/2026/10/real-dba-magic-logo-1200w.png Zohar Elkayam2017-01-24 10:05:452026-11-03 15:38:24Script: Inactive Parallel QC Holding Parallel Processes

Script: Finding Session With Downgraded Parallel Execution

Performance

I was working with the data warehouse team at a customer site and at some point we realized that some parallel executions are not getting enough resources (downgraded).

Not getting enough parallel processes in such a complex environment is really bad. That means that since everybody is hogging the CPU, some sessions will not be able to complete inside the night ETL time frame. If that happens – some ETLs will go on into the day providing wrong data to the customer in even worse performance for the morning shift. Another aspect is the memory usage for large sorts or hash joins. Using less processes will mean some of the data will not reside in the memory and will need to be allocated in the temporary tablespace.

The customer asked how can he find those downgraded (meaning, not getting enough parallel processes) at real time. This is the script we created for that.

Read more →
23/01/2017/0 Comments/by Zohar Elkayam/Estimated Reading Time: 3 Minutes
https://www.realdbamagic.com/wp-content/uploads/2026/10/real-dba-magic-logo-1200w.png 0 0 Zohar Elkayam https://www.realdbamagic.com/wp-content/uploads/2026/10/real-dba-magic-logo-1200w.png Zohar Elkayam2017-01-23 09:20:152026-11-03 15:38:48Script: Finding Session With Downgraded Parallel Execution

Manually Generating AWR Report

Performance, Scripts

One of my customers asked me to check performance on his production database server but could not allow any access to the server itself. He asked if I could generate the AWR reports from his client machine and since it’s not really trivial (or hard) I created this script.

Read more →
17/01/2017/1 Comment/by Zohar Elkayam/Estimated Reading Time: 3 Minutes
https://www.realdbamagic.com/wp-content/uploads/2026/10/real-dba-magic-logo-1200w.png 0 0 Zohar Elkayam https://www.realdbamagic.com/wp-content/uploads/2026/10/real-dba-magic-logo-1200w.png Zohar Elkayam2017-01-17 12:15:262026-11-03 15:39:20Manually Generating AWR Report

ilOUG Oracle Technologies Meetup Group

Blog, Oracle

I have a confession: I love Oracle User Groups. Here. I said it.
I think that the idea of a community gathered around common professional interests and expertise are great. It’s an opportunity to meet you colleague and learn a thing or two you don’t get to work with on a daily basis from your peers. For junior DBAs it’s even more important. They have the opportunity to look into their future and see where they want to be when they get more experienced. In my opinion, networking is SUPER important!

tl;dr: ilOUG is reinstating the quarterly SIG meetings, I’m one of the organizers, join us if you’re in Israel!

https://www.meetup.com/ilOUG-Oracle-Technologies-Meetup

For the longer version, read bellow… 🙂

Read more →

10/01/2017/0 Comments/by Zohar Elkayam/Estimated Reading Time: 2 Minutes
https://www.realdbamagic.com/wp-content/uploads/2026/10/real-dba-magic-logo-1200w.png 0 0 Zohar Elkayam https://www.realdbamagic.com/wp-content/uploads/2026/10/real-dba-magic-logo-1200w.png Zohar Elkayam2017-01-10 16:16:432017-01-10 16:23:08ilOUG Oracle Technologies Meetup Group

Script: Finding the Top N Queries for a User (AWR)

Oracle, Performance

In some conditions, I need to find the top N queries for a specific user in the database.
Assuming my customer is running Enterprise Edition and have tuning pack licenses, it is easy enough to pull the data off the Automatic Workload Repository (AWR).

For some reason, a lot of DBAs are not aware that the AWR report is just a report – and you can query the base table yourself to extract more information if you need it.

This is a short script I sometime find very useful – finding the top N queries for a specific user.

Read more →
10/01/2017/0 Comments/by Zohar Elkayam/Estimated Reading Time: 2 Minutes
https://www.realdbamagic.com/wp-content/uploads/2026/10/real-dba-magic-logo-1200w.png 0 0 Zohar Elkayam https://www.realdbamagic.com/wp-content/uploads/2026/10/real-dba-magic-logo-1200w.png Zohar Elkayam2017-01-10 09:12:142026-11-03 15:45:08Script: Finding the Top N Queries for a User (AWR)

Fixing PRVF-0002 : Could not retrieve local nodename

Oracle

Here is a common question I get from junior DBAs (and operating system who tries to help by installing the Oracle Home themselves). The question sometimes sounds like this: “After we installed the new database server and changed its hostname, we try to install the Oracle Home using the runInstaller but hitting the following error: PRVF-0002: Could not retrieve local nodename. How do we resolve it?”.

prvf-0002

In terms of looks, the error message looks something like this (this is from Oracle 11g, but it also happens in other versions as well):

Indeed, a problem – but what can it be?

Read more →
05/01/2017/1 Comment/by Zohar Elkayam/Estimated Reading Time: 2 Minutes
https://www.realdbamagic.com/wp-content/uploads/2026/10/real-dba-magic-logo-1200w.png 0 0 Zohar Elkayam https://www.realdbamagic.com/wp-content/uploads/2026/10/real-dba-magic-logo-1200w.png Zohar Elkayam2017-01-05 10:26:382026-11-03 13:26:59Fixing PRVF-0002 : Could not retrieve local nodename
Page 2 of 11‹1234›»

  • English
    • עברית (Hebrew)

Subscribe

Enter your email address to subscribe to the blog, and never miss a post again!

Popular
  • spark plug
    Spark SQL and Oracle Database Integration03/07/2016 - 18:52
  • Automatic DB Startup: The Linux Part (OEL 6 and 7)13/03/2016 - 12:04
  • Moving a 3TB Database Datafiles With Only 2 Minute Down...02/09/2015 - 09:58
  • Installing Oracle 12.1.0.2 – Part 2: Creating an Inst...30/11/2014 - 10:37
Recent
  • Running High Scale Low Latency Database with Zero Data In...22/02/2022 - 19:36
  • Oracle Week 2017: Docker Concepts for Oracle/MySQL DBAs...28/11/2017 - 14:58
  • Closing Dataguard Transfer and Apply Gaps27/04/2017 - 13:13
  • Error ORA-14766: Unable To Obtain A Stable Metadata Sna...14/02/2017 - 14:50
Comments
  • emaplease help how to create fuction in detail step by st...04/03/2024 - 07:34 by ema
  • akshayvazeSuch a very useful blog. Very interesting to read this blog....14/08/2023 - 13:45 by akshayvaze
  • HemantHi, Nice Post, I am using RANDOM policy and want to restrict...14/04/2021 - 09:50 by Hemant
  • rehanwas it complete recovery in the end ?20/02/2021 - 23:57 by rehan
Tags
11gr2 12.1.0.2 12c aced analytic functions apache spark backup Big data dataguard data redaction DBIM devops doag2016 docker expdp glossophobia Hadoop howto impdp joke mysql NoSQL oow oow16 Oracle Oracle 12c Oracle 12c new features Oracle in memory option oracle sharding oug_scot performance personal PL/SQL presentations public speaking rac rman script security slides spark sql SQL sqlcl ThanksOTN user groups
© Copyright - Zohar Elkayam, Real DBA Magic, 2010-2022
  • Link to X
  • Link to LinkedIn
  • Link to Facebook
  • Home
  • Oracle
  • Big Data
  • Presentations
  • About
Scroll to top Scroll to top Scroll to top
Manage Consent
To provide the best experiences, we use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
  • Manage options
  • Manage services
  • Manage {vendor_count} vendors
  • Read more about these purposes
View preferences
  • {title}
  • {title}
  • {title}