05. 02. 2018.

Number of columns in RPM Worksheet tables – impact on performance

This time I’ll explain a challenge that I had with optimization of RPM worksheet tables. Even if you have all elements of enterprise architecture tuned, there is still something you can do to speed up the Query or DML operations. Here I’ll present what impact from the physical design you can expect. All examples will […]

26. 12. 2017.

Calling PL/SQL functions from the SQL and it’s influence on query execution

In all books that I red about performance tuning in Oracle (and other major vendor) relational databases, you can find that when optimizing SQL, you remove the select part and concentrate on part starting with FROM clause to inspect what tables have been involved along with the WHERE clause. Recently I have a interesting case […]

01. 11. 2017.

Firefox NPAPI Java Plugin support and Flash support – part 2

Although I already published one article about NPAPI support and Firefox, it is not valid now, as all major web browsers are stop supporting add-ons like Java, Flash and Silverlight in recent versions. Mozilla Firefox in the next version 57, will have no add-ons at all, while the Microsoft Edge from first release has no […]

14. 10. 2017.

Working Effectively With Support on Oracle Retail Performance – Documentation Issue

Title of this article is from the Oracle Metalink note (Doc ID 444822.1) that describes how to collect performance related data when opening a new SR for Oracle Retail Performance issue. Inside that note you can find the following: For additional help in enabling tracing for Oracle Retail Java-based applications, please see Document 568004.1 – […]

13. 09. 2017.

How to clone Oracle Grid/Cluster database to a new server

Goal of this exercise is to clone Oracle database that is using Grid / Clusterware components to a separate server. Although you can find some articles on the Internet, problem is they are covering how to change the host name and/or IP address in case of Oracle Restart. This article will show you much more: […]

06. 09. 2017.

AWR migration between databases

This time I’ll explain AWR statistics migration between databases. This is not a new feature (available from 10g) but many DBA/Architects doesn’t know how to use it properly or even that this feature exist. Basically, the migration itself is very simple, and Oracle has provided scripts (awrextr.sql & awrload.sql) to make migartion as simple as […]

04. 08. 2017.

Chained rows and enq TX – Row Lock Contention

A couple of days ago, I’ve been called to solve integration interface issue between SAP and ReIM (ReIM is application within the Oracle Retail Suite). The main challenge when solving such issue is to find out where you should start with your analysis and to distinguish between what is the cause of the issue and […]

19. 07. 2017.

Streams AQ: enqueue blocked on low memory while using Data Pump utility in 11.2.0.4

While helping with migration of one Retail production system, I need to export certain schemas by using Data Pump utility. As the database is pretty small (about 3TB), I’ve just executed expdp command and expected it will finish within 2 to 3 hours. When I checked in the evening, on my surprise, Data Pump job […]

09. 07. 2017.

RPM performance issue in push_back_error_rows procedure of rpm_future_retail_sql during the CC (conflict check)

After quite a while I was beenrequested to solve an RPM performance issue. While executing conflict check procedure in rpm_future_retail package, duration of one SQL inside the procedure push_back_error_rows takes 36 times longer than average. Here is the SQL text responsible for performance degradation, that I want to expose to be sure it’s not a […]

06. 06. 2017.

DDL Against An Object Dependent On By A Synonym Invalidates The Synonym Object

It’s always the time to learn something new. If you missed to learn something during the day, it doesn’t mean you know everything. It just means you stop learning. In this case, I believe if I compile the package, that action won’t invalidate synonyms based on that package/procedure/function, as shown in the following example: create […]