Sailesh Mukil has posted comments on this change.

Change subject: IMPALA-4456: Change query_exec_state_lock_ to a reader-writer 
lock
......................................................................


Patch Set 3:

> Once concern I have is about fairness. It's pretty critical that
 > writers don't get starved out of this lock because that prevents
 > queries from starting or finishing.
 > 
 > If there's enough demand for the reader-side of the lock such that
 > there's really no period at which the lock is free for writers, I
 > can see a starvation situation happening.
 > 
 > This doesn't happen right now because all once the lock is
 > released, there is always a period (however small) where the lock
 > is available for taking. You might need to think about an external
 > mechanism to prevent new readers from taking the lock when a writer
 > is waiting. That would make things more complicated, so let me know
 > if you have any better ideas.

Kudu has a RW lock that has a 'prefer writer' option.
https://github.com/apache/kudu/blob/0ce5ba594412de4365625485ea7b3c1ee21bf28d/src/kudu/util/rw_mutex.cc#L63

This will however starve readers once there are a steady stream of writers. But 
I don't think that should be a big issue because we will have writers only 
while registering or unregistering a query. So the no. writers on this lock is 
2x no. of queries on that coordinator, which is much less than the number of 
readers.

-- 
To view, visit http://gerrit.cloudera.org:8080/5021
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I790a95e7179f07aa7ba188d5422c5e054353ba0b
Gerrit-PatchSet: 3
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-Owner: Sailesh Mukil <[email protected]>
Gerrit-Reviewer: Henry Robinson <[email protected]>
Gerrit-Reviewer: Sailesh Mukil <[email protected]>
Gerrit-HasComments: No

Reply via email to