> On Feb. 11, 2015, 7:22 p.m., Parth Chandra wrote: > > contrib/native/client/src/clientlib/drillClientImpl.cpp, line 313 > > <https://reviews.apache.org/r/30868/diff/1/?file=860716#file860716line313> > > > > Why don't we need to reset the io_service if this function returns with > > an error?
Could you please eloborate more. Do you mean we should performe an error checking to see if there is any errors? What I coudl see from the context is that we need to reset the io_service before using it for queries. as per documentation: io_service::reset Reset the io_service in preparation for a subsequent run() invocation. void reset(); This function must be called prior to any second or later set of invocations of the run(), run_one(), poll() or poll_one() functions when a previous invocation of these functions returned due to the io_service being stopped or running out of work. After a call to reset(), the io_service object's stopped() function will return false. This function must not be called while there are any unfinished calls to the run(), run_one(), poll() or poll_one() functions. - Alexander ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/30868/#review71988 ----------------------------------------------------------- On Feb. 11, 2015, 8:10 a.m., Xiao Meng wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/30868/ > ----------------------------------------------------------- > > (Updated Feb. 11, 2015, 8:10 a.m.) > > > Review request for drill, Alexander zarei, Norris Lee, and Parth Chandra. > > > Bugs: DRILL-1197 > https://issues.apache.org/jira/browse/DRILL-1197 > > > Repository: drill-git > > > Description > ------- > > It also > > - returns more detailed connection status for validate handshake. > - adds timeout options for query submitter. > > > Diffs > ----- > > contrib/native/client/example/querySubmitter.cpp 2d89223 > contrib/native/client/src/clientlib/drillClient.cpp 02bc1a4 > contrib/native/client/src/clientlib/drillClientImpl.hpp a5eeb77 > contrib/native/client/src/clientlib/drillClientImpl.cpp c832a79 > contrib/native/client/src/clientlib/errmsgs.hpp 9a69f21 > contrib/native/client/src/clientlib/errmsgs.cpp a5e7217 > contrib/native/client/src/include/drill/common.hpp f83aae4 > contrib/native/client/src/include/drill/drillClient.hpp 0204855 > > Diff: https://reviews.apache.org/r/30868/diff/ > > > Testing > ------- > > Tried with a long running query for query timeout. > https://github.com/apache/drill/blob/master/exec/java-exec/src/test/resources/queries/tpch/18.sql > > > ```bash > ./querySubmitter connectStr='zk=127.0.0.1:2181/drill/drillbits1' type=sql > api=async query='select c.c_name, c.c_custkey, o.o_orderkey, o.o_orderdate, > o.o_totalprice, sum(l.l_quantity) from cp.`tpch/customer.parquet` c, > cp.`tpch/orders.parquet` o, cp.`tpch/lineitem.parquet` l where o.o_orderkey > in ( select l_orderkey from cp.`tpch/lineitem.parquet` group by l_orderkey > having sum(l_quantity) > 300) and c.c_custkey = o.o_custkey and o.o_orderkey > = l.l_orderkey group by c.c_name, c.c_custkey, o.o_orderkey, o.o_orderdate, > o.o_totalprice order by o.o_totalprice desc, o.o_orderdate limit 100' > queryTimeout=1 > ``` > > > Thanks, > > Xiao Meng > >
