Reply
Highlighted
New Contributor
Posts: 7
Registered: ‎02-13-2018

Issues Installing Sentry via Cloudera Manager in Cloudera Quickstart VM 5.12.0

Hello, I am trying to install Sentry on the Quickstart VM 5.12.0 following the instructions here:

https://www.cloudera.com/documentation/enterprise/5-12-x/topics/sg_sentry_service_install.html#conce...

 

I configured it with the default mysql options for the instance that comes with Cloudera:

Database Host Name: quickstart.cloudera

Database Type: MySQL

Database Name: cm

Username: cm

Password: cloudera

 

Here is the error message I am getting on Step 5 when it trys to start the Sentry service. The previous steps including Creating Sentry Database Tables are fine. Any help would be very much appreciated. Thanks:

 

12:03:45.185 AMINFOSentryService
Attempting to start...
12:03:45.207 AMINFOSentryService
ProcessorFactory being used: org.apache.sentry.provider.db.service.thrift.SentryPolicyStoreProcessorFactory
12:03:45.763 AMINFOPersistence
Property datanucleus.cache.level2 unknown - will be ignored
12:03:46.183 AMWARNBoneCPConfig
Max Connections < 1. Setting to 20
12:03:48.221 AMWARNQuery
Query for candidates of org.apache.sentry.provider.db.service.model.MSentryVersion and subclasses resulted in no possible candidates
Required table missing : "`SENTRY_VERSION`" in Catalog "" Schema "". DataNucleus requires this table to perform its persistence operations. Either your MetaData is incorrect, or you need to enable "datanucleus.autoCreateTables"
org.datanucleus.store.rdbms.exceptions.MissingTableException: Required table missing : "`SENTRY_VERSION`" in Catalog "" Schema "". DataNucleus requires this table to perform its persistence operations. Either your MetaData is incorrect, or you need to enable "datanucleus.autoCreateTables"
	at org.datanucleus.store.rdbms.table.AbstractTable.exists(AbstractTable.java:485)
	at org.datanucleus.store.rdbms.RDBMSStoreManager$ClassAdder.performTablesValidation(RDBMSStoreManager.java:3408)
	at org.datanucleus.store.rdbms.RDBMSStoreManager$ClassAdder.addClassTablesAndValidate(RDBMSStoreManager.java:3218)
	at org.datanucleus.store.rdbms.RDBMSStoreManager$ClassAdder.run(RDBMSStoreManager.java:2869)
	at org.datanucleus.store.rdbms.AbstractSchemaTransaction.execute(AbstractSchemaTransaction.java:122)
	at org.datanucleus.store.rdbms.RDBMSStoreManager.addClasses(RDBMSStoreManager.java:1606)
	at org.datanucleus.store.AbstractStoreManager.addClass(AbstractStoreManager.java:954)
	at org.datanucleus.store.rdbms.RDBMSStoreManager.getDatastoreClass(RDBMSStoreManager.java:680)
	at org.datanucleus.store.rdbms.query.RDBMSQueryUtils.getStatementForCandidates(RDBMSQueryUtils.java:431)
	at org.datanucleus.store.rdbms.query.JDOQLQuery.compileQueryFull(JDOQLQuery.java:938)
	at org.datanucleus.store.rdbms.query.JDOQLQuery.compileInternal(JDOQLQuery.java:363)
	at org.datanucleus.store.query.Query.executeQuery(Query.java:1744)
	at org.datanucleus.store.query.Query.executeWithArray(Query.java:1672)
	at org.datanucleus.store.query.Query.execute(Query.java:1654)
	at org.datanucleus.api.jdo.JDOQuery.execute(JDOQuery.java:221)
	at org.apache.sentry.provider.db.service.persistent.SentryStore$21.execute(SentryStore.java:1478)
	at org.apache.sentry.provider.db.service.persistent.SentryStore$21.execute(SentryStore.java:1474)
	at org.apache.sentry.provider.db.service.persistent.TransactionManager.executeTransaction(TransactionManager.java:111)
	at org.apache.sentry.provider.db.service.persistent.SentryStore.getMSentryVersion(SentryStore.java:1473)
	at org.apache.sentry.provider.db.service.persistent.SentryStore.getSentryVersion(SentryStore.java:1444)
	at org.apache.sentry.provider.db.service.persistent.SentryStore.verifySentryStoreSchema(SentryStore.java:210)
	at org.apache.sentry.provider.db.service.persistent.SentryStore.<init>(SentryStore.java:197)
	at org.apache.sentry.provider.db.service.thrift.SentryPolicyStoreProcessor.<init>(SentryPolicyStoreProcessor.java:104)
	at org.apache.sentry.provider.db.service.thrift.SentryPolicyStoreProcessorFactory.register(SentryPolicyStoreProcessorFactory.java:31)
	at org.apache.sentry.service.thrift.SentryService.runServer(SentryService.java:201)
	at org.apache.sentry.service.thrift.SentryService.call(SentryService.java:168)
	at org.apache.sentry.service.thrift.SentryService.call(SentryService.java:71)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)
12:03:48.227 AMERRORSentryService
Error starting server
java.lang.IllegalStateException: Could not create org.apache.sentry.provider.db.service.thrift.SentryPolicyStoreProcessorFactory
	at org.apache.sentry.service.thrift.SentryService.runServer(SentryService.java:207)
	at org.apache.sentry.service.thrift.SentryService.call(SentryService.java:168)
	at org.apache.sentry.service.thrift.SentryService.call(SentryService.java:71)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.sentry.provider.db.SentryNoSuchObjectException: No matching version found
	at org.apache.sentry.provider.db.service.persistent.SentryStore$21.execute(SentryStore.java:1482)
	at org.apache.sentry.provider.db.service.persistent.SentryStore$21.execute(SentryStore.java:1474)
	at org.apache.sentry.provider.db.service.persistent.TransactionManager.executeTransaction(TransactionManager.java:111)
	at org.apache.sentry.provider.db.service.persistent.SentryStore.getMSentryVersion(SentryStore.java:1473)
	at org.apache.sentry.provider.db.service.persistent.SentryStore.getSentryVersion(SentryStore.java:1444)
	at org.apache.sentry.provider.db.service.persistent.SentryStore.verifySentryStoreSchema(SentryStore.java:210)
	at org.apache.sentry.provider.db.service.persistent.SentryStore.<init>(SentryStore.java:197)
	at org.apache.sentry.provider.db.service.thrift.SentryPolicyStoreProcessor.<init>(SentryPolicyStoreProcessor.java:104)
	at org.apache.sentry.provider.db.service.thrift.SentryPolicyStoreProcessorFactory.register(SentryPolicyStoreProcessorFactory.java:31)
	at org.apache.sentry.service.thrift.SentryService.runServer(SentryService.java:201)
New Contributor
Posts: 7
Registered: ‎02-13-2018

Re: Issues Installing Sentry via Cloudera Manager in Cloudera Quickstart VM 5.12.0

Resolved, by deleting all tables in sentry database in MySQL and then recreating them from Cloudera Manager, and this time by logging into database as root instead of cm user.