Go to the first, previous, next, last section, table of contents.


E.3 Consistency of a Distributed System

  1. This clause defines attributes and rules associated with verifying the consistency of a distributed program.

    Static Semantics

  2. For a prefix P that statically denotes a program unit, the following attributes are defined:
  3. P'Version
    Yields a value of the predefined type String that identifies
    the version of the compilation unit that contains the
    declaration of the program unit.
    
  4. P'Body_Version
    Yields a value of the predefined type String that identifies
    the version of the compilation unit that contains the body
    (but not any subunits) of the program unit.
    
  5. The version of a compilation unit changes whenever the version changes for any compilation unit on which it depends semantically. The version also changes whenever the compilation unit itself changes in a semantically significant way. It is implementation defined whether there are other events (such as recompilation) that result in the version of a compilation unit changing.

    Bounded (Run-Time) Errors

  6. In a distributed program, a library unit is consistent if the same version of its declaration is used throughout. It is a bounded error to elaborate a partition of a distributed program that contains a compilation unit that depends on a different version of the declaration of a shared passive or RCI library unit than that included in the partition to which the shared passive or RCI library unit was assigned. As a result of this error, Program_Error can be raised in one or both partitions during elaboration; in any case, the partitions become inaccessible to one another.


Go to the first, previous, next, last section, table of contents.