Lance: At times we dont have the freedom make these Database changes. Currently I am in this situation. Hence the requirement on the DIH.
~Ravi. On Sat, Jan 2, 2010 at 3:44 PM, Lance Norskog <goks...@gmail.com> wrote: > The other option is to have a 'deleted' column in your table, and have > the application 'delete' operation set that field. In the DIH you > query this column with 'deletedPkQuery'. > > Or, you can use triggers to maintain a new table with the IDs of > deleted rows. This will allow you to have a batch job that deletes all > IDs from this list. > > On Tue, Dec 29, 2009 at 10:40 AM, Mohamed Parvez <par...@gmail.com> wrote: > > Ditto. There should have been an DIH command to re-sync the Index with > the > > DB. > > Right now it looks like one way street form DB to Index. > > > > > > On Tue, Dec 29, 2009 at 3:07 AM, Ravi Gidwani <ravi.gidw...@gmail.com > >wrote: > > > >> Hi Shalin: > >> > >> > I get your point about not knowing what has been deleted > from > >> the database. So this is what even I am looking for: > >> > > >> > 0) A document (id=100) is currently part of solr index.( > >> > 1) Lets say the application deleted a record with id=100 from > database. > >> > > >> > 2) Now I need to execute some DIH command to say remove document where > >> id=100. I dont expect the DIH to automatically detect what has been > deleted, > >> > but I am looking for a DIH command/special-command to request deletion > >> from index. > >> > > >> > Is that possible ? also as an alternate solution, is it possible to > build > >> index using DIH, and use the solr.XmlUpdateRequestHandler request > handler to > >> delete/update these one off documents ? > >> > Is this something you will recommend ? > >> > > >> > Thanks, > >> > ~Ravi Gidwani. > >> > > >> > On Tue, Dec 29, 2009 at 3:03 AM, Mohamed Parvez <par...@gmail.com> > >> wrote: > >> > > >> > > I have looked in the that thread earlier. But there is no option > there > >> for > >> > > >> > > a > >> > > solution from Solr side. > >> > > > >> > > I mean the two more options there are > >> > > 1] Use database triggers instead of DIH to manage updating the index > :- > >> > > This out of question as we cant run 1000 odd triggers every hour to > >> delete. > >> > > >> > > > >> > > 2] Some sort of ORM use its interception:- > >> > > This is also out of question as the deletes happens form external > >> system or > >> > > directly on the database, not through our application. > >> > > > >> > > > >> > > >> > > To Say in Short, Solr Should have something thing to keep the index > >> synced > >> > > with the database. As of now its one way street, updates rows, on DB > >> will > >> > > go > >> > > to the index. Deleted rows in the DB, will not be deleted from the > >> Index > >> > > >> > > > >> > > > >> > How can Solr figure out what has been deleted? Should it go through > each > >> row > >> > and comparing against each doc? Even then some things are not possible > >> > (think indexed fields). It would be far efficient to just do a > >> full-import > >> > > >> > each time instead. > >> > > >> > -- > >> > Regards, > >> > Shalin Shekhar Mangar. > >> > > >> > > >> > > > > > > -- > Lance Norskog > goks...@gmail.com >