btw, I've been looking in the JBPM_VARIABLEINSTANCE table and see that there is indeed made a copy. After the task is completed, you cannot immediately see what the values were that passed to the task. There are variables with a taskinstance 'null' which seem to be the process level variables. So I thought I'd go back in the logs and see what the value was. When it however is updated on the process level (either by a task or by some othe event) the record of that variable is updated. Am I right to assume it is not meant for tracing, just to display the current state and the values when ending a task?
It seem I have to use the log to see what variable changed from what to what and then use the VARIABLEINSTANCE_ column from the JBPM_LOG to see what task it belonged to by using this value to look up the TASKINSTANCE_ in the JBPM_VARIABLEINSTANCE table. and only if the old and new values in the JBPM_LOG are not the same, this taskinstance changed it... right? Isn't it an idea to not log those events on variables that do not change them. (is it an event at all ;-) )