Uploaded image for project: 'Ambari'
  1. Ambari
  2. AMBARI-17475

Ambari try to find old jdbc etc despite reset and resetuping with another DB

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 2.5.0
    • None
    • None

    Description

      STR: *172.22.85.22*
      1) Try to run deploy cluster on sles12
      2) Install ambari-server
      3) Try to setup ambari-server with mysql
      Do not have mysql db (server etc ), in this case ambari-server start is failed
      4) Try to start ambari-server . It is failed as mysql server and connector are
      absent.
      5) Make ambari server reset. Do not use DDL script as db was absent

      ambari-server reset -s

      6) Try to setup ambari-server with another db ( PostgreSQL (Embedded) as
      example) - passed successfully

      nat-os-s12-mysql-slava7-5:~ # ambari-server setup
      Using python /usr/bin/python
      Setup ambari-server
      Checking SELinux...
      WARNING: Could not run /usr/sbin/sestatus: OK
      Customize user account for ambari-server daemon [y/n] ?
      Adjusting ambari-server permissions and ownership...
      Checking firewall status...
      Checking JDK...
      Do you want to change Oracle JDK [y/n] ?
      Completing setup...
      Configuring database...
      Enter advanced database configuration [y/n] ? y
      Configuring database...
      ==============================================================================
      Choose one of the following options:
      [1] - PostgreSQL (Embedded)
      [2] - Oracle
      [3] - MySQL / MariaDB
      [4] - PostgreSQL
      [5] - Microsoft SQL Server (Tech Preview)
      [6] - SQL Anywhere
      ==============================================================================
      Enter choice (3): 1
      Database name (ambaricustom):
      Postgres schema (ambaricustom):
      Username (ambaricustomuser):
      Enter Database Password (bigdatacustom):
      Default properties detected. Using built-in database.
      Configuring ambari database...
      Checking PostgreSQL...
      Running initdb: This may take up to a minute.
      About to start PostgreSQL
      Configuring local database...
      Connecting to local database...done.
      Configuring PostgreSQL...
      Restarting PostgreSQL
      Extracting system views...
      ..........
      Adjusting ambari-server permissions and ownership...
      Ambari Server 'setup' completed successfully

      7) Try to start ambari-server

      *Actual result:*
      Ambari try to find old DB conector etc despite reset and resetuping with
      another DB

      23 Jun 2016 14:09:36,426 ERROR [main] DBAccessorImpl:107 - Error while creating database accessor
      java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
      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)
      at java.lang.Class.forName0(Native Method)
      at java.lang.Class.forName(Class.java:264)
      at org.apache.ambari.server.orm.DBAccessorImpl.<init>(DBAccessorImpl.java:85)
      at org.apache.ambari.server.orm.DBAccessorImpl$$FastClassByGuice$$86dbc63e.newInstance(<generated>)
      at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
      at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:60)
      at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
      at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
      at com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:54)
      at com.google.inject.internal.SingleFieldInjector.inject(SingleFieldInjector.java:53)
      at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:110)
      at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:94)
      at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
      at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
      at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
      at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
      at com.google.inject.Scopes$1$1.get(Scopes.java:65)
      at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
      at com.google.inject.internal.SingleFieldInjector.inject(SingleFieldInjector.java:53)
      at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:110)
      at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:94)
      at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
      at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
      at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
      at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
      at com.google.inject.Scopes$1$1.get(Scopes.java:65)
      at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
      at com.google.inject.internal.SingleFieldInjector.inject(SingleFieldInjector.java:53)
      at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:110)
      at com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:75)
      at com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:73)
      at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1024)
      at com.google.inject.internal.MembersInjectorImpl.injectAndNotify(MembersInjectorImpl.java:73)
      at com.google.inject.internal.Initializer$InjectableReference.get(Initializer.java:147)
      at com.google.inject.internal.Initializer.injectAll(Initializer.java:92)
      at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:173)
      at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:109)
      at com.google.inject.Guice.createInjector(Guice.java:95)
      at com.google.inject.Guice.createInjector(Guice.java:72)
      at com.google.inject.Guice.createInjector(Guice.java:62)
      at org.apache.ambari.server.checks.DatabaseConsistencyChecker.main(DatabaseConsistencyChecker.java:102)

      Attachments

        1. AMBARI-17475.patch
          2 kB
          Andrew Onischuk

        Issue Links

          Activity

            People

              aonishuk Andrew Onischuk
              aonishuk Andrew Onischuk
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: