Focal Point
[Solved] What's up with Absolute File Integrity

This topic can be found at:
https://forums.informationbuilders.com/eve/forums/a/tpc/f/7971057331/m/36310175

March 24, 2009, 03:46 PM
Dave Ayers
[Solved] What's up with Absolute File Integrity
We have a lot of databases with Absolute File Integrity turned on, in an AIX WebFocus 5.3 environment.

I can only find a few documents in an IBI 'Advanced' Search, and they really don't say very much.

Does anyone know anything about this feature ?

I can't tell from what I've found what benefits/costs it brings, and it's applicability to various WF versions and platforms.

TIA

This message has been edited. Last edited by: Dave Ayers,


Regards,
Dave

http://www.daveayers.com

WebFocus/Maintain 7.6.4-8
on Win2000 and 2003 Server
March 25, 2009, 04:20 AM
GamP
AFI, or Shadowing, is a means of working with FOCUS databases that will ensure that the data in the file is always correct (not content but the integrity of the file).
You activate it by first setting the shadow on (SET SHADOW=ON) and then create the focus database (CREATE FILE).
As of that moment the contents of the database is mirrored. Changes will be made to one part of the database, while requests for data collect it from the unchanged part. Only after a commit (or when the modify/maintain ends) the switch will be made to the changed instance of the database.
This will also have an effect on the maximum size of the databsae, since the mirror is placed within the same file. So the file will be doubled in size as opposed to the same file without AFI.
AFI is also supported by the FDS.

Hope this helps a bit ...


GamP

- Using AS 8.2.01 on Windows 10 - IE11.
in Focus since 1988
March 25, 2009, 04:06 PM
Dave Ayers
GamP,

Thanks for adding a few bits to what little I know.

I am surprised, and disappointed that I can find so little info on this feature with a search of IBI's site Frowner I would think that something would appear in some documentation ?? And, if I don't see much, are many others using it ?

I am still uneasy with my lack of understanding;

What is the interaction of AFI, SU, and SET COMMIT=ON ???

I have also heard of problems with Maintain locking out Modify procedures in this environment.

Anyone else know something about this ?


Regards,
Dave

http://www.daveayers.com

WebFocus/Maintain 7.6.4-8
on Win2000 and 2003 Server
March 25, 2009, 04:58 PM
j.gross
My recollection is that details of the scheme (to achieve "absolute file integerity" without page- or record-locks) were published in the System Journal. Then someone circulated a counter-example. That may explain why the details of the scheme are no longer posted.
March 26, 2009, 10:19 AM
Dave Ayers
All I could find by searching for Sys. journal articles was one by G. Cowan in 1988, talking about the new feature Smiler


Regards,
Dave

http://www.daveayers.com

WebFocus/Maintain 7.6.4-8
on Win2000 and 2003 Server
March 26, 2009, 10:36 AM
Danny-SRL
Dave,

AFI started with FOCUS on VM which provided this feature automatically for single FOCUS files. From there it was ported to MVS where it was implemented.

At that time the COMMIT and ROLLBACK commands of MODIFY did not exist. When it became apparent, that it was necessary to support complex transactions, COMMIT and ROLLBACK were implemented and for that to work, it was necessary to have the SET SHADOW option and double the size of FOCUS files.

Today, you have the 3 options:
SET SHADOW=OFF => no shadowing, no AFI
SET SHADOW=OLD => AFI, no shadowing
SET SHADOW=ON => shadowing, full commit/rollback support

I hope this clarifies.


Daniel
In Focus since 1982
wf 8.202M/Win10/IIS/SSA - WrapApp Front End for WF

March 31, 2009, 07:09 PM
Dave Ayers
While I still find this subject too 'shadowy' Smiler I'm closing this thread, because I am confident enough that we can eliminate AFI from our new Windows WF 7.6 server, by avoiding the SET SHADOW parm.

We have SET COMMIT=ON in edasprof to enable SU, but find that we have to SET COMMIT=OFF before any MODIFYs (of which we have many) to avoid an error pointing to AFI.

I got this info from Mark Derwin:

"I am pretty sure that the reason you are not finding much on this is that it is not needed on the Windows platform. My research is showing this was more on a Mainframe thing.

When using Maintain and SU, we state that you MUST have SET COMMIT=ON. This is less for the Commit / Rollback (although I am sure that is there as well) and more for certain code that Maintain needed.
When Maintain was dealing with Unique segments and combined structures, it was different than the old Modify code. So, the SET COMMIT=ON took
care of this.

I do not believe that you need to SET SHADOW=ON for Maintain and SU. Just set commit=on and you should be fine."


Regards,
Dave

http://www.daveayers.com

WebFocus/Maintain 7.6.4-8
on Win2000 and 2003 Server