Ashish, Did you see these directions here: https://phoenix.apache.org/transactions.html? Thanks, James
On Fri, Nov 4, 2016 at 4:01 PM, Poorna Chandra <[email protected]> wrote: > Hi Ashish, > > Is phoenix.transactions.enabled property set in hbase-site.xml on the > client side? Not setting that could be one of the reasons for the NPE. > > Thanks, > Poorna. > > > On Thu, Nov 3, 2016 at 7:02 PM, ashish tapdiya <[email protected]> > wrote: > >> Hi Poorna, >> >> jps showed that process was running however logs had error related to >> tx.data.dir not setup correctly. I added data.tx.snapshot.dir to client as >> well and then logs didn't show any error and I was able to create schema. >> >> However, now when I try to populate a table created with >> transactional=true, it fails >> >> 1) Error thorugh mapreduce bulk loader: >> Error: java.lang.RuntimeException: java.lang.NullPointerException >> at org.apache.phoenix.mapreduce.FormatToBytesWritableMapper.map >> (FormatToBytesWritableMapper.java:202) >> at org.apache.phoenix.mapreduce.FormatToBytesWritableMapper.map >> (FormatToBytesWritableMapper.java:74) >> at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:145) >> at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java: >> 784) >> at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341) >> at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:163) >> at java.security.AccessController.doPrivileged(Native Method) >> at javax.security.auth.Subject.doAs(Subject.java:415) >> at org.apache.hadoop.security.UserGroupInformation.doAs(UserGro >> upInformation.java:1692) >> at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158) >> Caused by: java.lang.NullPointerException >> at org.apache.tephra.TransactionContext.start(TransactionContex >> t.java:91) >> at org.apache.phoenix.execute.MutationState.startTransaction(Mu >> tationState.java:422) >> at org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixState >> ment.java:339) >> at org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixState >> ment.java:332) >> at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53) >> at org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(Pho >> enixStatement.java:331) >> at org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStat >> ement.java:250) >> at org.apache.phoenix.jdbc.PhoenixPreparedStatement.execute(Pho >> enixPreparedStatement.java:172) >> at org.apache.phoenix.jdbc.PhoenixPreparedStatement.execute(Pho >> enixPreparedStatement.java:177) >> at org.apache.phoenix.util.csv.CsvUpsertExecutor.execute(CsvUps >> ertExecutor.java:86) >> at org.apache.phoenix.util.csv.CsvUpsertExecutor.execute(CsvUps >> ertExecutor.java:46) >> at org.apache.phoenix.util.UpsertExecutor.execute(UpsertExecuto >> r.java:133) >> at org.apache.phoenix.mapreduce.FormatToBytesWritableMapper.map >> (FormatToBytesWritableMapper.java:171) >> >> >> 2) Error through psql.py >> ERROR util.CSVCommonsLoader: Error upserting record >> >> Thanks, >> Ashish >> >> On Thu, Nov 3, 2016 at 8:25 PM, Poorna Chandra <[email protected]> wrote: >> >>> Hi Ashish, >>> >>> Looks like transaction manager may not be running. Is the transaction >>> manager running? If so, can you look into the transaction manager log to >>> see if there are any errors? >>> >>> Thanks, >>> Poorna. >>> >>> >>> On Thu, Nov 3, 2016 at 10:20 AM, ashish tapdiya <[email protected] >>> > wrote: >>> >>>> Hi, >>>> >>>> I am trying to create transactional tables and during table creation >>>> following error is thrown (phoenix version is 4.8.1): >>>> >>>> >>>> java.lang.RuntimeException: java.lang.Exception: Thrift error for >>>> org.apache.tephra.distributed.TransactionServiceClient$2@6ea02a8d: >>>> Unable to discover tx service. >>>> at com.google.common.base.Throwables.propagate(Throwables.java: >>>> 160) >>>> at org.apache.tephra.distributed.TransactionServiceClient.start >>>> Short(TransactionServiceClient.java:268) >>>> at org.apache.tephra.TransactionContext.start(TransactionContex >>>> t.java:91) >>>> at org.apache.phoenix.execute.MutationState.startTransaction(Mu >>>> tationState.java:422) >>>> at org.apache.phoenix.util.TransactionUtil.getTableTimestamp(Tr >>>> ansactionUtil.java:99) >>>> at org.apache.phoenix.schema.MetaDataClient.createTableInternal >>>> (MetaDataClient.java:1891) >>>> at org.apache.phoenix.schema.MetaDataClient.createTable(MetaDat >>>> aClient.java:940) >>>> at org.apache.phoenix.compile.CreateTableCompiler$2.execute(Cre >>>> ateTableCompiler.java:193) >>>> at org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixState >>>> ment.java:344) >>>> at org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixState >>>> ment.java:332) >>>> at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53) >>>> at org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(Pho >>>> enixStatement.java:331) >>>> at org.apache.phoenix.jdbc.PhoenixPreparedStatement.executeUpda >>>> te(PhoenixPreparedStatement.java:199) >>>> at Populate_Transact.createTables(Populate_Transact.java:75) >>>> at Populate_Transact.main(Populate_Transact.java:30) >>>> Caused by: java.lang.Exception: Thrift error for >>>> org.apache.tephra.distributed.TransactionServiceClient$2@6ea02a8d: >>>> Unable to discover tx service. >>>> at org.apache.tephra.distributed.TransactionServiceClient.execu >>>> te(TransactionServiceClient.java:227) >>>> at org.apache.tephra.distributed.TransactionServiceClient.execu >>>> te(TransactionServiceClient.java:185) >>>> at org.apache.tephra.distributed.TransactionServiceClient.start >>>> Short(TransactionServiceClient.java:259) >>>> ... 13 more >>>> Caused by: org.apache.phoenix.shaded.org.apache.thrift.TException: >>>> Unable to discover tx service. >>>> at org.apache.tephra.distributed.AbstractClientProvider.newClie >>>> nt(AbstractClientProvider.java:106) >>>> at org.apache.tephra.distributed.AbstractClientProvider.newClie >>>> nt(AbstractClientProvider.java:85) >>>> at org.apache.tephra.distributed.PooledClientProvider$TxClientP >>>> ool.create(PooledClientProvider.java:48) >>>> at org.apache.tephra.distributed.PooledClientProvider$TxClientP >>>> ool.create(PooledClientProvider.java:41) >>>> at org.apache.tephra.distributed.ElasticPool.getOrCreate(Elasti >>>> cPool.java:138) >>>> at org.apache.tephra.distributed.ElasticPool.obtain(ElasticPool >>>> .java:125) >>>> at org.apache.tephra.distributed.PooledClientProvider.getClosea >>>> bleClient(PooledClientProvider.java:101) >>>> at org.apache.tephra.distributed.TransactionServiceClient.execu >>>> te(TransactionServiceClient.java:214) >>>> >>>> Thanks, >>>> Ashish >>>> >>> >>> >> >
