nd4j-parameter-server-parent/nd4j-parameter-server-node/src/main/java/org/nd4j/parameterserver/distributed/messages/aggregations/VectorAggregation.java
@Override
    public void processMessage() {
        if (clipboard.isTracking(this.originatorId, this.getTaskId())) {
            clipboard.pin(this);

            if (clipboard.isReady(this.originatorId, taskId)) {
                VoidAggregation aggregation = clipboard.unpin(this.originatorId, taskId);

                // FIXME: probably there's better solution, then "screw-and-forget" one
                if (aggregation == null)
                    return;

                VectorCompleteMessage msg = new VectorCompleteMessage(taskId, aggregation.getAccumulatedResult());
                msg.setOriginatorId(aggregation.getOriginatorId());
                transport.sendMessage(msg);
            }
        }
    }
@Override
    public void processMessage() {
        if (clipboard.isTracking(this.originatorId, this.getTaskId())) {
            clipboard.pin(this);

            if (clipboard.isReady(this.originatorId, taskId)) {
                VoidAggregation aggregation = clipboard.unpin(this.originatorId, taskId);

                // FIXME: probably there's better solution, then "screw-and-forget" one
                if (aggregation == null)
                    return;

                VectorCompleteMessage msg = new VectorCompleteMessage(taskId, aggregation.getAccumulatedResult());
                msg.setOriginatorId(aggregation.getOriginatorId());
                transport.sendMessage(msg);
            }
        }
    }
Vector aggregations are saved only by Shards started aggregation process. All other Shards are ignoring this meesage