2.1.5.10.29.5 Algorithm for REFS_STREAM_SNAPSHOT_OPERATION_SET_SHADOW_BTREE

Given a DataStream (A), then:

  • If A is not the mutable entry in the list of all DataStreams within the file containing A, then the request must be failed with STATUS_NOT_SUPPORTED.

  • If A is already itself a shadow DataStream, then the request must be failed with STATUS_INVALID_PARAMETER.

  • A new DataStream is created, following the algorithm by REFS_STREAM_SNAPSHOT_OPERATION_CREATE with the exception that no such named attribute will exist for it. Let this DataStream be denoted as (B).

  • B is marked immutable, with A retaining its mutability.

  • A is marked as a shadow DataStream.

  • The operation is completed with STATUS_SUCCESS.<117>