Description
When the default table is set to an existing table name, XMLPS tries to inner join the default table with itself, resulting in a failed query.
Example
With the following ps.xml file
<oodt:xmlps xmlns:oodt="http://incubator.apache.org/oodt/0.1-incubating" name="CERC Query Handler" id="EDRN.CERC.CancerData"> <!--<tables default="Table1">--> <tables default="Cancer_Data"> <table name="Cancer_Data" join="STUDY_PARTICIPANT_ID_SITE_TEXT" tofld="STUDY_PARTICIPANT_ID_SITE_TEXT"/> </tables> <field type="dynamic" name="STUDY_PARTICIPANT_ID" dbname="STUDY_PARTICIPANT_ID_SITE_TEXT" /> <field type="constant" name="BASELINE_CANCER-CONFIRMATION_CODE" value="1"/> </oodt:xmlps>
A query to
http://localhost:8080/web-grid/prod?q=RETURN%3DSTUDY_PARTICIPANT_ID
Results in the following:
WARNING: Error executing sql: [SELECT Cancer_Data.STUDY_PARTICIPANT_ID_SITE_TEXT as STUDY_PARTICIPANT_ID FROM Cancer_Data INNER JOIN Cancer_Data ON Cancer_Data.STUDY_PARTICIPANT_ID_SITE_TEXT = Cancer_Data.STUDY_PARTICIPANT_ID_SITE_TEXT ]: Message: Not unique table/alias: 'Cancer_Data'
If the default table is changed to "Participant_Data" then the query functions fine.