Tanel Poder

Tanel Poder

@tanelpoder.com

A long-time computer performance nerd. Creator of https://0x.tools. Perf & troubleshooting blog: tanelpoder.com. All onions are mine!

1.9K followers468 following335 posts

Pinned

Releasing an eBPF Runtime Reporter and Profiler tool (brr). I've used it for profiling eBPF programs themselves. It unifies bpftop-like utilization/event frequency monitoring with perf_events based CPU sampling, with source code line mapping. github.com/tanelpoder/b...

Tanel Poder reposted

What I’m hearing: Instagram’s Trust and Safery org absolutely gutted the last few weeks. ~60% of the org gone - between layoffs and forced reassignments to data labelling. All while “AI maxxing” pushed a bunch of bugs to prod. And hence why today’s massive Instagram account takeover happening.

Tanel Poder reposted

P99 Conf from @scylladb.com is looking for talks on eBPF 🐝 I've seen quite a few impressive talks there from the likes of Liz Rice, Tanel Poder, and Jose Fernandez. CfP is open until May 29th, let me know if you need help

sessionize.comP99 CONF 2026: Call for SpeakersAre you an engineer obsessed with P99 percentiles and high-performance, low-latency applications? Come share your most interesting approaches for solv...

Tanel Poder reposted

The LONG data type in Oracle Database is tricky to work with Sadly the partition high value column uses LONG 26ai eased this by adding CLOB and JSON versions of this But what if you're on older releases? @tanelpoder.com shows how to convert LONG to VARCHAR2 with PL/SQL

buff.lyGet Oracle Partition High Values as VARCHAR2 types instead of LONG in Oracle 19c and earlier - Tanel Poder BlogHere’s a little PL/SQL function create_partition_high_value_func.sql that allows you to write SQL queries against data dictionary for partition maintenance automation and examination operations, by…

Tanel Poder reposted

I've been busy in the last months! Announcing a brand new "Practical Exadata Performance" training course! I'm not aware of any other training *like this* offered in the world. 😎 Also, a *free* seminar! Exadata is an awesome platform, if used right! learn.tanelpoder.com

I've been busy in the last months! Announcing a brand new "Practical Exadata Performance" training course! I'm not aware of any other training *like this* offered in the world. 😎 Also, a *free* seminar! Exadata is an awesome platform, if used right! learn.tanelpoder.com

Tanel Poder reposted

Was doing some Exadata performance work and this question came up: "Where does the Exadata storage() predicate come from?" I wrote about it a while ago 😎 tanelpoder.com/2014/03/05/w... The inmemory() predicate works using similar logic: access_predicate on INMEMORY full table scan.

Was doing some Exadata performance work and this question came up: "Where does the Exadata storage() predicate come from?" I wrote about it a while ago 😎 tanelpoder.com/2014/03/05/w... The inmemory() predicate works using similar logic: access_predicate on INMEMORY full table scan.

Tanel Poder reposted

Imagine your team doing agentic coding in the codebase serving mills of customers without understanding how it works, and you get paged at 2 am, and since no one knows how the system works you need to ask LLM to tell you, and it gives you, wait for it... a PLAUSIBLE answer what might be wrong.

Tanel Poder reposted

My observation is that AI has sped up development of mainline, never before seen features at the median shop by ~1.2x. Undifferentiated backlog items move much faster, so does any new product line with no customers or load bearing infrastructure yet. Bottleneck is verification and review

Tanel Poder reposted

Another old but interesting blog post (2008!) An Oracle database may have duplicate (non-unique) ROWIDs (and data object IDs) when using transportable tablespaces. That's not a bug, Oracle guarantees ROWID uniqueness only at table level, not at DB level. tanelpoder.com/2008/10/21/t...

Another old but interesting blog post (2008!) An Oracle database may have duplicate (non-unique) ROWIDs (and data object IDs) when using transportable tablespaces. That's not a bug, Oracle guarantees ROWID uniqueness only at table level, not at DB level. tanelpoder.com/2008/10/21/t...

Tanel Poder reposted

Oxide and Friends is back, at a special time! @ahl.bsky.social and I will be joined by Oxide engineers Andrew Stone and Finch Foner to talk about how we build a quorum of trust in the distributed system that is the Oxide rack. Join us today at 2p Pacific/5p Eastern! discord.gg/QrcKGTTPrF?e...

discord.ggJoin the Oxide Computer Company & Friends Discord Server!The Oxide Computer Company and friends; home of the Oxide and Friends podcast. | 4928 members

Tanel Poder reposted

The number of citations in my Google Scholar profile just reached a new order of magnitude! 100 citations! 😅 The most cited item is a patent from 2015 about *transparently* offloading parts of RDBMS SQL exec plans to distributed engines & hybrid cloud. scholar.google.com/citations?us...

Tanel Poder reposted

Reasons why SELECT * is bad for SQL performance: An old blog (with Oracle-specific examples) with a whole range of reasons why. It's not only about network traffic and SQL plan execution, but client side processing and memory usage as well. tanelpoder.com/posts/reason...

I wrote an Oracle "ash_index_helper.sql" script 5 yrs ago, trying to pull all relevant info of top time-consuming *access paths* into one place, as a single SQL script. Summarize access paths to a schema or just one table/SQL. Too complex for a single script, time for AI? 😎

View full thread

I wrote an Oracle "ash_index_helper.sql" script 5 yrs ago, trying to pull all relevant info of top time-consuming *access paths* into one place, as a single SQL script. Summarize access paths to a schema or just one table/SQL. Too complex for a single script, time for AI? 😎

View full thread

But it became clear that more than just a single SQL query is needed, for example you wouldn't see a filter predicate on a table if CBO ended up doing a full scan and just throwing rows away much higher up in some hash join. I was going to write a Python tool or something...

I wrote an Oracle "ash_index_helper.sql" script 5 yrs ago, trying to pull all relevant info of top time-consuming *access paths* into one place, as a single SQL script. Summarize access paths to a schema or just one table/SQL. Too complex for a single script, time for AI? 😎

The idea was to start with only the access paths that consume the most response time or resources and then see how frequently the queries are actually executed *and* show cardinality estimates/filter factors ("needle in the haystack?") and propose *better* indexes (not more).

Tanel Poder reposted