On Mon, Jan 20, 2014 at 6:11 PM, <d...@geschan.de> wrote: > > Zitat von Mikhail Khludnev <mkhlud...@griddynamics.com>: > > On Sat, Jan 18, 2014 at 11:25 PM, <d...@geschan.de> wrote: >> >> So, my question now: can I change my existing index in just adding a >>> is_parent and a _root_ field and saving the journal id there like I did >>> with j-id or do I have to reindex all my documents? >>> >>> >> Absolutely, to use block-join you need to index nested documents as >> blocks, >> as it's described at >> http://blog.griddynamics.com/2013/09/solr-block-join-support.html eg >> https://gist.github.com/mkhludnev/6406734#file-t-shirts-xml >> >> > Thank you for the clarification. > But there is no way to add new children without indexing the parent > document and all existing childs again? > Yes. There is no way to add children incrementally. You need to nuke whole block and add it with all necessary children.
> > So, in the example on github, if I want to add new sizes and colors to an > existing T-Shirt, I have to reindex the already existing T-Shirt and all > it's variations again? > Completely reindex t-shirts with all skus. > > I understand that the blocks are created at index time, so I can't change > an existing index to build blocks just in adding the _root_ field, but I > don't get why it's not possible to add new children or did I missinterpret > your statement? > Block join relies on internal Lucene docnums which are defined by the order in which documents has been indexed. this might help http://blog.mikemccandless.com/2012/01/searching-relational-content-with.html http://www.slideshare.net/MarkHarwood/proposal-for-nested-document-support-in-lucene > > Thanks, > -Gesh > > -- Sincerely yours Mikhail Khludnev Principal Engineer, Grid Dynamics <http://www.griddynamics.com> <mkhlud...@griddynamics.com>