fieldList = fields.toArray(new String[fields.size()]); SolrQuery query = new SolrQuery(); query.setQuery("*:*"); query.setParam("fq", "id:[ " + startkey + " TO * ]"); if (returnFields) { query.setFields(fieldList); query.setRows(recordcount); final QueryResponse response = client.query(table, query); SolrDocumentList results = response.getResults(); entry = new HashMap<>((int) results.getNumFound()); for (String field : hit.getFieldNames()) { entry.put(field, new StringByteIterator(String.valueOf(hit.getFirstValue(field)))); return checkStatus(response.getStatus()); } catch (IOException | SolrServerException e) { e.printStackTrace();
writer.name("facet_queries"); writer.beginArray(); for (final Map.Entry<String,Integer> facetQuery : response.getFacetQuery().entrySet()){ writer.beginObject(); writer.name("facet").value(facetQuery.getKey()); for (final FacetField facetField : response.getFacetFields()){ writer.name(facetField.getName()); writer.beginArray(); for (final RangeFacet rangeFacet : response.getFacetRanges()) { writer.name(rangeFacet.getName()); writer.beginArray(); for (final IntervalFacet intervalFacet : response.getIntervalFacets()) { writer.name(intervalFacet.getField()); writer.beginArray();
final SolrQuery solrQuery = new SolrQuery(); final boolean isSolrCloud = SOLR_TYPE_CLOUD.equals(context.getProperty(SOLR_TYPE).getValue()); final String collection = context.getProperty(COLLECTION).evaluateAttributeExpressions(flowFileResponse).getValue(); solrQuery.setQuery(context.getProperty(SOLR_PARAM_QUERY).evaluateAttributeExpressions(flowFileResponse).getValue()); solrQuery.setRequestHandler(context.getProperty(SOLR_PARAM_REQUEST_HANDLER).evaluateAttributeExpressions(flowFileResponse).getValue()); timer.stop(); final Long totalNumberOfResults = response.getResults().getNumFound(); responseAttributes.put(ATTRIBUTE_CURSOR_MARK, response.getNextCursorMark()); responseAttributes.put(ATTRIBUTE_SOLR_STATUS, String.valueOf(response.getStatus())); responseAttributes.put(ATTRIBUTE_QUERY_TIME, String.valueOf(response.getQTime())); flowFileResponse = session.putAllAttributes(flowFileResponse, responseAttributes); if (response.getResults().size() > 0) { .asControllerService(RecordSetWriterFactory.class); final RecordSchema schema = writerFactory.getSchema(flowFileResponse.getAttributes(), null); final RecordSet recordSet = SolrUtils.solrDocumentsToRecordSet(response.getResults(), schema); final StringBuffer mimeType = new StringBuffer(); flowFileResponse = session.write(flowFileResponse, out -> {
@Override public List<SolrDocument> getResponseDocuments(QueryResponse response) { List<SolrDocument> docs; if (response.getGroupResponse() == null) { docs = response.getResults(); } else { docs = new ArrayList<SolrDocument>(); GroupResponse gr = response.getGroupResponse(); for (GroupCommand gc : gr.getValues()) { for (Group g : gc.getValues()) { for (SolrDocument d : g.getResult()) { docs.add(d); } } } } return docs; }
fieldList = fields.toArray(new String[fields.size()]); SolrQuery query = new SolrQuery(); query.setQuery("id:" + key); if (returnFields) { query.setFields(fieldList); final QueryResponse response = client.query(table, query); SolrDocumentList results = response.getResults(); if ((results != null) && (results.getNumFound() > 0)) { for (String field : results.get(0).getFieldNames()) { result.put(field, new StringByteIterator(String.valueOf(results.get(0).getFirstValue(field)))); return checkStatus(response.getStatus()); } catch (IOException | SolrServerException e) { e.printStackTrace();
SolrQuery solrQuery = new SolrQuery() .setQuery(searchCriteria.getQuery()) .setRows(searchCriteria.getPageSize()) .setStart((start) * searchCriteria.getPageSize()) .setRequestHandler(searchCriteria.getRequestHandler()); int numResults = 0; try { response = solrConfiguration.getServer().query(solrQuery, getSolrQueryMethod()); responseDocuments = getResponseDocuments(response); numResults = (int) response.getResults().getNumFound(); LOG.trace(response.toString());
private long countDocs(SolrServer ontologiesSolrServer) throws SolrServerException { SolrQuery countQuery = new SolrQuery("*:*"); countQuery.setRows(0); QueryResponse queryResponse = ontologiesSolrServer.query(countQuery); long count = queryResponse.getResults().getNumFound(); return count; }
String collection = query.getStore(); String keyIdField = getKeyFieldId(collection); SolrQuery solrQuery = new SolrQuery("*:*"); String queryFilter = buildQueryFilter(query.getCondition(), informations.get(collection)); solrQuery.addFilterQuery(queryFilter); if (!query.getOrder().isEmpty()) { List<IndexQuery.OrderEntry> orders = query.getOrder(); String item = order1.getKey(); SolrQuery.ORDER order = order1.getOrder() == Order.ASC ? SolrQuery.ORDER.asc : SolrQuery.ORDER.desc; solrQuery.addSort(new SolrQuery.SortClause(item, order)); QueryResponse response = solrClient.query(collection, solrQuery); logger.debug("Executed query [{}] in {} ms", query.getCondition(), response.getElapsedTime()); int totalHits = response.getResults().size(); for (SolrDocument hit : response.getResults()) { result.add(hit.getFieldValue(keyIdField).toString());
String collection = query.getStore(); String keyIdField = getKeyFieldId(collection); SolrQuery solrQuery = new SolrQuery(query.getQuery()) .addField(keyIdField) .setIncludeScore(true) .setStart(query.getOffset()) .setRows(query.hasLimit() ? query.getLimit() : maxResults); QueryResponse response = solrClient.query(collection, solrQuery); if (logger.isDebugEnabled()) logger.debug("Executed query [{}] in {} ms", query.getQuery(), response.getElapsedTime()); int totalHits = response.getResults().size(); if (!query.hasLimit() && totalHits >= maxResults) { logger.warn("Query result set truncated to first [{}] elements for query: {}", maxResults, query); for (SolrDocument hit : response.getResults()) { double score = Double.parseDouble(hit.getFieldValue("score").toString()); result.add(new RawQuery.Result<String>(hit.getFieldValue(keyIdField).toString(), score));
public String getDocText(String id) throws SolrServerException { String q = "id:" + id; SolrQuery query = new SolrQuery(); query.setQuery(q); query.setFields("text"); QueryResponse rsp = server.query(query); String docText = ""; if (rsp.getResults().getNumFound() > 0) { @SuppressWarnings({ "unchecked", "rawtypes" }) ArrayList<String> results = (ArrayList) rsp.getResults().get(0) .getFieldValues("text"); docText = results.get(0); } return docText; }
final SolrQuery solrQuery = new SolrQuery(); stateMap.putAll(context.getStateManager().getState(Scope.CLUSTER).toMap()); logger.debug(solrQuery.toQueryString()); final QueryResponse response = req.process(getSolrClient()); final SolrDocumentList documentList = response.getResults(); if (response.getResults().size() > 0) { final SolrDocument lastSolrDocument = documentList.get(response.getResults().size()-1); final String latestDateValue = df.format(lastSolrDocument.get(dateField)); final String newCursorMark = response.getNextCursorMark(); solrQuery.setParam(CursorMarkParams.CURSOR_MARK_PARAM, newCursorMark); for (SolrDocument doc : response.getResults()) { doc.removeFields(dateField); .asControllerService(RecordSetWriterFactory.class); final RecordSchema schema = writerFactory.getSchema(null, null); final RecordSet recordSet = SolrUtils.solrDocumentsToRecordSet(response.getResults(), schema); final StringBuffer mimeType = new StringBuffer(); flowFile = session.write(flowFile, new OutputStreamCallback() { continuePaging.set(response.getResults().size() == Integer.parseInt(context.getProperty(BATCH_SIZE).getValue()));
query.setParam("rows", String.valueOf(rows)); return false; log.debug("sending query {}", query); QueryResponse queryResponse = solrServer.query(query); log.debug("getting response {}", queryResponse.getHeader()); SolrDocumentList docs = queryResponse.getResults(); numFound = docs.getNumFound(); Map<String, Map<String, List<String>>> highlighting = queryResponse.getHighlighting(); for (SolrDocument doc : docs) { List<FacetField> returnedFieldFacet = queryResponse.getFacetFields(); if (returnedFieldFacet != null) { facetFields.addAll(returnedFieldFacet); SpellCheckResponse spellCheckResponse = queryResponse.getSpellCheckResponse(); if (spellCheckResponse != null && spellCheckResponse.getSuggestions() != null && spellCheckResponse.getSuggestions().size() > 0) { NamedList<Object> response = queryResponse.getResponse(); Map suggest = (Map) response.get("suggest"); if (suggest != null) {
public boolean existsInIndex(String username) { SolrQuery solrQuery = new SolrQuery().setQuery("name:" + username); try { return 1 == solrClient.query(solrQuery).getResults().getNumFound(); } catch (SolrServerException | IOException e) { throw new RuntimeException(e); } }
@Override public void copyCollection(String reindexScrollTimeout, String src, String dst) throws DatastoreClientServiceException { SolrQuery solrQuery = new SolrQuery(); solrQuery.setRows(1000); solrQuery.setQuery("*:*"); solrQuery.addSort("id", SolrQuery.ORDER.asc); // Pay attention to this line String cursorMark = CursorMarkParams.CURSOR_MARK_START; boolean done = false; QueryResponse response; try { do { solrQuery.set(CursorMarkParams.CURSOR_MARK_PARAM, cursorMark); response = getClient().query(src, solrQuery); List<SolrInputDocument> documents = new ArrayList<>(); for (SolrDocument document: response.getResults()) { SolrInputDocument inputDocument = getConverter().toSolrInputDocument(document); inputDocument.removeField("_version_"); documents.add(inputDocument); } getClient().add(dst, documents); } while (cursorMark.equals(response.getNextCursorMark())); getClient().commit(dst); } catch (Exception e) { throw new DatastoreClientServiceException(e); } }
public static void doQuery(SolrClient ss, String id) throws SolrServerException, IOException { SolrParams p = new SolrQuery("id:\"" + id + "\""); QueryResponse r = ss.query(p); System.out.println("GOT collection " + r.getResults().get(0).getFieldValue("collection")); System.out.println("GOT collections " + r.getResults().get(0).getFieldValue("collections")); System.out.println("STILL GOT crawl_date " + r.getResults().get(0).getFieldValue("crawl_date")); }
private ServerDetail fetchServerDetails(String hostname, String coreName, SolrServer realTimeThoth) throws SolrServerException { System.out.println("Fetching server details for hostname("+hostname+") coreName("+coreName+")"); QueryResponse qr = realTimeThoth.query(new SolrQuery("hostname_s:\"" + hostname + "\"" +" AND " + "coreName_s:\"" +coreName + "\" AND NOT exception_b:true AND NOT slowQuery_b:true").setRows(1)); SolrDocumentList solrDocumentList = qr.getResults(); ServerDetail sd = null; if (qr.getResults().getNumFound() > 0) { String pool = (String)solrDocumentList.get(0).getFieldValue(POOL); String port = solrDocumentList.get(0).getFieldValue(PORT).toString(); sd = new ServerDetail(hostname, pool, port, coreName); } return sd; }
SolrQuery query = new SolrQuery(); query.setQuery(parser.parse(searchTerm).toString()); query.addFilterQuery("id:" + id); query.setRows(1); QueryResponse response = solr.query(query); SolrDocumentList results = response.getResults(); if (!results.isEmpty() && response.getHighlighting().get(id) != null) { List<String> fragments = response.getHighlighting().get(id).get(this.content); String[] bestFragments = new String[fragments.size() > 100 ? 100 : fragments.size()]; for (int i = 0; i < bestFragments.length; i++)
@Override public String getVersion() { final SolrQuery query = new SolrQuery(); query.setQuery("version:*"); query.set(CommonParams.ROWS, "1"); try { final QueryResponse response = this.externalServicesAccess.getSolrConnection(this).query(query); final SolrDocumentList termList = response.getResults(); if (!termList.isEmpty()) { final SolrDocument firstDoc = termList.get(0); return firstDoc.getFieldValue(VERSION_FIELD_NAME).toString(); } } catch (SolrServerException | SolrException | IOException ex) { this.logger.warn("Failed to query ontology version: {}", ex.getMessage()); } return null; }
@Override public OrcidSolrResult findByOrcid(String orcid) { OrcidSolrResult orcidSolrResult = null; SolrQuery query = new SolrQuery(); query.setQuery(ORCID + ":\"" + orcid + "\"").setFields(SCORE, ORCID, PUBLIC_PROFILE); try { QueryResponse queryResponse = solrServerReadOnly.query(query); if (!queryResponse.getResults().isEmpty()) { SolrDocument solrDocument = queryResponse.getResults().get(0); orcidSolrResult = new OrcidSolrResult(); orcidSolrResult.setRelevancyScore((Float) solrDocument.get(SCORE)); orcidSolrResult.setOrcid((String) solrDocument.get(ORCID)); orcidSolrResult.setPublicProfileMessage((String) solrDocument.getFieldValue(PUBLIC_PROFILE)); } } catch (SolrServerException se) { String errorMessage = MessageFormat.format("Error when attempting to retrieve orcid {0}", new Object[] { orcid }); throw new NonTransientDataAccessResourceException(errorMessage, se); } return orcidSolrResult; }