Skip to Content.
Sympa Menu

grouper-users - RE: [grouper-users] Grouper 2.5.29 Installer errors on hibernate connections

Subject: Grouper Users - Open Discussion List

List archive

RE: [grouper-users] Grouper 2.5.29 Installer errors on hibernate connections


Chronological Thread 
  • From: "Hafer, Christopher G" <>
  • To: "Black, Carey M." <>, "Hyzer, Chris" <>, Grouper Users <>
  • Subject: RE: [grouper-users] Grouper 2.5.29 Installer errors on hibernate connections
  • Date: Thu, 23 Jul 2020 17:04:44 +0000
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=musc.edu; dmarc=pass action=none header.from=musc.edu; dkim=pass header.d=musc.edu; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=25pXvxChctXSCJ4Kg0prZOIn50weN6brlr3E0kJYuAg=; b=bz/7JpTEbxWohVjanMcb3OFOQytCi0I9PBi7LfZmdkLc8ZHNwMX3aXgDyoAIEoXlXZMfXgvmKII1rAhWX+y/ezW9eIj/JPYiJs4lHKp3x+pjbW3dexvA8NrOWgjtUAvs8UUOBQuWtYPLUUac4H8r7JqWoiV9UcB/VHLNJWZx6ZZ0sirKylDTjS4azFBkqGnWZmwI2ILCyumpKXMx6LgPyn9I8wX/mxbDCRcfl9ZGlV7vHVcFdNY3sKcN7pHbHO1t0yQrvvmHiR5xk9Dn2d8+X4rDJTIU7YznsY2c7f0wTyLTZZL0JWR/xdyr539J9rfQQzZ/u/iEviVlDANmhYF4bQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Y1Yk+PuuKlmakUt6ODUDfSzVsIEfT9zr3U94DyrJqDdEt4A+eyOELYAkJXzKbX8bjuXi0tdeF5FnuCDSS6uyDFva06ajizHHZ4/nLCiAliUyQ9TYXhpCHDzxRUbvd/aRboMDuxsg8AH/HqmJ9cARXvHwEKgRQbGP3G80XLFQr9w3pQ3+KO3FftMez2J4l2JkOEoZOtmfQEb2M7NVFh/vvZT4NUzSeCXNwvGa49Wt76fP+U8WfZHT+r3Z3Kuy5KD/j18tWmwoKWkOJKc4uX3tjVkwx/tFTfARxopmJzuSSGEMOCM3pyTZVLTILlYAey5AEaf6vbm4sW83PpTdrDgGAA==

Good Afternoon.  I am now thinking, the container is reading 127.0.0.1 as “inside” the container so it can’t connect to the system’s database outside of the container.  Using the system’s IP address for DB connection is refused as well and seems to only be reachable at 127.0.0.1. I’ll work on resolving this.

 

How I tested for DB Connection:  

- DB connection works:    psql -h 127.0.0.1 -d grouper -U grouper –W  (enter password)

- DB conn ‘not’ working:  psql -h HostIP  -d grouper -U grouper -W (enter password) – Error: psql: could not connect to server: Connection refused

 

Also, please bear with me here as I describe what I see with the Installer’s instructions compared to what the Installer itself does. This is my first Docker app to deal with so I am learning both Docker and how to install Grouper using Containers.  After seeing what the installer is doing, I created directory [/opt/grouper/logs/grouper] because log4j.properties have hard coded logs path. I ran the 2.5.33 installer inside [/opt/grouper] directory - let me know if this could create a problem.  

 

Observations using the Installer:

- The Installer instructions state to make directory [/opt/grouperInstaller] to download and run the installer file.  When running the installer, it shows install directory as [/opt/grouperContainer] but the default selection is set to same directory installer is run in (this is preferred so I don’t have to change the install directory each time I run the installer).

- When it comes to the log4j.properties file, there are two directories unrelated to the “installer” instructions [/opt/grouper/logs] and [/opt/grouper/logs/grouper].  These are hard coded directories and would require me to change them in the properties file “after” running the installer if I continue using directory [/opt/grouperInstaller] as instructed. 

- I am thinking the “installer” should create [/opt/grouper/logs/grouper] parent directories, as needed, just like it does with [/opt/grouper/grouperWebapp/WEB-INF/classes] for the properties files and [/opt/grouper/grouperWebapp/WEB-INF/bin] which is empty. 

- The [/opt/grouper/logs/grouper] directory seems to be hard coded in the “log4j.properties” file when created.  This logs an error because the “grouper” folder in the /logs folder is missing but it is only used by one app where the other two apps just use [/opt/grouper/logs] – not sure why that one app cannot use the same [/opt/group/logs] directory.  Along with this, logging an error for missing ‘parent directory of log’ seems odd -if- the logs are intended to be generated ‘inside’ the container and not outside of it.  

- Outside of the DB connection error noted above for UI and WS, the errors in the init logs are related to having the ERROR level set versus using a WARN level setting. 

- Of Concern, after rebooting the system, Docker starts and grouper container is running but when checking for Tomcat’s web page (which was there after installer runs) I see an “ERR_CONNECTION_REFUSED” error web page.

 

Answers to Carey’s comments:

- I prefer logs to run outside the container, on premise, so I can see them without going into the container but I am good as long as I know where they are.  If the Installer is doing the mount (from the README.txt) then should I have to do this again after the installer runs?     

- The “parent dir of log file” error didn’t resolve until I created [opt/grouper/logs/grouper] directory on the main system but no logs show up after the installer has finished.

 

Thank you,
Christopher G. Hafer

MUSC Information Solutions

Integration Engineer II | Business Application Integrations

Medical University of South Carolina

| Ph: 843-209-3315

 

"Harnessing the power of information to improve the lives we touch"

 

From: Black, Carey M. <>
Sent: Wednesday, July 22, 2020 9:14 AM
To: Hafer, Christopher G <>; Hyzer, Chris <>; Grouper Users <>
Subject: RE: [grouper-users] Grouper 2.5.29 Installer errors on hibernate connections

 

CAUTION: External

Christopher,

 

Just a guess… based on “parent dir of log file”:

 

Take a look at how you are, or are not, setting these for your container.

 

-e GROUPER_SHIB_LOG_USE_PIPE   (v2.5.30+)   ( default is true)

-e GROUPER_LOG_TO_HOST            (v.2.5.27+)  ( default is false)

 

GROUPER_LOG_TO_HOST = true

                The container “should” write files ( based on log4j.properties) to /opt/grouper/logs ( inside the container ). And you are expected to mount that to a directory outside the container.

                (for = "false" ) The logs go to the “docker logs” instead of to files.

 

 

Also check your log4j.properties file. Look at the paths for the files that are being created.

 

HTH. ( Have not really started looking at 2.5.33 yet… So I guess it is possible that something changed in that release? )

 

--

Carey Matthew

 

From: <> On Behalf Of Hafer, Christopher G
Sent: Wednesday, July 22, 2020 8:47 AM
To: Hyzer, Chris <>; Grouper Users <>
Subject: RE: [grouper-users] Grouper 2.5.29 Installer errors on hibernate connections

 

Thanks Chris, looks like 2.5.33 is connecting to DB now. I do see a warning “Grouper warning: parent dir of log file doesnt exist: /opt/grouper/logs/grouper” in the log the ‘Installer’ is outputting in [/opt/grouperContainer]. 

 

-Does this mean I need to create the path “/opt/grouper/logs/grouper” on the main system for the installer ?

-Does this mean the log folder path is not inside the Docker “i2incommon/grouper:2.5.33” image ?

-Do I need to point the Installer to install in [/opt/grouper] instead of [/opt/grouperContainer] ?

 

Thank you,
Christopher G. Hafer

MUSC Information Solutions

Integration Engineer II | Business Application Integrations

Medical University of South Carolina

| Ph: 843-209-3315

 

"Harnessing the power of information to improve the lives we touch"

 

From: Hyzer, Chris <>
Sent: Tuesday, July 21, 2020 11:16 PM
To: Grouper Users <>; Hafer, Christopher G <>
Subject: RE: [grouper-users] Grouper 2.5.29 Installer errors on hibernate connections

 

CAUTION: External

This is now fixed in 2.5.33, the installer will install “maturity level 0”.  Note, if it says it cant find a success initting the database, run “docker logs gsh”, and see that it did in fact complete, you will see tables and views in your schema, and continue with the installer.

 

Thanks,

Chris

 

 

From: Hyzer, Chris
Sent: Tuesday, July 21, 2020 3:41 PM
To: Grouper Users <>; Hafer, Christopher G <>
Subject: Re: [grouper-users] Grouper 2.5.29 Installer errors on hibernate connections

 

I think the installer only works on 2.5.22... want to try that, and then once its installed you could upgrade?   Or use the manual method?

 

thanks

Chris

 


From: <> on behalf of Hafer, Christopher G <>
Sent: Tuesday, July 21, 2020 1:44 PM
To: Grouper Users <
>
Subject: [grouper-users] Grouper 2.5.29 Installer errors on hibernate connections

 

Good afternoon, I am getting the below error for a PostgreSQL 10 database when running the Grouper installer jar "grouper-installer-2.5.29.jar" as root.  Using openjdk version "1.8.0_252" and JAVA_HOME is set.  I have looked in the 2.5.29 Docker image and the postgresql driver jar is in the lib folder.  I am following the Maturity Level 0 w/ Installer to get familiar with this setup. 

1) Does the installer need to use an outside config file so the driver class is known to the installer for the hibernate connections?  
2) If the x.properties files were created from a previous installer run with connection errors, do I need to allow the installer to over-write them again or should they be file to use?

-------------- Grouper 2.5.29 installer error ------------------
__GROUPER_LOG_PREFIX__;grouper_error.log;;;2020-07-21 17:15:49,884: [main] FATAL Hib3DAO.initHibernateIfNotInittedHelper(337) -  - unable to initialize hibernate: Unable to create
requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
        at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:264)
        at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:228)
        at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:207)
        at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:51)
        at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:94)
        at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:237)
        at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:207)
        at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.handleTypes(MetadataBuildingProcess.java:352)
        at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:111)
        at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.build(MetadataBuildingProcess.java:83)
        at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:418)
        at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:87)
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:692)
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:727)
        at edu.internet2.middleware.grouper.internal.dao.hib3.Hib3DAO.initHibernateIfNotInittedHelper(Hib3DAO.java:323)
        at edu.internet2.middleware.grouper.internal.dao.hib3.Hib3DAO.initHibernateIfNotInitted(Hib3DAO.java:154)
        at edu.internet2.middleware.grouper.internal.dao.hib3.Hib3DAO.initHibernateIfNotInitted(Hib3DAO.java:117)
        at edu.internet2.middleware.grouper.misc.GrouperStartup.startup(GrouperStartup.java:345)
        at edu.internet2.middleware.grouper.registry.RegistryInitializeSchema.main(RegistryInitializeSchema.java:173)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at edu.internet2.middleware.grouper.app.gsh.GrouperShell.handleSpecialCase(GrouperShell.java:227)
        at edu.internet2.middleware.grouper.app.gsh.GrouperShell.main(GrouperShell.java:160)
        at edu.internet2.middleware.grouper.app.gsh.GrouperShellWrapper.main(GrouperShellWrapper.java:31)
Caused by: org.hibernate.boot.registry.classloading.spi.ClassLoadingException: HHH010003: JDBC Driver class not found:
        at org.hibernate.c3p0.internal.C3P0ConnectionProvider.configure(C3P0ConnectionProvider.java:131)
        at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:94)
        at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:237)
        at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:207)
        at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.buildJdbcConnectionAccess(JdbcEnvironmentInitiator.java:145)
        at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:66)
        at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:35)
        at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:88)
        at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:254)
        ... 25 more
Caused by: org.hibernate.boot.registry.classloading.spi.ClassLoadingException: Unable to load class []
        at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.classForName(ClassLoaderServiceImpl.java:229)
        at org.hibernate.c3p0.internal.C3P0ConnectionProvider.configure(C3P0ConnectionProvider.java:128)
        ... 33 more
Caused by: java.lang.ClassNotFoundException:
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:348)
        at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.classForName(ClassLoaderServiceImpl.java:226)
        ... 34 more
------------------------------------------------------------------  

Thank you,
Christopher G. Hafer
MUSC Information Solutions
Integration Engineer II | Business Application Integrations
Medical University of South Carolina
| Ph: 843-209-3315
 
"Harnessing the power of information to improve the lives we touch"




Archive powered by MHonArc 2.6.19.

Top of Page