Error when viewing indexes (attemted fix inside)
Brought to you by:
clfarrell
I always get the following error when viewing the indexes of a table (Indexes/Log tab):
ORA-00604 : error occurred at recursive SQL level 1 ORA-00904: "from$_subquery$_004"."QCSJ_C004003_12": invalid identifier
After looking at the query used to fetch the indexes (get_index_columns() in index.c), I've noticed you're using the "with data as" syntax. I'm using the Oracle Instant Client on Linux to connect to a Oracle 9.2 server on Windows 2003. I assume this syntax isn't supported.
Replacing that query with a "select ... from ( ) data" works just as well.
I also had to replace it in update_table_indexes() in table.c
Logged In: YES
user_id=1343445
Originator: NO
That's interesting - I develop on 9.2.0.5 servers on Linux and Solaris and I've never had a problem with the 'WITH' syntax.
But anyway, thanks for the report; I'm going to apply the change so it just works.
Logged In: YES
user_id=1312539
Originator: NO
This Tracker item was closed automatically by the system. It was
previously set to a Pending status, and the original submitter
did not respond within 14 days (the time period specified by
the administrator of this Tracker).
Logged In: YES
user_id=1452922
Originator: YES
I've downloaded the latest version (1.84a) and the bug is still present (in create_describeWindow, get_index_columns and update_table_indexes).
It's weird because the "with data" syntax actually works in some case ( "with data as ( select 1 nb from dual ) select nb + 1 from data" for instance).