LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Possible bug in "Compare Hierarchies"

I did a Compare Hierarchies between versions of a product I am developing and noticed a difference in one subVI.  The ONLY difference was the VI History.  I checked the history and found I'd made a notation about a change involving the data value (and default data value) of a hidden control that was not connected on the connector pane.  The value of this control is wired to a subVI which returns a new value wired into a write local variable connected to this control.  Then, a read local variable of this control is later wired to the same subVI which again returns a value to wired to the control.  (There is other stuff going on, of course, but this is the (possibly) relevant portion.)
 
In any case, I had changed the value and default value of this cluster control as part of creating the newer version of the code.  (The cluster was a set of default temperatures and a temperature units value.  The earlier version had been Fahrenheit temperatures and units and the new version was changed to Celcius temperatures and units.)
 
I looked first at the VI Histories and verified the History change and then found one of the local variables and did a "View Control".  By doing that in both versions, I was able to verify that there had been a change.
 
In other words, the cluster value changes did NOT show up in the Compare Hierarchies even though the VI History change did.  I was able to verify that this occurred even though I had turned on ALL options for comparison (i.e. Show Cosmetic Changes, etc.).
0 Kudos
Message 1 of 5
(3,046 Views)
Hi Lowell,
 
I'd like to look further into this issue.  Would you mind posting the VIs necessary to reproduce the behavior that you have seen?
 
Regards,
Elizabeth S.
Applications Engineer
National Instruments
0 Kudos
Message 2 of 5
(3,029 Views)
Here's a zip file that replicates the issue.
 
There is a "sourcenew" which contains a newer version in which there are only two changes.  There is a change in the "History" and in the value and default value of the "Default Temperature Cluster" in "sub.vi".
 
You should be able to bring up "sourceorig\TestComp.lvproj" or "sourcenew\TestComp.lvproj".  Once one of them is opened, you should be able to open the "source" folder, then the "TestComparison.llb" and then open "main.vi".  If you want to run "main", click the run button and click "Go".  It will open up "sub" and will allow you to click "Change Begin", "Change End", or "Done".  If you click "Change Begin", it will bring up "subsub.vi".  You can change the units or the beginning value.  When you click "Done" the beginning value will become the default for the ending value.  In "sub", you'lll now see the three values.  When you click "Done" in "sub", you'll return to main and can wait 8 seconds for it to end.
 
If you run "sourceorig", the default values that shows in "subsub" will be "F", "70", and "70".  If you change those values and close down (and then close main and bring it back up), running again will go to the same defaults.  On the other hand, if you run "sourcenew", those values will come up as "C", "20", and "20" and will likewise stay as defaults.
 
If you compare the two hierarchies, the comparison tools will show that there was a "History" change in "sub" between the two versions, but it will not show the default value change.
 
Hope that helps!
0 Kudos
Message 3 of 5
(3,018 Views)

Hi Lowell,

I was able to reproduce the problem.  This was reported to R&D B5FNJ89) for further investigation. Thanks for the feedback!

Regards,

Elizabeth S.

Applications Engineer

National Instruments

 

0 Kudos
Message 4 of 5
(2,993 Views)

Elizabeth,

You're welcome.  I wish them luck.

Lowell

0 Kudos
Message 5 of 5
(2,988 Views)