karolek Posted April 19, 2015 Report Share Posted April 19, 2015 (edited) Hi guys, I've got some problem with my project. It's rather small one (3 classes, about 200 vi) I've started to work on one of the classes a 2 months and now, to open ctl file for that class, I need about 3 minutes (after double click on class.ctl I'm seeing white window that populates with controls after 3 minutes). The other classes opens with no delay at all. I was tagging this project by saving it to my drive every week. Now I've spotted that about a month ago, I've changed this class a bit, adding couple extra clusters and from that on, I'm seeing this massive hang of LabVIEW before showing me class private data. After deleting this cluster (up to the point when I've deleted every data from this class) and saving it, time to open didn't change. How to spot which vi is causing this opening time? How is it working? If I would have to build this class from the month ago base, how should I do it so that LabVIEW will not complain about the today's-class that he is using? Any response and ideas appreciated Mass compile didn't help Edited April 20, 2015 by karolek Quote Link to comment
bbean Posted April 20, 2015 Report Share Posted April 20, 2015 Recently I was having massive slowdowns opening VIs, including classed, but the culprit turned out to be an old link to an SCC Perforce Server that was not valid. Not sure if that is your problem or not, but if you have source control enabled in labview, you could check that. Quote Link to comment
drjdpowell Posted April 20, 2015 Report Share Posted April 20, 2015 Try renaming the class (this deletes the class mutation history, which might be causing your problem). Quote Link to comment
karolek Posted April 20, 2015 Author Report Share Posted April 20, 2015 HiThanks for response, I'm not using any SCC, I've also tried renaming the class before, and it didn't change anything. I've tried couple LabVIEWs (13 and 14) on different laptops, in everywhere I have same problem.I've copied just this class and saved it in another location, deleted everything from it's cluster, deleted every vi, rename and save copy to yet another location. Saving this almost empty class took more time than it should. It also didn't change anything. Opening empty private data of this empty class is still taking more than 3 minutes. Interesting, isn't it? I guess I can even send it to you, since there is no code there... And after writing it I saw class file size of 19 MB. How is it possible since it's empty? How to get rid of it? Quote Link to comment
hooovahh Posted April 20, 2015 Report Share Posted April 20, 2015 I guess I can even send it to you, since there is no code there... And after writing it I saw class file size of 19 MB. How is it possible since it's empty? How to get rid of it? Yeah that's a major red flag. The class file (and libraries in general) are just XML so I'd so open it in a text editor and see what it shows. Quote Link to comment
Neil Pate Posted April 20, 2015 Report Share Posted April 20, 2015 Could it be default data saved in the class "cluster"? That or mutation history as James suggested are the only things I can think of that would make the .lvclass file so big. 1 Quote Link to comment
karolek Posted April 20, 2015 Author Report Share Posted April 20, 2015 Hacking in progress... <?xml version='1.0' encoding='UTF-8'?><LVClass LVVersion="14008000"> <Property Name="NI.Lib.Icon" Type="Bin">&!#!!!!!!!)!"1!&!!!-!%!!!@````]!!!!"!!%!!!*!! ... a lot of strange stuff... !!!!!</Property> <Property Name="NI.Lib.SourceVersion" Type="Int">335577088</Property> <Property Name="NI.Lib.Version" Type="Str">1.0.0.0</Property> <Property Name="NI.LV.All.SourceOnly" Type="Bool">false</Property> <Property Name="NI.LVClass.ClassNameVisibleInProbe" Type="Bool">true</Property> <Property Name="NI.LVClass.DataValRefToSelfLimitedLibFlag" Type="Bool">true</Property> <Property Name="NI.LVClass.FlattenedPrivateDataCTL" Type="Bin">&!#!!!!!!!)!"1!&!!!-! ...a lot of strange stuff... Q!!!!!</Property> <Property Name="NI.LVClass.Geneology" Type="Xml"><String> <Name></Name> <Val>!!!! -> This one is the problem </String></Property> <Property Name="NI.LVClass.IsTransferClass" Type="Bool">false</Property> <Property Name="NI.LVClass.ParentClassLinkInfo" Type="Bin">&!#!!!!!!!)!"1!&!!!-!%!!!@` ... a lot of strange stuff ... RB=X-!!!!!</Property> <Property Name="NI.SortType" Type="Int">3</Property> <Property Name="NI_IconEditor" Type="Str">49 51 48 48 56 48 53 49 13 0 0 0 0 1 23 21 76 111 97 100 ... lot of numbers 0-128 ...</Property> <Item Name="Copy of Test.ctl" Type="Class Private Data" URL="Copy of Test.ctl"> <Property Name="NI.LibItem.Scope" Type="Int">2</Property> </Item></LVClass> Next to <Val> is the biggest line of characters I've seen in my life. Thank you. What can I do with it? Quote Link to comment
hooovahh Posted April 20, 2015 Report Share Posted April 20, 2015 Thank you. What can I do with it? Either erase it and see if it breaks things, or you can try to make a new blank class, having the same data type as yours, then copy the Val from the fresh one to your new one, replacing it. No idea what the line actually does. 1 Quote Link to comment
karolek Posted April 20, 2015 Author Report Share Posted April 20, 2015 (edited) YES! O God it feels good. After just deleting this line, I could open the project, but after opening this class, it blinked and disappeared at once. It was opening normally on the second try. So, as you said, I made a new class, copied over all controls, save it and copied <Val> line to the old class. It's running perfectly now. Thank you. Lesson learned: This class is an actor that has been saving an image data to process it. This image was 2d, 24-bit color array, that, I guess has been saved as a default value for this cluster. Instead of this image I will now be using data value reference without copying it to class. Edited April 21, 2015 by karolek Quote Link to comment
odoylerules Posted April 20, 2015 Report Share Posted April 20, 2015 Welcome to LVOOP!!!! Where random things like this pop up all the time 1 Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.