Hi Thomas,

please ignore my last email, I wasn't running the sqlline.py command from
within the bin directory.
Now it works just fine!

Thanks!

On 18 June 2015 at 10:39, Yiannis Gkoufas <[email protected]> wrote:

> Hi Thomas,
>
> unfortunately just modifying the hbase-site in the current directory of
> phoenix didnt work.
> What I have now is:
>
> <configuration>
>   <property>
>     <name>hbase.regionserver.wal.codec</name>
>
> <value>org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec</value>
>   </property>
>     <property>
>     <name>phoenix.query.timeoutMs</name>
>     <value>1728000000</value>
>   </property>
> </configuration>
>
> On the regionservers I have as well:
>
> <property>
>     <name>phoenix.query.timeoutMs</name>
>     <value>1728000000</value>
>   </property>
>
> I have restarted them to take effect.
>
> But when I give UPDATE STATISTICS READINGS ALL; in sqlline.py
>
> I again get:
>
> Error: Operation timed out (state=TIM01,code=6000)
> java.sql.SQLTimeoutException: Operation timed out
>         at
> org.apache.phoenix.exception.SQLExceptionCode$14.newException(SQLExceptionCode.java:323)
>         at
> org.apache.phoenix.exception.SQLExceptionInfo.buildException(SQLExceptionInfo.java:145)
>         at
> org.apache.phoenix.iterate.BaseResultIterators.getIterators(BaseResultIterators.java:587)
>         at
> org.apache.phoenix.iterate.ConcatResultIterator.getIterators(ConcatResultIterator.java:50)
>         at
> org.apache.phoenix.iterate.ConcatResultIterator.currentIterator(ConcatResultIterator.java:97)
>         at
> org.apache.phoenix.iterate.ConcatResultIterator.next(ConcatResultIterator.java:117)
>         at
> org.apache.phoenix.iterate.BaseGroupedAggregatingResultIterator.next(BaseGroupedAggregatingResultIterator.java:64)
>         at
> org.apache.phoenix.iterate.UngroupedAggregatingResultIterator.next(UngroupedAggregatingResultIterator.java:39)
>         at
> org.apache.phoenix.compile.PostDDLCompiler$1.execute(PostDDLCompiler.java:225)
>         at
> org.apache.phoenix.schema.MetaDataClient.updateStatisticsInternal(MetaDataClient.java:856)
>         at
> org.apache.phoenix.schema.MetaDataClient.updateStatistics(MetaDataClient.java:773)
>         at
> org.apache.phoenix.jdbc.PhoenixStatement$ExecutableUpdateStatisticsStatement$1.execute(PhoenixStatement.java:842)
>         at
> org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:300)
>         at
> org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:292)
>         at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53)
>         at
> org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:290)
>         at
> org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStatement.java:1191)
>         at sqlline.Commands.execute(Commands.java:822)
>         at sqlline.Commands.sql(Commands.java:732)
>         at sqlline.SqlLine.dispatch(SqlLine.java:808)
>         at sqlline.SqlLine.begin(SqlLine.java:681)
>         at sqlline.SqlLine.start(SqlLine.java:398)
>         at sqlline.SqlLine.main(SqlLine.java:292)
>
>
> Thanks a lot for spending time on this
>
>
>
> On 17 June 2015 at 22:18, Yiannis Gkoufas <[email protected]> wrote:
>
>> Thanks a lot Thomas! That was very useful!
>>
>> On 17 June 2015 at 20:04, Thomas D'Silva <[email protected]> wrote:
>>
>>> If you are running a main class you can use the -cp option to specify
>>> the classpath.
>>> For squirrel maybe you can try to modify squirrel-sql.sh and add the
>>> hbase site location to the -cp flag that is used while starting
>>> squirrel.
>>>
>>> On Wed, Jun 17, 2015 at 11:35 AM, Yiannis Gkoufas <[email protected]>
>>> wrote:
>>> > Hi Thomas,
>>> >
>>> > thanks for the reply! So whats the case for squirel?
>>> > Or running a main class (which connects to phoenix) from a jar file?
>>> >
>>> > Thanks a lot!
>>> >
>>> > On 17 June 2015 at 19:31, Thomas D'Silva <[email protected]>
>>> wrote:
>>> >>
>>> >> Yiannis
>>> >>
>>> >> hbase-site.xml needs to be on the client's CLASSPATH in order to get
>>> >> picked up or else it will use the default timeout.
>>> >> When using sqlline it sets the CLASSPATH to the HBASE_CONF_PATH
>>> >> environment variable which default to the current directory.
>>> >> Try running sqlline directly from the bin directory.
>>> >>
>>> >> -Thomas
>>> >>
>>> >> On Wed, Jun 17, 2015 at 3:30 AM, Yiannis Gkoufas <
>>> [email protected]>
>>> >> wrote:
>>> >> > Hi there,
>>> >> >
>>> >> > I have failed to understand from the documentation where exactly to
>>> set
>>> >> > the
>>> >> > client configuration.
>>> >> > For the server, I think is clear that I have to modify
>>> hbase-site.xml of
>>> >> > my
>>> >> > hbase cluster.
>>> >> > But what is the case for the client? It requires to have
>>> hbase-site.xml
>>> >> > somewhere in the classpath?
>>> >> > Also how to apply those changes to sqlline.py ?
>>> >> > For instance, I was trying to use UPDATE STATISTICS on a pretty big
>>> >> > table
>>> >> > and I was getting timeout exceptions.
>>> >> >
>>> >> > Thanks a lot!
>>> >
>>> >
>>>
>>
>>
>

Reply via email to