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 <u...@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 < > > > > agibb...@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 < > > erickerick...@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 > > > > >> <agibb...@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 > > > > >> > > > > > > > > > > > >