[Pkg-puppet-devel] Bug#990872: puppetdb.jar crashes out of the box with clojure classpath error

Gabriel G. Rosa gabriel.g.rosa at gmail.com
Mon Jul 12 05:55:55 BST 2021


On Sat, 10 Jul 2021 14:08:00 -0400 =?UTF-8?Q?Louis-Philippe_V=c3=a9ronneau?= <pollo at debian.org> wrote:
> On Fri, 09 Jul 2021 23:14:22 -0700 "Gabriel G. Rosa"
> <gabriel.g.rosa at gmail.com> wrote:
> > Package: puppetdb
> > Version: 6.2.0-5
> > Severity: grave
> > Justification: renders package unusable
> > 
> > Dear Maintainer,
> > 
> > When installing puppetdb and configuring it to listen on http port, the
> > puppetdb.jar crashes with the following lines in syslog:
> > 
> > Jul  9 23:01:46 puppet java[25194]: Syntax error (FileNotFoundException) compiling at (clojure/core/async/impl/ioc_macros.clj:1:1).
> > Jul  9 23:01:46 puppet java[25194]: Could not locate clojure/tools/analyzer__init.class, clojure/tools/analyzer.clj or clojure/tools/analyzer.cljc on classpath.
> > Jul  9 23:01:46 puppet java[25194]: Full report at:
> > Jul  9 23:01:46 puppet java[25194]: /tmp/clojure-1064777479875377538.edn
> 
> I've seen that error elsewhere while running clojure testsuites for
> packages depending on libcore-async-clojure [1] and never got to debug it...
> 
> I've just re-built libcore-async-clojure and libtools-analyzer-clojure
> locally and their full testsuites passes though.
> 
> I've also checked, and libtools-analyzer-clojure does ship the right jar
> files:
> 
> usr/
> └── share
>     ├── doc
>     │   └── libtools-analyzer-clojure
>     │       ├── changelog.Debian.gz
>     │       ├── changelog.gz
>     │       ├── CONTRIBUTING.md
>     │       ├── copyright
>     │       └── README.md.gz
>     ├── java
>     │   ├── tools.analyzer-1.0.0.jar
>     │   └── tools.analyzer.jar -> tools.analyzer-1.0.0.jar
>     └── maven-repo
>         └── org
>             └── clojure
>                 └── tools.analyzer
>                     ├── 1.0.0
>                     │   ├── tools.analyzer-1.0.0.jar
>                     │   └── tools.analyzer-1.0.0.pom
>                     └── debian
>                         ├── tools.analyzer-debian.jar ->
> ../1.0.0/tools.analyzer-1.0.0.jar
>                         └── tools.analyzer-debian.pom
> 
> Those jars do contain the right clojure files too...
> 
> clojure/
> └── tools
>     ├── analyzer
>     │   ├── ast
>     │   │   └── query.clj
>     │   ├── ast.clj
>     │   ├── env.clj
>     │   ├── passes



So if I include a few extra jars in the command line, it gets me a little further:

grosa at puppet:~$ sudo /usr/bin/java -Xmx192m -Djava.security.egd=/dev/urandom -XX:OnOutOfMemoryError="kill -9 %p" -cp /usr/share/puppetdb/puppetdb.jar:/usr/share/java/tools.analyzer.jar:/usr/share/java/tools.analyzer.jvm.jar clojure.main -m puppetlabs.puppetdb.core services --config /etc/puppetdb/conf.d --bootstrap-config /etc/puppetdb/bootstrap.cfg --restart-file /run/puppetdb/restart
Syntax error (ClassNotFoundException) compiling . at (puppetlabs/http/client/async.clj:60:5).
org.apache.http.nio.protocol.HttpAsyncResponseConsumer

Full report at:
/tmp/clojure-11985391683440035019.edn

-------------- next part --------------
A non-text attachment was scrubbed...
Name: clojure-11985391683440035019.edn
Type: application/octet-stream
Size: 16017 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-puppet-devel/attachments/20210711/6cf66edf/attachment.obj>
-------------- next part --------------


But still not at a working puppetdb http listener… Sorry I am fumbling in the dark a bit — I am not at all familiar with java and clojure. Should I be filing a bug report against a different package?

Thanks,
-G



More information about the Pkg-puppet-devel mailing list