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 <johngou...@gmail.com> wrote:

> Thanks a lot Thomas! That was very useful!
>
> On 17 June 2015 at 20:04, Thomas D'Silva <tdsi...@salesforce.com> 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 <johngou...@gmail.com>
>> 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 <tdsi...@salesforce.com>
>> 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 <johngou...@gmail.com
>> >
>> >> 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