if you already checked the grants on indexes, did you checked the grants on the knowledge objects "RootObject.*"?
If they are ok, try to run the search in verbose Mode instead Smart Mode for normal user.
To debug your search, delete one after one the parts of the search until pipe, at first the last part, the the previous, etc...
I think that you'll find that, deleting your search until the search command, your search will give results, but without fields definitions.
1- How can I check "grants on the knowledge objects "RootObject."?"
2- checked different modes.
3- only return result when remove all other part and remain just this part: index="myindex" | search error