[
https://issues.apache.org/jira/browse/NIFI-2156?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15384452#comment-15384452
]
ASF GitHub Bot commented on NIFI-2156:
--------------------------------------
Github user JPercivall commented on a diff in the pull request:
https://github.com/apache/nifi/pull/642#discussion_r71372009
--- Diff:
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListDatabaseTables.java
---
@@ -303,8 +303,8 @@ public void onTrigger(ProcessContext context,
ProcessSession session) throws Pro
stateMapProperties.put(fqn,
Long.toString(System.currentTimeMillis()));
}
}
- // Update the last time the processor finished successfully
- stateManager.replace(stateMap, stateMapProperties,
Scope.CLUSTER);
+ // Update the timestamps for listed tables
+ stateManager.setState(stateMapProperties, Scope.CLUSTER);
--- End diff --
I would not change this to setState. It will overwrite anything that is in
State. If someone does end up running clustered and not primary Node it will
blow it away without warnings.
Instead just check if the prior map version was -1 and do a set instead of
replace.
> Add ListDatabaseTables processor
> --------------------------------
>
> Key: NIFI-2156
> URL: https://issues.apache.org/jira/browse/NIFI-2156
> Project: Apache NiFi
> Issue Type: New Feature
> Components: Extensions
> Reporter: Matt Burgess
> Assignee: Matt Burgess
> Fix For: 1.0.0
>
>
> This processor would use a DatabaseConnectionPool controller service, call
> getTables(), and if the (optional, defaulting-to-false) property "Include Row
> Count" is set, then a "SELECT COUNT(1) from table" would be issued to the
> database. The table catalog, schema, name, type, remarks (and its count if
> specified) will be included as attributes in a zero-content flow file.
> It will also use State Management to only list tables once. If new tables are
> added (and the processor is running), then the new tables' flow files will be
> generated. Changing any property that could affect the list of returned
> tables (such as the DB Connection, catalog, schema pattern, table name
> pattern, or table types) will reset the state and all tables will be fetched
> using the new criteria. The state can also be manually cleared using the
> standard Clear State link on the View State dialog (available on the
> processor's context menu)
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)