You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a regression after an upgrade from: b429452 (from v0.14.2) to: 99477fc (from v0.15.12) Update: This bug appears to have been present for a very long time.
The stack trace indicates that the id in the series is nil. Judging purely from the comment block above the id field:
Hm @justinjc I think this actually might be a race case where a series is evicted from the wired list and it is also evicted from the shard map and therefore s.id is nil on the series.
Could you perhaps try adding a closed bool to the series and checking that at the beginning of "OnEvictedFromWiredList" before checking against the ID?
If that works we may want to create this concept of open or closed, and then set it to false on "Reset(...)" and then set it true on "Close()".
This will help us discern whether it's a valid use of the series or if it's simply not in an open state and used outside of the shard lock map (like the case here where the series is being used outside of the RLock/RUnlock being held of the shard map).
Quick update: it appears that this bug is present in older versions too (pre-v0.15.x). We seemed to have encountered this in clusters with old builds, but for some reason it procs significantly more frequently with new builds.
I've attempted to repro this with this test, which continuously writes and flushes series so that the series gets evicted (closed), nil-ing the ID. At the same time, I fetch IDs in a loop to continuously evict series from the wired list. The test does repro this issue, albeit very inconsistently.
Stack trace:
This is a regression after an upgrade from:b429452 (from v0.14.2)to:99477fc (from v0.15.12)Update: This bug appears to have been present for a very long time.
The stack trace indicates that the
id
in the series is nil. Judging purely from the comment block above theid
field:m3/src/dbnode/storage/series/series.go
Lines 64 to 68 in 99477fc
I'm guessing that this might be related to this commit: b4be7b1
cc: @robskillington
The text was updated successfully, but these errors were encountered: