<R, E extends Throwable> R readRecord(final int recordId,
                                        final @NotNull RecordReader<R, E> reader) throws E, IOException;
<R, E extends Throwable> R readRecord(final int recordId,
                                        final @NotNull RecordReader<R, E> reader)