No description
Find a file
Seebs d4b06d077e Import/ImportValue API rework and improvements
Underlying goal: Don't use the http client to send messages back to the
local host. Also, when sending data to other nodes, don't collate it
from an ImportRequest into a completely different format, then immediately
collate that back into an ImportRequest. This does require changing
the logic over in ctl/import to make it create an ImportRequest.

Also, add additional testing to make sure we're actually trying anything
at all with several combinations (such as submitting import requests
which don't match the configuration of index or field), and improve
test coverage for that.

This introduces the ability to tell an http/client InternalClient about
a specific API that it should use for local queries where applicable.
That's not implemented outside of the import stuff, but should probably
be applied eventually to other things that are trying to talk to many
nodes one of which may be the local node. That behavior is contingent
on passing in a Qcx, because it is implicitly tied to an existing
execution context, and it can't assume that it can create a new one,
because that could deadlock.
2021-11-05 13:06:38 -05:00
.artifactory Added in various CI files 2021-10-08 12:16:03 -07:00
.circleci added the linter back to circle 2021-10-29 13:50:41 -05:00
.cloudbuild Added in various CI files 2021-10-08 12:16:03 -07:00
.github FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
.gitlab FB-904: Add deb/rpm packaging of FeatureBase binary 2021-11-04 10:32:59 -06:00
api/client FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
boltdb kill off a ton more fsyncs 2021-10-01 10:45:08 -05:00
client fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
cmd fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
ctl Import/ImportValue API rework and improvements 2021-11-05 13:06:38 -05:00
debugstats introduce storage.Config 2021-01-20 22:05:38 -06:00
disco replace roaring.Bitmap by [][]byte 2021-05-10 18:45:23 +02:00
encoding/proto code review cleanup 2021-09-27 12:05:57 -05:00
etcd reduce etcd fsyncs during testing 2021-10-01 10:45:08 -05:00
gcnotify FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
generator Address TODOs in roaring tests 2020-05-21 13:28:54 -05:00
gopsutil FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
hash FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
http Import/ImportValue API rework and improvements 2021-11-05 13:06:38 -05:00
ingest Improvements and benchmarks for ingest field operation sorting 2021-11-05 13:06:38 -05:00
ingest_testdata ingest and ingest/codec testing work 2021-08-19 09:50:59 -05:00
internal Import/ImportValue API rework and improvements 2021-11-05 13:06:38 -05:00
lattice remove inline styling 2021-11-04 12:14:01 -05:00
logger FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
lru so much lint 2019-04-16 12:07:18 -05:00
mock FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
net Address PR comments 2021-03-24 18:09:01 +01:00
pb introduce protobuf types for ingest ops 2021-09-27 12:05:57 -05:00
pg address ben's comments 2021-10-12 11:21:14 -05:00
pql FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
prometheus FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
proto FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
rbf remove @ from yaml 2021-11-03 08:48:57 -05:00
roaring test ToRows 2021-11-02 12:14:57 -05:00
scripts Fix benchmark file naming 2021-05-21 14:51:08 -06:00
server Import/ImportValue API rework and improvements 2021-11-05 13:06:38 -05:00
shardwidth cleanup gofmt 2021-10-29 13:14:27 -05:00
short_txkey pilosa: only open views with data 2020-12-19 00:03:31 +00:00
sql . 2021-11-03 09:37:52 -05:00
sql2 fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
statik FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
stats FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
statsd FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
storage Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
syswrap fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
test kill off a ton more fsyncs 2021-10-01 10:45:08 -05:00
testdata Test cases for Store(Distinct) 2020-09-14 14:15:29 -05:00
testhook cleanup gofmt 2021-10-29 13:14:27 -05:00
toml Add license headers to files missing them and CI check to verify they are present. Fixes #1633 2019-04-12 11:30:41 -05:00
topology FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
tracing fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
txkey pilosa: only open views with data 2020-12-19 00:03:31 +00:00
vprint Move vprint to separate pakage 2021-03-29 14:29:19 +02:00
.dockerignore Add new Docker build process and continuous delivery 2021-02-26 14:34:14 -06:00
.gitignore add featurebase to .gitignore 2021-10-26 09:15:44 -05:00
.golangci.yml fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
api.go Import/ImportValue API rework and improvements 2021-11-05 13:06:38 -05:00
api_test.go Import/ImportValue API rework and improvements 2021-11-05 13:06:38 -05:00
apimethod_string.go remove attributes 2021-05-14 10:28:08 -04:00
audit.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
audit_internal_test.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
audit_test.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
broadcast.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
bsi.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
bsi_test.go introduce "fields" directory between index and field 2021-03-05 16:56:44 -06:00
cache.go fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
cache_test.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
catcher.go Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
CHANGELOG.md Fix typo 2019-09-17 16:01:21 -05:00
client.go Import/ImportValue API rework and improvements 2021-11-05 13:06:38 -05:00
cluster.go fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
cluster_internal_test.go remove @ from yaml 2021-11-03 08:48:57 -05:00
cmd.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
const_amd64.go fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
const_other.go remove lmdb as a Tx backend 2020-12-04 23:17:59 +00:00
CONTRIBUTING.md simplify contributing instructions by removing weird upstream thing 2019-05-01 17:37:52 -05:00
cover-everything.sh actually get coverage on every single package and subpackage (slow) 2021-11-01 16:49:27 -05:00
dbshard.go Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
dbshard_internal_test.go Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
dbshard_test.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
delete_test.go Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
diagnostics.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
diagnostics_internal_test.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
doc.go Apply Apache License 2.0 2017-04-28 14:22:03 -05:00
docker-compose-3.yml More rename to work with backup and cluster tests 2021-09-22 15:41:17 -05:00
Dockerfile More rename to work with backup and cluster tests 2021-09-22 15:41:17 -05:00
Dockerfile-clustertests Test paused node picks up once cluster state is back to normal 2021-09-30 20:48:01 +03:00
Dockerfile.pilosa Remove prints 2021-09-22 16:02:02 -05:00
Dockerfile.runner Rename docker builds to featurebase 2021-09-22 15:41:00 -05:00
event.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
executor.go fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
executor_internal_test.go kill off a ton more fsyncs 2021-10-01 10:45:08 -05:00
executor_test.go Import/ImportValue API rework and improvements 2021-11-05 13:06:38 -05:00
field.go Import/ImportValue API rework and improvements 2021-11-05 13:06:38 -05:00
field_internal_test.go kill off a ton more fsyncs 2021-10-01 10:45:08 -05:00
field_test.go kill off a ton more fsyncs 2021-10-01 10:45:08 -05:00
filesystem.go Add missing file 2020-08-31 09:02:46 -05:00
fragment.go fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
fragment_internal_test.go bug with shadow correction 2021-10-30 10:44:23 -05:00
gc.go fix some lint warnings raised in VS-Code 2019-04-17 18:10:05 -05:00
gendebug_test.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
generation.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
generation_debug.go testhook: leak auditing infrastructure 2020-08-24 11:26:39 -05:00
generation_nodebug.go fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
generation_test.go Tx integration milestone 2020-07-27 19:29:46 -04:00
gid.go database per shard, HolderConfig, rbf bit-wise import speedups. 2020-09-04 13:00:33 -05:00
go.mod go mod tidy! 2021-11-01 19:24:18 -05:00
go.sum go mod tidy! 2021-11-01 19:24:18 -05:00
hack.go fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
handler.go Import/ImportValue API rework and improvements 2021-11-05 13:06:38 -05:00
holder.go fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
holder_internal_test.go Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
holder_test.go kill off a ton more fsyncs 2021-10-01 10:45:08 -05:00
idalloc.go kill off a ton more fsyncs 2021-10-01 10:45:08 -05:00
idalloc_test.go reduce etcd fsyncs during testing 2021-10-01 10:45:08 -05:00
index.go Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
index_internal_test.go kill off a ton more fsyncs 2021-10-01 10:45:08 -05:00
index_test.go Add comment as to why we are using os.Exit instead of panic 2021-10-14 18:07:02 +03:00
ingest_test.go ingest cluster support 2021-09-27 12:05:57 -05:00
iterator.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
iterator_internal_test.go rename internal_tests. fix license header 2018-07-04 10:59:08 -05:00
LICENSE Apply Apache License 2.0 2017-04-28 14:22:03 -05:00
license.exceptions update license header check exceptions 2021-05-14 10:45:46 -04:00
like.go execute like queries on the primary's key translation database 2021-05-27 14:45:10 -04:00
like_test.go execute like queries on the primary's key translation database 2021-05-27 14:45:10 -04:00
main_test.go bug with shadow correction 2021-10-30 10:44:23 -05:00
Makefile FB-904: Add deb/rpm packaging of FeatureBase binary 2021-11-04 10:32:59 -06:00
metrics.go remove attributes 2021-05-14 10:28:08 -04:00
mmap_test.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
nfpm.yaml FB-904: Add deb/rpm packaging of FeatureBase binary 2021-11-04 10:32:59 -06:00
NOTES rename slice to shard 2018-06-28 14:07:07 -05:00
NOTICE Remove a few more enterprise references 2020-06-26 15:57:21 -05:00
pilosa.go Update pilosa.go 2021-10-08 13:46:17 -07:00
pilosa_internal_test.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
pilosa_test.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
planner.go CORE-809: Aggregate COUNT() with INNER JOIN 2021-10-07 14:20:07 -06:00
planner_test.go CORE-809: Aggregate COUNT() with INNER JOIN 2021-10-07 14:20:07 -06:00
pprof.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
rbf.go fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
README.md meaningless commit 2021-10-29 11:56:09 -05:00
row.go fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
row_test.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
rrtx.go Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
rrtx_internal_test.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
serializer.go add a gob-encoding Serializer implementation for tests 2021-02-23 10:09:55 -06:00
server.go Import/ImportValue API rework and improvements 2021-11-05 13:06:38 -05:00
server_internal_test.go kill off a ton more fsyncs 2021-10-01 10:45:08 -05:00
snapshotqueue.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
stattx.go Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
testBackupRestore.sh partial backup/restore 2021-10-08 10:50:52 -05:00
time.go fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
time_internal_test.go avoid allocations in viewsByTime 2021-08-18 13:45:36 -05:00
tournament.sh remove instances of os.Getenv("PILOSA_TXSRC") 2021-01-21 21:18:46 -06:00
tracker.go ingest and ingest/codec testing work 2021-08-19 09:50:59 -05:00
tracker_test.go Update tests 2021-01-20 10:48:35 -06:00
transaction.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
transaction_test.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
translate.go kill off a ton more fsyncs 2021-10-01 10:45:08 -05:00
translator_test.go fix govet and gofmt errors in existing code 2021-10-29 13:14:27 -05:00
tx.go Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
tx_internal_test.go FeatureBase Renaming: changing go.mod module name for featurebase 2021-07-19 09:20:30 -07:00
tx_test.go make import correctly reflect that it needs a single shard always 2021-08-18 13:45:36 -05:00
txfactory.go Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
txfactory_internal_test.go Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
util.go Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
util_test.go meaningless commit to kick off sonarcloud with new rules 2021-10-25 15:24:55 -05:00
utils_internal_test.go Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
version.go FeatureBase renaming: version info in server log 2021-07-12 12:25:43 -07:00
view.go Giant Commit: drop a bunch of stuff we don't use. 2021-10-26 12:30:25 -05:00
view_internal_test.go kill off a ton more fsyncs 2021-10-01 10:45:08 -05:00

FeatureBase, a distributed bitmap index

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.