At the cost of some nil checks, we don't have to have an interface, defend against
subtle bugs with nils in non-nil interfaces, an empty implementation, etc.
Also, the tsm1 engine is losing the WAL anyway.
Because the WAL relies on the tsm1.Value type, we move that into its own
tsm1/value package and set up some aliases forwarding them into tsm1. This
also required adding some methods and changing consumers to avoid the
unexported fields. I imagine this step will be useful one day when we make
the write path more efficient with respect to consuming points.
This commit additionally fixes some issues with generation. The iterator.tmpldata
and generation for array_cursor_* were removed accidentally when removing
iterators, making those generated files stale. Restore that and regenerate.
No change in functionality.
For an operation that looks up a task or a run, when that operation
fails, only set the status to 404 if that operation explicitly returns
ErrTaskNotFound or ErrRunNotFound.
It's possible that the operation could fail for a reason other than the
ID being invalid: for example, if there was an IO error preventing the
lookup from succeeding.
Harden that behavior with tests for the task handler.
Closes#11589.
* wip: introduce connected async component test
* test(query-builder): mock findBuckets
* test(ui): add ability to pass arbitrary state to renderWithRedux
* test(ui/queryBuilder): click bucket and tag
* test(ui/queryBuilder): use regex matchers to query all
* test(ui/queryBuilder): it can click a tag value
* chore: change id to ID
* chore: move QueryBuilderFetcher
* test(ui/queryBuilder): try waiting for dropdown-items
* test(ui/queryBuilder): move initial state out of beforeEach
* test(ui/queryBuilder): get by bucket name
* wip
* test: put back to default
* test: remove await
Looks like the last reference to it was deleted in March 2018
(df7a660fb3).
Prior to that the last use was switched to go-cmp, which we've more
or-less standardized on, at this point.
In the case of caching TSI bitmaps belonging to immutable .tsi files,
the underlying bitset data can be mmapped. It is possible, though rare,
for this data to be unmapped (e.g., via a TSI compaction) but for the
cached bitmap to be subsequently read. This leads to a segfault.
This only happens when copy-on-write is set to true on the roaring
bitmap, because in that case only the internal pointers are cloned.
This change will reduce the TSI cache performance by around 10%, which I
have deemed to account for only a few microseconds typically.