Commit graph

7906 commits

Author SHA1 Message Date
Samir Patel
cdaec2e0d2 remove duplicate checks 2021-11-04 16:04:00 -05:00
Samir Patel
67233d5720 move checks to api.go 2021-11-04 15:52:37 -05:00
Samir Patel
c0e201d638 dedup api_test 2021-11-04 12:19:56 -05:00
Samir Patel
2bc2640fbf test two scenarios 2021-11-02 15:50:48 -05:00
Samir Patel
3ca91bba7f More specific error message on mismatch 2021-11-02 15:49:59 -05:00
Samir Patel
5206e8fa0e more comprehensive value check 2021-11-01 18:19:38 -05:00
Samir Patel
1de6085782 remove empty value check from handler 2021-11-01 17:51:16 -05:00
Samir Patel
002b65c516 add checks for data presence on import req 2021-11-01 17:04:33 -05:00
reese
e769c085ae
Merge pull request #1746 from molecula/sup-85
[SUP-85] add quotes around strings in webui representation
2021-11-01 10:42:14 -05:00
reese
7d47663b44
Merge branch 'master' into sup-85 2021-11-01 10:31:04 -05:00
Samir Patel
584cac2517
Merge pull request #1743 from molecula/54mir/toggle-schema-details
[FB-920] Add cmd option to disable cardinality calculation in schema/details endpoint
2021-11-01 10:24:24 -05:00
reesporte
510dd4dfb7 un-prettify for less lines of code changed :) 2021-11-01 09:36:36 -05:00
Samir Patel
8ee0528858
Merge branch 'master' into 54mir/toggle-schema-details 2021-11-01 09:31:35 -05:00
reesporte
705efc1b8a refactor for easier reading, add more tests 2021-11-01 09:25:07 -05:00
Samir Patel
faa831928c Add some error handling 2021-10-31 23:48:43 -05:00
Samir Patel
163492801f Add test to test endpoint code directly 2021-10-31 23:18:53 -05:00
Samir Patel
d828d73eae Add APISetOptions test for coverage 2021-10-29 19:04:21 -05:00
Samir Patel
21969b1637 Add unit test 2021-10-29 16:52:09 -05:00
reesporte
4a18973274 use prettier to format changed files 2021-10-29 16:16:59 -05:00
reesporte
77e8d6cdc9 Merge branch 'sup-85' of github.com:molecula/featurebase into sup-85 2021-10-29 16:06:35 -05:00
reesporte
ad0b6db841 refactor css as import 2021-10-29 16:04:58 -05:00
reese
86e7058c8c
Merge branch 'master' into sup-85 2021-10-29 12:32:56 -05:00
seebs
84f6a5570f
Merge pull request #1747 from molecula/gopsutilupg
uprev gopsutil
2021-10-29 12:14:11 -05:00
reesporte
f04cb01e5d meaningless commit 2021-10-29 11:56:09 -05:00
reesporte
e520277c71 please work holy moly 2021-10-29 11:33:40 -05:00
reesporte
ff43570881 hopefully this works 2021-10-29 10:32:32 -05:00
reesporte
029fad1fb7 hopefully this works to set up test coverage 2021-10-29 09:34:25 -05:00
reesporte
f6de92ecda set up jest test coverage in gitlab ci 2021-10-29 09:17:12 -05:00
reesporte
8bf4d196e6 set up jest test coverage in gitlab ci 2021-10-29 08:31:08 -05:00
reesporte
04642dad0f hopefully sets up jest test coverage in gitlab 2021-10-29 08:17:10 -05:00
reesporte
ae69ad0d4e add artifact path(s) 2021-10-28 16:21:58 -05:00
reesporte
cdbfcef0eb hopefully updates the ci pipeline to run jest
i updated the gitlab ci pipeline so that hopefully it will run jest coverage stuff for sonar
2021-10-28 16:19:03 -05:00
reesporte
5b869c2810 Merge branch 'sup-85' of github.com:molecula/featurebase into sup-85 2021-10-28 15:16:04 -05:00
reesporte
5ef7975475 refactor and add tests 2021-10-28 15:15:43 -05:00
Seebs
360f161303 uprev gopsutil
The old revision emits a warning on MacOS X that looks concerning, and
even though it's actually mostly-harmless, it is an annoyance.

Also run `go mod tidy` which affected go.sum.
2021-10-28 14:08:13 -05:00
reese
327b358bd2
Merge branch 'master' into sup-85 2021-10-28 13:48:20 -05:00
reesporte
aadfc63bf0 add quotes around strings 2021-10-28 13:45:07 -05:00
Matthew Jaffee
06714aa601
Merge pull request #1744 from molecula/SUP-76-stop-fsyncs
don't fsync on RBF Open if WAL is empty
2021-10-28 13:20:41 -05:00
reesporte
b66a0316e6 Merge branch 'upgrade-node' of github.com:molecula/featurebase into upgrade-node 2021-10-28 11:30:42 -05:00
Samir Patel
b787fccf3a Add cmd option to disable cardinality calc 2021-10-28 10:25:26 -05:00
Matthew Jaffee
c3e14cb9ae don't fsync on RBF Open if WAL is empty
This is targeted at reducing startup times, especially on OSX where
the fsync calls seem to be taking an egregiously long time. I got one
index to go from ~1min to open to ~1sec. This looks safe to me, but
will get opinions from RBF experts.
2021-10-28 09:43:32 -05:00
reese
115b1a9c6a
Merge pull request #1742 from molecula/sup-81
remove shards list from error message entirely
2021-10-28 09:42:57 -05:00
reesporte
968ce78c73 remove ShardSlice entirely 2021-10-27 17:05:56 -05:00
reesporte
bc44f9b8d1 remove shards list from error message entirely 2021-10-27 16:45:17 -05:00
Stephanie Yang
10f235dac1 attempt to upgrade node (to v14) and node-sass (to v4.14) 2021-10-27 13:00:40 -05:00
reese
469791a670
Merge pull request #1739 from molecula/sup-81
[SUP-81] wrap shards list in ShardSlice for prettier output in error messages
2021-10-26 16:04:48 -05:00
reesporte
eb8460c291 wrap shards in error message as ShardSlice for pretty output 2021-10-26 15:39:52 -05:00
reesporte
7c885c8130 export ShardSlice 2021-10-26 15:39:06 -05:00
seebs
6cb9ce0315
Merge pull request #1731 from molecula/core930
[FB-930] remove bolt backend, bluegreentx, and a ton of unused API surface
2021-10-26 13:37:16 -05:00
Seebs
ad30a926f4 Giant Commit: drop a bunch of stuff we don't use.
These commits are hard to disentagle, and doing them separately means
re-modifying the same chunks of code several times before removing it,
and similar things.

Basically:
(1) Drop the bolt backend storage.
(2) Drop the blue-green wrapper that compares two backends.
(3) Drop unused or barely-used Tx API components from all the
remaining backends.
(4) Minor related cleanup to simplify things related to these.

The boltdb backend existed only to verify RBF. The blue-green wrapper
was mostly used to verify RBF, but in practice we had to do a lot
of working around that, and it introduced a lot of special cases.

Types removed:

IteratorFinder: Used only to implement the roaring iterator
on top of boltdb, and to complicate the way it worked in roaring.
Reverted the complications. Also unexport NewSliceContainers
which is used only for that outside of roaring's internals.

PortMapper from cluster_internal_test.go: Used only for a test
we removed early this year. Never used for anything else.

RawRoaringData: Totally unused.

TxStore: Totally unused.

Functions removed from Tx API, and sometimes corresponding
members were removed from structs:

* Dump: debugging code, I don't think I found any actually reachable
  paths to it.
* Group: only used for debugging TxGroup stuff
* IncrementOpN: only used by fragment, fragment can increment its
  own opN.
* Options: unused?
* Pointer: debugging only
* Readonly: used only to decide how to handle Tx in a TxGrp,
  but we never add a non-readonly Tx to a TxGrp. Removed also all
  the corresponding write-aware stuff.
* RoaringBitmapReader: Used exactly once, can just be a bm.WriteTo.
* Sn (and OpenSnList): Unused
* UnionInPlace: unused and conceptually-invalid; it didn't write
  to storage and shouldn't have, and was just "create a bitmap
  then call union-in-place", which we can do directly.
* UseRowCache: just checked storage.UseRowCache.

Other things removed:

The SetRequiredForAtomicWriteTx and ClearRequiredForAtomicWriteTx
functions go away, since nothing now seems to be using them? Same
for holder_internal_test's `testHasBit` and `testMustNotHaveBit`,
which were unused.

The DBPerShard "DeleteDBPath" and "HasData" functions and related
parts were mostly unused; took out the parts that were never
actually being reached.

Changed the API of one function to simplify special cases and
remove things:
* ImportRoaringBits had a special "data" argument which gave it
  subtly different semantics for RBF and roaring (for roaring, it
  could produce a roaring bitmap *with ops log*), didn't seem to
  be adding much. Removed corresponding "readStorageFromArchive"
  which is not otherwise used.

Also took out various debugging/dumping functions that were unused
and may have bitrotted.

Dropped a test from txfactory_internal_test, and the "pjobs"
code, because those two were the only things that needed Barrier
and thus idem, which lets us drop two more dependencies. We already
have errgroup for grouping things which want to terminate as
soon as one of them errors, approximately. To do better we'd have
to have context-threading, really.

Unbroke the WriteFragment test for non-roaring tests and made it
not roaring-only.
2021-10-26 12:30:25 -05:00