Hi,
I like your approach, but you will miss a scenario in this way. Cleartool find checks only for versions created since timestamp, not labels created since timestamp. If you track changes by label it is common to have a history like this:
T=0 create version 1
T=1 make label A on version 1
<Jenkins polls by find and makes a build>
T=2 create version 2
<Jenkins polls by find and does not make a build, since the label was not applied>
T=3 remove label A from version 1
T=4 make label A on version 2
<Jenkins polls by find since T=2 and does not make a build, because created_since predicate is false>
Moreover, when tracking changes by a label, it is quite possible that label can be moved from one already existing version to another already existing version. So no new version can be created and the build should still be started due to label move. This also fails to be detected by created_since predicate.
I found a way to do the proper query to find all changes between two time stamps filtering by multiple branches and multiple labels.
This produces a faster output (minutes instead of hours) and the log just shows only the needed to obtain the changelog (fixing the problem introduced with -minor implementation).
This is a sample command: