Re: Partial update slowness with a stored="false" dynamic field and lots of distinct field names

2024-02-22 Thread Calvin Smith
Hi Christine, Thanks for the response and the suggestion. This turned out to be quite a deep rabbit hole, but the following shows times for versions between 6.6 and 9.5. Each row below gives the version followed by two times for the partial update of the 25 documents listed in my original post,

Re: Partial update slowness with a stored="false" dynamic field and lots of distinct field names

2024-02-21 Thread Calvin Smith
Hi Michael, Thanks for your thoughts. In Solr 6, we were using `indexed="true" stored="false" docValues="true"`, and it was slower than I would have liked but roughly the same whether stored was false or true (about 2s in either case under 6.6.6). Here's a representative `newEntry` stack trace

Re: Partial update slowness with a stored="false" dynamic field and lots of distinct field names

2024-02-21 Thread Calvin Smith
Hi Rahul, Thanks for the suggestion. I was using `solr.NRTCachingDirectoryFactory` in all the versions I've tested, which was the default in the example solrconfig: I'll give `solr.MMapDirectoryFactory` a try later though. Thanks, Calvin p.s. Christine, I am following up on your

Re: Partial update slowness with a stored="false" dynamic field and lots of distinct field names

2024-02-21 Thread Michael Gibney
Also, you don't explicitly mention, but just to be sure: in your Solr 6 deployment, were the `playlist_index_*` fields stored? Some degree of performance difference between stored=true/false is expected, because retrieving dynamic fields with many field names is definitely problematic for

Re: Partial update slowness with a stored="false" dynamic field and lots of distinct field names

2024-02-21 Thread Michael Gibney
It might be worth looking at this issue: https://issues.apache.org/jira/browse/SOLR-16989 The irony is that this issue was supposed to help with slowness in cases similar to what you describe. Can you send a full stack trace for a representative call to `DocValuesIteratorCache.newEntry(String)`?

Re: Partial update slowness with a stored="false" dynamic field and lots of distinct field names

2024-02-20 Thread Rahul Goswami
Did you happen to change the DirectoryFactory in solrconfig to SimpleFSDirectoryFactory or NIOFSDirecotryFactory by any chance? Default is Mmap which is much more performant for atomic updates (and also practical, especially given the small(ish) size of your index). -Rahul On Tue, Feb 20, 2024

Partial update slowness with a stored="false" dynamic field and lots of distinct field names

2024-02-16 Thread Calvin Smith
Hi solr users, While tracking down a severe performance regression doing partial updates when upgrading from Solr 6 to solr 9.5.0, I discovered the following unexpected behavior. In my schema.xml file, I have the following fields (among many others): The unexpected impact on partial