You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@phoenix.apache.org by "Francis Chuang (JIRA)" <ji...@apache.org> on 2018/09/14 00:46:00 UTC

[jira] [Commented] (PHOENIX-4886) Unable to discover tx service error

    [ https://issues.apache.org/jira/browse/PHOENIX-4886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16614197#comment-16614197 ] 

Francis Chuang commented on PHOENIX-4886:
-----------------------------------------

I am also seeing this problem, but my error is different. I am using Phoenix 5.0 and HBase 2.0.1.

Tephra does not start and I see the following in tephra's logs
{code:java}
2018-09-14 00:03:14,047 INFO [DefaultMetricsCollector STARTING] metrics.DefaultMetricsCollector (DefaultMetricsCollector.java:startUp(108)) - Started metrics reporter
2018-09-14 00:03:15,353 WARN [HDFSTransactionStateStorage STARTING] util.NativeCodeLoader (NativeCodeLoader.java:<clinit>(60)) - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Exception in thread "HDFSTransactionStateStorage STARTING" java.lang.NoSuchMethodError: org.apache.hadoop.security.authentication.util.KerberosUtil.hasKerberosKeyTab(Ljavax/security/auth/Subject;)Z
2018-09-14 00:03:16,085 INFO [leader-election-tx.service-leader] distributed.TransactionService (TransactionService.java:leader(115)) - Transaction Thrift Service didn't start on /0.0.0.0:15165
at org.apache.hadoop.security.UserGroupInformation.<init>(UserGroupInformation.java:715)
at org.apache.hadoop.security.UserGroupInformation.loginUserFromSubject(UserGroupInformation.java:925)
at org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:873)
at org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:740)
at org.apache.hadoop.fs.FileSystem$Cache$Key.<init>(FileSystem.java:3472)
at org.apache.hadoop.fs.FileSystem$Cache.getUnique(FileSystem.java:3310)
at org.apache.hadoop.fs.FileSystem.newInstance(FileSystem.java:529)
at org.apache.tephra.persist.HDFSTransactionStateStorage.startUp(HDFSTransactionStateStorage.java:104)
at com.google.common.util.concurrent.AbstractIdleService$1$1.run(AbstractIdleService.java:43)
at java.lang.Thread.run(Thread.java:748)
Exception in thread "ThriftRPCServer" com.google.common.util.concurrent.ExecutionError: java.lang.NoSuchMethodError: org.apache.hadoop.security.authentication.util.KerberosUtil.hasKerberosKeyTab(Ljavax/security/auth/Subject;)Z
at com.google.common.util.concurrent.Futures.wrapAndThrowUnchecked(Futures.java:1008)
at com.google.common.util.concurrent.Futures.getUnchecked(Futures.java:1001)
at com.google.common.util.concurrent.AbstractService.startAndWait(AbstractService.java:220)
at com.google.common.util.concurrent.AbstractIdleService.startAndWait(AbstractIdleService.java:106)
at org.apache.tephra.TransactionManager.doStart(TransactionManager.java:245)
at com.google.common.util.concurrent.AbstractService.start(AbstractService.java:170)
at com.google.common.util.concurrent.AbstractService.startAndWait(AbstractService.java:220)
at org.apache.tephra.distributed.TransactionServiceThriftHandler.init(TransactionServiceThriftHandler.java:249)
at org.apache.tephra.rpc.ThriftRPCServer.startUp(ThriftRPCServer.java:177)
at com.google.common.util.concurrent.AbstractExecutionThreadService$1$1.run(AbstractExecutionThreadService.java:47)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NoSuchMethodError: org.apache.hadoop.security.authentication.util.KerberosUtil.hasKerberosKeyTab(Ljavax/security/auth/Subject;)Z
at org.apache.hadoop.security.UserGroupInformation.<init>(UserGroupInformation.java:715)
at org.apache.hadoop.security.UserGroupInformation.loginUserFromSubject(UserGroupInformation.java:925)
at org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:873)
at org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:740)
at org.apache.hadoop.fs.FileSystem$Cache$Key.<init>(FileSystem.java:3472)
at org.apache.hadoop.fs.FileSystem$Cache.getUnique(FileSystem.java:3310)
at org.apache.hadoop.fs.FileSystem.newInstance(FileSystem.java:529)
at org.apache.tephra.persist.HDFSTransactionStateStorage.startUp(HDFSTransactionStateStorage.java:104)
at com.google.common.util.concurrent.AbstractIdleService$1$1.run(AbstractIdleService.java:43)
... 1 more{code}

> Unable to discover tx service error
> -----------------------------------
>
>                 Key: PHOENIX-4886
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-4886
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 5.0.0
>         Environment: HBASE 2.0,  apache-phoenix-5.0.0-HBase-2.0-bin  hadoop-3.1.0
>            Reporter: cherish peng
>            Priority: Blocker
>              Labels: HBASE, HBASE2.0, Transactions, tephra
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
>  I need to create a table with Transactional=true option, like this:
> CREATE IMMUTABLE TABLE IF NOT EXISTS events_cessions (
>  domain VARCHAR(24) NOT NULL,
>  name VARCHAR(24) NOT NULL
>  CONSTRAINT pk PRIMARY KEY (domain, name)
>  ) IMMUTABLE_STORAGE_SCHEME=ONE_CELL_PER_COLUMN, COLUMN_ENCODED_BYTES=NONE, TRANSACTIONAL=TRUE;
> {color:#d04437}throw `Unable to discover transaction service.`{color}
> I had found this article: [Unable to discover tx service error|[http://apache-phoenix-user-list.1124778.n5.nabble.com/Unable-to-discover-tx-service-error-td2851.html]|http://apache-phoenix-user-list.1124778.n5.nabble.com/Unable-to-discover-tx-service-error-td2851.html],]
> After having *{color:#f79232}both configurations (client + server) in each hbase-site.xml{color}* files follow this article: [https://phoenix.apache.org/transactions.html] 
> I aslo add `export HBASE_HOME=/godalgo/hbase-2.0.0` to tephra-env.sh
> when i command `{color:#f79232}tephra start{color}`,  In the {color:#f79232}tephra log{color}, throw:
> {code:java}
> Exception in thread "main" java.lang.NoClassDefFoundError: com/google/inject/internal/util/$Maps at com.google.inject.assistedinject.BindingCollector.<init>(BindingCollector.java:34) at com.google.inject.assistedinject.FactoryModuleBuilder.<init>(FactoryModuleBuilder.java:206) at org.apache.tephra.runtime.TransactionDistributedModule.configure(TransactionDistributedModule.java:71) at com.google.inject.AbstractModule.configure(AbstractModule.java:62) at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:340) at com.google.inject.spi.Elements.getElements(Elements.java:110) at com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:138) at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:104) at com.google.inject.Guice.createInjector(Guice.java:96) at com.google.inject.Guice.createInjector(Guice.java:73) at com.google.inject.Guice.createInjector(Guice.java:62) at org.apache.tephra.TransactionServiceMain.start(TransactionServiceMain.java:103) at org.apache.tephra.TransactionServiceMain.doMain(TransactionServiceMain.java:85) at org.apache.tephra.TransactionServiceMain.main(TransactionServiceMain.java:49) Caused by: java.lang.ClassNotFoundException: com.google.inject.internal.util.$Maps at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 14 more 2018-09-03 11:15:27,678 INFO  [Thread-0] tephra.TransactionServiceMain: Stopping TransactionServiceMain
> {code}
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)