I created a new index ONLINE. Thought that would cause no problems in
production.
However, one program reported errors:
> Program stopped at "/home/projekte/p3_neu/lib/f_vo_upd.4gl", line number
> 464.
> Date: 04.11.2009 Time: 18:51:54
>
> Program error at "/home/projekte/p3_neu/lib/f_vo_upd.4gl", line number
> 464.
> SQL statement error number -710.
>
> Table (informix.ap_da_v1) has been dropped, altered or renamed.
>
> SYSTEM error number -21523.
>
> Cannot proceed with a dirty/modified table data dictionary entry.
>
> SQL statement error number -710.
>
> Table (informix.ap_da_v1) has been dropped, altered or renamed.
>
> SYSTEM error number -21523.
>
> Cannot proceed with a dirty/modified table data dictionary entry.
>
>
Version of IDS is 11.50.FC5.
Is this a bug or did I understand something wrong?
TIA,
Reinhard.
Hi,
what's your onconfig param AUTO_REPREPARE set to?
If you reconnect your app this should go away, rebuilding an index on
the table changed the table metadata (i.e. version).
HTH
Davorin
AUTO_REPREPARE is set to "1". In onconfig it is claimed that this should
"Minimizes the occurrence of the -710 error."
The 4gl-program is quite old. Could that be the reason?
Thanks, Reinhard.
What are the sql statements that are producing the -710 errors?
"the database server does not support any other DDL operations on the
indexed table, until after the specified index has been built without
errors"
"By enabling the AUTO_REPREPARE configuration parameter, you can avoid
many -710 errors and reduce the number of reprepare and reoptimize
operations that you must perform manually after the schema of a table
is modified"
It says you can reduce the number of reprepare operations that are
required, not eliminate them completely.
https://www.ibm.com/developerworks/mydeveloperworks/blogs/idsteam/entry/automatic_re_prepare_in_ids
says
"You can still get -710 errors in your applications in one of the
following scenarios:
* The number and type of columns in your SELECT list have changed.
* If you are executing a prepared DDL statement, you might get
-710 errors.
* A rare race condition in the server can lead to a -710 error.
> "Habichtsberg, Reinhard" wrote
>
> The 4gl-program is quite old. Could that be the reason?
How old is old? I can imagine the very old SDK used in old 4GL is not capable of playing the re-prepare game. The data structures storing prepared statements and cursors changed awhile back, perhaps around 4GL version 4.2x, in concert with the 7 engines if memory serves correctly