Hi all, I prepared a benchmark for ignite reentrant lock, the benchmark updates cache values under the reentrant lock. The benchmark is based on s real case, when user can't use regular cache locks, because they prevent partition map exchange and as result don't allow new nodes join cluster.
Throughput plot without any changes: [image: Inline image 1] the same plot with patched ignite: [image: Inline image 2] On Thu, Jun 1, 2017 at 1:29 AM, Dmitriy Setrakyan <dsetrak...@apache.org> wrote: > Won't it be confusing from a user stand point to have multiple data > structures with the same name? Also, what is the performance impact of this > change? > > D. > > On Wed, May 31, 2017 at 8:23 AM, Semyon Boikov <sboi...@gridgain.com> > wrote: > > > Hi Mikhail, > > > > As far as I remember for some reason we wanted to guarantee that all data > > structures have unique names. But now I don't see why this can be needed > > and it seems we do not need this data structures map at all, if nobody > have > > objection I think you can implement suggested change. > > > > Thanks! > > > > On Wed, May 31, 2017 at 3:04 PM, Mikhail Cherkasov < > > mcherka...@gridgain.com> > > wrote: > > > > > Hi all, > > > > > > All DataStructures are stored in one Map which itself is stored in > > > utilityCache, this makes high contention on DS creation or removing, it > > > requires to acquire Map's lock and manipulation with the Map under the > > > lock. So all threads in cluster should wait for this lock to create or > > > remove DS. > > > > > > I don't see any reason to store all DS in one map, we already have > > > utilityCache and can save DSs directly in utilityCache, to distinguish > DS > > > with other objects in utilityCache I use composite key, the first part > of > > > which is DATA_STRUCTURES_KEY, second one is DS's name, also DS type can > > be > > > added, this will allow us to create different DS with the same name. > > > > > > There is draft implementations, all DSs are stored with unique key in > > > utilityCache: > > > https://github.com/apache/ignite/pull/2046/files > > > > > > May be there's some reason to store all DS in one Map that I missed? > > > Any thoughts? > > > > > > > > > -- > > > Thanks, > > > Mikhail. > > > > > > -- Thanks, Mikhail.