steveloughran commented on code in PR #3079: URL: https://github.com/apache/parquet-java/pull/3079#discussion_r1863799758
########## parquet-hadoop/src/main/java/org/apache/parquet/hadoop/util/wrapped/io/FutureIO.java: ########## @@ -70,6 +70,29 @@ public static <T> T awaitFuture(final Future<T> future, final long timeout, fina } } + /** + * Given a future, evaluate it. + * <p> + * Any exception generated in the future is + * extracted and rethrown. + * </p> + * @param future future to evaluate + * @param <T> type of the result. + * @return the result, if all went well. + * @throws InterruptedIOException future was interrupted + * @throws IOException if something went wrong + * @throws RuntimeException any nested RTE thrown + */ + public static <T> T awaitFuture(final Future<T> future) + throws InterruptedIOException, IOException, RuntimeException { + try { + return future.get(); + } catch (InterruptedException e) { + throw (InterruptedIOException) new InterruptedIOException(e.toString()).initCause(e); Review Comment: `initCause()` returns a throwable; you need to case it back to what the actual exception is -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@parquet.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@parquet.apache.org For additional commands, e-mail: issues-h...@parquet.apache.org