Once again about GDB

A really great post from Frits Hoogland has appeared recently How to obtain semaphore information in gdb when the symbols are missing. Methodology described there can be used much wide actually, not limited to standard libraries but rather you can apply really any structure on Oracle internal structures. I have tried to reproduce results of … Continue reading Once again about GDB

Session stats locations summary

Here I am publishing a location of pointer to session stats array (as offset from session address - v$session.saddr) for various Oracle versions: Oracle versionOffset of session stats pointerSome gdb command example 12.10x628 watch *(*(0x000000006AFD7830+0x628) +8*108) 12.2c0x820 watch *(*(0x000000006AFD7830+0x820) +8*108) 18.3c0x848 watch *(*(0x000000006AFD7830+0x848) +8*108) 19.30x7f8 watch *(*(0x000000006AFD7830+0x7f8) +8*108)  Those examples above show how to use … Continue reading Session stats locations summary

Cursors related parameters

1367 557 _row_cache_cursors 20 number of cached cursors for row cache management 1394 572 _cursor_features_enabled 2 Shared cursor features enabled bits. 1397 575 _cursor_stats_bucket 15 Hash table buckets for cursor stats (2^). 1398 576 _cursor_stats_heap 4 Heaps/latches for cursor stats. 1459 5B3 _fast_cursor_reexecute FALSE use more memory in order to get faster execution 1460 5B4 … Continue reading Cursors related parameters

Dynamic sampling summary

In this post I'm going to summarize issues and strange behavior I've mentioned in my previous 2 posts: Oracle 11.2 Oracle 12.2 Empty stats Wrong stats Empty stats Wrong stats A single DYNAMIC_SAMPLING(10) hint Correct Wrong result Correct Wrong result A single DYNAMIC_SAMPLING_EST_CDN hint Almost correct Wrong result Almost correct Wrong result DYNAMIC_SAMPLING(10) and DYNAMIC_SAMPLING_EST_CDN … Continue reading Dynamic sampling summary