manifoldcf-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Karl Wright <daddy...@gmail.com>
Subject Re: About using ManifoldCF to crawl a MySQL table
Date Thu, 27 Feb 2014 09:26:58 GMT
Hi,

The reason you get the metadata error is because of this code:

>>>>>>
        Object metadata = row.getValue(columnName);
        if (metadata instanceof BinaryInput)
          throw new ManifoldCFException("Metadata column '"+columnName+"'
must be convertible to a string, and cannot be binary");
<<<<<<

That is getting set because:

>>>>>>
          if (isBinaryData(rsmd,colnum))
          {
            InputStream bis = rs.getBinaryStream(colnum);
            if (bis != null)
              value = new TempFileInput(bis);
          }
<<<<<<

So, the MySQL JDBC driver is incorrectly telling the JDBC Connector that
the column is binary, no matter how you cast it.

To work around this, I can forcibly convert the column value to a string.
I've created CONNECTORS-904 to track this problem.  I will have a fix
committed shortly, and attach a patch.

Karl

Mime
View raw message