lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrea Gazzarini <a.gazzar...@gmail.com>
Subject Re: Connection pool shutdown error
Date Thu, 19 Mar 2015 13:26:28 GMT
I bet the problem is how the SolrServer instance is used within Spring 
Repository. I think somewhere you should alternatively

- explicitly close the client each time.
- reuse the same instance (and finally close that)

But being a Spring newbie I cannot give you further information.

Best,
Andrea

On 03/19/2015 02:18 PM, phiroc@free.fr wrote:
> Hello,
>
> I am trying to use the 4.9.1 SOLR Core API and the 1.3.2.RELEASE version of the Spring
Data SOLR API, to connect to a SOLR server, but to no avail.
>
> When I run Java application, I get the following errors:
>
> ---------------------------
>
> Exception in thread "main" org.springframework.data.solr.UncategorizedSolrException:
Error executing query; nested exception is org.apache.solr.client.solrj.SolrServerException:
Error executing query
> ...
> Caused by: java.lang.IllegalStateException: Connection pool shut down
>
> ---------------------
>
> I have tried changing Core API version (4.3.0, 4.4.0, ...) but to no avail.
>
> Any help would be much appreciated.
>
> Cheers,
>
> Philippe
>
>
>
>
> Here's my Solr Context:
>
> ----------------------------
>
> package com.myco.archives.SolrGuiMain;
>
> ....
>
> @Configuration
> @EnableSolrRepositories(basePackages = { "com.myco.archives" }, multicoreSupport = false)
> @ComponentScan
> public class SolrContext {
>
> 	private final String	HTTP_SEARCHARCHIVES	= "http://mysolr.com:8990/solr/collection3";
>
> 	@Bean
> 	public SolrServer solrServer() {
> 		SolrServer server = new HttpSolrServer(HTTP_SEARCHARCHIVES);
> 		return server;
> 	}
>
> 	@Bean
> 	public SolrOperations solrTemplate() {
> 		return new SolrTemplate(solrServer());
> 	}
>
> }
>
> -------------------------------------
>
> Here's my Repository Class:
>
> import org.springframework.data.repository.CrudRepository;
>
> public interface ArchiveDocumentRepository extends CrudRepository<Document, Long>
{
>
> 	List<Document> findByText(String text);
>
> 	List<Document> findByYmd(Date ymd);
>
> }
>
>
> ----------------------------------------
>
> And here's my App:
>
> import org.springframework.context.annotation.AnnotationConfigApplicationContext;
>
> public class App
> {
>
> 	private ArchiveDocumentRepository	archiveDocumentRepository;
>
> 	public App() {
>
> 		setContext();
> 		processDocs();
>
>
> 	}
> 	public static void main(String[] args) {
>
> 		new App();
>
> 	}
>
> 	public void setContext() throws RuntimeException {
>
> 		AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(SolrContext.class);
>
> 		if (context != null) {
> 			setArchiveDocumentRepository(context.getBean(ArchiveDocumentRepository.class));
> 		}
> 		context.close();
> 	}
>
> 	public final ArchiveDocumentRepository getArchiveDocumentRepository() {
> 		return archiveDocumentRepository;
> 	}
>
> 	public final void setArchiveDocumentRepository(ArchiveDocumentRepository archiveDocumentRepository)
{
> 		this.archiveDocumentRepository = archiveDocumentRepository;
> 	}
>
> 	public void processDocs() {
>
>
> 		Iterable<Document> docs = getArchiveDocumentRepository().findAll();
>
> 		for (Document doc : docs) {
> 			System.out.println("doc count = " + doc.getYmd());
> 		}
>
> 	}
>
> }
>
>
> -------------------------------------------
>
>
>
>
>
>
>
>


Mime
View raw message