How to install Tephra

63 views
Skip to first unread message

jessie.ji...@gmail.com

unread,
Sep 21, 2017, 6:18:31 PM9/21/17
to Tephra User
Hello there,

I've download and used maven to build tephra on hdp sandbox. It's a single node vm.

After the build completes, you will have a full binary distribution of Tephra under the tephra-distribution/target/ directory. Take the tephra-<version>.tar.gz file and install it on your systems.

How do I install the gz on the sandbox? Currently when I start ./bin/tephra start, it failed and the log file shows error " cannot find or load main class org.apache.tephra.TransactionServiceMain class.
Thank you for helping!

Jessie

jessie.ji...@gmail.com

unread,
Sep 21, 2017, 7:30:10 PM9/21/17
to Tephra User
Hello,

I used tar -xzf to install  the gz file,  and now tephra status shows that it's running
but when I try to follow the 
to create a table with transaction enabled, it errors out as "Thrift error co.cask.tephra.distributed.TransactionServiceClient unable to discover tx service"

In tephra log file an error shows Snapshot directory is not configured.

But I verified that hbase-site.xml has the property configured both in hbase-master and hbase-regserver folder.
I've manually make the directory in /tmp.
And I've restarted hbase service in Ambari.
Still the same error.
What should I do differently?

Thank you very much for helping out!

Jessie

Andreas Neumann

unread,
Sep 22, 2017, 1:45:23 PM9/22/17
to jessie.ji...@gmail.com, Tephra User
Hey Jessie, 

how do you add the Tephra properties to your hbase-site.xml? Are you doing it through Ambari? If not, then Ambari will overwrite your changes every time you restart HBase. Can you check whether these properties are still there after restart?

Best -Andreas

-- 
You received this message because you are subscribed to the Google Groups "Tephra User" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tephra-user...@googlegroups.com.
To post to this group, send email to tephr...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/tephra-user/124af2f5-410d-4683-8e19-fe240da52682%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

jessie.ji...@gmail.com

unread,
Sep 26, 2017, 11:50:01 AM9/26/17
to Tephra User
Hi Andreas, you were right! I need to change the hbase config via Ambari and restart hbase. 
I changed the file directly and it was overwritten.
I think it's working now. Thank you very much!

Jessie

Andreas Neumann

unread,
Sep 26, 2017, 11:55:03 AM9/26/17
to jessie.ji...@gmail.com, Tephra User
Great to hear. 

By the way, Tephra has become an Apache project and is now maintained there. You are probably working with an older release of Tephra, newer releases will be only at Apache:  http://tephra.apache.org/.
It would also be good to use the Apache mailing list for future discussions: http://tephra.apache.org/mail-lists.html

Best Regards -Andreas

jessie.ji...@gmail.com

unread,
Sep 26, 2017, 1:34:29 PM9/26/17
to Tephra User
Thanks for letting me know. I'll go there 

Jessie Lin

unread,
Sep 27, 2017, 12:50:47 AM9/27/17
to Tephra User, d...@tephra.incubator.apache.org
Hello all,

I might have missed some steps in deployment since there's still some issues in using transactions.
I added tephra-hbase-compat-1.1....jar to hbase server /lib folder and added the property as well

 <property>
    <name>hbase.coprocessor.region.classes</name>
    <value>org.apache.tephra.hbase.coprocessor.TransactionProcessor</value>
  </property>

But after restart HBase and tephra, phoenix sqlline failed and here's the error(screenshot below)
It complains that it cannot find locations. Does it sound odd? What should I do differently?
thank you for helping!

Jessie
Inline image 1


You received this message because you are subscribed to a topic in the Google Groups "Tephra User" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/tephra-user/KSe4Uzeknck/unsubscribe.
To unsubscribe from this group and all its topics, send an email to tephra-user+unsubscribe@googlegroups.com.

To post to this group, send email to tephr...@googlegroups.com.

Poorna Chandra

unread,
Oct 3, 2017, 9:51:42 PM10/3/17
to d...@tephra.incubator.apache.org, Tephra User
Hi Jessie,

From the error message it looks like the Phoenix driver is not able to connect to the Phoenix Query Service. It looks like there is some issue with the way Phoenix is configured here. Are you able to connect to Phoenix with transactions disabled?

Also note that the Apache email list does not support attaching images. I was able to see the image from the other list. It will be good if you can copy paste the error message from next time onwards.

The error message for reference:

[root@sandbox /usr/hdp/current/phoenix-client/bin/sqlline.py localhost 
Setting property: [incremental, false] 
Setting property: [isolation, TRANSACTION_READ_COMMITTED] 
issuing: !connect jdbc:phoenix:localhost none none org.apache.phoenix.jdbc.PhoenixDriver 
Connecting to jdbc:phoenix:localhost 
SLF41: Class path contains multiple SLF4] bindings. 
SLF41: Found binding in [jar:file:/usr/hdp/2.5.0.0-1245/phoenix/phoenix-4.7.0.2.5.0.0-1245-client.jarl/org/s1f4j/impl/StaticLoggerBinder.class] 
SLF41: Found binding in [jar:file:/usr/hdp/2.5.0.0-1245/hadoop/lib/s1f4j-log4j12-1.7.10.jarl/org/s1f4j/impl/StaticLoggerBinder.class] 
17/09/26 18:51:42 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 
17/09/26 18:51:44 WARN shortcircuit.DomainSocketFactory: The short-circuit local reads feature cannot be used because libhadoop cannot be loaded. 
Error: org.apache.hadoop.hbase.client.RetriesExhaustedException. Can't get the locations (state.,code=0) 
java.sql.SQLException: org.apache.hadoop.hbase.client. RetriesExhaustedException: Can't get the locations 
    at org.apache.phoenix.query.ConnectionQueryServicesImp1513.call(ConnectionQueryServicesImpl.java:2590) 
    at org.apache.phoenix.query.ConnectionQueryServicesImp1513.call(ConnectionQueryServicesImpl.java:2327) 
    at org.apache.phoenix.util.PhoenixContextExecutor.call(PhoenixContextExecutor.java:78) 
    at org.apache.phoenix.query.ConnectionQueryServicesImpl.init(ConnectionQueryServicesImpl.java:2327) 
    at org.apache.phoenix.jdbc.PhoenixDriver.getConnectionQueryServices(PhoenixDriver.java:233) 
    at org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.createConnection(PhoenixEmbeddedDriver.java:142) 
    at org.apache.phoenix.jdbc.PhoenixDriver.connect(PhoenixDriver.java:202) 
    at sqlline.DatabaseConnection.connect(DatabaseConnection.java:157) 
    at sqlline.DatabaseConnection.getConnection(DatabaseConnection.java:203) 
    at sqlline.Commands.connect(Commands.java:1064) 
    at sqlline.Commands.connect(Commands.java:996) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:498) 
    at sqlline.ReflectiveCommandHandler.execute(ReflectiveCommandHandler.java:36) 
    at sqlline.SqlLine.dispatch(SqlLine.java:804) 

Thanks,
Poorna.

Reply all
Reply to author
Forward
0 new messages