Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(150)

Issue 1434873003: Fix races in txnBuf (Closed)

Created:
5 years, 1 month ago by iannucci
Modified:
5 years, 1 month ago
Reviewers:
dnj, Vadim Sh., estaab
CC:
chromium-reviews, infra-reviews+luci-gae_chromium.org
Base URL:
https://github.com/luci/gae.git@race_tests
Target Ref:
refs/heads/master
Project:
luci-gae
Visibility:
Public.

Description

Fix races in txnBuf Runs clean with `-cpu=2,4 -race` now. It's also a lot clearer to follow the logic now. No more 'siblingLock'. At the time that each recursive transaction starts it locks (in the normal way!). It then keeps a reference to the parent layer with the locks disabled for its internal usage. This refactor makes it so that all (interacting) operations at a given 'layer' in a transaction are mutually exclusive. Previously only nested transactions would be mutually exclusive. R=dnj@chromium.org, estaab@chromium.org, vadimsh@chromium.org BUG= Committed: https://github.com/luci/gae/commit/6a79257cdd6c624326829b679d4b548ef1123942

Patch Set 1 #

Total comments: 11

Patch Set 2 : fix stuff #

Unified diffs Side-by-side diffs Delta from patch set Stats (+270 lines, -238 lines) Patch
M filter/txnBuf/context.go View 2 chunks +5 lines, -4 lines 0 comments Download
M filter/txnBuf/doc.go View 1 1 chunk +12 lines, -2 lines 0 comments Download
M filter/txnBuf/ds.go View 1 chunk +0 lines, -2 lines 0 comments Download
M filter/txnBuf/ds_txn.go View 1 4 chunks +18 lines, -101 lines 0 comments Download
M filter/txnBuf/state.go View 1 7 chunks +232 lines, -123 lines 0 comments Download
M filter/txnBuf/txnbuf_test.go View 1 3 chunks +3 lines, -6 lines 0 comments Download

Depends on Patchset:

Messages

Total messages: 7 (2 generated)
iannucci
5 years, 1 month ago (2015-11-11 06:35:28 UTC) #1
dnj
lgtm w/ comments/nits, agreed that this is cleaner. It's a little weird for the inner ...
5 years, 1 month ago (2015-11-11 16:08:28 UTC) #2
iannucci
ptal https://codereview.chromium.org/1434873003/diff/1/filter/txnBuf/ds_txn.go File filter/txnBuf/ds_txn.go (right): https://codereview.chromium.org/1434873003/diff/1/filter/txnBuf/ds_txn.go#newcode26 filter/txnBuf/ds_txn.go:26: haveLock bool On 2015/11/11 at 16:08:28, dnj wrote: ...
5 years, 1 month ago (2015-11-11 18:06:40 UTC) #3
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1434873003/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1434873003/20001
5 years, 1 month ago (2015-11-11 18:50:40 UTC) #6
commit-bot: I haz the power
5 years, 1 month ago (2015-11-11 18:54:19 UTC) #7
Message was sent while issue was closed.
Committed patchset #2 (id:20001) as
https://github.com/luci/gae/commit/6a79257cdd6c624326829b679d4b548ef1123942

Powered by Google App Engine
This is Rietveld 408576698