morningman commented on a change in pull request #3051: Support sharding 
tablet_map_lock into more small map locks to make good performance for tablet 
manage task
URL: https://github.com/apache/incubator-doris/pull/3051#discussion_r389239500
 
 

 ##########
 File path: be/src/olap/tablet_manager.h
 ##########
 @@ -190,8 +192,12 @@ class TabletManager {
     typedef std::unordered_map<int64_t, TableInstances> tablet_map_t;
 
     // Protect _tablet_map, _partition_tablet_map, _shutdown_tablets
-    RWMutex _tablet_map_lock;
-    tablet_map_t _tablet_map;
+    int32_t _tablet_map_lock_shard_size;
+    RWMutex *_tablet_map_lock_array;
+    tablet_map_t *_tablet_map_array;
+
+    RWMutex _partition_tablet_map_lock;
+    RWMutex _shutdown_tablets_lock;
 
 Review comment:
   And comment of these 2 locks: `_partition_tablet_map_lock` and 
`_shutdown_tablets_lock`.
   Especially notice the lock order of these locks, to avoid dead lock.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to