Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v10]

2024-07-03 Thread Viktor Klang
On Fri, 21 Jul 2023 16:42:25 GMT, Doug Lea wrote: >> This update addresses performance issues across both LinkedTransferQueue and >> SynchronousQueue by creating a common basis for implementation across them >> (mainly in LinkedTransferQueue). Pasting from internal doc summary of >> changes:

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v10]

2024-07-02 Thread Suryanarayana Garlapati
On Tue, 2 Jul 2024 19:28:58 GMT, Doug Lea wrote: >> @DougLea is there any timeline where we can expect the backport of this fix >> into jdk17? or any other work around? > > @suryag10 Sorry I'm not the right person to ask about backports. Thanks for the info @DougLea and @jaikiran -

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v10]

2024-07-02 Thread Jaikiran Pai
On Fri, 21 Jul 2023 16:42:25 GMT, Doug Lea wrote: >> This update addresses performance issues across both LinkedTransferQueue and >> SynchronousQueue by creating a common basis for implementation across them >> (mainly in LinkedTransferQueue). Pasting from internal doc summary of >> changes:

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v10]

2024-07-02 Thread Doug Lea
On Tue, 2 Jul 2024 17:55:31 GMT, Suryanarayana Garlapati wrote: >> @wborn I think 17 should also be OK modulo deleting 2 lines for pre-21 >> mentioned above. I only checked with 19 though.. > > @DougLea is there any timeline where we can expect the backport of this fix > into jdk17? or any oth

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v10]

2024-07-02 Thread Suryanarayana Garlapati
On Thu, 10 Aug 2023 15:03:18 GMT, Doug Lea wrote: >> Thanks for making the fixes Doug! >> Would it also be possible to backport these fixes to Java 17? >> >> It seems to be a very common issue for openHAB users now that they upgrade >> to openHAB 4 which requires Java 17. >> >> See: >> >> *

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v10]

2023-08-10 Thread Doug Lea
On Sun, 6 Aug 2023 12:23:54 GMT, Wouter Born wrote: >> Doug Lea has updated the pull request with a new target base due to a merge >> or a rebase. The incremental webrev excludes the unrelated changes brought >> in by the merge/rebase. The pull request contains 13 additional commits >> since t

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v10]

2023-08-06 Thread Wouter Born
On Fri, 21 Jul 2023 16:42:25 GMT, Doug Lea wrote: >> This update addresses performance issues across both LinkedTransferQueue and >> SynchronousQueue by creating a common basis for implementation across them >> (mainly in LinkedTransferQueue). Pasting from internal doc summary of >> changes:

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v10]

2023-07-21 Thread Viktor Klang
On Fri, 21 Jul 2023 16:29:24 GMT, Doug Lea wrote: >> src/java.base/share/classes/java/util/concurrent/LinkedTransferQueue.java >> line 896: >> >>> 894: for (DualNode p = (pred == null) ? head : pred.next, c = p; >>> 895: p != null; ) { >>> 896: boole

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v10]

2023-07-21 Thread Doug Lea
> This update addresses performance issues across both LinkedTransferQueue and > SynchronousQueue by creating a common basis for implementation across them > (mainly in LinkedTransferQueue). Pasting from internal doc summary of > changes: > * * Class DualNode replaces Qnode, with fields an

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v9]

2023-07-21 Thread Doug Lea
On Fri, 21 Jul 2023 14:00:06 GMT, Viktor Klang wrote: >> Doug Lea has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Address review comments > > src/java.base/share/classes/java/util/concurrent/LinkedTransferQueue.java > line 896: > >> 89

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v9]

2023-07-21 Thread Doug Lea
On Fri, 21 Jul 2023 13:53:57 GMT, Viktor Klang wrote: >> Doug Lea has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Address review comments > > src/java.base/share/classes/java/util/concurrent/LinkedTransferQueue.java > line 639: > >> 63

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v9]

2023-07-21 Thread Viktor Klang
On Fri, 21 Jul 2023 12:31:07 GMT, Doug Lea wrote: >> This update addresses performance issues across both LinkedTransferQueue and >> SynchronousQueue by creating a common basis for implementation across them >> (mainly in LinkedTransferQueue). Pasting from internal doc summary of >> changes:

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v9]

2023-07-21 Thread Viktor Klang
On Fri, 21 Jul 2023 11:16:55 GMT, Doug Lea wrote: >> It's a good point, but we don't normally do this. Added (L336): >> * returns just barely too soon. As is the case in most j.u.c >> * blocking support, untimed waits use ManagedBlockers when >> * callers are ForkJoin threads, but

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v9]

2023-07-21 Thread Viktor Klang
On Fri, 21 Jul 2023 12:31:07 GMT, Doug Lea wrote: >> This update addresses performance issues across both LinkedTransferQueue and >> SynchronousQueue by creating a common basis for implementation across them >> (mainly in LinkedTransferQueue). Pasting from internal doc summary of >> changes:

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v9]

2023-07-21 Thread Doug Lea
> This update addresses performance issues across both LinkedTransferQueue and > SynchronousQueue by creating a common basis for implementation across them > (mainly in LinkedTransferQueue). Pasting from internal doc summary of > changes: > * * Class DualNode replaces Qnode, with fields an

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v8]

2023-07-21 Thread Doug Lea
On Fri, 21 Jul 2023 10:55:19 GMT, Doug Lea wrote: >> src/java.base/share/classes/java/util/concurrent/LinkedTransferQueue.java >> line 446: >> >>> 444: Thread.onSpinWait(); >>> 445: else >>> 446: LockSupport.parkNanos(ns); >>

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v8]

2023-07-21 Thread Doug Lea
On Fri, 21 Jul 2023 09:30:53 GMT, Viktor Klang wrote: >> Doug Lea has updated the pull request incrementally with one additional >> commit since the last revision: >> >> nitpicks > > src/java.base/share/classes/java/util/concurrent/LinkedTransferQueue.java > line 397: > >> 395: * T

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v8]

2023-07-21 Thread Viktor Klang
On Thu, 20 Jul 2023 10:26:03 GMT, Doug Lea wrote: >> This update addresses performance issues across both LinkedTransferQueue and >> SynchronousQueue by creating a common basis for implementation across them >> (mainly in LinkedTransferQueue). Pasting from internal doc summary of >> changes:

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v8]

2023-07-21 Thread Viktor Klang
On Thu, 20 Jul 2023 10:26:03 GMT, Doug Lea wrote: >> This update addresses performance issues across both LinkedTransferQueue and >> SynchronousQueue by creating a common basis for implementation across them >> (mainly in LinkedTransferQueue). Pasting from internal doc summary of >> changes:

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v8]

2023-07-21 Thread Viktor Klang
On Thu, 20 Jul 2023 10:26:03 GMT, Doug Lea wrote: >> This update addresses performance issues across both LinkedTransferQueue and >> SynchronousQueue by creating a common basis for implementation across them >> (mainly in LinkedTransferQueue). Pasting from internal doc summary of >> changes:

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v5]

2023-07-20 Thread Doug Lea
On Fri, 7 Jul 2023 13:45:25 GMT, Viktor Klang wrote: >> Doug Lea has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Fix inverted test assert; improve internal documentation; simplify code > > src/java.base/share/classes/java/util/concurrent

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v8]

2023-07-20 Thread Doug Lea
On Thu, 20 Jul 2023 10:26:03 GMT, Doug Lea wrote: >> This update addresses performance issues across both LinkedTransferQueue and >> SynchronousQueue by creating a common basis for implementation across them >> (mainly in LinkedTransferQueue). Pasting from internal doc summary of >> changes:

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v6]

2023-07-20 Thread Doug Lea
On Mon, 17 Jul 2023 14:45:57 GMT, Andrey Turbanov wrote: >> Doug Lea has updated the pull request with a new target base due to a merge >> or a rebase. The incremental webrev excludes the unrelated changes brought >> in by the merge/rebase. The pull request contains seven additional commits >>

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v8]

2023-07-20 Thread Doug Lea
> This now uses Thread.isVirtual to distinguish spin vs immediate block cases, > enabling re-introduction of spin control from the previous version, removing > anomalies like this one. Doug Lea has updated the pull request incrementally with one additional commit since the last revision: nit

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v7]

2023-07-19 Thread Doug Lea
> This now uses Thread.isVirtual to distinguish spin vs immediate block cases, > enabling re-introduction of spin control from the previous version, removing > anomalies like this one. Doug Lea has updated the pull request with a new target base due to a merge or a rebase. The incremental webre

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v6]

2023-07-17 Thread Andrey Turbanov
On Thu, 13 Jul 2023 19:21:01 GMT, Doug Lea wrote: >> This now uses Thread.isVirtual to distinguish spin vs immediate block cases, >> enabling re-introduction of spin control from the previous version, removing >> anomalies like this one. > > Doug Lea has updated the pull request with a new targ

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v5]

2023-07-13 Thread Viktor Klang
On Fri, 30 Jun 2023 19:38:19 GMT, Doug Lea wrote: >> This now uses Thread.isVirtual to distinguish spin vs immediate block cases, >> enabling re-introduction of spin control from the previous version, removing >> anomalies like this one. > > Doug Lea has updated the pull request incrementally w

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v6]

2023-07-13 Thread Viktor Klang
On Thu, 13 Jul 2023 19:21:01 GMT, Doug Lea wrote: >> This now uses Thread.isVirtual to distinguish spin vs immediate block cases, >> enabling re-introduction of spin control from the previous version, removing >> anomalies like this one. > > Doug Lea has updated the pull request with a new targ

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v6]

2023-07-13 Thread Doug Lea
> This now uses Thread.isVirtual to distinguish spin vs immediate block cases, > enabling re-introduction of spin control from the previous version, removing > anomalies like this one. Doug Lea has updated the pull request with a new target base due to a merge or a rebase. The incremental webre

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v5]

2023-06-30 Thread Doug Lea
> This now uses Thread.isVirtual to distinguish spin vs immediate block cases, > enabling re-introduction of spin control from the previous version, removing > anomalies like this one. Doug Lea has updated the pull request incrementally with one additional commit since the last revision: Fix

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v3]

2023-06-30 Thread Doug Lea
On Fri, 30 Jun 2023 13:00:27 GMT, Doug Lea wrote: >> src/java.base/share/classes/java/util/concurrent/LinkedTransferQueue.java >> line 115: >> >>> 113: * indicating whether to act as some form of offer, put, poll, >>> 114: * take, or transfer (each possibly with timeout), as described

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v4]

2023-06-30 Thread Doug Lea
> This now uses Thread.isVirtual to distinguish spin vs immediate block cases, > enabling re-introduction of spin control from the previous version, removing > anomalies like this one. Doug Lea has updated the pull request with a new target base due to a merge or a rebase. The incremental webre

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v3]

2023-06-30 Thread Doug Lea
On Fri, 30 Jun 2023 12:54:37 GMT, Viktor Klang wrote: >> Doug Lea has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Overhaul LTQ and SQ to use common blocking and matching mechanics > > src/java.base/share/classes/java/util/concurrent/Link

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v3]

2023-06-30 Thread Viktor Klang
On Thu, 29 Jun 2023 22:53:10 GMT, Doug Lea wrote: >> This now uses Thread.isVirtual to distinguish spin vs immediate block cases, >> enabling re-introduction of spin control from the previous version, removing >> anomalies like this one. > > Doug Lea has updated the pull request incrementally w

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v3]

2023-06-29 Thread Doug Lea
> This now uses Thread.isVirtual to distinguish spin vs immediate block cases, > enabling re-introduction of spin control from the previous version, removing > anomalies like this one. Doug Lea has updated the pull request incrementally with one additional commit since the last revision: Ove

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v2]

2023-06-29 Thread Doug Lea
> This now uses Thread.isVirtual to distinguish spin vs immediate block cases, > enabling re-introduction of spin control from the previous version, removing > anomalies like this one. Doug Lea has updated the pull request with a new target base due to a merge or a rebase. The incremental webre

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll()

2023-06-13 Thread Andrey Turbanov
On Mon, 5 Jun 2023 18:52:00 GMT, Doug Lea wrote: > This now uses Thread.isVirtual to distinguish spin vs immediate block cases, > enabling re-introduction of spin control from the previous version, removing > anomalies like this one. src/java.base/share/classes/java/util/concurrent/LinkedTrans

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll()

2023-06-07 Thread Viktor Klang
On Mon, 5 Jun 2023 18:52:00 GMT, Doug Lea wrote: > This now uses Thread.isVirtual to distinguish spin vs immediate block cases, > enabling re-introduction of spin control from the previous version, removing > anomalies like this one. @DougLea @AlanBateman I had a look as well, didn't find anyt

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll()

2023-06-06 Thread Andrey Turbanov
On Mon, 5 Jun 2023 18:52:00 GMT, Doug Lea wrote: > This now uses Thread.isVirtual to distinguish spin vs immediate block cases, > enabling re-introduction of spin control from the previous version, removing > anomalies like this one. src/java.base/share/classes/java/util/concurrent/LinkedTrans

Re: RFR: 8301341: LinkedTransferQueue does not respect timeout for poll()

2023-06-06 Thread Alan Bateman
On Mon, 5 Jun 2023 18:52:00 GMT, Doug Lea wrote: > This now uses Thread.isVirtual to distinguish spin vs immediate block cases, > enabling re-introduction of spin control from the previous version, removing > anomalies like this one. This looks okay to me, it was a bit easier than I expected.

RFR: 8301341: LinkedTransferQueue does not respect timeout for poll()

2023-06-05 Thread Doug Lea
This now uses Thread.isVirtual to distinguish spin vs immediate block cases, enabling re-introduction of spin control from the previous version, removing anomalies like this one. - Commit messages: - Use Thread.isVirtual to distinguish spin vs immediate block cases Changes: https: