From c762de77432ca74ae4203b067ed6492f722ea26f Mon Sep 17 00:00:00 2001 From: Alan Orth Date: Sat, 13 Jan 2018 18:04:45 +0200 Subject: [PATCH] Add notes for 2018-01-13 --- content/post/2018-01.md | 47 ++++++++++++++++++++++++++++++++++ public/2018-01/index.html | 53 ++++++++++++++++++++++++++++++++++++++- 2 files changed, 99 insertions(+), 1 deletion(-) diff --git a/content/post/2018-01.md b/content/post/2018-01.md index a6330f6e2..6ff7cfe4d 100644 --- a/content/post/2018-01.md +++ b/content/post/2018-01.md @@ -546,3 +546,50 @@ The number of threads to be used to accept connections. Increase this value on a ``` - That could be very interesting + +## 2018-01-13 + +- Still testing DSpace 6.2 on Tomcat 8.5.24 +- Catalina errors at Tomcat 8.5 startup: + +``` +13-Jan-2018 13:59:05.245 WARNING [main] org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory.getObjectInstance Name = dspace6 Property maxActive is not used in DBCP2, use maxTotal instead. maxTotal default value is 8. You have set value of "35" for "maxActive" property, which is being ignored. +13-Jan-2018 13:59:05.245 WARNING [main] org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory.getObjectInstance Name = dspace6 Property maxWait is not used in DBCP2 , use maxWaitMillis instead. maxWaitMillis default value is -1. You have set value of "5000" for "maxWait" property, which is being ignored. +``` + +- I looked in my Tomcat 7.0.82 logs and I don't see anything about DBCP2 errors, so I guess this a Tomcat 8.0.x or 8.5.x thing +- DBCP2 appears to be Tomcat 8.0.x and up according to the [Tomcat 8.0 migration guide](https://tomcat.apache.org/migration-8.html) +- I have updated our [Ansible infrastructure scripts](https://github.com/ilri/rmg-ansible-public/commit/246f9d7b06d53794f189f0cc57ad5ddd80f0b014) so that it will be ready whenever we switch to Tomcat 8 (probably with Ubuntu 18.04 later this year) +- When I enable the ResourceLink in the ROOT.xml context I get the following error in the Tomcat localhost log: + +``` +13-Jan-2018 14:14:36.017 SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class [org.dspace.app.util.DSpaceWebappListener] + java.lang.ExceptionInInitializerError + at org.dspace.app.util.AbstractDSpaceWebapp.register(AbstractDSpaceWebapp.java:74) + at org.dspace.app.util.DSpaceWebappListener.contextInitialized(DSpaceWebappListener.java:31) + at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4745) + at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5207) + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734) + at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:629) + at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1839) + at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) + at java.util.concurrent.FutureTask.run(FutureTask.java:266) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at java.lang.Thread.run(Thread.java:748) +Caused by: java.lang.NullPointerException + at org.dspace.storage.rdbms.DatabaseUtils.updateDatabase(DatabaseUtils.java:547) + at org.dspace.core.Context.(Context.java:103) + ... 15 more +``` + +- Interesting blog post benchmarking Tomcat JDBC vs Apache Commons DBCP2, with configuration snippets: http://www.tugay.biz/2016/07/tomcat-connection-pool-vs-apache.html +- The Tomcat vs Apache pool thing is confusing, but apparently we're using Apache Commons DBCP2 because we don't specify `factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"` in our global resource +- So at least I know that I'm not looking for documentation or troubleshooting on the Tomcat JDBC pool! +- I looked at `pg_stat_activity` during Tomcat's startup and I see that the pool created in server.xml is indeed connecting, just that nothing uses it +- Also, the fallback connection parameters specified in local.cfg (not dspace.cfg) are used +- Shit, this might actually be a DSpace error: https://jira.duraspace.org/browse/DS-3434 +- I'll comment on that issue diff --git a/public/2018-01/index.html b/public/2018-01/index.html index 3dd728298..856cfe8b4 100644 --- a/public/2018-01/index.html +++ b/public/2018-01/index.html @@ -194,7 +194,7 @@ Danny wrote to ask for help renewing the wildcard ilri.org certificate and I adv "@type": "BlogPosting", "headline": "January, 2018", "url": "https://alanorth.github.io/cgspace-notes/2018-01/", - "wordCount": "2630", + "wordCount": "2965", "datePublished": "2018-01-02T08:35:54-08:00", "dateModified": "2018-01-12T07:55:01+02:00", "author": { @@ -860,6 +860,57 @@ cache_alignment : 64
  • That could be very interesting
  • +

    2018-01-13

    + + + +
    13-Jan-2018 13:59:05.245 WARNING [main] org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory.getObjectInstance Name = dspace6 Property maxActive is not used in DBCP2, use maxTotal instead. maxTotal default value is 8. You have set value of "35" for "maxActive" property, which is being ignored.
    +13-Jan-2018 13:59:05.245 WARNING [main] org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory.getObjectInstance Name = dspace6 Property maxWait is not used in DBCP2 , use maxWaitMillis instead. maxWaitMillis default value is -1. You have set value of "5000" for "maxWait" property, which is being ignored.
    +
    + + + +
    13-Jan-2018 14:14:36.017 SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class [org.dspace.app.util.DSpaceWebappListener]
    + java.lang.ExceptionInInitializerError
    +        at org.dspace.app.util.AbstractDSpaceWebapp.register(AbstractDSpaceWebapp.java:74)
    +        at org.dspace.app.util.DSpaceWebappListener.contextInitialized(DSpaceWebappListener.java:31)
    +        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4745)
    +        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5207)
    +        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    +        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752)
    +        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728)
    +        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
    +        at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:629)
    +        at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1839)
    +        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    +        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    +        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    +        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    +        at java.lang.Thread.run(Thread.java:748)
    +Caused by: java.lang.NullPointerException
    +        at org.dspace.storage.rdbms.DatabaseUtils.updateDatabase(DatabaseUtils.java:547)
    +        at org.dspace.core.Context.<clinit>(Context.java:103)
    +        ... 15 more
    +
    + + +