hi,

the dataimport-config-file i'm using with solr3.6.2 uses a nested select statement. the first query retrieves
the documents while the nested one retrieves the corresponding properties.

<dataConfig>
  <!--Data source to connect to database-->
  <dataSource name="db" driver="oracle.jdbc.driver.OracleDriver"
       url="jdbc:oracle:thin:@alexis:1521:FMSPRF01" user="?????"
       password="?????"/>

  <document name="doc">
    <entity name="item" query="select DOCID from documents">
      <field column="DOCID" name="index_id" />
      <entity name="attributes"
         query="select * from doc_properties where DOCID='${item.DOCID}'">
        <!-- do something -->
      </entity>
    </entity>
  </document>
</dataConfig>

when running the dataimporthandler with the verbose/debug flag turned on the output lists more than one query for
'entity:attributes' - this list is increased for each 'entity:item':

....
<arr name="documents"/>
<lst name="verbose-output">
  <lst name="entity:item">
    <lst name="document#1">
      <str name="query">select DOCID from documents</str>
      <str name="time-taken">0:0:0.50</str>
      <str>----------- row #1-------------</str>
      <str name="DOCID">000emnslnbh88hdd</str>
      <str>---------------------------------------------</str>
      <lst name="entity:attributes">
<str name="query">select * from doc_properties where DOCID='000emnslnbh88hdd'</str> <str name="query">select * from doc_properties where DOCID='000emnslnbh88hdd'</str>
        <str name="time-taken">0:0:0.37</str>
        <str name="time-taken">0:0:0.37</str>
        <str>----------- row #1-------------</str>
        <str name="VALUE">I</str>
        <str name="PROPERTY_KEY">message_direction</str>
        <str>---------------------------------------------</str>
        <str>----------- row #2-------------</str>
        <str name="VALUE">heb@test</str>
        <str name="PROPERTY_KEY">message_event_source</str>
        ....

    <lst name="document#2">
      <str>----------- row #1-------------</str>
      <str name="DOCID">000hsjunnbh7weq8</str>
      <str>---------------------------------------------</str>
      <lst name="entity:attributes">
<str name="query">select * from doc_properties where DOCID='000hsjunnbh7weq8'</str> <str name="query">select * from doc_properties where DOCID='000hsjunnbh7weq8'</str> <str name="query">select * from doc_properties where DOCID='000hsjunnbh7weq8'</str> <str name="query">select * from doc_properties where DOCID='000hsjunnbh7weq8'</str>
        <str name="time-taken">0:0:0.1</str>
        <str name="time-taken">0:0:0.1</str>
        <str name="time-taken">0:0:0.1</str>
        <str name="time-taken">0:0:0.1</str>
        <str>----------- row #1-------------</str>
        <str name="VALUE">I</str>
        <str name="PROPERTY_KEY">message_direction</str>
        <str>---------------------------------------------</str>
        <str>----------- row #2-------------</str>
        <str name="VALUE">heb@test</str>
        <str name="PROPERTY_KEY">message_event_source</str>
...

i was wondering if there's something wrong with my configuration - thank you for clarifying,
patrick

Reply via email to