Since #1493 landed, the NodeReplicationPolicy is now checked using this function: https://github.com/NCEAS/metacat/blob/main/src/edu/ucsb/nceas/metacat/dataone/NodeReplicationPolicyChecker.java#L64
That check misses checking the NodeReplicationPolicy.spaceAllocated field, which is meant to limit the total space available for replication on a Node. Once that allocation limit has been reached, the Node should reject all replication requests which would put the value over the allocation limit, and the CN should stop directing replication requests to that node.
This is useful to complete #1493 and for #1615
The major limiting factor is that the CN will start rejecting the node once too many rejects occur, which might not be bad in this case as the replica target node is full so no more requests should go there. See comments from @taojing2002 in #1615 (comment)
Use case: we want to use this feature to limit the total available replication space on mn-ucsb-1, mn-unm-1, and mn-orc-1.
Since #1493 landed, the NodeReplicationPolicy is now checked using this function: https://github.com/NCEAS/metacat/blob/main/src/edu/ucsb/nceas/metacat/dataone/NodeReplicationPolicyChecker.java#L64
That check misses checking the
NodeReplicationPolicy.spaceAllocatedfield, which is meant to limit the total space available for replication on a Node. Once that allocation limit has been reached, the Node should reject all replication requests which would put the value over the allocation limit, and the CN should stop directing replication requests to that node.This is useful to complete #1493 and for #1615
The major limiting factor is that the CN will start rejecting the node once too many rejects occur, which might not be bad in this case as the replica target node is full so no more requests should go there. See comments from @taojing2002 in #1615 (comment)
Use case: we want to use this feature to limit the total available replication space on
mn-ucsb-1,mn-unm-1, andmn-orc-1.