----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/664/#review570 -----------------------------------------------------------
One minor comment: In both statspublisher and statsaggregator, you are executing multiple statements in the loop (iteration < numTries). It is possible that the first jdbc statement succeeds in the loop, but subsequent ones fail. It might be good to store a state to denote which ones have succeeded and not retry them. - namit On 2011-04-25 23:42:52, Ning Zhang wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/664/ > ----------------------------------------------------------- > > (Updated 2011-04-25 23:42:52) > > > Review request for hive. > > > Summary > ------- > > The major changes are: > > 0) 2 parameters are introduced: hive.stats.retries.max (default 0) to be the > maximum # of retries on SQLException failures, and hive.stats.retries.wait > (default 3 sec) to be the base time window (explained below) to wait before > the next retry. > > 1) introduced a couple of Utilities function to execute SQL queries with > retries on failures. One Utilities function is to determine the wait time > based on the number of failures and a base wait window (same as the one > introduced in HDFS-767 for DFSClient to retry on BlockMissingExceptions). The > actual wait time is determined by baseWindow * failues + baseWindow * > (failure + 1) * (random number between [0.0,1.0]). > > 2) changed the JDBCStatsAggregator.java to use PreparedStatement to be able > to use executeWithRetries(). > > 3) change the JDBCStatsPublisher.java and JDBCStasAggregator.java to use > retries on SQL connections and SQL executions. > > > Diffs > ----- > > trunk/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java 1096632 > trunk/conf/hive-default.xml 1096632 > trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/Utilities.java 1096632 > > trunk/ql/src/java/org/apache/hadoop/hive/ql/stats/jdbc/JDBCStatsAggregator.java > 1096632 > > trunk/ql/src/java/org/apache/hadoop/hive/ql/stats/jdbc/JDBCStatsPublisher.java > 1096632 > > Diff: https://reviews.apache.org/r/664/diff > > > Testing > ------- > > Running unit tests. > > > Thanks, > > Ning > >