DecisionsDev / decision-center-api-samples

IBM ODM Decision Center API samples
Apache License 2.0
0 stars 3 forks source link

ConfigureDT requires 2 changes #1

Closed rscher closed 2 years ago

rscher commented 2 years ago

Proposed changes to ConfigureDT- https://github.com/ODMDev/decision-center-api-samples/tree/master/configureDT

1) Utility cannot perform a "deep" or recursive config for every branch in the hierarchy (i.e. nested) as this creates a data integrity conflict across versions as well as transaction timeouts which rolls-back the entire task when session times out for very large projects with many DT's and nested branches.

Therefore when a DS and branch is specified , only the DTs within a given branch should be modified and not all DTs in sub-branches or nested branches.

additional parameter [-branch ] is required

 Specifies a branch within a Decision Service.
 If empty, default is the  main branch of the Decision Service

resulting in the following syntax, changes shown in bold:

java -cp "/teamserver/lib/:/teamserver/lib/eclipse_plugins/:"com.ibm.odm.tools.ConfigureDT - username -password -url -dataSource -decisionService [-branch ] [-overlapCheck true|false] [-gapCheck true|false] [-manualOrdering true|false] [-autoResize true|false]

This implies that DT's only within the dsName / branchName will be modified even if there are child (or nested) branches within this branch.

2) Additional changes are needed to the ODM session code to prevent session timeouts for branches with many DTs. this implies that for any ConfigureDT invocation given a dsName and branchName, regardless of the number of DT's affected or length of time required to complete without any additional actions needed, such as manually extending the transaction timeout in WebSphere or within the ODM Decision Center admin console.

Task could potentially take many hours to complete, well beyond a "reasonable WebSphere max transaction duration" needed as an upper limit for other WebSphere transactions and ConfigureDT method shall handle accordingly without any additional actions needed to complete, which is not the case currently even for a Decision Service with no nested branches.

alainrobert commented 2 years ago

code delivered in 0.0.2 version