[
https://issues.apache.org/jira/browse/SOLR-8858?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15360970#comment-15360970
]
ASF GitHub Bot commented on SOLR-8858:
--------------------------------------
Github user shalinmangar commented on a diff in the pull request:
https://github.com/apache/lucene-solr/pull/47#discussion_r69419263
--- Diff:
solr/core/src/java/org/apache/solr/handler/component/QueryComponent.java ---
@@ -910,8 +910,12 @@ protected void createMainQuery(ResponseBuilder rb) {
additionalAdded = addFL(additionalFL, "score", additionalAdded);
}
} else {
- // reset so that only unique key is requested in shard requests
- sreq.params.set(CommonParams.FL,
rb.req.getSchema().getUniqueKeyField().getName());
+ if (rb.req.getSearcher().enableLazyFieldLoading) {
+ // reset so that only unique key is requested in shard requests
+ sreq.params.set(CommonParams.FL,
rb.req.getSchema().getUniqueKeyField().getName());
+ } else {
+ sreq.params.set(CommonParams.FL, "*");
--- End diff --
Thanks for investigating and the detailed note.
I don't think DistribJoinFromCollectionTest or TestCloudDeleteByQuery are
doing anything wrong. The difference, as you said, is that your patch changes
`doc()` to actually respect the fields list and when lazy loading is disabled,
proceeds to cache an _incomplete_ document returned by Lucene. So this patch
changes Solr from always caching either complete documents (when lazy loading
is disabled) or lazy documents (when lazy loading is enabled) to caching
potentially incomplete documents which have no idea about the other
(non-requested) fields. So if we want to go back to the old behavior then
option 'a' is the way to go when lazy loading is disabled.
> SolrIndexSearcher#doc() Completely Ignores Field Filters Unless Lazy Field
> Loading is Enabled
> ---------------------------------------------------------------------------------------------
>
> Key: SOLR-8858
> URL: https://issues.apache.org/jira/browse/SOLR-8858
> Project: Solr
> Issue Type: Bug
> Affects Versions: 4.6, 4.10, 5.5
> Reporter: Caleb Rackliffe
> Labels: easyfix
>
> If {{enableLazyFieldLoading=false}}, a perfectly valid fields filter will be
> ignored, and we'll create a {{DocumentStoredFieldVisitor}} without it.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]