Interesting. Of course, just because the index exists doesn’t mean the query planner will use it. I can’t remember off hand what happens when the join has that type of nested query. My first thought would be to run ANALYZE on a dev env and see what comes back. the hours long query would suggest tons of work cracking open json fields..