[ 
https://issues.apache.org/jira/browse/SAMZA-40?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14128715#comment-14128715
 ] 

Chris Riccomini commented on SAMZA-40:
--------------------------------------

bq. Support a programatic, code-level API for building, validating and 
deploying jobs? Hopefully, this would make it possible to build higher-level 
frameworks on top that could dynamically generate jobs. I don't know if I'd 
ever want to do this but if the API is there, you never know what will spring 
up.

This is something that's been floating around for a while, and I think could be 
pretty useful. At minimum, it'd just be a builder API to generate a Config 
object programmatically. This could then be used with the JobRunner to start a 
job.

bq. Support for validation during build and during runtime initialization to 
catch errors early.

+1 to this as well. We need to figure out a smart way to do it, but a lot of 
class-not-found stuff could be caught immediately.

> Refactor Samza configuration
> ----------------------------
>
>                 Key: SAMZA-40
>                 URL: https://issues.apache.org/jira/browse/SAMZA-40
>             Project: Samza
>          Issue Type: Bug
>          Components: container
>    Affects Versions: 0.6.0
>            Reporter: Chris Riccomini
>              Labels: project
>
> Samza's configuration system has several problems that we need to resolved.
> * Want to auto-generate documentation based off of configuration.
> * Should support global defaults for a config property. Right now, we do 
> config.getFoo.getOrElse() everywhere.
> * Should validate config up front, rather than thrown runtime exceptions 
> randomly throughout the code.
> * We are mixing wiring and configuration together. How do other systems 
> handle this?
> * We have fragmented configuration (anybody can define configuration). How do 
> other systems handle this?
> * How to handle undefined configuration? How to make this interoperable with 
> both Java and Scala (i.e. should we support Option in Scala)?
> * Should remain immutable.
> * Should remove implicits. It's just confusing.
> * Do we want to support complex types (list, map) for values, not just String?
> We need a design proposal for this.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to