Преди години работих върху DR база данни, която беше изцяло САМО ЗА ЧЕТЕНЕ и дори табличното пространство TEMP не беше за запис. Всяка заявка, която се опита да прехвърли към temp, ще се провали (дори ако временното пространство, което трябва да се използва, е доста тривиално).
Ако това е същата ситуация, не бих се изненадал, ако имаше login.sql (или glogin.sql или тригер за влизане), който прави ALTER SESSION, за да зададе по-голяма стойност на PGA паметта за сесията и/или променя целта на оптимизатора към FIRST_ROWS.
Ако можете, сравнете резултатите от следното от двата клиента:
изберете * от v$parameterwhere ismodified !='FALSE';
Също така от всеки клиент за проблемния SQL опитайте EXPLAIN PLAN FOR SELECT...и SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);
Вижте дали идва с различни планове за заявки.