Everything that @Hishaam said is correct, but I want to clarify the 2 questions here:
So if I fast query an item with 100 children will all those come in to memory without paging or caching?
No - if you fast query a single item, you will get a single item. If your fast query adds children or all descendants you will get what you asked for. This is the ...
Based on previous projects, when using Where(x => x[fieldName] != null), the fieldName should match the one from the Solr Index. From your question, if you pass Where(x => x["shape_s"] != null), it should work.
Since you have dynamic fields being passed to the search context, you will need to get the field type. You can get it by using
Sitecore can be configured to do rebuilds with very different strategies depending on the architecture and requirements (it can be after publish, or full republish, or even manual, i.e. only rebuilt when manually triggered). I recommend reading this article: https://doc.sitecore.net/sitecore_experience_platform/setting_up_and_maintaining/search_and_indexing/...
When using Sitecore Fast Query, the result will not be cached. Sitecore has different layer of caching
So if I fast query an item with 100 children will all those come in to
memory without paging or caching?
If you use fast query, it will bypass all those levels of cache and hit the database directly because Sitecore Fast Query converts all the query ...
The obvious answer is to use the Web index for any (site) search related functionalities.
There are also other site search like functionalities. You could think of a news articles or product (,or any other) overview, especially if you're including some kind of filtering mechanism.
Other then that the index could be used for any functionality that require ...
Have you tried sitecore support?
Do you have a patched crawler?
There are a couple of bugs I've encountered which result in duplicate items in the web database. Which require patches from support.
One bug only shows itself when using ContentSearch.Indexing.DisableDatabaseCaches=true
The other shows itself when you unpublish a version of an item. And you ...
Sitecore indexes are built by using following methods
Publishing the content
Navigate to control panel -> Indexing Manager -> clicking on
rebuild search index button with the required indexes.
Rebuild indexes by using Rebuild method of API
You can check to see if following ...