No description
Find a file
tgruben dd139cd48d
[FB-1398] Mainline etcd (#2049)
* use mainline etcd-io dependencies, not forks

this commit does lots of things around clustering with goal of increasing stability.

- upgrades from molecula/etcd to go.etcd.io/etcd@v3.5.4
- upgrades from seebs/bbolt to go.etcd.io/bbolt@v1.3.6
- update tests to use unix sockets for etcd cluster communication
    - this is what etcd uses for a lot of internal testing, so if their devs think
      it's a valid test, we can probably accept that
- cleanup etcd node-watcher shutdown process

Co-authored-by: tgruben <tgruben@gmail.com>

* moved random query to another repo

it had weird dependency issues with upgrading to mainline etcd bc of the vegeta dep
so we removed it bc no one really uses it anyway

we got this error message:
```
github.com/molecula/featurebase/v3/cmd/random-query imports
	github.com/tsenart/vegeta/v12/lib tested by
	github.com/tsenart/vegeta/v12/lib.test imports
	github.com/streadway/quantile tested by
	github.com/streadway/quantile.test imports
	.: "." is relative, but relative import paths are not supported in module mode
```

* add cleanup to EtcdUnixSocket test util

Co-authored-by: reesporte <reesedporter@gmail.com>
2022-05-11 09:49:48 -05:00
.github remove references to CONTRIBUTING and CHANGELOG 2021-11-19 11:22:15 -06:00
.gitlab Tremor delete test scripts (#1974) 2022-05-05 10:25:35 -05:00
api/client Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
authn setup auth cluster infra 2022-04-14 09:37:52 -05:00
authz Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
boltdb use free id bucket to re-use ids 2022-02-28 15:56:58 -06:00
client Change Ttl to TTL (#2038) 2022-04-27 11:20:39 -05:00
cmd [FB-1398] Mainline etcd (#2049) 2022-05-11 09:49:48 -05:00
ctl expose --header-timeout option on featurebase backup 2022-04-29 16:37:40 -05:00
debugstats add copyright notice back in 2021-12-10 11:01:04 -06:00
disco implement ability to update TTL on time fields 2022-05-04 11:04:38 -05:00
encoding/proto implement ability to update TTL on time fields 2022-05-04 11:04:38 -05:00
etcd [FB-1398] Mainline etcd (#2049) 2022-05-11 09:49:48 -05:00
gcnotify Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
generator add copyright notice back in 2021-12-10 11:01:04 -06:00
gopsutil Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
hash Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
ingest Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
ingest_testdata allow ingest API delete to work at all, add test for it 2022-04-01 09:48:51 -05:00
install remove trailing spaces en masse (#2024) 2022-04-18 09:31:35 -05:00
internal expose --header-timeout option on featurebase backup 2022-04-29 16:37:40 -05:00
lattice remove trailing spaces en masse (#2024) 2022-04-18 09:31:35 -05:00
logger Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
lru fix some staticcheck issues 2021-12-03 09:31:45 -06:00
mock Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
net add copyright notice back in 2021-12-10 11:01:04 -06:00
pb implement ability to update TTL on time fields 2022-05-04 11:04:38 -05:00
pg remove trailing spaces en masse (#2024) 2022-04-18 09:31:35 -05:00
pql FB-1387: Grafana Empty Variable Select (#2032) 2022-04-26 12:39:28 -05:00
prometheus Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
proto Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
qa FB-1253: Fixes for scheduled test (#2048) 2022-05-06 12:00:04 -05:00
rbf Improve RBF documentation (#2034) 2022-04-25 09:13:54 -05:00
roaring Mitigate 1 instance of potential integer overflow 2022-04-19 11:06:25 -04:00
scripts remove trailing spaces en masse (#2024) 2022-04-18 09:31:35 -05:00
server [FB-1398] Mainline etcd (#2049) 2022-05-11 09:49:48 -05:00
shardwidth Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
short_txkey remove a bunch of commented print statements and unecessary prints 2022-01-11 10:42:44 -06:00
sql gracefully handle invalid indexes in joins 2022-04-13 11:44:58 -05:00
sql2 Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
statik Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
stats only set bits after the holder is completely setup 2022-02-25 15:02:24 -06:00
statsd Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
storage remove a bunch of roaring backend stuff 2022-02-02 20:56:18 -06:00
syswrap add copyright notice back in 2021-12-10 11:01:04 -06:00
task implement a task pool 2022-02-14 09:56:19 -06:00
test [FB-1398] Mainline etcd (#2049) 2022-05-11 09:49:48 -05:00
testdata remove trailing spaces en masse (#2024) 2022-04-18 09:31:35 -05:00
testhook Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
toml add copyright notice back in 2021-12-10 11:01:04 -06:00
topology add PartitionToNodeAssignment as a new option 2022-04-27 17:21:47 -05:00
tracing Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
txkey remove a bunch of commented print statements and unecessary prints 2022-01-11 10:42:44 -06:00
vprint add copyright notice back in 2021-12-10 11:01:04 -06:00
.dockerignore Add new Docker build process and continuous delivery 2021-02-26 14:34:14 -06:00
.gitignore remove trailing spaces en masse (#2024) 2022-04-18 09:31:35 -05:00
.golangci.yml fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
api.go implement ability to update TTL on time fields 2022-05-04 11:04:38 -05:00
api_test.go change assignment of partitions to nodes 2022-04-27 17:21:47 -05:00
apimethod_string.go FB-1188 - Added TTL field option 2022-02-25 11:39:31 -06:00
audit.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
audit_internal_test.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
audit_test.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
broadcast.go implement ability to update TTL on time fields 2022-05-04 11:04:38 -05:00
bsi.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
bsi_test.go add copyright notice back in 2021-12-10 11:01:04 -06:00
cache.go Periodically invalidate rank cache during bulk add 2022-02-15 08:25:45 -07:00
cache_test.go Periodically invalidate rank cache during bulk add 2022-02-15 08:25:45 -07:00
catcher.go create BitmapRewriter/ApplyRewriter, parallel to BitmapFilter 2022-04-12 12:24:22 -05:00
cluster.go implement ability to update TTL on time fields 2022-05-04 11:04:38 -05:00
cluster_internal_test.go add PartitionToNodeAssignment as a new option 2022-04-27 17:21:47 -05:00
cmd.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
const_amd64.go add copyright notice back in 2021-12-10 11:01:04 -06:00
const_other.go add copyright notice back in 2021-12-10 11:01:04 -06:00
dbshard.go remove unused stuff and fix a bunch of random staticcheck issues 2022-02-07 15:10:10 -06:00
dbshard_internal_test.go comment cleanup and removed long test 2022-02-25 16:40:04 -06:00
dbshard_test.go remove http subpackage and bring implementations into core 2022-02-03 21:04:04 -06:00
delete_test.go Add regression test for FB-1281 2022-03-24 15:20:57 -06:00
diagnostics.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
diagnostics_internal_test.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
doc.go add copyright notice back in 2021-12-10 11:01:04 -06:00
Dockerfile remove references to LICENSE and checks for it in source files 2021-11-19 10:38:06 -06:00
Dockerfile-clustertests remove trailing spaces en masse (#2024) 2022-04-18 09:31:35 -05:00
Dockerfile-clustertests-client remove trailing spaces en masse (#2024) 2022-04-18 09:31:35 -05:00
event.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
executor.go convert executor.shutdown to channel to avoid data race 2022-04-28 14:09:32 -05:00
executor_internal_test.go track closing status for index/field/view, shut down cache flush early 2022-03-18 14:41:44 -05:00
executor_test.go dont default to standard view for some time range queries 2022-05-04 11:04:38 -05:00
field.go dont default to standard view for some time range queries 2022-05-04 11:04:38 -05:00
field_internal_test.go dont default to standard view for some time range queries 2022-05-04 11:04:38 -05:00
field_test.go Change Ttl to TTL (#2038) 2022-04-27 11:20:39 -05:00
filesystem.go add copyright notice back in 2021-12-10 11:01:04 -06:00
fragment.go add PartitionToNodeAssignment as a new option 2022-04-27 17:21:47 -05:00
fragment_internal_test.go track closing status for index/field/view, shut down cache flush early 2022-03-18 14:41:44 -05:00
gc.go add copyright notice back in 2021-12-10 11:01:04 -06:00
gid.go database per shard, HolderConfig, rbf bit-wise import speedups. 2020-09-04 13:00:33 -05:00
go.mod [FB-1398] Mainline etcd (#2049) 2022-05-11 09:49:48 -05:00
go.sum [FB-1398] Mainline etcd (#2049) 2022-05-11 09:49:48 -05:00
hack.go Change Ttl to TTL (#2038) 2022-04-27 11:20:39 -05:00
handler.go remove http subpackage and bring implementations into core 2022-02-03 21:04:04 -06:00
holder.go add PartitionToNodeAssignment as a new option 2022-04-27 17:21:47 -05:00
holder_internal_test.go address reviewer's comments 2022-03-10 09:36:18 -06:00
holder_test.go change assignment of partitions to nodes 2022-04-27 17:21:47 -05:00
http_handler.go implement ability to update TTL on time fields 2022-05-04 11:04:38 -05:00
http_handler_internal_test.go update handler tests 2022-04-11 10:42:14 -05:00
http_handler_test.go implement ability to update TTL on time fields 2022-05-04 11:04:38 -05:00
http_translator.go remove http subpackage and bring implementations into core 2022-02-03 21:04:04 -06:00
http_translator_test.go remove http subpackage and bring implementations into core 2022-02-03 21:04:04 -06:00
idalloc.go add copyright notice back in 2021-12-10 11:01:04 -06:00
idalloc_test.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
index.go implement ability to update TTL on time fields 2022-05-04 11:04:38 -05:00
index_internal_test.go remove unused stuff and fix a bunch of random staticcheck issues 2022-02-07 15:10:10 -06:00
index_test.go track closing status for index/field/view, shut down cache flush early 2022-03-18 14:41:44 -05:00
ingest_test.go allow ingest API delete to work at all, add test for it 2022-04-01 09:48:51 -05:00
internal_client.go Change Ttl to TTL (#2038) 2022-04-27 11:20:39 -05:00
internal_client_test.go Change Ttl to TTL (#2038) 2022-04-27 11:20:39 -05:00
iterator.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
iterator_internal_test.go add copyright notice back in 2021-12-10 11:01:04 -06:00
license.exceptions update license header check exceptions 2021-05-14 10:45:46 -04:00
like.go add copyright notice back in 2021-12-10 11:01:04 -06:00
like_test.go add copyright notice back in 2021-12-10 11:01:04 -06:00
main_test.go listen on localhost:0 instead of :0 2022-03-18 13:38:30 -05:00
Makefile remove trailing spaces en masse (#2024) 2022-04-18 09:31:35 -05:00
metrics.go add copyright notice back in 2021-12-10 11:01:04 -06:00
nfpm.yaml FB-904: Add deb/rpm packaging of FeatureBase binary 2021-11-04 10:32:59 -06:00
NOTICE add config files for release 2021-11-19 01:26:18 +03:00
pilosa.go test multiple field creations at once on a cluster 2022-03-04 10:21:18 -06:00
pilosa_internal_test.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
pilosa_test.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
planner.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
planner_test.go track closing status for index/field/view, shut down cache flush early 2022-03-18 14:41:44 -05:00
pprof.go remove a bunch of roaring backend stuff 2022-02-02 20:56:18 -06:00
rbf.go create BitmapRewriter/ApplyRewriter, parallel to BitmapFilter 2022-04-12 12:24:22 -05:00
README.md add coverage, code quality badges 2022-03-30 10:07:23 -05:00
row.go remove string keys on delete to allow for reuse 2022-02-25 16:23:54 -06:00
row_test.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
serializer.go add copyright notice back in 2021-12-10 11:01:04 -06:00
server.go implement ability to update TTL on time fields 2022-05-04 11:04:38 -05:00
server_internal_test.go improve Server WaitGroup concurrent usage 2022-02-25 15:02:21 -06:00
server_test.go Change Ttl to TTL (#2038) 2022-04-27 11:20:39 -05:00
stattx.go create BitmapRewriter/ApplyRewriter, parallel to BitmapFilter 2022-04-12 12:24:22 -05:00
time.go fix viewTimePart to account for bad strings 2022-03-25 11:27:39 -05:00
time_internal_test.go fix viewTimePart to account for bad strings 2022-03-25 11:27:39 -05:00
tracker.go add copyright notice back in 2021-12-10 11:01:04 -06:00
tracker_test.go add copyright notice back in 2021-12-10 11:01:04 -06:00
transaction.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
transaction_test.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
translate.go remove string keys on delete to allow for reuse 2022-02-25 16:23:54 -06:00
translator_test.go remove http subpackage and bring implementations into core 2022-02-03 21:04:04 -06:00
tx.go create BitmapRewriter/ApplyRewriter, parallel to BitmapFilter 2022-04-12 12:24:22 -05:00
tx_internal_test.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
tx_test.go remove string keys on delete to allow for reuse 2022-02-25 16:23:54 -06:00
txfactory.go . 2022-03-11 06:20:07 -06:00
txfactory_internal_test.go remove a bunch of roaring backend stuff 2022-02-02 20:56:18 -06:00
util.go [FB-1398] Mainline etcd (#2049) 2022-05-11 09:49:48 -05:00
util_test.go add /internal/disk-usage endpoint for testing 2022-03-14 15:23:15 -05:00
utils_internal_test.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
version.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
view.go track closing status for index/field/view, shut down cache flush early 2022-03-18 14:41:44 -05:00
view_internal_test.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00

FeatureBase, a distributed bitmap index

Coverage SecurityRating Quality Gate Status

See our internal documentation, which includes all external documentation, plus many internal-only pages, listed under the "Internal" heading in the main navigation bar.

Follow along with the Sample Project to get a better understanding of FeatureBase's capabilities.