10 Replies Latest reply on Oct 11, 2017 6:10 PM by thatJeffSmith-Oracle

    V17.3 very slow to open Tools > Preferences

    Jim 13131

      The first time I choose Tools > Preferences after opening 17.3 I get a long delay.A minimum of 9.5 seconds..The delay is longer when I am connected via VPN to a remote DB server. In some cases over a minute.

       

      During the Delay "IndexPreferencesTask" is running on the status bar.

       

      Windows 10 v 1703 build 156063.608 64 bit

       

      SQL Developer 17.3.0.271 Buid 271.2323 64 bit downloaded with JDK

       

      I have seen this on other PCs as well.

       

      SQL Developer 17.2 opens this instantly on same PC.

       

      Any tricks to speed this up?

       

      Thanks,

       

      Jim

        • 1. Re: V17.3 very slow to open Tools > Preferences
          thatJeffSmith-Oracle

          So I can explain part of this...

           

          Version 17.2 or even 4.2 - we changed up the preferences such that the preference SEARCH works for any keyword now. The first time you open the dialog, it builds an index. This may take a few seconds.


          It shouldn't take 10 seconds. It shouldn't matter if you're on VPN or not. And it should be the same for 17.2/17.3. These are the parts that are not making sense to me. I'll ask the dev to take a look.

          • 2. Re: V17.3 very slow to open Tools > Preferences
            Jim 13131

            Hi Jeff,

             

            The slowness repeats each time I start SQL Developer - so the index does not appear to be saved between sessions. The second, or higher, time I open SQL developer in a session it is fast. Close SQL developer and and re-open it is slow again.

             

            Jim

            • 3. Re: V17.3 very slow to open Tools > Preferences
              thatJeffSmith-Oracle

              >> so the index does not appear to be saved between sessions.

              Correct, the index isn't persisted between sessions. We're looking at a way to make that possible.

              1 person found this helpful
              • 4. Re: V17.3 very slow to open Tools > Preferences
                Gary Graham-Oracle

                It seems the code which indexes the preferences got restructured (at least), if not enhanced for 17.3.  The Java class for this (for which you can grab jstack full thread dumps when opening Tools > Preferences) does not exist in 17.2 even though it was last updated more than one month before 17.2 got released.  Possibly 17.3 does a better job of indexing keywords deeper down in the Preferences UI for the various extension pages.

                 

                As Jeff indicates, it seems very desirable to get this index cached in each release's user settings, perhaps in the system_cache.

                1 person found this helpful
                • 5. Re: V17.3 very slow to open Tools > Preferences
                  Jim 13131

                  Did a few more tests.

                   

                  Opened SQL Developer, DO not connect to nay databases , tools > preferences

                   

                  17.2 (no VPN) - instant (< 0.5 seconds)

                  17.2 (Connected to VPN) - instant (< 0.5 seconds)

                  17.3 (no vpn) - 10 seconds +/- 1 second

                  17.3 (vpn) 50 seconds +/- 2 seconds

                  17.3 (vpn) second session - 10 seconds

                  17.3 after reboot and vpn - 50 seconds

                   

                  Is it possible the indexing code is doing some scan down a network path and that is what is taking so long? It would explain the difference with the VPN. Often my local network drives aren't available when I have a VPN started.

                   

                  Also replicated on a few of my colleagues PCs - all have similar results.

                   

                  Jim

                  • 6. Re: V17.3 very slow to open Tools > Preferences
                    Gary Graham-Oracle

                    Often my local network drives aren't available when I have a VPN started.

                    If you take multiple thread dumps with jstack while the index preferences task is running, one line you will always see in the "RaptorTaskThread01-IndexPreferencesTask" dump is...

                    at sun.awt.shell.Win32ShellFolder2.listFiles(Win32ShellFolder2.java:680)

                    usually after a...

                    at sun.awt.shell.Win32ShellFolderManager2.isFileSystemRoot(Win32ShellFolderManager2.java:456)

                    No idea what that does, or how long it takes, when local drives are hidden, so that could well be the the culprit.  But I doubt the processing is different just due to being on VPN.  The indexer is just looking for strings in Preferences UI.

                    1 person found this helpful
                    • 7. Re: V17.3 very slow to open Tools > Preferences
                      Jim 13131

                      Doing a quick google of those ( I'm definitely not a Java developer) it looks like they are used to look down the files system - maybe finding "My Documents" or other Windows standard folders.

                       

                      Could be opening the file Preferences is stored in or perhaps verifying directory settings in preferences - just guesses on my part without access tot he code (Or knowledge to understand it)

                       

                      Are you seeing the same 17.3 is much slower here than 17.2 as me on Windows 10 64 bit?

                       

                      Jim

                      • 8. Re: V17.3 very slow to open Tools > Preferences
                        Gary Graham-Oracle

                        Are you seeing the same 17.3 is much slower here than 17.2 as me on Windows 10 64 bit

                        Oh, definitely yes. Once SQL Developer's startup processing finishes after a few seconds, opening the preferences in 17.2 is almost instantaneous. The 9 second delay on 17.3 is reproducible, but the difference I see between VPN and non-VPN on 17.3 is minimal, maybe an additional 5 or 6 seconds.

                         

                        Basically, in 17.3, the indexer's strategy is to instantiate panels present under the Preferences UI's tree (without actually displaying anything), then search for strings to index in the labels (of titles, combo boxes, input fields, etc).  So if you decide you wish to switch from English to Spanish by putting

                        AddVMOption  -Duser.language=es

                        in your sqldeveloper.conf file, the indexer will automatically index on the Spanish in the translated labels the Preferences UI will then display.  The problem is that some of those panels have as a component a URLFileChooser panel, which needs to check the file system.  This may not be a full or completely accurate depiction, but you get the point. 

                        1 person found this helpful
                        • 9. Re: V17.3 very slow to open Tools > Preferences
                          Jim 13131

                          Thanks Gary,

                           

                          We'll chalk my VPN speed difference up to some really sub-optimal VPN setups I have to use to access various customers and have no control over. Speeding up the non-vpn speed issue will mist likely solve the extra VPN delay I am seeing as well.

                           

                          Jim

                          • 10. Re: V17.3 very slow to open Tools > Preferences
                            thatJeffSmith-Oracle

                            We're looking at a fix now, thanks for the great info and your local perf #'s based on the different scenarios.

                            1 person found this helpful