Contents
Table of Contents maxLevel 2
...
- User stories documented(Andreas)
- User stories reviewed(Nitin)
- User stories reviewed(Todd)
- Requirements documented(Andreas)
- Requirements Reviewed
- Mockups Built
- Design Built
- Design Accepted
...
- Deploying a dataset type (or module) is implemented as deployment of an artifact with version "embedded"
- what does this mean for configuration, recording of dependencies?
- Version "embedded" is treated like a snapshot version, that is, it can be redeployed any time. For now this is the only version we use.
- Creating a dataset instance tags that instance with version "embedded"
- New implementation of dataset framework (and actually, dataset instantiatorfor explore only) that loads the code from the artifact repo.
- In programs, since the only version is "embedded", dataset code is still loaded using the program class loader.
- No introduction of new or versioned APIs
...
- Simplification of explore configuration
- Whether explore is enabled is explicit property
- All other explore properties derived from dataset properties if possible
- Explore failure also fails the DTM operation that called it
- Ability to communicate warnings to the user for successful explore operations
- Enable/Disable explore as dataset management operations
Proposed Scope for 4.0
- Minimal work to remove artifact management from DatasetTypeManager
- Remove the (experimental) REST API to deploy a dataset module by itself
- For dataset types/modules deployed from an app, remove the generation of an artifact. Instead record the app artifact that is was created from
- Similar as b. for dataset types included in plugins
- For apps, load dataset types from program class loader. For explore, load from the artifact recorded for the type
- May require some changes in artifact repository
- Simplify configuration of datasets
- Schema and format as a system properties with validation
- TTL as a system property
- New API for a dataset type to declare what configuration it accepts (needed for Resource Center)
- Properties (instance configuration)
- Arguments (runtime configuration)
- Make dataset lifecycle methods (create, update, drop) consistent
- In case of failure, do not leave partial/inconsistent state behind
- Do not silently ignore explore failures: they must fail the entire operation
- Simplify configuration of explore properties CDAP-2790
- Derived all explore properties from schema+format when possible.
- Allow configuring the detailed explore properties (as today) for power users.
- Improved control over transactions for programs CDAP-7319
- Configure transaction timeout as a runtime argument / preference at namespace, app, program level CDAP-6103
- Programmatic APIs for programs that allow executing a transaction with custom timeout CDAP-7193, CDAP-7320, CDAP-7322
- Add a way to access datasets (and call non-transactional methods) CDAP-7323
- Fix the transactional behavior of WorkerContext.execute() CDAP-6837