[
https://issues.apache.org/jira/browse/APEXMALHAR-1966?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15333409#comment-15333409
]
ASF GitHub Bot commented on APEXMALHAR-1966:
--------------------------------------------
Github user DT-Priyanka commented on a diff in the pull request:
https://github.com/apache/apex-malhar/pull/295#discussion_r67311141
--- Diff:
contrib/src/main/java/com/datatorrent/contrib/cassandra/CassandraPOJOOutputOperator.java
---
@@ -162,35 +160,75 @@ public void activate(Context.OperatorContext context)
}
getters.add(getter);
}
+ super.activate(context);
+ }
+
+ private void populateFieldInfosFromPojo(ColumnDefinitions rsMetaData)
+ {
+ fieldInfos = Lists.newArrayList();
+ Field[] fields = pojoClass.getDeclaredFields();
+ for (int i = 0; i < rsMetaData.size(); i++) {
+ String columnName = rsMetaData.getName(i);
+ String pojoField = getMatchingField(fields, columnName);
+ if (pojoField != null && pojoField.length() != 0) {
+ fieldInfos.add(new FieldInfo(columnName, pojoField, null));
+ } else {
+ LOG.error("Couldn't find corrosponding pojo field for column: " +
columnName);
--- End diff --
I haven't tried it yet, but if not null constraint is defined it should
throw exception. Ideally the app developer should populate the fields as per
the table schema.
We can do a quick schema check and throw exception before hand but I wonder
will that do much of value addition?
> Cassandra output operator improvements
> --------------------------------------
>
> Key: APEXMALHAR-1966
> URL: https://issues.apache.org/jira/browse/APEXMALHAR-1966
> Project: Apache Apex Malhar
> Issue Type: Improvement
> Reporter: Priyanka Gugale
> Assignee: Priyanka Gugale
>
> Update existing Cassandra output operator to:
> 1. Accept use defined parameterized queries, the queries could be for update,
> insert or delete.
> 2. Add error port to emit tuples which couldn't be written to database.
> 3. Add metrics
> 4. Provide a way to restrict batch size
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)