New issue
Advanced search Search tips

Issue 678831 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Jan 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug



Sign in to add a comment

Tail request to Logdog returned empty value

Project Member Reported by chanli@chromium.org, Jan 6 2017

Issue description

Comment 1 by d...@chromium.org, Jan 6 2017

Labels: -Pri-3 Pri-1
Observed: first time after a delay that I make the call, it actually loads! Second+ times it does not. Thinking maybe this is a tail memcache bug, will investigate soon.
Project Member

Comment 3 by bugdroid1@chromium.org, Jan 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/external/github.com/luci/luci-go.git/+/77c4eac9a4bf4c8818dbddcea7b91cba90a20d75

commit 77c4eac9a4bf4c8818dbddcea7b91cba90a20d75
Author: dnj <dnj@chromium.org>
Date: Fri Jan 06 21:01:11 2017

Fix BigTable multi-entry row cached Tail.

When performing a Tail, LogDog has to scan through all of a log's
BigTable rows to identify the last contiguous entry. In order to
optimize this, the BigTable storage implementation caches the last
contiguous tail index in memcache.

BigTable rows are keyed on their LAST log entry index, not their first,
so the cached log index was the last index in the row. If the row
contained multiple log entries, this violated an earlier continuity check,
which was expecting the first index in the row, not the last, to match the
cached index.

We fix this by caching the first index in the row, matching continuity
expectaitons.

BUG= chromium:678831 
TEST=unit,local
  - Added regression unit test, passes now.
  - Use multi-round Tail on `logdog_bigtable_test` before and after,
    verify that it works now.

R=vadimsh@chromium.org

Review-Url: https://codereview.chromium.org/2611253005

[modify] https://crrev.com/77c4eac9a4bf4c8818dbddcea7b91cba90a20d75/logdog/common/storage/bigtable/cache.go
[modify] https://crrev.com/77c4eac9a4bf4c8818dbddcea7b91cba90a20d75/logdog/common/storage/bigtable/logdog_bigtable_test/main.go
[modify] https://crrev.com/77c4eac9a4bf4c8818dbddcea7b91cba90a20d75/logdog/common/storage/bigtable/rowKey.go
[modify] https://crrev.com/77c4eac9a4bf4c8818dbddcea7b91cba90a20d75/logdog/common/storage/bigtable/storage.go
[modify] https://crrev.com/77c4eac9a4bf4c8818dbddcea7b91cba90a20d75/logdog/common/storage/bigtable/storage_test.go

Comment 4 by d...@chromium.org, Jan 6 2017

Owner: d...@chromium.org
Status: Started (was: Untriaged)
This should be fixed once I push a new instance. I'll hopefully get that done by the end of the day, but I have some other patches that I have to land first.

Comment 5 by d...@chromium.org, Jan 7 2017

Status: Verified (was: Started)
Uploaded new version, verified that it is working.

Sign in to add a comment