lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aaron Gibbons <agibb...@synergydatasystems.com>
Subject Re: SolrCloud 5.2.1 - collection creation error
Date Thu, 23 Jul 2015 15:52:07 GMT
I originally started using Ansible playbooks which did install the JDK
(with the same error), but have been doing manual installs to take Ansible
completely out of the equation.

Safari wasn't giving showing the XML response so I ran this in Chrome..
http://XX.X.XX.XXX:8983/solr/admin/collections?action=CREATE&name=test&collection.configname=test
<http://XX.X.XX.XXX:8983/solr/admin/collections?action=CREATE&name=mega&collection.configname=mega>
<response>
<lst name="responseHeader">
<int name="status">500</int>
<int name="QTime">29</int>
</lst>
<lst name="error">
<str name="msg">
java.io.InvalidClassException: org.apache.solr.client.solrj.SolrResponse;
local class incompatible: stream classdesc serialVersionUID =
3123208377723774018, local class serialVersionUID = 3945300637328478755
</str>
<str name="trace">
org.apache.solr.common.SolrException: java.io.InvalidClassException:
org.apache.solr.client.solrj.SolrResponse; local class incompatible: stream
classdesc serialVersionUID = 3123208377723774018, local class
serialVersionUID = 3945300637328478755 at
org.apache.solr.client.solrj.SolrResponse.deserialize(SolrResponse.java:62)
at
org.apache.solr.handler.admin.CollectionsHandler.handleResponse(CollectionsHandler.java:228)
at
org.apache.solr.handler.admin.CollectionsHandler.handleRequestBody(CollectionsHandler.java:168)
at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:143)
at
org.apache.solr.servlet.HttpSolrCall.handleAdminRequest(HttpSolrCall.java:660)
at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:431) at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:227)
at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:196)
at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
at org.eclipse.jetty.server.Server.handle(Server.java:497) at
org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) at
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
at
org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
at
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
at java.lang.Thread.run(Thread.java:745) Caused by:
java.io.InvalidClassException: org.apache.solr.client.solrj.SolrResponse;
local class incompatible: stream classdesc serialVersionUID =
3123208377723774018, local class serialVersionUID = 3945300637328478755 at
java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:621) at
java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1623) at
java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1518) at
java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1623) at
java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1518) at
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1774)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) at
java.io.ObjectInputStream.readObject(ObjectInputStream.java:371) at
org.apache.solr.client.solrj.SolrResponse.deserialize(SolrResponse.java:60)
... 27 more
</str>
<int name="code">500</int>
</lst>
</response>

On Thu, Jul 23, 2015 at 11:26 AM, Upayavira <uv@odoko.co.uk> wrote:

> Have you tried it with a JDK? I tend to use JDK rather than JRE, but
> don't recall whether this is a specific requirement for Solr.
>
> Can you show the URL you use for the API, and the JSON/XML response you
> get? I wouldn't expect to see mention of solrj in the API because it
> isn't used. Just for the record, by API I mean HTTP API, so calling the
> solr instance from a browser, for example.
>
> Upayavira
>
> On Thu, Jul 23, 2015, at 04:07 PM, Aaron Gibbons wrote:
> > *When you run bin/solr you are doing that on the instance itself? *
> > Yes
> >
> > *You show a collections API URL below. Does that fail the same way?*
> > Error from API:
> > 50042java.io.InvalidClassException:
> > org.apache.solr.client.solrj.SolrResponse; local class incompatible:
> > stream
> > classdesc serialVersionUID = 3123208377723774018, local class
> > serialVersionUID =
> > 3945300637328478755org.apache.solr.common.SolrException:
> > java.io.InvalidClassException: org.apache.solr.client.solrj.SolrResponse;
> > local class incompatible: stream classdesc serialVersionUID =
> > 3123208377723774018, local class serialVersionUID = 3945300637328478755
> > at
> >
> org.apache.solr.client.solrj.SolrResponse.deserialize(SolrResponse.java:62)...
> >
> > Error from bin script:
> >
> > null:org.apache.solr.common.SolrException:
> > java.io.InvalidClassException:
> > org.apache.solr.client.solrj.SolrResponse; local class incompatible:
> > stream classdesc serialVersionUID = 3123208377723774018, local class
> > serialVersionUID = 3945300637328478755
> >       at
> org.apache.solr.client.solrj.SolrResponse.deserialize(SolrResponse.java:62)...
> >
> >
> > *Is the core created correctly, even though bin/solr cannot handle the
> > response back to you?*
> > No.
> >
> > The Solr admin and the init script both have the java home set to:
> > /usr/lib/jvm/java-8-oracle/jre
> >
> >
> >
> > On Thu, Jul 23, 2015 at 10:05 AM, Upayavira <uv@odoko.co.uk> wrote:
> >
> > > I'd still like to just confirm that you're using the same Java for
> > > running Solr and for running bin/solr.
> > >
> > > When you run bin/solr you are doing that on the instance itself?
> > >
> > > You show a collections API URL below. Does that fail the same way?
> > > Basically, the exception you showed was a SolrJ error. Using the
> > > collections API directly over HTTP should remove SolrJ from the picture
> > > and thus remove your exception. Also, it seems to be an exception
> > > parsing the SolrResponse. That would suggest that the action has
> > > occurred already. Is the core created correctly, even though bin/solr
> > > cannot handle the response back to you?
> > >
> > > Upayavira
> > >
> > > On Thu, Jul 23, 2015, at 01:50 PM, Aaron Gibbons wrote:
> > > > I've mainly used Oracle Java 8, but tested 7 also. Typically I'll
> wipe
> > > > the
> > > > machines and start from scratch before installing a different
> version.
> > > > The
> > > > latest attempt followed these steps exactly on each machine:
> > > >
> > > >    - sudo apt-get install python-software-properties
> > > >
> > > >
> > > >    - sudo add-apt-repository ppa:webupd8team/java
> > > >
> > > >
> > > >    - sudo apt-get update
> > > >
> > > >
> > > >    - sudo apt-get install oracle-java8-installer
> > > >
> > > >
> > > >    - cd ~
> > > >    - wget
> > > >
> http://apache.mirrors.ionfish.org/lucene/solr/5.2.1/solr-5.2.1.tgz
> > > >
> > > >
> > > >    - tar xzf solr-5.2.1.tgz solr-5.2.1/bin/install_solr_service.sh
> > > >    --strip-components=2
> > > >
> > > >
> > > >    - sudo bash ./install_solr_service.sh solr-5.2.1.tgz
> > > >
> > > >
> > > >    - sudo service solr stop
> > > >
> > > > I then modify the solr.in.sh file in /var/solr/ and add my
> zookeepers,
> > > > hostname, etc according to the steps in Taking Solr to Production.
> > > >
> > > >    - sudo service solr start
> > > >
> > > > Verify the interface is working and cloud tab is present.  Then try
> to
> > > > add
> > > > a core (config is already in zookeeper).
> > > >
> > > >
> > >
> ...collections?action=CREATE&name=test&collection.configname=test&numShards=2&replicationFactor=2
> > > >
> > > > Or
> > > >
> > > > /opt/solr/bin/solr create -c test -n test -shards 2
> -replicationFactor 2
> > > >
> > > > Nothing fancy at all...
> > > >
> > > >
> > > > How many versions of Java do you have? I bet the bin/solr script is
> > > > using SolrJ (i.e. Java) to communicate with Solr itself (also Java),
> but
> > > > for some weird reason they are using incompatible Java versions.
> > > >
> > > > SolrJ uses Java serialization to communicate with Solr, therefore it
> > > > must use the same Jars and the same Java version in order to succeed
> at
> > > > that. Something weird is going on around that area, it seems.
> > > >
> > > > Make sure you are using the same Java to start Solr as you are using
> to
> > > > run the bin/solr create script, and make sure you are using the same
> > > > version of Solr, too.
> > > >
> > > > Upayavira
> > > >
> > > > On Wed, Jul 22, 2015, at 08:42 PM, Aaron Gibbons wrote:
> > > > > Seems like I'm missing something simple here. SolrCloud installs
> and
> > > > > seems
> > > > > to work fine and the examples work as they should on each
> individual
> > > > > machine. What I'm trying to do is setup 4 separate Solr machines
> > > (Ubuntu
> > > > > 14.04) with 3 external zookeepers (the ones currently being used
> by our
> > > > > production Solr 5.10 boxes).
> > > > >
> > > > > I took Ansible out of the equation and installed Java 9 PPA and
> Solr
> > > 5.21
> > > > > manually on fresh machines.  I change the solr.in.sh file to
> point at
> > > my
> > > > > 3
> > > > > external zookeepers and make sure everything else is set there
> > > according
> > > > > to
> > > > > the "Taking Solr to Production" steps. I have uploaded the example
> > > > > data_driven_schema_configs config files to zookeeper.  I tried
> both the
> > > > > API
> > > > > and command line to create a collection with the uploaded configs
> and
> > > get
> > > > > the same error that I posted previously.
> > > > >
> > > > > What additional steps might I be overlooking in setting up 4
> separate
> > > > > Solr
> > > > > machines for Solr Cloud?
> > > > >
> > > > >
> > > > > On Fri, Jul 17, 2015 at 4:52 PM, Aaron Gibbons <
> > > > > agibbons@synergydatasystems.com> wrote:
> > > > >
> > > > > > I started from scratch with fresh Ubuntu machines and just wiped
> them
> > > > and
> > > > > > tried again. I run my Ansible playbook (below) to install Java
8
> > > (Tried
> > > > > > Oracle this time and even tried installing it manually) and
> SolrCloud
> > > > 5.2.1
> > > > > > as described previously.  Solr cloud appears to be working fine
> but I
> > > > still
> > > > > > get the same error creating a collection. There is nothing else
> on
> > > these
> > > > > > machines so I'm not sure where the conflict would come from.
I'm
> > > using
> > > > all
> > > > > > the standard locations and settings just adding our external
> > > > zookeepers.  I
> > > > > > can't see where Ansible would be causing a conflict here either
> it's
> > > > just
> > > > > > running the commands from the tutorial across the 4 machines.
> > > > > >
> > > > > > ...
> > > > > >
> > > > > > roles:
> > > > > >
> > > > > > - role: 'williamyeh.oracle-java'
> > > > > >
> > > > > > tasks:
> > > > > >
> > > > > > - name: Download Solr.
> > > > > >
> > > > > >     get_url:
> > > > > >
> > > > > >       url: "http://archive.apache.org/dist/lucene/solr/{{
> > > solr_version
> > > > > > }}/{{ solr_filename }}.tgz"
> > > > > >
> > > > > >       dest: "{{ solr_workspace }}/{{ solr_filename }}.tgz"
> > > > > >
> > > > > >       force: no
> > > > > >
> > > > > >   - name: Extract the installation script.
> > > > > >
> > > > > >     command: >
> > > > > >
> > > > > >       tar xzf {{ solr_workspace }}/{{ solr_filename }}.tgz {{
> > > > > > solr_filename }}/bin/install_solr_service.sh --strip-components=2
> > > > > >
> > > > > >   - name: Run installation Script.
> > > > > >
> > > > > >     command: "sudo bash ./install_solr_service.sh {{
> solr_filename
> > > > }}.tgz"
> > > > > >
> > > > > >   - name: Stop solr.
> > > > > >
> > > > > >     service: name=solr state=stopped
> > > > > >
> > > > > >   - name: Copy Template init Config file into bin and restart.
> > > > > >
> > > > > >     template:
> > > > > >
> > > > > >       src: "solr-init-5.x.j2"
> > > > > >
> > > > > >       dest: /var/solr/solr.in.sh
> > > > > >
> > > > > >   - name: Replace Log4j.properties file for production logging
> > > settings.
> > > > > >
> > > > > >     copy:
> > > > > >
> > > > > >       src: "log4j.properties"
> > > > > >
> > > > > >       dest: "/var/solr/log4j.properties"
> > > > > >   ...
> > > > > >
> > > > > >   - name: Add sqljdbc.jar file to solr dist files
> > > > > >
> > > > > >     copy:
> > > > > >
> > > > > >       src: "sqljdbc4.jar"
> > > > > >
> > > > > >       dest: "/opt/solr/dist/sqljdbc4.jar"
> > > > > >
> > > > > >   - name: Start solr with new config.
> > > > > >
> > > > > >     service: name=solr state=restarted
> > > > > >
> > > > > >
> > > > > > On Thu, Jul 16, 2015 at 8:48 PM, Erick Erickson <
> > > erickerickson@gmail.com
> > > > >
> > > > > > wrote:
> > > > > >
> > > > > >> It looks at a glance like you're in "Jar hell" and have
one or
> more
> > > jar
> > > > > >> files from "somewhere else" in your classpath, possibly
a jar
> file
> > > from
> > > > > >> an older Solr or one of the libraries.
> > > > > >>
> > > > > >> Best,
> > > > > >> Erick
> > > > > >>
> > > > > >> On Thu, Jul 16, 2015 at 6:17 AM, Aaron Gibbons
> > > > > >> <agibbons@synergydatasystems.com> wrote:
> > > > > >> > I'm installing SolrCloud 5.2.1 on 4 Ubuntu 14.04 machines
> with 3
> > > > > >> external
> > > > > >> > zookeepers.  I've installed the solr machines using
Ansible
> > > following
> > > > > >> the
> > > > > >> > "Taking Solr to Production" steps.
> > > > > >> >
> > > > > >> >    1. Download 5.2.1
> > > > > >> >    2. Extract installation script
> > > > > >> >    3. Run installation script
> > > > > >> >
> > > > > >> > Then I stop solr and make my configuration changes
to the
> > > solr.in.sh
> > > > > >> file
> > > > > >>
> > > > > >> > (adding zookeepers) and log4j.properties (recommended
> changes).
> > > > Restart
> > > > > >> > solr and everything looks good.
> > > > > >> >
> > > > > >> > The problem I have is that I can't create a collection.
 I
> create
> > > the
> > > > > >> > collection folder in /var/solr/data and tried both
the bin
> script
> > > and
> > > > > >> API
> > > > > >> > but get the error below. I've tried 5.2.0 also and
both Java 7
> > > and 8
> > > > > >> with
> > > > > >> > the same result.
> > > > > >> >
> > > > > >> > 50047java.io.InvalidClassException:
> > > > > >> > org.apache.solr.client.solrj.SolrResponse; local class
> > > incompatible:
> > > > > >> stream
> > > > > >> > classdesc serialVersionUID = 3123208377723774018, local
class
> > > > > >> > serialVersionUID =
> > > > > >> 3945300637328478755org.apache.solr.common.SolrException:
> > > > > >> > java.io.InvalidClassException:
> > > > > >> org.apache.solr.client.solrj.SolrResponse;
> > > > > >> > local class incompatible: stream classdesc serialVersionUID
=
> > > > > >> > 3123208377723774018, local class serialVersionUID =
> > > > 3945300637328478755
> > > > > >> at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.apache.solr.client.solrj.SolrResponse.deserialize(SolrResponse.java:62)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.apache.solr.handler.admin.CollectionsHandler.handleResponse(CollectionsHandler.java:228)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.apache.solr.handler.admin.CollectionsHandler.handleRequestBody(CollectionsHandler.java:168)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:143)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.apache.solr.servlet.HttpSolrCall.handleAdminRequest(HttpSolrCall.java:646)
> > > > > >> > at
> > > org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:417)
> > > > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:227)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:196)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
> > > > > >> > at org.eclipse.jetty.server.Server.handle(Server.java:497)
at
> > > > > >> >
> org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
> > > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
> > > > > >> > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
> > > > > >> > at java.lang.Thread.run(Thread.java:745) Caused by:
> > > > > >> > java.io.InvalidClassException:
> > > > > >> org.apache.solr.client.solrj.SolrResponse;
> > > > > >> > local class incompatible: stream classdesc serialVersionUID
=
> > > > > >> > 3123208377723774018, local class serialVersionUID =
> > > > 3945300637328478755
> > > > > >> at
> > > > > >> >
> > > java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:617) at
> > > > > >> >
> > > >
> java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1622)
> > > > > >> at
> > > > > >> >
> > > java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1517)
> > > > at
> > > > > >> >
> > > >
> java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1622)
> > > > > >> at
> > > > > >> >
> > > java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1517)
> > > > at
> > > > > >> >
> > > > > >>
> > > >
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
> > > > > >> > at
> > > > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350) at
> > > > > >> >
> java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
> > > at
> > > > > >> >
> > > > > >>
> > > >
> > >
> org.apache.solr.client.solrj.SolrResponse.deserialize(SolrResponse.java:60)
> > > > > >> > ... 27 more 500
> > > > > >>
> > > > > >
> > > > > >
> > >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message