You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-dev@lucene.apache.org by "Gian Marco Tagliani (JIRA)" <ji...@apache.org> on 2010/02/05 12:31:27 UTC
[jira] Updated: (SOLR-1759) DIH $skipDoc issue
[ https://issues.apache.org/jira/browse/SOLR-1759?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Gian Marco Tagliani updated SOLR-1759:
--------------------------------------
Attachment: patch.txt
I attached the patch with this tiny change
> DIH $skipDoc issue
> ------------------
>
> Key: SOLR-1759
> URL: https://issues.apache.org/jira/browse/SOLR-1759
> Project: Solr
> Issue Type: Bug
> Components: contrib - DataImportHandler
> Affects Versions: 1.4
> Reporter: Gian Marco Tagliani
> Attachments: patch.txt
>
>
> I'm using the version 1.4.0 of Solr and I'm having some trouble with the DIH when I use the special command $skipDoc.
> After skipping a document to insert, the next one is not inserted in the proper way.
> My DIH configuration is quite complex so I'll try to explain myself with a simpler example:
> item table:
> id name
> 1 aaa
> 2 bbb
> feature table:
> Item_id hidden
> 1 true
> 2 false
> DIH conf:
> <document name="products">
> <entity name="item" query="select * from item">
> <field column="ID" name="id" />
> <field column="NAME" name="name" />
> <entity name="feature" query="select hidden from feature where item_id='${item.ID}'">
> <field name="$skipDoc" column="hidden" />
> </entity>
> </entity>
> </document>
> The result I expected is that the record named "bbb" would be imported, but the result of my import case is that the other record (the "aaa") has been inserted.
> I took a look to the DIH code and I found a possible problem that could cause this result.
> In the DocBuilder class when a $skipDoc is detected, an exception is raised. After handling the exception another loop starts, without cleaning up the doc variable.
> When the next record is read, the addFieldToDoc method can't fill the doc fields because they are already filled.
> To solve this problem I just clean up the doc variable when handling the exception.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.