Ошибка говорит о том, что ваши индексы (возможно, не те, о которых вы думали) все еще плохие.
По вашей ссылке, если вы выполните запрос через SQL * PLUS, он запросит номер rdba. Введите значение из сообщения об ошибке «0x0240390b» (без кавычек). Это вернет номер файла и номер блока.
SELECT dbms_utility.data_block_address_file(
to_number(trim(leading '0' from
replace('&&rdba','0x','')),'XXXXXXXX')
) AS rfile#,
dbms_utility.data_block_address_block(
to_number(trim(leading '0' from
replace('&&rdba','0x','')),'XXXXXXXX')
) AS block#
FROM dual;
Далее выполните следующий запрос:
select owner, segment_name, segment_type
from dba_segments
where header_file = <rfile#>
and header_block = <block#>
Это даст вам ошибочный индекс, который будет удален и воссоздан.