Просторы интернета

19 Февраль 2015
Earlier
Ср, Июл 12, 2023

A fairly common question about parallel DML is: “Why isn't it happening?” A fairly common (correct) answer to this question is: “Because you haven't enabled it.” Unlike parallel query and parallel DDL which are enabled by default parallel DML could cause strange deadlocking side-effects so you have to enable it [...]

Source: jonathanlewis.wordpress.com
Пн, Июн 26, 2023

Here's an example of reading an execution plan that appeared on one of the Oracle forums recently. It's a simple example, made harder by the initial (costmetic) presentation of the problem. Essentially the owner has said:

Here's a query that's taking too long. Here's a bit of the query that [...]
Source: jonathanlewis.wordpress.com
Пн, Июн 26, 2023
Во время периодически наблюдаемых (с коллегой Николаем Грузинцевым) приостановок выполнения заданий Scheduler Jobs, процесс CJQ0 (Job Queue Coordinator) периодически отвлекался от выполнения прямых обязанностей/координации, не всегда быстро, но неизменно параллельно выполняя служебные запросы типа a6frhy5cw03g6 и bmcj2k06ncg3y (*): с примечательными комментариями, отключенным SQL-мониторингом и указанием на допустимость непараллельного выполнения (NO_STATEMENT_QUEUING): [...]
Source: iusoltsev.wordpress.com
Пн, Июн 19, 2023

The three laws of Oracle DBAs (with apologies to Isaac Asimov)

First Law: An Oracle DBA may not harm data or, through inaction, allow data to come to harm. Second Law: An Oracle DBA must ensure that the database is highly available provided such availability does not conflict with the First law. Third [...]
Source: jonathanlewis.wordpress.com
Пт, Июн 16, 2023
Отображение в ASH sql-выполнений c PHV=0 успешно продолжается и, поскольку часто требуется оценить производительность/возможность ускорения запроса средствами SQL Plan Management (SPM) и кол-во выполнений может быть небольшим, желательно точно определить план в том числе для таких не совсем типичных выполнений Тем более, что в отличие от 12c, в версиях 19c [...]
Source: iusoltsev.wordpress.com
Вт, Июн 13, 2023

Here's a problem that appeared on the Oracle-L list server a little while ago. It features an Exadata system with a “very large” GTT (global temporary table) and a pair of queries that are repeated frequently, using a different literal value on each repetition of the pair.

The queries, with [...]

Source: jonathanlewis.wordpress.com
Пт, Апр 28, 2023
Крайне ожидаемое улучшение — Improved System Monitor (SMON) Process Scalability: …SMON is responsible for cleaning up temporary segments that are no longer in use. SMON checks regularly to see whether it is needed, and other processes can call SMON. Temporary space management can affect SMON's scalability for other critical actions. [...]
Source: iusoltsev.wordpress.com
Пн, Апр 17, 2023
Стандарный OEBS запрос 1ap5awtfdvhp9, не меняя простого плана выполнения по стандартному индексу: , значительно увеличил среднее время выполнения (ELA_PER_EXEC) в сравнении с предыдущим месяцем: , совместно с кол-вом читаемых блоков на выполнение GETS_PER_EXEC без значительного изменения ожиданий и — важно — без какого-либо взрывного роста сегментов данных запроса — таблицы [...]
Source: iusoltsev.wordpress.com
Вс, Апр 02, 2023
Ободрившись схожестью описываемых и наблюдаемых симптомов, включая: и тем фактом, что The fix for 32753472 is first included in 19.13.0.0.DBRU (т.е. включён в процесс DBRU и в составе работающих систем версии 19.13 проблем не вызывает), установили патч на нагруженную тестовую систему версии 19.10 со следующим неприятным рез-том: — где "снежные [...]
Source: iusoltsev.wordpress.com
Пт, Мар 03, 2023

Here's a little quiz that came to light on a database running 11g. It's one of those anomalies that is likely to get noticed only in fairly extreme cases and it's about DDL rather than DML so it shouldn't be happening very often on anyone's system.

Read through the following script [...]

Source: jonathanlewis.wordpress.com
Пт, Фев 10, 2023

A historic complaint about the result cache was that it did not scale. Although this complaint was often the consequence of the mechanism was being used inappropriately, there was an underlying issue that imposed a limit on how scalable (in terms of concurrency) the cache could be: it was covered [...]

Source: jonathanlewis.wordpress.com
Чт, Фев 09, 2023

This note is just a little background for an impending article on the costs and effects of exchanging partitions, splitting partitions, merging partitions – or any other DDL on partitions except dropping them – in the light ofr “deferred global index maintenance”.

Summary Information: while a “typical” rowid is stored in [...]

Source: jonathanlewis.wordpress.com
Чт, Фев 02, 2023

This is a list of articles I've written that pick up some details (usually problems or bugs) when upgrading. Each entry has a date stamp and a short note of the contents. The articles are generally listed most-recent first but the catalogue is in two sections: Benefits and Bugs and [...]

Source: jonathanlewis.wordpress.com
Ср, Фев 01, 2023

A question appeared recently in a comment on a blog note I wrote about the new (in 12c) deferred global index maintenance that allowed the execution of a drop partition to return very quickly. The question was in two parts:

Why is an exchange partition so slow by comparison? Is there [...]
Source: jonathanlewis.wordpress.com
Ср, Фев 01, 2023

At present this is just a place holder to remind me to finish commenting on (and correcting) a mistake I made when I wrote a note about the number of bytes of data you could get into an “enable storage in row” LOB before it had to be stored [...]

Source: jonathanlewis.wordpress.com
Пн, Янв 30, 2023

I've commented previously on the “new” cost-based Or-Expansion introduced in 12c to replace the “legacy” Concatenation transformation, and I've been re-running some of my concatenation scripts to see whether the most recent versions of the optimizer will use Or-expansion unhinted in places where I've previously had to use hints [...]

Source: jonathanlewis.wordpress.com
Сб, Янв 28, 2023

This example appeared quite recently on one of the public Oracle Forums, and the person who posted it had already worked out (the important bit of) what was going on before anyone asked for more information or supplied any suggestions for action (although there was one response pointing to [...]

Source: jonathanlewis.wordpress.com
Пт, Янв 27, 2023
На инстансах EBS в зависимости от кол-ва и интенсивности дочерних процессов Concurrent Manager-ов общего назначения (****) можно видеть активные запросы типа: — при этом первые 2 (в этом случае) запроса непосредственно от дочерних процессов Concurrent Manager-ов выполняются со стабильным и совпадающим PLAN_HASH_VALUE: , а запросу с заметным кол-вом выполнений sql_id [...]
Source: iusoltsev.wordpress.com
Чт, Янв 26, 2023

Here are the introductory comments I made at a recent “Ask me Anything” session about indexing arranged by the All India Oracle User Group:

There are 4 fundamental thoughts that you need to bear in mind whenever you're thinking about what indexes your application needs:

The intent of indexing is to [...]
Source: jonathanlewis.wordpress.com
Вс, Янв 15, 2023

Here's a little extract from one of my “snap instance activity stats” packages picking out the figures where the upper case of the statistic name is like ‘%PARALLEL%'. I was very careful that nothing except one of my SQL*Plus sessions had done anything in the few seconds between the start [...]

Source: jonathanlewis.wordpress.com
Ср, Янв 11, 2023

I may have given the answers to this little puzzle elsewhere on the blog already, but if so I can't find where, and it's worth a linttle note of its own.

I have a non-partitioned heap table that is a subset of all_objects, and I'm going to execute a series [...]

Source: jonathanlewis.wordpress.com
Пт, Янв 06, 2023

Here's a query that appeared on the MOS “SQL Performance” forum (needs a support account) with the request: “Can someone please assist me to optimize this query?”

It looks like a nice simple query (though looks can be deceiving) so I thought I'd use it as another example on [...]

Source: jonathanlewis.wordpress.com
Вт, Дек 20, 2022
Если вы не видете список вакансий, возможно у вас включен адблокер. [...]
Source: OracleForBeginners
Пн, Дек 05, 2022

This is nothing more than a basic update of a note that I wrote 8 years ago. The update was triggered by a brief comment made by Martin Widlake at the recent UKOUG annual conference “Breakthrough 2022” in Birmingham. In his presentation on “wide tables”, he mentioned row migration and [...]

Source: jonathanlewis.wordpress.com
Пн, Ноя 28, 2022

There's a question on the MOSC forum (needs an account) at present that started with the performance of the datapump API over a database link but moved on to the topic of how to handle a scenario that I've described in the past involving a table where rows [...]

Source: jonathanlewis.wordpress.com
Пн, Ноя 21, 2022

An email on the Oracle-L list server a few days ago described a performance problem that had appeared after an upgrade from 11.2.0.4 to 19c (19.15). A long running statement (insert as select, running parallel 16) that had run to completion in 11g using about 20GB of temporary space (with [...]

Source: jonathanlewis.wordpress.com
Ср, Ноя 16, 2022

I've just discovered that the space management bitmaps for the tablespace I normally use in my 21c tests are broken. In a tablespace that's supposed to be completely empty a query of dba_free_space shows 4 gaps totalling several thousand blocks:

SQL> select * from dba_free_space where tablespace_name = 'TEST_8K_ASSM'; TABLESPACE_NAME [...]
Source: jonathanlewis.wordpress.com
Вт, Ноя 15, 2022

I wrote a batch of notes about the opt_estimate() hint a couple of years ago, including one where I explained the option for using the hint to specify the number of rows in a query block. I've just come across a particular special case for that strategy that others [...]

Source: jonathanlewis.wordpress.com
Ср, Ноя 02, 2022

Oracle 12c introduced Partial indexing and sometimes it works fine for simple partitioned tables with literals, but it has a few problems.

For example, consider the following simple partitioned table:

create table t2 ( pkey int not null, val int, padding varchar2(100) ) partition by range(pkey) ( partition p1_on [...]
Source: orasql.org
Ср, Ноя 02, 2022

Oracle 12c introduced Partial indexing, which works well for simple partitioned tables with literals. However, it has several significant issues:

For instance, consider the following simple partitioned table:

create table t2 ( pkey int not null, val int, padding varchar2(100) ) partition by range(pkey) ( [...]
Source: orasql.org
Комментирование отключено.