aeron-archive/src/main/java/io/aeron/archive/client/ArchiveProxy.java
public boolean truncateRecording(
        final long recordingId, final long position, final long correlationId, final long controlSessionId)
    {
        truncateRecordingRequestEncoder
            .wrapAndApplyHeader(buffer, 0, messageHeaderEncoder)
            .controlSessionId(controlSessionId)
            .correlationId(correlationId)
            .recordingId(recordingId)
            .position(position);

        return offer(truncateRecordingRequestEncoder.encodedLength());
    }
public boolean truncateRecording(
        final long recordingId, final long position, final long correlationId, final long controlSessionId)
    {
        truncateRecordingRequestEncoder
            .wrapAndApplyHeader(buffer, 0, messageHeaderEncoder)
            .controlSessionId(controlSessionId)
            .correlationId(correlationId)
            .recordingId(recordingId)
            .position(position);

        return offer(truncateRecordingRequestEncoder.encodedLength());
    }
Truncate a stopped recording to a given position that is less than the stopped position. The provided position
must be on a fragment boundary. Truncating a recording to the start position effectively deletes the recording.

@param recordingId      of the stopped recording to be truncated.
@param position         to which the recording will be truncated.
@param correlationId    for this request.
@param controlSessionId for this request.
@return true if successfully offered otherwise false.