I have set up a very simple content processing pipeline; basically there
is a single action to be taken whenever any document is updated or
created. I've gotten this to work well enough when starting with an
empty database. However now I am in a state where I can't seem to get
my actions to be triggered by updating the already-existing documents.
I have two questions:
1) If you load all your documents, and then install cpf, load your
actions and set up a pipeline, will this trigger processing? Is there
some way to get documents to be processed at that point?
2) What does "TaskServer: state is already successor so not updating for
<uri>" mean? It sounds as if TaskServer is saying: hey I processed this
document already, so (even though you just updated it), I'm not going to
process it again. How can I set things up so updates work?
OK, third question: what is the recommended "best practice" for updating
all the documents, in order to get the maximum loading throughput. This
is in a development system, so I can handle some downtime. Do you wipe
the database first and then reload?
I am attaching a copy of my simple pipeline in case it has some relevance...
-Mike
<pipeline xmlns="http://marklogic.com/cpf/pipelines"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://marklogic.com/cpf/pipelines pipelines.xsd"
>
<pipeline-name>Test</pipeline-name>
<pipeline-description>Wrap sense content in a standard tag to enable search on sense scope.
</pipeline-description>
<success-action>
<module>/MarkLogic/cpf/actions/success-action.xqy</module>
</success-action>
<failure-action>
<module>/MarkLogic/cpf/actions/failure-action.xqy</module>
</failure-action>
<state-transition>
<annotation>
Wrap sense content in a standard tag to enable search on sense scope (new documents).
</annotation>
<state>http://marklogic.com/states/initial</state>
<on-success>http://marklogic.com/states/final</on-success>
<on-failure>http://marklogic.com/states/error</on-failure>
<execute>
<!-- Only process documents with root node Entry -->
<condition>
<module>/load/doctype-condition.xqy</module>
<options xmlns="">
<doc-type>Entry</doc-type>
</options>
</condition>
<action>
<module>/load/wrap-sense.xqy</module>
</action>
</execute>
</state-transition>
<state-transition>
<annotation>
Wrap sense content in a standard tag to enable search on sense scope (updated documents).
</annotation>
<state>http://marklogic.com/states/updated</state>
<on-success>http://marklogic.com/states/final</on-success>
<on-failure>http://marklogic.com/states/error</on-failure>
<execute>
<!-- Only process documents with root node Entry -->
<condition>
<module>/load/doctype-condition.xqy</module>
<options xmlns="">
<doc-type>Entry</doc-type>
</options>
</condition>
<action>
<module>/load/wrap-sense.xqy</module>
</action>
</execute>
</state-transition>
</pipeline>
_______________________________________________
General mailing list
[email protected]
http://xqzone.com/mailman/listinfo/general