I have tried a more elaborate join also following the features example of the DIH example but same result - SQL works fine directly but Solr is not indexing the array of full_names per Listing, e.g.
<entity name="listing" ...> <entity name="listing_contact" query="select * from listing_contacts where listing_id = '${listing.id}'"> <entity name="contact" query="select concat(first_name, concat(' ', last_name)) as full_name from contacts where id = '${listing_contact.contact_id}'"> <field name="contacts" column="full_name" /> </entity> </entity> </entity> Am I missing the obvious? On Oct 4, 2010, at 8:22 AM, Allistair Crossley wrote: > Hello list, > > I've been successful with DIH to a large extent but a seemingly simple extra > column I need is posing problems. In a nutshell I have 2 entities let's say - > Listing habtm Contact. I have copied the relevant parts of the configs below. > > I have run my SQL for the sub-entity Contact and this is produces correct > results. No errors are given by Solr on running the import. Yet no records > are being set with the contacts array. > > I have taken out my sub-entity config and replaced it with a simple template > value just to check and values then come through OK. > > So it certainly seems limited to my query or query config somehow. I followed > roughly the example of the DIH bundled example. > > DIH.xml > ======= > > <entity name="listing" ...> > ... > <entity name="contacts" > query="select concat(c.first_name, concat(' ', c.last_name)) as full_name > from contacts c inner join listing_contacts lc on c.id = lc.contact_id where > lc.listing_id = '${listing.id}'"> > <field name="contacts" column="full_name" /> > </entity> > > SCHEMA.XML > > <field name="contacts" type="text" indexed="true" stored="true" > multiValued="true" required="false" /> > > > Any tips appreciated.