Re-Compile or Not

pako

New Member
Hi !!!.

Is necessary to re-compile my aplication if i add a new index ?. or just when the structure of the table changed ? (eg. add a new fields) ?

thanks in advanced
 
Adding a new index will change the table's CRC value. You will need to recompile any program that references that table (not necessarily the whole application)
 

pako

New Member
Norman Biggar said:
Adding a new index will change the table's CRC value. You will need to recompile any program that references that table (not necessarily the whole application)

pako again, i agree with you , but something strange is happened, because i added new index an the programs that references that table they didn't need recompile only the program that use these new index, why ?.

thanks in advanced.
 
Adding a new index MAY change the CRC of the table. It may not!

The programs that should need the new index will need to be recompiled to make them aware of it - they will continue to run with the old indices until the recompile is complete.

It is probably worth recompiling every program that references that table, since it may result in changes to multi-index resolution which may or may not be advantageous. I would certainly recommend it if you can.
 

livetocode

New Member
The follows changes in the meta-schema (caused by schema changes) will change a CRC for a table.

_File
_File-Name
_DB-lang

_Field
_Field-Name
_Data-Type
_dtype
_sys-field
_field-rpos
_Decimals
_Order
_Extent
_Fld-stdtype
_Fld-stlen
_Fld-stoff
_Fld-case

_Index
_Index-Name
_Unique
_num-comp

_Index-Field
(_Field-Name)*
_Ascending
_Abbreviate
_Unsorted

* _Field-Name for index fields is referenced in the _Field table using _Field-recid in _Index-Field.

Notice I said change not add, also if you want to live dangerously you can save the CRC of a table before schema changes and then put it back afterwards. _CRC field in _FILE record for table in question. I do not know but you could check the CRC of a table before you add a field and /or add an index and see if it changes. The Dynatext documentation on Progress expressed that only changes(deletes) altered the CRC value.
 
Top