[ 
https://issues.apache.org/jira/browse/SOLR-14282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17213331#comment-17213331
 ] 

Andrei Minin commented on SOLR-14282:
-------------------------------------

By documentation, real time get designed to make Solr similar to NoSql 
store.So, /get should work as specialized, optimuzed search by id. But, by 
behaviour, it is not  "get from store" but "get from input log / queue"

Most repositories provide search and get/fetch API - NoSql storages like 
Cassandra, Box, FileNet, Cmod, etc —I am deleloping crawler/checker/searcher 
application working with multiple storages where Solr is one of major 
repositories and all repos return same documents in search and fetch requests.

Solr index schema copy Field instruction is de facto preprocessor for uploaded 
documents and stored/returned in search documents may differ from input 
documents (some fields not returned because not stored, modified or new fields 
added).
It is hard to make Solr act like real NoSql storage because some information is 
lost after document written to index - you may try to recover it but it is not 
gurantee.  

What would be efficient is combining nosql store and index in one app; index 
used for searching only, nosql store to put/get fields and fast recrawl. In my 
real projects, some indices recrawling takes around 3 months and it is blocking 
fixes, upgrades, etc — being able to quickly recrawl index internally without 
using external repositories will be big relief. Sorry for offtopic. 

> /get handler doesn't return copied fields
> -----------------------------------------
>
>                 Key: SOLR-14282
>                 URL: https://issues.apache.org/jira/browse/SOLR-14282
>             Project: Solr
>          Issue Type: Bug
>          Components: search, SolrJ
>    Affects Versions: 8.4
>         Environment: SOLR 8.4.0, SOLRJ, Oracle Java 8 
>            Reporter: Andrei Minin
>            Priority: Major
>         Attachments: SOLR-14282-test-update.patch, copied_fields_test.zip, 
> managed-schema.xml
>
>
> We are using /get handler to retrieve documents by id in our Java application 
> (SolrJ)
> I found that copied fields are missing in documents returned by /get handler 
> but  same documents returned by  query contain copied (by schema) fields.
> Attached documents:
>  # Integration test project archive
>  # Managed schema file for SOLR
> SOLR schema details:
>  # Unique field name "d_ida_s"
>  # Lowecase text type definition:
> {code:java}
>  <fieldType name="lowercase" class="solr.TextField" 
> positionIncrementGap="100">
>       <analyzer>
>         <tokenizer class="solr.KeywordTokenizerFactory"/>
>         <filter class="solr.LowerCaseFilterFactory" />
>       </analyzer>
>     </fieldType>{code}
>           3. Copy field instruction sample: 
> {code:java}
> <field name="ConcurrenceUserNameu_lca_s" type="lowercase" indexed="true" 
> stored="true" multiValued="false"/>
> <copyField source="ConcurrenceUserNamea_s" dest="ConcurrenceUserNameu_lca_s" 
> /> 
> {code}
> ConcurrenceUserNamea_s is string type field and ConcurrenceUserNameu_lca_s is 
> lower case text type field.
> Integration test uploads document to SOLR server and makes 2 requests: one 
> using /get rest point to fetch document by id and one using query <unique id 
> field name>:<document id value>.
> Document returned by /get rest, doesn't have copied fields while document 
> returned by query, contains copied fields.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org
For additional commands, e-mail: issues-h...@lucene.apache.org

Reply via email to