Re: C-ISAM Coding Problem
Posted in 1995
In article <4as88d$8uf@usenet4.interramp.com>, garypfeffer@interramp.com says... >INFORMIX CISAM PROBLEM: > >dbselect(FILEOPEN,"datafile"); >dbstructview("datafile",fldatafile,DATAFLDS); >dbadd("datafile",&datafile); >dbfind("datafile",CURRENT+LOCK,(char *)0,&length,&datafile); >dbupdate("datafile",&datafile); As Glen said, if you are updating a field in a "bad" index, it can take an incredibly long time. On a table with about 50,000 records, with 20,000 values the same, I have been able to clock update times for a single update in dozens of seconds. If this -is- the problem, a quick and dirty workaround is to add a serial number to the table, then add the serial number to the end of your "bad" index. Given that this makes the index unique, it will sweeten the index considerably. In ISAM versions of the product, mysterious errors like this can also result from corrupted indexes. Check the indexes on the table(s) involved. As Jonathan notes, all this is part of ALL-II, a product that is not supported past Informix 5.0; if you ever expect to go to Informix 6 or Informix 7, it would be a good time to think about converting this to Informix ESQL or to Informix CLI. -- William Harris william@carsinfo.com CARS Information Systems 4000 Executive Park Drive Cincinnati, OH (USA) 45241