Invalidate Dependent Nodes

The utility vovtouch toggles the status of the given nodes twice, so that each node passes through a state of being INVALID. The end state of each node depends on what state it started in.

The effect is that all dependent nodes are invalidated. This utility is generally used with primary inputs. This is commonly done to force a retrace of a portion of the design.

Unlike the UNIX utility touch, vovtouch does not change the timestamp of the files.

vovtouch

Toggles the status of the given nodes twice, so that each node passes through a state of being INVALID.


vovtouch: Usage Message

DESCRIPTION:
    
    Toggle the status of nodes twice following one of these
    sequences:

           Start                      Finish
        ----------------------------------------
           VALID    ->  INVALID  ->    VALID
           INVALID  ->   VALID   ->  INVALID
           FAILED   ->   VALID   ->  INVALID
    
    Nodes with status different from VALID, INVALID or FAILED
    are not affected.

    This has the effect of invalidating all dependent nodes.

USAGE:
     % vovtouch <node_descriptor> ...
     
     where the node descriptor is either the name of a file
     or the VovId of a node in the dependency graph.

OPTIONS:     
     -h
     -help            -- This message.
     -v               -- Increase verbosity.

EXAMPLES:
     % vovtouch aa
     % vovtouch 00023456  00023457

Comments

You can produce a similar effect of invalidating all dependent nodes using the command vovinvalidate.

The difference is that with vovinvalidate, the target nodes are changed to the INVALID state, while with vovtouch, the target nodes may end up back in a VALID state if it was in a VALID state to begin with.

vovinvalidate

Invalidate nodes in the dependency graph. The objects are typically files or jobs, which are passed by VovId or by file name, and sets, which are passed by name.


vovinvalidate: Usage Message

Invalidate nodes in the dependency graph.
The objects are typically files or jobs, which are
are passed by VovId or by file name, and sets, which are
passed by name.
   
USAGE: 

  vovinvalidate [OPTIONS] <nodeId> ...

OPTIONS:
  -help                  - Print this message.
  -h
  -v                         - Increase verbosity
  -force                     - Use the _FORCE suffix in vtk_node_change_status
  -silent                    - Do not print count of invalidated nodes.
  [-hier] -set <setName> ... - Invalidate given set by name. Repeatable.
                               Invalidate all subsets also with -hier.
  -dir         <dirname> ... - Invalidate jobs in given directories.
                               Repeatable.
  -subdirs     <dirname> ... - Same as -dir but recursive. Repeatable.
  -alljobs                   - Invalidate all jobs.
  -allnodes                  - Same as -alljobs (backwards compatibility).
  -why     <text_reason> ... - Optional reason for invalidation.
  -sickslave                 - Clears WHY and crash recovery-related
                               properties (for use with running/retracing 
                               jobs that are no longer attached to a slave).
  --                         - End value list for an option.

  EXAMPLES:
  
    % vovinvalidate filea fileb filec
    % vovinvalidate 00023456
    % vovinvalidate -sickslave 34567
    % vovinvalidate -dir .
    % vovinvalidate -set set1 set2 -- filea fileb 10332 10334
    % vovinvalidate -alljobs -why "Doing a clean build"