WARNING: DIH isn't my strong suit, I generally prefer doing things in SolrJ. Mostly I asked for clarification so someone #else# who actually knows DIH details could chime in...
That said, I'm a bit confused. As I understand it, you shouldn't be UPDATEing anything in DIH, it's a select where documents then get added to Solr "by magic". Your post leads me to believe that you're trying to change the database via DIH, is that at all true? This is based in part on "The ids are returned ok, but the UPDATE has no effect on the database" Or do you mean "effect on the index"? If the latter, then the select would only have a chance of updating the IDs of the Solr documents... At least I think that's close to reality... Best Erick On Thu, Dec 30, 2010 at 7:52 AM, Juan Manuel Alvarez <naici...@gmail.com>wrote: > Hi Erick! > > Here is my DIH configuration: > > <dataConfig> > <dataSource name="jdbc" driver="org.postgresql.Driver" > > > url="jdbc:postgresql://${dataimporter.request.dbHost}:${dataimporter.request.dbPort}/${dataimporter.request.dbName}" > user="${dataimporter.request.dbUser}" > password="${dataimporter.request.dbPassword}" autoCommit="false" > transactionIsolation="TRANSACTION_READ_UNCOMMITTED" > holdability="CLOSE_CURSORS_AT_COMMIT"/> > <document> > <entity name='myEntity' dataSource='jdbc' pk='id' > query=' ..... ' > deltaImportQuery=' ..... ' > deltaQuery=' ..... ' > > > </entity> > </document> > </dataConfig> > > I have tried two options for the deltaQuery: > UPDATE "Global"."Projects" SET "prj_lastSync" = now() WHERE "prj_id" = > '2'; <---- Throws a null pointer exception as described in the > previous email > > The second option is a DB function that I am calling this way: > SELECT "get_deltaimport_items" AS "id" FROM > project.get_deltaimport_items(2, 'project'); > > The function inside executes the UPDATE query shown above and a SELECT > query for the ids. > The ids are returned ok, but the UPDATE has no effect on the database. > > Cheers! > Juan M. > > > On Thu, Dec 30, 2010 at 1:32 AM, Erick Erickson <erickerick...@gmail.com> > wrote: > > Well, let's see the queries you're sending, and your DIH configuration. > > > > Otherwise, we're just guessing... > > > > Best > > Erick > > > > On Wed, Dec 29, 2010 at 9:58 PM, Juan Manuel Alvarez <naici...@gmail.com > >wrote: > > > >> Hi! I would like to ask you a question about using a deltaQuery in DIH. > >> I am syncing with a PostgreSQL database. > >> > >> At first I was calling a function that made two queries: an UPDATE and a > >> SELECT. > >> The select result was properly returned, but the UPDATE query did not > >> made any changes, > >> so I tried calling the same function from a PostgreSQL client and > >> everything went OK. > >> > >> So I tried calling a simple UPDATE query directly in the deltaQuery > >> and I receive a > >> NullPointerException that I traced to the line 251 of the > >> JdbcDataSource.java > >> colNames = readFieldNames(resultSet.getMetaData()); > >> > >> The question is: is there a way I can make the update query work in > >> the deltaQuery > >> or am I doing something wrong? > >> > >> Happy new year!!!! > >> Cheers! > >> Juan M. > >> > > >