lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thomas Gambier (JIRA)" <j...@apache.org>
Subject [jira] [Created] (SOLR-2529) DIH update trouble with sql field name "pk"
Date Thu, 19 May 2011 13:45:47 GMT
DIH update trouble with sql field name "pk"
-------------------------------------------

                 Key: SOLR-2529
                 URL: https://issues.apache.org/jira/browse/SOLR-2529
             Project: Solr
          Issue Type: Bug
          Components: contrib - DataImportHandler
    Affects Versions: 3.1, 3.2
         Environment: Debian Lenny, JRE 6
            Reporter: Thomas Gambier
            Priority: Blocker


We are unable to use the DIH when database columnName primary key is named "pk".

The reported solr error is :
"deltaQuery has no column to resolve to declared primary key pk='pk'"

We have made some investigations and found that the DIH have a mistake when it's looking for
the primary key between row's columns list.

private String findMatchingPkColumn(String pk, Map row) {
if (row.containsKey(pk))
  throw new IllegalArgumentException(
    String.format("deltaQuery returned a row with null for primary key %s", pk));
String resolvedPk = null;
for (String columnName : row.keySet()) {
  if (columnName.endsWith("." + pk) || pk.endsWith("." + columnName)) {
    if (resolvedPk != null)
      throw new IllegalArgumentException(
        String.format(
          "deltaQuery has more than one column (%s and %s) that might resolve to declared
primary key pk='%s'",
          resolvedPk, columnName, pk));
      resolvedPk = columnName;
    }
  }
  if (resolvedPk == null)
    throw new IllegalArgumentException(
      String.format("deltaQuery has no column to resolve to declared primary key pk='%s'",
pk));
  LOG.info(String.format("Resolving deltaQuery column '%s' to match entity's declared pk '%s'",
resolvedPk, pk));
  return resolvedPk;
}


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org


Mime
View raw message