It takes almost a second for me to do a mouse click and have a single object be selected. I think it's worse for large data sets, but it seems to exist most of the time despite the size of the data set. Personally, I think a whole second to wait for a mouse click is pretty bad.
Most of the time appears to be spent notifying things about the selection change. I just counted 110 of these, and we fire once for the clearSelection() and again for the new selection. They all seem to add up to almost a second of latency. I actually went and printed out a bunch of timestamps to confirm this. Any thoughts on how to make this better? I've been using my QuadBuckets code to make the click coordinate searches faster, but I'm clueless as to what to do with these notifiers. DataSet.fireSelectionChanged() 1254985384285 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@3082f392 DataSet.fireSelectionChanged() 1254985384285 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@65450f1f DataSet.fireSelectionChanged() 1254985384285 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@18e3f02a DataSet.fireSelectionChanged() 1254985384285 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@1cac622a DataSet.fireSelectionChanged() 1254985384285 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@7960c21a DataSet.fireSelectionChanged() 1254985384285 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@3f677737 DataSet.fireSelectionChanged() 1254985384285 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@21c3dc66 DataSet.fireSelectionChanged() 1254985384285 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@41babddb DataSet.fireSelectionChanged() 1254985384295 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@4b069693 DataSet.fireSelectionChanged() 1254985384295 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@1d87b360 DataSet.fireSelectionChanged() 1254985384296 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@381172c5 DataSet.fireSelectionChanged() 1254985384355 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@1860045 DataSet.fireSelectionChanged() 1254985384355 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@47bb2cb DataSet.fireSelectionChanged() 1254985384355 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@55172fb9 DataSet.fireSelectionChanged() 1254985384355 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@653e4653 DataSet.fireSelectionChanged() 1254985384355 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@5b7b2712 DataSet.fireSelectionChanged() 1254985384355 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@72423da9 DataSet.fireSelectionChanged() 1254985384366 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@5ade5cd9 DataSet.fireSelectionChanged() 1254985384366 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@3ca1d92a DataSet.fireSelectionChanged() 1254985384378 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@70a6aa31 DataSet.fireSelectionChanged() 1254985384393 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@4defb0be DataSet.fireSelectionChanged() 1254985384404 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@333cb1eb DataSet.fireSelectionChanged() 1254985384404 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@55c4d594 DataSet.fireSelectionChanged() 1254985384415 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@6da21389 DataSet.fireSelectionChanged() 1254985384415 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@2bb0bf9a DataSet.fireSelectionChanged() 1254985384415 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@60f32dde DataSet.fireSelectionChanged() 1254985384415 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@7d487b8b DataSet.fireSelectionChanged() 1254985384415 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@21a722ef DataSet.fireSelectionChanged() 1254985384415 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@63e68a2b DataSet.fireSelectionChanged() 1254985384426 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@46bd530 DataSet.fireSelectionChanged() 1254985384437 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@43794494 DataSet.fireSelectionChanged() 1254985384447 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@4e857327 DataSet.fireSelectionChanged() 1254985384459 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@1b4b2db7 DataSet.fireSelectionChanged() 1254985384475 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@64a65760 DataSet.fireSelectionChanged() 1254985384486 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@64b2933f DataSet.fireSelectionChanged() 1254985384497 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@7e140bf DataSet.fireSelectionChanged() 1254985384509 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@5561bfa3 DataSet.fireSelectionChanged() 1254985384509 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@46c9220 DataSet.fireSelectionChanged() 1254985384519 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@73ed7524 DataSet.fireSelectionChanged() 1254985384545 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@6aa5c9f1 DataSet.fireSelectionChanged() 1254985384556 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@2a6d23ea DataSet.fireSelectionChanged() 1254985384567 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@6350ed68 DataSet.fireSelectionChanged() 1254985384578 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@561279c8 DataSet.fireSelectionChanged() 1254985384589 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@56f9659d DataSet.fireSelectionChanged() 1254985384589 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@f7e5307 DataSet.fireSelectionChanged() 1254985384589 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@2e7cf883 DataSet.fireSelectionChanged() 1254985384589 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@e9f784d DataSet.fireSelectionChanged() 1254985384589 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@7930ebb DataSet.fireSelectionChanged() 1254985384589 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@47ac1adf DataSet.fireSelectionChanged() 1254985384589 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@74184b3b DataSet.fireSelectionChanged() 1254985384589 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@66f34a08 DataSet.fireSelectionChanged() 1254985384589 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@6e818805 DataSet.fireSelectionChanged() 1254985384589 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@7a0938f0 DataSet.fireSelectionChanged() 1254985384589 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@73795327 DataSet.fireSelectionChanged() 1254985384589 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@224260ab DataSet.fireSelectionChanged() 1254985384589 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@33d88c1f DataSet.fireSelectionChanged() 1254985384589 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@4dd761d0 DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@7756c69c DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@620968f9 DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@57cae5b7 DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@49af7e68 DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@209403a3 DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@557ad30a DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@72b5615d DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@620b5b80 DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@57a462c9 DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@6951a712 DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@6fafc4c2 DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@7c9ed5d6 DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@1fe91485 DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@7f423820 DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@5472fe25 DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@498b5a73 DataSet.fireSelectionChanged() 1254985384601 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@5bdf59bd DataSet.fireSelectionChanged() 1254985384684 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@247cb66a DataSet.fireSelectionChanged() 1254985384684 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@77abfbdc DataSet.fireSelectionChanged() 1254985384684 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@3c2465e5 DataSet.fireSelectionChanged() 1254985384684 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@799dbc3b DataSet.fireSelectionChanged() 1254985384684 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@62b103dd DataSet.fireSelectionChanged() 1254985384684 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@5374d4c9 DataSet.fireSelectionChanged() 1254985384685 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@1b3e02ed DataSet.fireSelectionChanged() 1254985384685 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@4322394 DataSet.fireSelectionChanged() 1254985384685 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@77bdcbb2 DataSet.fireSelectionChanged() 1254985384685 org.openstreetmap.josm.gui.mapvie...@4d885088 DataSet.fireSelectionChanged() 1254985384685 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@305f387c DataSet.fireSelectionChanged() 1254985384686 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@3b756db3 DataSet.fireSelectionChanged() 1254985384686 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@1a752144 DataSet.fireSelectionChanged() 1254985384686 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@7fdb04ed DataSet.fireSelectionChanged() 1254985384686 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@420a52f DataSet.fireSelectionChanged() 1254985384686 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@7b3cb2c6 DataSet.fireSelectionChanged() 1254985384686 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@4dfd245f DataSet.fireSelectionChanged() 1254985384687 org.openstreetmap.josm.gui.dialogs.PropertiesDialog[toggleDialog.propertiesdialog,0,0,330x142,invalid,layout=java.awt.BorderLayout,alignmentX=0.0,alignmentY=0.0,border=javax.swing.border.etchedbor...@265f00f9,flags=329,maximumSize=,minimumSize=java.awt.Dimension[width=0,height=0],preferredSize=java.awt.Dimension[width=2147483647,height=150]] DataSet.fireSelectionChanged() 1254985384688 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@2738ef1d DataSet.fireSelectionChanged() 1254985384688 org.openstreetmap.josm.gui.dialogs.historydialog$historyitemtablemo...@ada6d09 DataSet.fireSelectionChanged() 1254985384700 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@a2c6f70 DataSet.fireSelectionChanged() 1254985384700 org.openstreetmap.josm.gui.dialogs.SelectionListDialog[toggleDialog.selectionlist,0,0,330x142,invalid,layout=java.awt.BorderLayout,alignmentX=0.0,alignmentY=0.0,border=javax.swing.border.etchedbor...@265f00f9,flags=9,maximumSize=,minimumSize=java.awt.Dimension[width=0,height=0],preferredSize=java.awt.Dimension[width=2147483647,height=150]] DataSet.fireSelectionChanged() 1254985384701 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@2b49a2c8 DataSet.fireSelectionChanged() 1254985384701 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@6f5e0eab DataSet.fireSelectionChanged() 1254985384701 org.openstreetmap.josm.gui.dialogs.UserListDialog[toggleDialog.userlist,0,0,330x142,invalid,layout=java.awt.BorderLayout,alignmentX=0.0,alignmentY=0.0,border=javax.swing.border.etchedbor...@265f00f9,flags=9,maximumSize=,minimumSize=java.awt.Dimension[width=0,height=0],preferredSize=java.awt.Dimension[width=2147483647,height=150]] DataSet.fireSelectionChanged() 1254985384701 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@8f8acd0 DataSet.fireSelectionChanged() 1254985384701 org.openstreetmap.josm.gui.dialogs.ConflictDialog[toggleDialog.conflict,0,0,0x0,invalid,hidden,layout=java.awt.BorderLayout,alignmentX=0.0,alignmentY=0.0,border=javax.swing.border.etchedbor...@265f00f9,flags=9,maximumSize=,minimumSize=java.awt.Dimension[width=0,height=0],preferredSize=java.awt.Dimension[width=0,height=100]] DataSet.fireSelectionChanged() 1254985384702 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@7e199049 DataSet.fireSelectionChanged() 1254985384702 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@404fe94c DataSet.fireSelectionChanged() 1254985384702 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@3e5d9d90 DataSet.fireSelectionChanged() 1254985384702 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@741378ec DataSet.fireSelectionChanged() 1254985384702 org.openstreetmap.josm.plugins.validator.ValidatorDialog[toggleDialog.validator,0,0,330x142,layout=java.awt.BorderLayout,alignmentX=0.0,alignmentY=0.0,border=javax.swing.border.etchedbor...@265f00f9,flags=9,maximumSize=,minimumSize=java.awt.Dimension[width=0,height=0],preferredSize=java.awt.Dimension[width=2147483647,height=150]] DataSet.fireSelectionChanged() 1254985384702 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@2a68097d DataSet.fireSelectionChanged() 1254985384702 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@1447034b DataSet.fireSelectionChanged() 1254985384718 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@42293b53 DataSet.fireSelectionChanged() 1254985384729 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@20f5e814 DataSet.fireSelectionChanged() 1254985384740 org.openstreetmap.josm.actions.josmaction$selectionchangeadap...@705789f3 -- Dave _______________________________________________ josm-dev mailing list josm-dev@openstreetmap.org http://lists.openstreetmap.org/listinfo/josm-dev