YaCy-Bugtracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000620YaCy[All Projects] Generalpublic2015-11-29 17:592016-05-26 09:01
Reporterdebjian 
Assigned To 
PriorityhighSeveritycrashReproducibilityalways
StatusnewResolutionopen 
ETAnone 
PlatformApple Mac ProOSDebianOS VersionStretch
Product VersionYaCy 1.8 
Target VersionFixed in Version 
Summary0000620: Error parsing configuration
DescriptionOn a first install, Yacy generates a yacy.conf.
When starting (/etc/init.d/yacy start), logs :
org.apache.solr.common.SolrException: Error instantiating shardHandlerFactory class [HttpShardHandlerFactory]: Error parsing configuration
        at org.apache.solr.handler.component.ShardHandlerFactory.newInstance(ShardHandlerFactory.java:53)
        at org.apache.solr.core.CoreContainer.load(CoreContainer.java:328)
        at org.apache.solr.core.CoreContainer.createAndLoad(CoreContainer.java:295)
        at net.yacy.cora.federate.solr.instance.EmbeddedInstance.<init>(EmbeddedInstance.java:84)
        at net.yacy.search.index.Fulltext.connectLocalSolr(Fulltext.java:138)
        at net.yacy.search.Switchboard.<init>(Switchboard.java:558)
        at net.yacy.yacy.startup(yacy.java:206)
        at net.yacy.yacy.main(yacy.java:699)
Additional InformationWhen recursivally searching in source code of Yacy, Solr and Lucene, the string "Error parsing configuration" never appears.
No other message allows to debug the configuration file.
TagsNo tags attached.
Attached Files

- Relationships

-  Notes
(0001240)
debjian (reporter)
2016-05-24 22:19

After 6 monthes, apt-get purge yacy, then apt-get install yacy.
No change.
Choose the right answer:
A) Yacy does not work;
B) Yacy community does not use Debian;
C) Yacy community does not investigate or correct critical bugs.
(0001241)
luc (reporter)
2016-05-25 09:59

Hi, certainly YaCy would currently benefit from having more developers involved, but I can tell you I have been using regularly YaCy on a stable Debian (Jessie) since August 2015. I encountered some bugs, but never the one you describe here.

To check if there is a problem when installing from scratch, I just re-installed this morning yacy on my desktop Debian stable (Jessie), and on a Debian testing (Stretch) virtual machine.
Everything worked fine for me, except on Stretch where package dependency openjdk-7-jre-headless is now missing. By the way I forced install and everything went fine.
Here is my detailed procedure, maybe it can help determine from where comes your problem :

On Jessie :
 > lsb_release -a :
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 8.4 (jessie)
Release: 8.4
Codename: jessie

 > java -version :
java version "1.7.0_101"
OpenJDK Runtime Environment (IcedTea 2.6.6) (7u101-2.6.6-1~deb8u1)
OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)

 > apt-get purge yacy

   -> no more /usr/shar/yacy, /var/lib/yacy, /etc/yacy, /var/log/yacy

 > echo 'deb http://debian.yacy.net [^] ./' > /etc/apt/sources.list.d/yacy.list

 > apt-key advanced --keyserver pgp.net.nz --recv-keys 03D886E7

 > apt-get update

 > apt-get install yacy
   - name for YaCy-peer : mycustomname
   - Admin password : blank
   - Choose network to participate : freeworld
   - Initial java memory setting : 180
   - Maximum java memory : 600

 > ls /var/lib/yacy : yacy.running file is here

 > more /var/lib/yacy/LOG/yacy00.log : no error

 > http://localhost:8090 [^] in a browser works fine


On Stretch :

 > lsb_release -a :
No LSB modules are available
Distributor ID: Debian
Description: Debian GNU/Linux testing (stretch)
Release: testing
Codename: stretch

 > java -version :
java version "1.8.0_91"
OpenJDK Runtime Environment (build 1.8.0_91-8u91-b14-2-b14)
OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)

 > echo 'deb http://debian.yacy.net [^] ./' > /etc/apt/sources.list.d/yacy.list

 > apt-key advanced --keyserver pgp.net.nz --recv-keys 03D886E7

 > apt-get update

 > apt-get install yacy : fail
   - depends missing openjdk-7-jre-headless

 > apt-get download yacy

 > dpkg -i --force-depends yacy_1.8339865_all.deb
   - name for YaCy-peer : mycustomname
   - Admin password : blank
   - Choose network to participate : freeworld
   - Initial java memory setting : 180
   - Maximum java memory : 600

 > ls /var/lib/yacy : yacy.running file

 > more /var/lib/yacy/LOG/yacy00.log : no error

 > http://localhost:8090 [^] in a browser works fine
(0001242)
debjian (reporter)
2016-05-25 22:34

Hi, Luc, Shall the strength be with your soul!
Here is my yacy00.log
I 2016/05/25 22:13:36 Word hashCache.size = 20000
I 2016/05/25 22:13:36 SWITCHBOARD Initializing Segment '/usr/share/yacy/DATA/INDEX/freeworld/SEGMENTS.
I 2016/05/25 22:13:36 org.apache.solr.core.SolrXmlConfig Loading container configuration from /usr/share/yacy/defaults/solr/solr.xml
I 2016/05/25 22:13:36 org.apache.solr.core.CorePropertiesLocator Config-defined core root directory: /usr/share/yacy/DATA/INDEX/freeworld/SEGMENTS/solr_5_2
I 2016/05/25 22:13:36 UPNP found device: <Undisclosed information>
I 2016/05/25 22:13:36 UPNP mapped mapped port 8090 to port 49154 on device <Undisclosed information>, external IP is <Undisclosed Information>
E 2016/05/25 22:13:37 STARTUP YaCy cannot start: Error instantiating shardHandlerFactory class [HttpShardHandlerFactory]: Error parsing configuration
org.apache.solr.common.SolrException: Error instantiating shardHandlerFactory class [HttpShardHandlerFactory]: Error parsing configuration
        at org.apache.solr.handler.component.ShardHandlerFactory.newInstance(ShardHandlerFactory.java:51)
        at org.apache.solr.core.CoreContainer.load(CoreContainer.java:403)
        at org.apache.solr.core.CoreContainer.createAndLoad(CoreContainer.java:364)
        at net.yacy.cora.federate.solr.instance.EmbeddedInstance.<init>(EmbeddedInstance.java:83)
        at net.yacy.search.index.Fulltext.connectLocalSolr(Fulltext.java:140)
        at net.yacy.search.Switchboard.<init>(Switchboard.java:560)
        at net.yacy.yacy.startup(yacy.java:218)
        at net.yacy.yacy.main(yacy.java:726)

Could it result from a port problem on my modem?
About the fact, Yacy would currently benefit from having more developers involved,
I intended to debug with source code this problem,
but Yacy uses Maven for building.
I have seen many open-source project being destroyed because they rely on Maven,
with dependencies not any more available in source format.
Maven is very convenient but for open-sourceness it should provide an option for full source code
dependance download and compiling in the way Gentoo does for its package management.
As long as Maven will force to download binary code, many developers will avoid to participate for
this reason.
More over, for new comers to became involved in development, source code must be gathered
in well defined parts avoiding to depend on each other so that developers can understand from
source code the behavior of the program.
For instance if you are interested in the template engine of yacy, you should be able to use it
as a standalone component.
But when studying this part, it appears it depends on different components making hard to have
an overview and a reusable component for whatever program needing a template engine.
I hope these aspect of reusability in source-code can benefit to improvement of Yacy,
which on its specifications should be interesting...when I will be able to start it.
(0001243)
luc (reporter)
2016-05-26 09:01

Thanks :)

This is a strange error, I guess the error message is not very explicit.

Indeed currently YaCy doesn't really depends on maven but rather on ant : most important build tasks are defined in the build.xml file. And notably the "run" and "debug" ones. This was also no evidence for me when I started playing with Yacy sources (see http://mantis.tokeek.de/view.php?id=597 [^]).

Regarding maven, I am also not always happy with that beast. But I have been often using it at work, and I can assure you an IDE such as Eclipse with a maven plugin can download automatically for you libraries sources.
Indeed you can already configure your YaCy project this way :
 - have eclipse and m2e plugin installed
 - right-click on project : Configure > Convert to Maven project
 - then eclipse will rebuild and you should see a "Maven dependencies" entry under yacy project
 - in Eclipse preferences : go to Maven : "Download Artifact sources" and "Download Artifact JavaDoc" sould be enabled
 - that'is it : now you can browse maven dependencies sources directly!
 - unfortunately, to run or debug from eclipse, you currently still have to rely on ant because of very specific classloading for htroot resources...

By the way I agree modularisation is a good idea, and I think there are plans from Orbiter toward this direction (see http://kaskelix.de [^] architecture).

Good luck with your debugging session!

- Issue History
Date Modified Username Field Change
2015-11-29 17:59 debjian New Issue
2016-05-24 22:19 debjian Note Added: 0001240
2016-05-25 09:59 luc Note Added: 0001241
2016-05-25 22:34 debjian Note Added: 0001242
2016-05-26 09:01 luc Note Added: 0001243


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker