Skip to main content

Posts

  Last week, I attended the traditional Percona event ( https://lnkd.in/g88-CfJZ ) at the Computer History Museum in Mountain View, California. First, I attended the keynote where Percona co-founders Peter Zaitsev and Vadim Tkachenko talked about the OurSQL Foundation and the open-source MySQL ecosystem. Michael Nosek also spoke about what Percona delivers for MySQL and what's coming next. After the break, I participated in multiple sessions throughout the day, including: "Migrating 155 SQL Server Databases to PostgreSQL at Scale: A Healthcare Success Story" by Avinash Vallarapu"Your AI DBA Will Hallucinate During an Outage" by Andrew Morgan"What’s New in PMM: Real-Time Entities, HA, and More (Live Demos)" by Tihomir Hadzhiev, and so on.
Recent posts
  I attended the Postgres Conference 2026 in San Jose, CA, yesterday, and I’m heading back for day two today. It's impressive to see how big tech companies are using and enhancing PostgreSQL.". I saw some great updates from Amazon (Aurora/RDS), Google (AlloyDB). Beyond the giants, it’s the specialized tools that really caught my eye—companies like Yugabyte and Neon (formerly CockroachDB/Constructive) are doing some really cool things with distributed and serverless Postgres. I also want to mention CloudNativePG. I attended a session by EDB engineers who provided comprehensive materials and a guided lab. Running PostgreSQL on Kubernetes is clearly the future. Finally, I heard from AWS engineers about the upcoming features in Amazon Aurora 18. I’ll post some photos soon, though some slides went by too fast for me to get a clear shot! 😉 Links : https://cloudnative-pg.io/ https://lnkd.in/gP3cHsWg https://lnkd.in/gP3cHsWg https://constructive.io/

Cannot access dba_directories inside procedure

 Recently I faced one of familiar Oracle error ORA -00942 : table or view does not exist   I got it in while compiling procedure, because eventually I found it became invalid state. I tried to create new directory and give read/write permission on it and change inside procedure, but it still was INVALID. But instead inside procedure I put hard code path of that directory it  was success. Like: create or replace procedure `procedure_name` ( `variable` IN varchar2 ) AS `variable` varchar2(2000) := '/../../dir'; begin     select ... into `variable` from dba_directories whhere directnory_name = '...';     ....     .... end; /  But it is not make sense. Then after google I found to overcome that issue, all I need to grant ALL on dba_directories to user not only READ, WRITE. As SYS grant all on dba_diretories to `user`' then I was able to compile successfully original procedure, no longer need to manipulate procedure. SQL> set linesize ...

How to fix : ORA-03113: end-of-file on communication channel

Today when I tried to open my db (that db was created and lunched inside container) I saw ORA-03113: end-of-file on communication channel. SQL> startup ORACLE instance started. Total System Global Area 3.4206E+10 bytes Fixed Size 2270360 bytes Variable Size 3422554984 bytes Database Buffers 3.0736E+10 bytes Redo Buffers 45649920 bytes Database mounted. ERROR at line 1: ORA-03113: end-of-file on communication channel Process ID: 11344 Session ID: 380 Serial number: 3 There is a lot of reason can be, after check it out from the forum all I need is clear unarchivelog. First start instance mount mode. SQL> startup mount ORACLE instance started. Total System Global Area 3.4206E+10 bytes Fixed Size 2270360 bytes Variable Size 3422554984 bytes Database Buffers 3.0736E+10 bytes Redo Buffers 45649920 bytes Database mounted.Database mounted. -check how many group we have: SQL> set linesize 200 SQL...

Fix ORA-01139: RESETLOGS option only valid after an incomplete database recovery

While shutting down my TEST database process was hanged. Then I had to use shutdown abort. But when I wanted to start database it did not open. SQL> select name from v$database; NAME --------- TEST SQL> shut abort; ORACLE instance shut down. SQL> startup mount ORACLE instance started. Total System Global Area 6597406720 bytes Fixed Size 2265664 bytes Variable Size 3204451776 bytes Database Buffers 3372220416 bytes Redo Buffers 18468864 bytes Database mounted. SQL> alter database open; alter database open * ERROR at line 1: ORA-03113: end-of-file on communication channel Process ID: 6552 Session ID: 191 Serial number: 3  What`s wrong?  SQL> alter database open resetlogs; ERROR:    ORA-03114: not connected to ORACLE    SQL> exit Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Pr...

ORA-29339: tablespace block size 16384 does not match configured block sizes

While I create non standart db_block_size tablespace I faced ORA-29339: tablespace block size 16384 does not match configured block sizes. 16k = 16*1024 = 16384 SQL> CREATE TABLESPACE DATA DATAFILE '/u01/app/oracle/oradata/cdb1/TEST/data01.dbf' SIZE 100M AUTOEXTEND ON NEXT 10M MAXSIZE 31G LOGGING DEFAULT NO INMEMORY EXTENT MANAGEMENT LOCAL AUTOALLOCATE BLOCKSIZE 16K SEGMENT SPACE MANAGEMENT AUTO FLASHBACK ON; ORA-29339 SQL> select name, block_size, current_size from v$buffer_pool; NAME BLOCK_SIZE CURRENT_SIZE -------------------- ---------- ------------ DEFAULT 8192 132096 Check db_*k_cache_size parameters SQL> show parameter cache_size NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ client_result_cache_size big integer 0 db_16k_cache_size big integer 0 db_2k_cache_size big integer 0 db_32k_cache_size bi...

Fix: ORA-13639: The current operation was interrupted because it timed out.

Sometimes SQL Tuning Advisor interrupts cause time limit took more than defined. You have to analyze it or increase value. Here you can see increasing of value. Example result of sql select                  execution_name, advisor_name,                  to_char(execution_start,'dd-mon-yy hh:mi:ss') execution_start,                  to_char(execution_end,'dd-mon-yy hh:mi:ss') execution_end, status,error_message from dba_advisor_executions where task_name = 'SYS_AUTO_SQL_TUNING_TASK' order by execution_start; Check value of TIME_LIMIT`s parameter : SQL> column parameter_value for A35 SQL> select parameter_name, parameter_value from dba_advisor_parameters where task_name = 'SYS_AUTO_SQL_TUNING_TASK' and parameter_name in ('TIME_LIMIT', 'DEFAULT_EXECUTION_TYP...