Hello,
I also ask to IBM Support wich reproduce the issue ....
"We are checking the issue internally and we are able to reproduce the issue in the version 2.0.94 and will get back to you soon with an update".
I will investigate with sandobx in TI processus in wich I could ;
- Update Data into sanddox or into Base (by choose)
- Merge Sandbox when I want to commit
- discard sandbox change when I want to rollback"
For sample :
Into Base update Cube_Cocpit
Into sandboxe all my update (Prolog, metadata, data)
in epilog test the existence of an errorfile
- if errorfile :
discardsandboxe ,
write cube_cockpit into Base KO status
Else
MergeSandbox to Base
write cube_cockpit into Base OK status
end if;
discardsandboxe
I will make test about volume, conflict etc ...
Regards,
Philippe
------------------------------
Philippe CHAMPLEBOUX
------------------------------
Original Message:
Sent: Tue March 12, 2024 02:15 PM
From: Philippe CHAMPLEBOUX
Subject: process rollBack
Thanks Ardian,
I will try.
Are yous sure that the ProcessRollBack executed in "master Process" discard all the change made by "Child Process" ?
I am also thinking about sandbox to make I would.
Regards,
Philippe
------------------------------
Philippe CHAMPLEBOUX
Original Message:
Sent: Tue March 12, 2024 02:05 PM
From: Ardian Alikaj
Subject: process rollBack
I would use a Global Variable, initialize the value of the Variable in Prolog of the Process, and set the value to
#== In the Master Process:
StringGlobalVariable('gvExecutionStatus');
gvExecutionStatus = '' ;
ExecuteProcess ( 'child_process' ) ;
IF ( gvExecutionStatus @= 'Rollback') ;
ProcessRollback ;
ENDIF ;
#== In the child Process, declare the global variable in Prolog tab and Set the value to 'Rollback' before ProcessRollback statement:
#== Prolog
StringGlobalVariable('gvExecutionStatus');
#== Epilog
gvExecutionStatus = 'Rollback' ;
ProcessRollback ;
------------------------------
Ardian Alikaj
Original Message:
Sent: Fri March 08, 2024 01:15 PM
From: Philippe CHAMPLEBOUX
Subject: process rollBack
Hi Everybody,
I've just wasted a lot of my time trying something, without succeeding.
I'd like a TI Process updating a Cube, to rollback all updates when an error is detected.
For testing purposes, I've written a very small TI process that :
Data Tab
- CellputN (.....);
Epilog Tab
- ProcessRollback;
When I run this process directly, it does what I expect, i.e. the data is not updated. Great!
When I call this process from another process ( ExecuteProcess instruction) the data is updated! Not good!
Does's a cfg parmeter, an option, something do make in the way "ProcessRollback" rollback all the update during the exécution process ?
Any Idea ?
Can someone give some documentation about the way a ti process make "transaction", how we can rollback or force commit ?
Best regards,
Philippe
------------------------------
Philippe CHAMPLEBOUX
------------------------------