The proposal is proposing using ONE single dlock to synchronize all CMS CRUD operations, that means, in a given time, only one CRUD operation in CMS is allowed in the entire cluster, this seems a bit too harsh.
Another way is to use a dlock per ID to only synchronize CRUD operation on the same ID element. That way, we allow more concurrency. I am just not sure what's the cost of creating a dlock. Is the the cost of creating a dlock per ID warrants the performance gain? Comment/Suggestions? Jinmei ________________________________ From: Jinmei Liao <jil...@vmware.com> Sent: Tuesday, May 26, 2020 1:02 PM To: dev@geode.apache.org <dev@geode.apache.org> Subject: [PROPOSAL] make Cluster Management Service CRUD operations thread safe Hi, Geode Community, Currently, the CMS CRUD operations are not thread safe, if one call tries to create a region, and another call tries to delete the same region, if timing is off, we could end up with inconsistent state (what's in cluster config and what's actually on the server). So we should make these operations thread safe. Here is the proposal to try to achieve it: https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcwiki.apache.org%2Fconfluence%2Fdisplay%2FGEODE%2FMake%2BCluster%2BManagement%2BService%2528CMS%2529%2BThread%2BSafe&data=02%7C01%7Cjiliao%40vmware.com%7C06dd93ddb8f947b017cd08d80325d7cb%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C0%7C0%7C637262808357520050&sdata=l0fbTN%2Fb1QK%2F8fnNHYbFQ6CtywAgKZpTE0Jv33ab%2BUk%3D&reserved=0 Comments/suggestions welcome. Jinmei