My Oracle Support Banner

Sentry Upgrade Errors When Upgrading to BDA 4.5.0 (Doc ID 2148204.1)

Last updated on JANUARY 28, 2020

Applies to:

Big Data Appliance Integrated Software - Version 4.5.0 and later
Linux x86-64

Symptoms

NOTE: In the examples that follow, user details, cluster names, hostnames, directory paths, filenames, etc. represent a fictitious sample (and are used to provide an illustrative example only). Any similarity to actual persons, or entities, living or dead, is purely coincidental and not intended in any manner. 

During upgrade of Oracle Big Data Appliance from 4.2.0 to 4.5.0 seeing the error:

ERROR: Sentry database should be on primary mysql node
ERROR: Cannot continue with operation
INFO: Running bdadiagcluster...

 

Or on 4.1.0 to 4.5.0 upgrade step 7 raises errors like:

ERROR: Error code 1 when executing verifyMySQLPasswd.sh on host bdanode01 #Step -1#
ERROR: Error is : ERROR 1045 (28000): Access denied for user 'sentry'@'bdanode01.example.com' (using password: YES) #Step -1#
ERROR: Error code 1 when executing verifyMySQLPasswd.sh on host bdanode02 #Step -1#
ERROR: Error is : ERROR 1045 (28000): Access denied for user 'sentry'@'bdanode02.example.com' (using password: YES) #Step -1#
ERROR: Error code 1 when executing verifyMySQLPasswd.sh on host bdanode03 #Step -1#
ERROR: Error is : ERROR 1045 (28000): Access denied for user 'sentry'@'bdanode03.example.com' (using password: YES) #Step -1#
ERROR: Error code 1 when executing verifyMySQLPasswd.sh on host bdanode04 #Step -1#
...
ERROR: Error code 1 when executing verifyMySQLPasswd.sh on host bdanode18 #Step -1#
ERROR: Error is : ERROR 1045 (28000): Access denied for user 'sentry'@'bdanode18.example.com' (using password: YES) #Step -1#
ERROR: Errors executing verifyMySQLPasswd.sh. Continuing anyway. #Step -1#
ERROR: Could not log into sentry database from all nodes
ERROR: Cannot continue with operation

......................................................................................................................
ERROR: Puppet agent run on node bdanode01 had errors. List of errors follows

************************************
Error [12686]: (//bdanode01.example.com//Stage[main]/Hadoop::Startcloudera/Exec[start_cloudera_services]/returns) change from notrun to 0 failed: /opt/oracle/BDAMammoth/bdaconfig/tmp/startcloudera.sh &> /opt/oracle/BDAMammoth/bdaconfig/tmp/startcloudera_1467635095.out returned 1 instead of one of [0]
************************************

...

ERROR: Step 7 failed
ERROR: Cannot continue with operation
INFO: Time spent in step 7 StartHadoopServices is 5304 seconds.

Addtional symptoms are like:

1. startcloudera_1467635095.out shows output like:

Command ID is 34615
...
Command 34615 finished after 20 seconds
Operation failed
Result Message is: "Failed to upgrade Sentry database tables.",

2. The Sentry server log shows:

Caused by: java.sql.SQLException: Access denied for user 'sentry'@'bdanode01.example.com' (using password: YES)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:996)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3887)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3823)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:870)
at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1659)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1206)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2234)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2265)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2064)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:790)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:44)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:377)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:395)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:325)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:208)
at com.jolbox.bonecp.BoneCP.obtainRawInternalConnection(BoneCP.java:254)
at com.jolbox.bonecp.BoneCP.<init>(BoneCP.java:305)

3. Cloudera Manager shows Sentry is in bad health.

4. Checking in mysql as 'root' user shows sentry database exists:

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| BDA_ODI_REPO |
| BDA_STB |
| activity_monitor |
| hive |
| host_monitor |
| hue |
| mysql |
| navigator |
| navigator_metadata |
| oozie |
| performance_schema |
| reports_manager |
| resource_manager |
| scm |
| sentry |
| service_monitor |
| test |
+--------------------+
18 rows in set (0.00 sec)

 

5. However no sentry user exists in mysql:

mysql> use sentry;
mysql> select user, host, password from user where user = 'sentry';
ERROR 1146 (42S02): Table 'sentry.user' doesn't exist

 

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Cause
Solution


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.