In high throughput situations that can be a problem. The entire
packet has to be assembled and transmitted over the network. This
can cause grief in many situations.

 Not to mention that for “regular” queries, say using the /select or /query
handlers and assuming you’re getting
one or more stored-but-not-docValues fields, that means 2+m seeks
of the disk, decompressing 2+m 16K blocks, creating the entier 2M+
packet in memory and transmitting it to the client.

This doesn’t apply to, say, the /export handler upon which streaming
is built.

For a low-query-volume situations where there are just a few simultaneous
queries you can get away with it. But it’s still an anti-pattern.

Again, though, none of that is relevant if you’re using anything built on
the /export handler, which includes almost all of the streaming capabilities.

Best,
Erick

> On Jul 29, 2020, at 4:59 PM, David Hastings <hastings.recurs...@gmail.com> 
> wrote:
> 
> "Oh, and returning 100K docs is an anti-pattern, if you really need that
> many docs consider cursorMark and/or Streaming."
> 
> er, i routinely ask for 2+ million records into a single file based on a
> query.  I mean not into a web application or anything, its meant to be
> processed after the fact, but solr has no issue doing this
> 
> 
> 
> On Wed, Jul 29, 2020 at 4:53 PM Erick Erickson <erickerick...@gmail.com>
> wrote:
> 
>> I don’t think there’s really a canned way to do what you’re asking. A
>> custom DocTransformer would probably do the trick though.
>> 
>> You could also create a custom QueryComponent that examined the docs being
>> returned and inserted a blank field for a selected number of fields
>> (possibly configurable in solrconfig.xml).
>> 
>> Oh, and returning 100K docs is an anti-pattern, if you really need that
>> many docs consider cursorMark and/or Streaming.
>> 
>> Best,
>> Erick
>> 
>>> On Jul 29, 2020, at 2:55 PM, Teresa McMains <ter...@t14-consulting.com>
>> wrote:
>>> 
>>> Thanks so much.  Is there any other way to return the data value if it
>> exists, otherwise an empty string?  I'm integrating this with a 3rd party
>> app which I can't change. When the field is null it isn't showing up in the
>> output.
>>> 
>>> -----Original Message-----
>>> From: Erick Erickson <erickerick...@gmail.com>
>>> Sent: Wednesday, July 29, 2020 12:49 PM
>>> To: solr-user@lucene.apache.org
>>> Subject: Re: solr query returns items with spaces removed
>>> 
>>> The “def” function goes after the _indexed_ value, so that’s what you’re
>> getting back. Try just specifying “fl=INSTRUCTIONS”, and if the value is
>> stored that should return the original field value before any analysis is
>> done.
>>> 
>>> Why are you using the def function? If the field is absent from the doc,
>> nothing will be returned for that field, not even the name. Are you trying
>> to insure that a blank field is returned if the field isn’t in the
>> document? You can handle that on the client side if so…
>>> 
>>> Best,
>>> Erick
>>> 
>>>> On Jul 29, 2020, at 10:34 AM, Teresa McMains <ter...@t14-consulting.com>
>> wrote:
>>>> 
>>>> _20_Instructions_And_Notes:def(INSTRUCTIONS,%22%22)
>>> 
>> 
>> 

Reply via email to