Class ParticipantPruningServiceGrpc.ParticipantPruningServiceImplBase

  • All Implemented Interfaces:
    io.grpc.BindableService
    Enclosing class:
    ParticipantPruningServiceGrpc

    public abstract static class ParticipantPruningServiceGrpc.ParticipantPruningServiceImplBase
    extends java.lang.Object
    implements io.grpc.BindableService
     Prunes/truncates the "oldest" transactions from the participant (the participant Ledger Api Server plus any other
     participant-local state) by removing a portion of the ledger in such a way that the set of future, allowed
     commands are not affected.
     This enables:
     1. keeping the "inactive" portion of the ledger to a manageable size and
     2. removing inactive state to honor the right to be forgotten.
     
    • Constructor Detail

      • ParticipantPruningServiceImplBase

        public ParticipantPruningServiceImplBase()
    • Method Detail

      • prune

        public void prune​(ParticipantPruningServiceOuterClass.PruneRequest request,
                          io.grpc.stub.StreamObserver<ParticipantPruningServiceOuterClass.PruneResponse> responseObserver)
         Prune the ledger specifying the offset before and at which ledger transactions should be removed. Only returns when
         the potentially long-running prune request ends successfully or with one of the following errors:
         - ``INVALID_ARGUMENT``: if the payload, particularly the offset is malformed or missing
         - ``UNIMPLEMENTED``: if the participant is based on a ledger that has not implemented pruning
         - ``INTERNAL``: if the participant has encountered a failure and has potentially applied pruning partially. Such cases
           warrant verifying the participant health before retrying the prune with the same (or a larger, valid) offset.
           Successful retries after such errors ensure that different components reach a consistent pruning state.
         - ``FAILED_PRECONDITION``: if the participant is not yet able to prune at the specified offset.
         
      • bindService

        public final io.grpc.ServerServiceDefinition bindService()
        Specified by:
        bindService in interface io.grpc.BindableService