Even if you use a newer jetty, you won't see any difference, what you should care:

1. Jetty using NIO which is enabled by default on Jetty coming from
   Ubuntu repo (I think)
2. Java version: There are huges performance winning between Java 5, 6
   and 7; we use Oracle JDK 7u40.
3. JVM options for GC, -server flag, etc, the JAVA_OPTIONS I sent
   before are the ones we are using on production.
4. Solrconfig.xml: Things like caches (initial size, size, etc),
   softcommit, autocommit, but that's the next step I guess.

Guido.

On 10/10/13 17:27, Guido Medina wrote:
Why not just go straight for 4.5.0? Also, we have it running with JDK 7, we use Oracle's JVM sym-linked to /opt/java, that would be an extra step (modifying the JAVA_HOME at /etc/defaul/jetty), it it worthy doing.

Glad I helped, cheers,

Guido.

On 10/10/13 16:57, Peter Schmidt wrote:
SOLVED: I reinstalled the jetty package, because i wanted to get a clean
installation. And now it's working with your hint Guido :-) Thank you very
much.

What i did:

# Download Solr
wget http://archive.apache.org/dist/lucene/solr/4.4.0/solr-4.4.0.tgz
tar xvfz solr-4.4.0.tgz

# Extract content from solr.war and add missing jars from the lib/ext like
Guido described
mkdir dir_to_extract
cp -R solr-4.4.0/example/webapps/solr.war dir_to_extract
cd dir_to_extract
unzip solr.war
rm solr.war
cp ../solr-4.4.0/example/lib/ext/*.jar WEB-INF/lib/
jar -cvf solr.war *

# copy new var to jetty webapps folder
sudo cp solr.war /usr/share/jetty/webapps

# Copy Solr example files
sudo mkdir /usr/share/solr
sudo cp -R solr-4.4.0/example/* /usr/share/solr/
sudo chmod -R jetty:adm /usr/share/solr

# Edit jetty config
vi /etc/default/jetty

NO_START=0
VERBOSE=yes
JETTY_HOST=0.0.0.0
JAVA_OPTIONS="-Xmx256m -Djava.awt.headless=true
-Dsolr.solr.home=/usr/share/solr/solr $JAVA_OPTIONS"

And then Solr 4.4.0 is accessible on http://localhost:8080/solr

But i also saw the box with the hint on
https://cwiki.apache.org/confluence/display/solr/Installing+Solr:

"Solr ships with a working Jetty server, with optimized settings for Solr, inside the example directory. It is recommended that you use the provided
Jetty server for optimal performance. If you absolutely must use a
different servlet container then continue to the next section on how to
install Solr."

@Guido: Do you know if the performance is weaker with the Jetty 6.1?

And which Jetty version is the inluded one?



2013/10/10 Peter Schmidt <peter.schmidt0...@gmail.com>

i added the jars you have listet and recreated a solr.war


2013/10/10 Peter Schmidt <peter.schmidt0...@gmail.com>

OK. I extracted the solr.war in webapps folder. And than out.log reports

2013-10-10 16:47:28.184:WARN::Config error at <New id="ServerLog"
class="java.io.PrintStream"><Arg>|        <New
class="org.mortbay.util.RolloverFileOutputStream"><Arg><SystemProperty
name="jetty.home" default="."/>/logs/yyyy_mm_dd.stderrout.log</Arg><Arg
type="boolean">false</Arg><Arg type="int">90</Arg><Arg><Call
class="java.util.TimeZone"
name="getTimeZone"><Arg>GMT</Arg></Call></Arg><Get id="ServerLogName"
name="datedFilename"/></New>| </Arg></New>
java.lang.reflect.InvocationTargetException
2013-10-10 16:47:28.191:WARN::EXCEPTION
java.lang.reflect.InvocationTargetException

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
         at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
         at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
         at
org.mortbay.xml.XmlConfiguration.newObj(XmlConfiguration.java:608)
         at
org.mortbay.xml.XmlConfiguration.itemValue(XmlConfiguration.java:915)
         at
org.mortbay.xml.XmlConfiguration.value(XmlConfiguration.java:837)
         at
org.mortbay.xml.XmlConfiguration.newObj(XmlConfiguration.java:593)
         at
org.mortbay.xml.XmlConfiguration.configure(XmlConfiguration.java:256)
         at
org.mortbay.xml.XmlConfiguration.configure(XmlConfiguration.java:214)
         at
org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:974)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
         at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
         at java.lang.reflect.Method.invoke(Method.java:616)
         at org.mortbay.start.Main.invokeMain(Main.java:194)
         at org.mortbay.start.Main.start(Main.java:534)
         at
org.mortbay.jetty.start.daemon.Bootstrap.start(Bootstrap.java:30)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
         at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
         at java.lang.reflect.Method.invoke(Method.java:616)
         at
org.apache.commons.daemon.support.DaemonLoader.start(DaemonLoader.java:177)
2013-10-10 16:47:28.192:WARN::Nested in
java.lang.reflect.InvocationTargetException:
java.io.IOException: Cannot write log file
/var/log/jetty/2013_10_10.stderrout.log
         at
org.mortbay.util.RolloverFileOutputStream.setFile(RolloverFileOutputStream.java:233)
         at
org.mortbay.util.RolloverFileOutputStream.<init>(RolloverFileOutputStream.java:164)
         at
org.mortbay.util.RolloverFileOutputStream.<init>(RolloverFileOutputStream.java:116)

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
         at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
         at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
         at
org.mortbay.xml.XmlConfiguration.newObj(XmlConfiguration.java:608)
         at
org.mortbay.xml.XmlConfiguration.itemValue(XmlConfiguration.java:915)
         at
org.mortbay.xml.XmlConfiguration.value(XmlConfiguration.java:837)
         at
org.mortbay.xml.XmlConfiguration.newObj(XmlConfiguration.java:593)
         at
org.mortbay.xml.XmlConfiguration.configure(XmlConfiguration.java:256)
         at
org.mortbay.xml.XmlConfiguration.configure(XmlConfiguration.java:214)
         at
org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:974)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
         at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
         at java.lang.reflect.Method.invoke(Method.java:616)
         at org.mortbay.start.Main.invokeMain(Main.java:194)
         at org.mortbay.start.Main.start(Main.java:534)
         at
org.mortbay.jetty.start.daemon.Bootstrap.start(Bootstrap.java:30)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
         at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
         at java.lang.reflect.Method.invoke(Method.java:616)
         at
org.apache.commons.daemon.support.DaemonLoader.start(DaemonLoader.java:177)


2013/10/10 Guido Medina <guido.med...@temetra.com>

Add the following jars inside solr.war WEB-INF/lib folder:

jcl-over-slf4j-1.7.5.jar
jul-to-slf4j-1.7.5.jar
log4j-1.2.17.jar
slf4j-api-1.7.5.jar
slf4j-log4j12-1.7.5.jar

Optional if you are going to use spatial search:
jts-1.13.jar

Guido.


On 10/10/13 14:33, Peter Schmidt wrote:

Sorry terminal shows:

$ sudo service jetty start
Found JAVA=/usr/lib/jvm/java-6-**openjdk/jre/bin/java in JAVA_HOME=/
Starting Jetty: FAILED


2013/10/10 Peter Schmidt <peter.schmidt0...@gmail.com>

  The log:
2013-10-10 15:01:47.071:INFO::jetty-6.1.**22
2013-10-10 15:01:47.110:INFO::Deploy /etc/jetty/contexts/javadoc.**xml
->
org.mortbay.jetty.handler.**ContextHandler@2353f67e
{/javadoc,file:/usr/share/doc/**libjetty-java/api/}
2013-10-10 15:01:47.161:INFO::NO JSP Support for , did not find
org.apache.jasper.servlet.**JspServlet
2013-10-10 15:01:47.192:INFO::Extract file:/var/lib/jetty/webapps/**
solr.war
to /tmp/Jetty_0_0_0_0_8080_solr.**war__solr__7k9npr/webapp
2013-10-10 15:01:47.761:INFO::NO JSP Support for /solr, did not find
org.apache.jasper.servlet.**JspServlet
2013-10-10 15:01:47.868:WARN::failed SolrRequestFilter:
org.apache.solr.common.**SolrException: Could not find necessary SLF4j logging jars. If using Jetty, the SLF4j logging jars need to go in the
jetty lib/ext directory. For other containers, the corresponding
directory
should be used. For more information, see:
http://wiki.apache.org/solr/**SolrLogging<http://wiki.apache.org/solr/SolrLogging>
2013-10-10 15:01:47.869:WARN::Failed startup of context
org.mortbay.jetty.webapp.**WebAppContext@a13f991
{/solr,file:/var/lib/jetty/**webapps/solr.war}
org.apache.solr.common.**SolrException: Could not find necessary SLF4j logging jars. If using Jetty, the SLF4j logging jars need to go in the
jetty lib/ext directory. For other containers, the corresponding
directory
should be used. For more information, see:
http://wiki.apache.org/solr/**SolrLogging<http://wiki.apache.org/solr/SolrLogging>
          at
org.apache.solr.servlet.**SolrDispatchFilter.<init>(**
SolrDispatchFilter.java:104)
          at sun.reflect.**NativeConstructorAccessorImpl.**
newInstance0(Native
Method)
          at
sun.reflect.**NativeConstructorAccessorImpl.**newInstance(**
NativeConstructorAccessorImpl.**java:57)
          at
sun.reflect.**DelegatingConstructorAccessorI**mpl.newInstance(**
DelegatingConstructorAccessorI**mpl.java:45)
          at java.lang.reflect.Constructor.**
newInstance(Constructor.java:**532)
          at java.lang.Class.newInstance0(**Class.java:374)
          at java.lang.Class.newInstance(**Class.java:327)
at org.mortbay.jetty.servlet.**Holder.newInstance(Holder.**
java:153)
          at
org.mortbay.jetty.servlet.**FilterHolder.doStart(**
FilterHolder.java:92)
          at
org.mortbay.component.**AbstractLifeCycle.start(**
AbstractLifeCycle.java:50)
          at
org.mortbay.jetty.servlet.**ServletHandler.initialize(**
ServletHandler.java:662)
at org.mortbay.jetty.servlet.**Context.startContext(Context.*
*java:140)
          at
org.mortbay.jetty.webapp.**WebAppContext.startContext(**
WebAppContext.java:1250)
          at
org.mortbay.jetty.handler.**ContextHandler.doStart(**
ContextHandler.java:518)
          at
org.mortbay.jetty.webapp.**WebAppContext.doStart(**
WebAppContext.java:467)
          at
org.mortbay.component.**AbstractLifeCycle.start(**
AbstractLifeCycle.java:50)
          at
org.mortbay.jetty.handler.**HandlerCollection.doStart(**
HandlerCollection.java:152)
          at
org.mortbay.jetty.handler.**ContextHandlerCollection.**doStart(**
ContextHandlerCollection.java:**156)
          at
org.mortbay.component.**AbstractLifeCycle.start(**
AbstractLifeCycle.java:50)
          at
org.mortbay.jetty.handler.**HandlerCollection.doStart(**
HandlerCollection.java:152)
          at
org.mortbay.component.**AbstractLifeCycle.start(**
AbstractLifeCycle.java:50)
          at
org.mortbay.jetty.handler.**HandlerWrapper.doStart(**
HandlerWrapper.java:130)
          at org.mortbay.jetty.Server.**doStart(Server.java:224)
          at
org.mortbay.component.**AbstractLifeCycle.start(**
AbstractLifeCycle.java:50)
          at org.mortbay.xml.**XmlConfiguration.main(**
XmlConfiguration.java:985)
at sun.reflect.**NativeMethodAccessorImpl.**invoke0(Native
Method)
          at
sun.reflect.**NativeMethodAccessorImpl.**invoke(**
NativeMethodAccessorImpl.java:**57)
          at
sun.reflect.**DelegatingMethodAccessorImpl.**invoke(**
DelegatingMethodAccessorImpl.**java:43)
          at java.lang.reflect.Method.**invoke(Method.java:616)
          at org.mortbay.start.Main.**invokeMain(Main.java:194)
          at org.mortbay.start.Main.start(**Main.java:534)
          at org.mortbay.start.Main.start(**Main.java:441)
          at org.mortbay.start.Main.main(**Main.java:119)
2013-10-10 15:01:47.870:WARN::failed
org.mortbay.jetty.webapp.**WebAppContext@a13f991{/solr,**
file:/var/lib/jetty/webapps/**solr.war}:
java.lang.**NoClassDefFoundError: org/slf4j/Logger
2013-10-10 15:01:47.870:WARN::failed ContextHandlerCollection@**
2565a3c2:
java.lang.**NoClassDefFoundError: org/slf4j/Logger
2013-10-10 15:01:47.870:INFO::Opened /var/log/jetty/2013_10_10.**
request.log
2013-10-10 15:01:47.871:WARN::failed HandlerCollection@33e228bc:
java.lang.**NoClassDefFoundError: org/slf4j/Logger
2013-10-10 15:01:47.871:WARN::Error starting handlers
java.lang.**NoClassDefFoundError: org/slf4j/Logger
          at java.lang.Class.**getDeclaredMethods0(Native Method)
          at java.lang.Class.**privateGetDeclaredMethods(**
Class.java:2482)
          at java.lang.Class.getMethod0(**Class.java:2725)
          at java.lang.Class.getMethod(**Class.java:1650)
          at org.mortbay.log.Log.unwind(**Log.java:228)
          at org.mortbay.log.Log.warn(Log.**java:197)
          at
org.mortbay.jetty.webapp.**WebAppContext.doStart(**
WebAppContext.java:475)
...

And when i copy the jars from solr-4.4.0/example/lib and
solr-4.4.0/example/lib and solr-4.4.0/example/lib/ext to jettys lib
directory and lib/ext the server is not starting anymore. Quits with
JETTY:
Failed without logging something



2013/10/10 Guido Medina <guido.med...@temetra.com>

Check the jetty logs, there must be something wrong in your collection
config, usually if it doesn't start it will tell you there.

And of course, for every change you make be sure you restart jetty.

Guido.


On 10/10/13 13:20, Peter Schmidt wrote:

  No, it's not working that easy with the jetty 6.1.
When i just add -Dsolr.solr.home to my /etc/default/jetty and put the solr.war in the jetty webapps directory i got a 404 when in try to
reach
http://localhost:8080 or http://localhost:8080/solr.


2013/10/10 Guido Medina <guido.med...@temetra.com>

My I forgot to mention where you need to copy the solr.war file:

/var/lib/jetty/webapps

Guido.


On 10/10/13 10:48, Guido Medina wrote:

   Here is the pertinent changes you need to pass to
/etc/default/jetty:

     * JAVA_OPTIONS="-Djava.awt.******headless=true
-Dfile.encoding=UTF-8


-server -Xms8g -Xmx8g -XX:+UseG1GC -XX:MaxGCPauseMillis=50
       -XX:+OptimizeStringConcat -XX:+UseStringCache"
     * JAVA_OPTIONS="-Dsolr.solr.******
home=$YOUR_SOLR_COLLECTION_******HOME


       $JAVA_OPTIONS"


Of course, the 1st JAVA_OPTIONS are our own tuning, you are free to
play
with it. Adjust your solr collection home to whatever path is on
your
system.

HTH,

Guido.

On 10/10/13 10:43, Guido Medina wrote:

   I can confirm solr 3.x and 4.x runs fine with jetty 6.x from
Ubuntu

repo, we have in production for few years now with no issues, you
just need
to be sure your solr.war has the required jars in it, also your
collection
must have the extra jars needed by your app.

We have been running it in Ubuntu Server 12.04 LTS for a long
time, it
is easy to have the jetty server with default repo package since
it
is easy
to pass JVM parameters using /etc/default/jetty config file.

HTH,

Guido.

On 10/10/13 10:02, Furkan KAMACI wrote:

   Do you get an error?

2013/10/10 Peter Schmidt <peter.schmidt0...@gmail.com>

    Hey folks,

for some days i tried to get Solr 4.4.0 working as a webapp with
Jetty
6.1
from the Ubuntu repository installed with apt-get. First i
tried the
installation according the wiki http://wiki.apache.org/solr/** SolrJetty <http://wiki.apache.org/solr/****SolrJetty<http://wiki.apache.org/solr/**SolrJetty> <http://wiki.apache.**org/solr/SolrJetty<http://wiki.apache.org/solr/SolrJetty>
  .
Then
i found this example
http://www.kingstonlabs.com/******blog/how-to-install-solr-36-* ***<http://www.kingstonlabs.com/****blog/how-to-install-solr-36-**>
<http://www.kingstonlabs.**com/**blog/how-to-install-**
solr-36-**<http://www.kingstonlabs.com/**blog/how-to-install-solr-36-**> on-ubuntu-1204/and<http://www.****kingstonlabs.com/blog/how-**
to-** <http://kingstonlabs.com/blog/how-to-**>
install-solr-36-on-ubuntu-****1204/and<http://www.**
kingstonlabs.com/blog/how-to-**install-solr-36-on-ubuntu-**
1204/and<http://www.kingstonlabs.com/blog/how-to-install-solr-36-on-ubuntu-1204/and>
tried the Configuration according to the book pache Solr 4
Cookbook
by
Rafal Kuc.
But it semmed to be impossible to run Solr 4.4.0 as webapp on
Ubuntus
jetty 6.1 :(
Can somebody confirm that it's impossible or give me an advice
how
to
run
Solr 4.4.0 on Jetty 6.1?
Regards






Reply via email to