Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView [v4]

2020-09-08 Thread Kevin Rushforth
On Thu, 3 Sep 2020 07:44:55 GMT, yosbits wrote: >>> >>> >>> When the startup time is measured by eye, the impression changes depending >>> on the individual difference. >> >> my eye is a precision instrument :) Seriously, who would do such a thingy? >> Obviously, it must be measured, for ze

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-09-08 Thread Kevin Rushforth
On Thu, 27 Aug 2020 00:07:21 GMT, Kevin Rushforth wrote: >> So far, there are two alternative fixes for the bad performance issue while >> scrolling TableView/TreeTableViews: >> >> - this one #108, that tries to improve the performance of excessive number >> of `removeListener` calls >> - the

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView [v4]

2020-09-03 Thread yosbits
On Wed, 2 Sep 2020 10:46:48 GMT, Jeanette Winzenburg wrote: >> When the startup time is measured by eye, the impression changes depending >> on the individual difference. >> The effect of runLater affects your experience. >> >> However, I succeeded in further improving performance by eliminati

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView [v4]

2020-09-03 Thread yosbits
> If there are many columns, the current TableView will stall scrolling. > Resolving this performance issue requires column > virtualization. Virtualization mode is enabled when the row height is fixed > by the following method. > `tableView.setFixedCellSize(height)` > > This proposal includes a

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView [v3]

2020-09-02 Thread Jeanette Winzenburg
On Tue, 1 Sep 2020 20:57:58 GMT, yosbits wrote: > > > When the startup time is measured by eye, the impression changes depending on > the individual difference. my eye is a precision instrument :) Seriously, who would do such a thingy? Obviously, it must be measured, for zeroth approximatio

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView [v3]

2020-09-01 Thread yosbits
On Tue, 1 Sep 2020 14:12:15 GMT, Jeanette Winzenburg wrote: >> Since there was a problem that the cell was not updated when the window was >> maximized, I added a fix to >> TreeTableViewSkin.java. >> Added test code (BigTreeTableViewTest) for TreeTableView to the first post. >> >> @kleopatra >

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView [v3]

2020-09-01 Thread Jeanette Winzenburg
On Mon, 31 Aug 2020 19:16:31 GMT, yosbits wrote: > > > Since there was a problem that the cell was not updated when the window was > maximized, I added a fix to > TreeTableViewSkin.java. that's just the added listener to hbar properties (same as in TableViewSkin), or anything else changed?

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView [v3]

2020-08-31 Thread yosbits
On Sun, 30 Aug 2020 13:20:49 GMT, Jeanette Winzenburg wrote: >> When setting the cell height to a fixed value with setFixedCellSize(), >> column virtualization can improve performance. >> >> As the next step, I think it is possible to try to enable column >> virtualization regardless of wheth

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView [v3]

2020-08-31 Thread yosbits
> If there are many columns, the current TableView will stall scrolling. > Resolving this performance issue requires column > virtualization. Virtualization mode is enabled when the row height is fixed > by the following method. > `tableView.setFixedCellSize(height)` > > This proposal includes a

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView [v2]

2020-08-30 Thread Jeanette Winzenburg
On Thu, 27 Aug 2020 06:37:53 GMT, yosbits wrote: >> 19fabf2eafcb02b519d39a1b0a9dad5b9209db64 >> >> * Constructor creates multiple cell nodes, but the >> Fixed a wasteful problem of creating all cells and deleting out-of-display >> cells because the fixedCellSize attribute >> was not initialize

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView [v2]

2020-08-26 Thread yosbits
On Sat, 18 Apr 2020 17:40:30 GMT, yosbits wrote: >> My name is "Naohiro Yoshimoto" >> I have received an approved email on 2019-8-3. > > 19fabf2eafcb02b519d39a1b0a9dad5b9209db64 > > * Constructor creates multiple cell nodes, but the > Fixed a wasteful problem of creating all cells and deleting

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-08-26 Thread Kevin Rushforth
On Wed, 26 Aug 2020 15:40:57 GMT, Jose Pereda wrote: > So I'd like to propose this third alternative, which would affect only > VirtualFlow and the controls that use it, but > wouldn't have any impact in the rest of controls as the other two options (as > ExpressionHelper or Node listeners > wo

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-08-26 Thread John Hendrikx
On Wed, 26 Aug 2020 17:44:20 GMT, yosbits wrote: >> So far, there are two alternative fixes for the bad performance issue while >> scrolling TableView/TreeTableViews: >> >> - this one #108, that tries to improve the performance of excessive number >> of `removeListener` calls >> - the WIP #18

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-08-26 Thread yosbits
On Wed, 26 Aug 2020 15:40:57 GMT, Jose Pereda wrote: >> I have attached a code sample. If you use OpenJFX 16-ea+1 and run visual VM >> and look at the hotspots in the JavaFX >> thread, you can see that about 45% of the time in the JavaFX thread is spent >> in removeListener calls. >> Note: In C

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-08-26 Thread Jose Pereda
On Wed, 26 Aug 2020 14:08:37 GMT, dannygonzalez wrote: >> @hjohn, agreed regards the issues of adding a listener to each node. >> >> Would it be worth doing the additional work of updating PopupWindow and >> ProgressIndicatorSkin to add their own >> listeners to make this a pull request that c

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-08-26 Thread dannygonzalez
On Fri, 17 Apr 2020 10:46:51 GMT, dannygonzalez wrote: >> The problem is that there are usually many nodes, but only very few scenes >> and windows, so registering a listener for >> each node on a scene or window is pretty bad design (also consider the >> amount of notifications that a scene c

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-17 Thread dannygonzalez
On Fri, 17 Apr 2020 10:22:15 GMT, John Hendrikx wrote: >> @hjohn Thanks for looking into this. It looks like your changes do improve >> the issue with the JavaFX thread being >> swamped with listener de-registrations. Looking at the JavaFX thread in >> VisualVM, the removeListener call has drop

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-17 Thread John Hendrikx
On Fri, 17 Apr 2020 08:48:35 GMT, dannygonzalez wrote: >> @dannygonzalez I added a proof of concept here if you want to play with it: >> https://github.com/openjdk/jfx/pull/185 > > @hjohn Thanks for looking into this. It looks like your changes do improve > the issue with the JavaFX thread bei

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-17 Thread dannygonzalez
On Fri, 17 Apr 2020 08:07:08 GMT, John Hendrikx wrote: >> @hjohn >> >>> 2. There is a significant increase in memory use. Where before each >>> listener occupied an entry in an array, now each >>> listener is wrapped by Map.Entry (the Integer instance used per entry can >>> be disregarded). I

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-17 Thread John Hendrikx
On Fri, 17 Apr 2020 07:22:20 GMT, dannygonzalez wrote: >> @hjon >> >>> 3. Even though the current version of this pull request takes care to >>> notify duplicate listeners the correct amount of >>> times, it does not notify them in the correct order with respect to other >>> listeners. If one

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-17 Thread John Hendrikx
On Fri, 17 Apr 2020 07:22:20 GMT, dannygonzalez wrote: >> @hjon >> >>> 3. Even though the current version of this pull request takes care to >>> notify duplicate listeners the correct amount of >>> times, it does not notify them in the correct order with respect to other >>> listeners. If one

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-17 Thread dannygonzalez
On Fri, 17 Apr 2020 07:08:01 GMT, dannygonzalez wrote: >> I've tested this pull request locally a few times, and the performance >> improvement is quite significant. A test with >> 20.000 nested stack panes resulted in these average times: >> - Add all 51 ms >> - Remove all 25 ms >> >> Versu

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-17 Thread dannygonzalez
On Thu, 16 Apr 2020 16:15:20 GMT, John Hendrikx wrote: >> @hjohn I have 12136 change listeners when debugging our application as you >> suggested. >> >> Please note that I see the issue when the TableView is having items added to >> it. If you just have a static TableView I >> do not see the i

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-16 Thread John Hendrikx
On Thu, 16 Apr 2020 09:45:20 GMT, dannygonzalez wrote: >> @dannygonzalez Could you perhaps debug your application and take a look at >> how large the following array is: a random >> node -> `scene` -> `value` -> `window` -> `readOnlyProperty` -> `helper` -> >> `changeListeners`. I just teste

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-16 Thread dannygonzalez
On Thu, 16 Apr 2020 08:46:26 GMT, John Hendrikx wrote: >> If it is of any help, I have attached a VisualVM snapshot (v1.4.4) where the >> ExpressionHelper.removeListener is using >> 61% of the JavaFX thread whilst running our application. >> [snapshot-1587024308245.nps.zip](https://github.com/op

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-16 Thread John Hendrikx
On Thu, 16 Apr 2020 08:24:16 GMT, dannygonzalez wrote: >> The listeners added by `Node` are apparently internally required for >> internal properties `TreeShowing` and >> `TreeVisible`, and are used to take various decisions like whether to >> play/pause animations. There is also a couple of

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-16 Thread dannygonzalez
On Thu, 16 Apr 2020 07:34:40 GMT, John Hendrikx wrote: >> Looking at the commit >> https://github.com/openjdk/jfx/commit/e21606d3a1b73cd4b44383babc750a4b4721edfd >> it seems that the long listener lists are actually part of the `Scene`'s >> `Window` property and the `Window`'s `Showing` >> p

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-16 Thread John Hendrikx
On Thu, 16 Apr 2020 07:11:58 GMT, John Hendrikx wrote: >> The patch proposed here does not share the case where the listener deletion >> performance becomes a bottleneck. >> >> I think that it is necessary to reproduce it by testing first, but >> >> If you just focus on improving listener remo

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-16 Thread John Hendrikx
On Thu, 16 Apr 2020 06:34:39 GMT, yosbits wrote: >> @hjohn >> I haven't quantified exactly where all the listeners are coming from but the >> Node class for example has various >> listeners on it. >> The following changeset (which added an extra listener on the Node class) >> impacted TableVi

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-15 Thread yosbits
On Wed, 15 Apr 2020 07:11:27 GMT, dannygonzalez wrote: >> @dannygonzalez You mentioned "There are multiple change listeners on a Node >> for example, so you can imagine with the >> number of nodes in a TableView this is going to be a problem if the >> unregistering is slow.". >> Your changes i

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-15 Thread dannygonzalez
On Tue, 14 Apr 2020 12:20:10 GMT, John Hendrikx wrote: >> In a minimal test I wrote (not a microbenchmark that removes listeners), I >> tried this PR code, but did not reproduce >> the performance improvement. I have attached a test program in my PR(#125) > > @dannygonzalez You mentioned "There

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-14 Thread John Hendrikx
On Tue, 10 Mar 2020 06:08:25 GMT, yosbits wrote: >>> technically true - but the implementation was linear with a fixed sequence >>> since-the-beginning-of-java-desktop-time >>> (and sometimes, for good ol' beans properties, even exposed as api to >>> access the array of listeners). So technica

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-03 Thread Dalibor Topic
On Mon, 9 Mar 2020 17:00:06 GMT, Nir Lisker wrote: >> I took the liberty of pointing out some formatting errors > > The title of your PR should match the title of the JBS issue. Moreover, #108 > already tackles this issue with a > different approach and 2 PRs on the same issue can't be intetgrat

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-03 Thread Martin Polakovic
On Mon, 24 Feb 2020 07:39:43 GMT, yosbits wrote: > If there are many columns, the current TableView will stall scrolling. > Resolving this performance issue requires column > virtualization. Virtualization mode is enabled when the row height is fixed > by the following method. > `tableView.set

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-03 Thread yosbits
On Thu, 2 Apr 2020 17:38:00 GMT, Dalibor Topic wrote: >> The title of your PR should match the title of the JBS issue. Moreover, #108 >> already tackles this issue with a >> different approach and 2 PRs on the same issue can't be intetgrated. Since >> I'm not familiar with this code, I can't >>

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-03 Thread Nir Lisker
On Thu, 27 Feb 2020 21:29:27 GMT, Martin Polakovic wrote: >> If there are many columns, the current TableView will stall scrolling. >> Resolving this performance issue requires column >> virtualization. Virtualization mode is enabled when the row height is fixed >> by the following method. >>

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-04-03 Thread yosbits
On Mon, 24 Feb 2020 07:39:43 GMT, yosbits wrote: > If there are many columns, the current TableView will stall scrolling. > Resolving this performance issue requires column > virtualization. Virtualization mode is enabled when the row height is fixed > by the following method. > `tableView.set

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-03-09 Thread yosbits
On Mon, 2 Mar 2020 11:47:03 GMT, Nir Lisker wrote: >>> >>> >>> I think that a starting point would be to decide on a spec for the listener >>> notification order: is it specified by >>> their registration order, or that is it unspecified, in which case we can >>> take advantage of this for be

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-03-02 Thread Nir Lisker
On Mon, 2 Mar 2020 08:31:47 GMT, dannygonzalez wrote: >> In use cases where a large number of listeners are being discarded, it may >> be better to first consider changing the design to receive event >> notifications on nodes whose listener registrations are not frequently >> discarded. > >>

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-03-02 Thread dannygonzalez
On Thu, 27 Feb 2020 03:17:14 GMT, yosbits wrote: >>> >>> >>> I think that a starting point would be to decide on a spec for the listener >>> notification order: is it specified by their registration order, or that is >>> it unspecified, in which case we can take advantage of this for better

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-26 Thread yosbits
On Wed, 26 Feb 2020 10:07:02 GMT, Jeanette Winzenburg wrote: >> Hmm .. personally, I would consider changing such a basic (and probably >> highly optimized) implementation used all over the framework is a very high >> risk change that at the worst outcome would detoriate internal and external

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-26 Thread Jeanette Winzenburg
On Wed, 26 Feb 2020 09:49:04 GMT, Jeanette Winzenburg wrote: >> Even though the order of notifications is unspecified, the following tests >> fail if we use a HashMap vs LinkedHashMap i.e. the notifications are not in >> order of registration: >> >> test.javafx.scene.control.TableViewTest >

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-26 Thread Jeanette Winzenburg
On Tue, 25 Feb 2020 14:06:23 GMT, dannygonzalez wrote: >> I think that a starting point would be to decide on a spec for the listener >> notification order: is it specified by their registration order, or that is >> it unspecified, in which case we can take advantage of this for better >> per

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-25 Thread dannygonzalez
On Tue, 25 Feb 2020 13:55:50 GMT, Nir Lisker wrote: >> Replying to @nlisker and @kevinrushforth general comments about the memory >> consumption of using a LinkedHashMap: >> >> I agree that at the very least these should be lazy initialised when they >> are needed and that we should initially

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-25 Thread Nir Lisker
On Tue, 25 Feb 2020 12:18:34 GMT, dannygonzalez wrote: >> I haven't done a detailed review yet, but I worry about the memory >> consumption and performance of using a Map for the simple cases where there >> is only a single (or very small number) of listeners. These methods are used >> in man

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-25 Thread dannygonzalez
On Tue, 25 Feb 2020 00:43:34 GMT, Kevin Rushforth wrote: >> Sorry for the interruption, send a PR that corrects the same problem. > > I haven't done a detailed review yet, but I worry about the memory > consumption and performance of using a Map for the simple cases where there > is only a sin

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-25 Thread dannygonzalez
On Tue, 25 Feb 2020 00:45:06 GMT, Kevin Rushforth wrote: >> modules/javafx.base/src/main/java/com/sun/javafx/binding/ExpressionHelper.java >> line 194: >> >>> 193: private Map >>> invalidationListeners = new LinkedHashMap<>(); >>> 194: private Map, Integer> >>> changeListeners

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread Kevin Rushforth
On Mon, 24 Feb 2020 23:45:03 GMT, Nir Lisker wrote: >> https://bugs.openjdk.java.net/browse/JDK-8185886 >> >> Optimisation to ExpressionHelper.Generic class to use Sets rather than >> Arrays to improve listener removal speed. >> >> This was due to the removal of listeners in TableView taking u

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread Kevin Rushforth
On Sat, 22 Feb 2020 08:42:52 GMT, yosbits wrote: >> @kevinrushforth just a note to say there are other ExpressionHelper classes >> (i.e. MapExpressionHelper, SetExpressionHelper and ListExpressionHelper) >> that also use arrays and suffer from the linear search issue when removing >> listener

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread Nir Lisker
On Thu, 6 Feb 2020 16:13:33 GMT, dannygonzalez wrote: > https://bugs.openjdk.java.net/browse/JDK-8185886 > > Optimisation to ExpressionHelper.Generic class to use Sets rather than Arrays > to improve listener removal speed. > > This was due to the removal of listeners in TableView taking up t

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread Nir Lisker
On Mon, 24 Feb 2020 11:04:26 GMT, dannygonzalez wrote: >> Just wanted to keep a similar behaviour as before using the same calculation >> based originally on the size of the listeners array list and now based on >> the size of the map. So in theory the weak listeners should be trimmed at >> t

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread dannygonzalez
On Mon, 24 Feb 2020 11:32:25 GMT, Nir Lisker wrote: >> Nope, actually: >> `listeners.keySet().removeIf(p::test) ` >> >> is not the same as: >> `listeners.entrySet().removeIf(e -> p.test(e.getKey()));` >> >> We need to test against the entrySet.key not the entrySet itself. > >> We need to test

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread Nir Lisker
On Mon, 24 Feb 2020 11:09:30 GMT, dannygonzalez wrote: >> Agreed, will change. > > Nope, actually: > `listeners.keySet().removeIf(p::test) ` > > is not the same as: > `listeners.entrySet().removeIf(e -> p.test(e.getKey()));` > > We need to test against the entrySet.key not the entrySet itself

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread dannygonzalez
On Mon, 24 Feb 2020 08:11:40 GMT, dannygonzalez wrote: >> modules/javafx.base/src/main/java/com/sun/javafx/binding/ExpressionHelperBase.java >> line 64: >> >>> 63: >>> 64: listeners.entrySet().removeIf(e -> p.test(e.getKey())); >>> 65: } >> >> This can be `listeners.keySet().remo

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread dannygonzalez
On Mon, 24 Feb 2020 10:16:55 GMT, dannygonzalez wrote: >>> So we need to keep the original behaviour from before where a count was >>> checked on every addListener call and the weak references were purged from >>> the array using the original calculation for this count. >> >> The GC'd weak li

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread dannygonzalez
On Mon, 24 Feb 2020 09:59:28 GMT, Nir Lisker wrote: >> As far as I know a LinkedHashMap doesn't automatically remove weak listener >> entries. The listener maps can be holding weak listeners as well as normal >> listeners. >> So we need to keep the original behaviour from before where a count w

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread Nir Lisker
On Mon, 24 Feb 2020 09:14:51 GMT, dannygonzalez wrote: >> I agree, I kept these in as I wasn't sure if there was a need to manually >> force the garbage collection of weak listeners at the same rate as the >> original implementation. >> Removing this would make sense to me also. >> >> Updated

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread dannygonzalez
On Mon, 24 Feb 2020 08:14:02 GMT, dannygonzalez wrote: >> modules/javafx.base/src/main/java/com/sun/javafx/binding/ExpressionHelper.java >> line 197: >> >>> 196: private int weakChangeListenerGcCount = 2; >>> 197: private int weakInvalidationListenerGcCount = 2; >>> 198: >> >

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread dannygonzalez
On Sun, 23 Feb 2020 01:05:25 GMT, Nir Lisker wrote: >> https://bugs.openjdk.java.net/browse/JDK-8185886 >> >> Optimisation to ExpressionHelper.Generic class to use Sets rather than >> Arrays to improve listener removal speed. >> >> This was due to the removal of listeners in TableView taking u

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread dannygonzalez
On Sun, 23 Feb 2020 02:54:55 GMT, Nir Lisker wrote: >> https://bugs.openjdk.java.net/browse/JDK-8185886 >> >> Optimisation to ExpressionHelper.Generic class to use Sets rather than >> Arrays to improve listener removal speed. >> >> This was due to the removal of listeners in TableView taking u

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread dannygonzalez
On Sun, 23 Feb 2020 03:09:28 GMT, Nir Lisker wrote: >> https://bugs.openjdk.java.net/browse/JDK-8185886 >> >> Optimisation to ExpressionHelper.Generic class to use Sets rather than >> Arrays to improve listener removal speed. >> >> This was due to the removal of listeners in TableView taking u

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-24 Thread dannygonzalez
On Sun, 23 Feb 2020 04:20:55 GMT, Nir Lisker wrote: >> https://bugs.openjdk.java.net/browse/JDK-8185886 >> >> Optimisation to ExpressionHelper.Generic class to use Sets rather than >> Arrays to improve listener removal speed. >> >> This was due to the removal of listeners in TableView taking u

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-22 Thread Nir Lisker
On Thu, 6 Feb 2020 16:13:33 GMT, dannygonzalez wrote: > https://bugs.openjdk.java.net/browse/JDK-8185886 > > Optimisation to ExpressionHelper.Generic class to use Sets rather than Arrays > to improve listener removal speed. > > This was due to the removal of listeners in TableView taking up t

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-22 Thread yosbits
On Tue, 18 Feb 2020 09:02:36 GMT, dannygonzalez wrote: >> @dannygonzalez the reason for the `jcheck` failure is that you have commits >> with two different email addresses in your branch. At this point, it's >> probably best to squash the commits into a single commit with `git rebase -i >> ma

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-18 Thread Jeanette Winzenburg
On Wed, 12 Feb 2020 12:43:58 GMT, dannygonzalez wrote: >>> >>> Although that does seem odd behaviour to me. Obviously as the original >>> implementation was using an array I can see how the implementation drove >>> that specification. >>> >> >> whatever drove it (had been so since the begin

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-18 Thread dannygonzalez
On Wed, 12 Feb 2020 12:22:15 GMT, Jeanette Winzenburg wrote: >>> hmm ... wouldn't the change violate spec of adding listeners: >>> >>> > If the same listener is added more than once, then it will be notified >>> > more than once. >> >> True, I hadn't read that spec in ObservableValueBase. >>

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-18 Thread Kevin Rushforth
On Wed, 12 Feb 2020 13:06:00 GMT, Jeanette Winzenburg wrote: >> The listeners are called back in the order they were registered in my >> implementation although I didn’t see this requirement in the spec unless I >> missed something. >> >> The performance unregistering thousands of listeners b

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-18 Thread Jeanette Winzenburg
On Thu, 6 Feb 2020 16:22:28 GMT, dannygonzalez wrote: >> https://bugs.openjdk.java.net/browse/JDK-8185886 >> >> Optimisation to ExpressionHelper.Generic class to use Sets rather than >> Arrays to improve listener removal speed. >> >> This was due to the removal of listeners in TableView takin

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-18 Thread dannygonzalez
On Mon, 17 Feb 2020 13:51:49 GMT, Kevin Rushforth wrote: >>> >>> The listeners are called back in the order they were registered in my >>> implementation although I didn’t see this requirement in the spec unless I >>> missed something. >> >> yeah, you are right can't find that spec on sequen

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-18 Thread dannygonzalez
On Wed, 12 Feb 2020 11:29:24 GMT, Jeanette Winzenburg wrote: >> /signed >> >> I have signed the Oracle Contributor Agreement today. Have not received back >> any confirmation yet though. > > hmm ... wouldn't the change violate spec of adding listeners: > >> If the same listener is added more

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-18 Thread Jeanette Winzenburg
On Wed, 12 Feb 2020 12:01:03 GMT, dannygonzalez wrote: >> hmm ... wouldn't the change violate spec of adding listeners: >> >>> If the same listener is added more than once, then it will be notified more >>> than once. > >> hmm ... wouldn't the change violate spec of adding listeners: >> >> >

Re: RFR: 8185886: Improve scrolling performance of TableView and TreeTableView

2020-02-18 Thread dannygonzalez
On Thu, 6 Feb 2020 16:13:33 GMT, dannygonzalez wrote: > https://bugs.openjdk.java.net/browse/JDK-8185886 > > Optimisation to ExpressionHelper.Generic class to use Sets rather than Arrays > to improve listener removal speed. > > This was due to the removal of listeners in TableView taking up t