Commit Graph

7775 Commits

Author SHA1 Message Date
Egon Elbre
f5020de57c storagenode/blobstore: move blob store logic
The blobstore implementation is entirely related to storagenode, so the
rightful place is together with the storagenode implementation.

Fixes https://github.com/storj/storj/issues/5754

Change-Id: Ie6637b0262cf37af6c3e558556c7604d9dc3613d
2023-04-05 18:06:20 +00:00
Márton Elek
462c16eb9b
storagenode/piecestore: use actual Initial/MaxStep defaults
storj/storj uses storj/uplink and storj/uplink uses storj/storj (for integration test).

Without using the real defaults (instead of hard coded ones) in storj/storj, we couldn't modify them. (modification in uplink will fail when storj/storj is used for integration test, with the unchanged, hard-coded defaults).

Change-Id: Ifa68567dc2d5c8d08af8041ac338870c4fc26d45
2023-04-05 19:18:12 +02:00
Cameron
f550f7e159 web/satellite: sort api keys
add ability to sort api keys on the access management page by ascending
or descending name or creation date. Additionally, edit api keys query
when ordering by name to order by lower(name) so names starting with
capital letters are not treated differently from lower case when
ordering.

Change-Id: I81dbb87587a24fb7097313f76bad116b1f20d306
2023-04-05 11:55:17 -04:00
Vitalii
add5bbadf0 web/satellite: migrate CLIStep onboarding component to use SFC composition api
Change-Id: I4f0fea6a7b7d91e555d23e85ca5fa6c091329482
2023-04-05 17:04:49 +03:00
Vitalii
599baf947e web/satellite: migrate EditProjectDetails component to use SFC composition api
Change-Id: If799efb9cbbdbfe5f269df0c555e47b3d767052a
2023-04-05 17:04:49 +03:00
Vitalii
9622ae67fa web/satellite: migrate ResetPassword component to use SFC composition api
Change-Id: I09819a6d2ea328307a2e3c9f463d3095905ea7d5
2023-04-05 17:04:49 +03:00
Michal Niewrzal
c4c391e154 satellite/accounting/live: replace address parsing with redis util
With this change we are replacing parsing code with existing go-redis
util.

We also switch redis client to version 9.

Change-Id: Ie4a651e3ae6960e68958c690873925d319b70e10
2023-04-05 13:20:11 +00:00
Vitalii
c9d0eeeee5 web/satellite: migrated errors components to use defineComponent syntax
We use defineComponent syntax because images are not loaded with regular <script setup> syntax and dynamic template source.

Change-Id: If0993c57772277e767db2b0705100215e17a4625
2023-04-05 12:24:17 +00:00
Clement Sam
5ab2e6ac19 go.mod: bump storj.io/private
Updates https://github.com/storj/storj/issues/5349

Change-Id: I5b91a8e9c28d39c6ec432992a352de08aff886d9
2023-04-05 14:46:59 +03:00
Vitalii
d9c179162f web/satellite: migrate OSContainer component to use SFC composition api
Change-Id: Ibc4baa713850c2a209bccf861847278818a7e01f
2023-04-05 10:43:01 +00:00
Vitalii
214e962263 web/satellite: migrate CLIFlowContainer component to use SFC composition api
Change-Id: Ib675ff4490ae870b193c08ad218c2a495b1f9d3f
2023-04-05 09:45:52 +00:00
Vitalii
b34a3d2f29 web/satellite: migrate UploadObject onboarding component to use SFC composition api
Change-Id: I2942adf161b8d2f64d373275a3ea4231199b09ec
2023-04-05 09:09:10 +00:00
Vitalii
265a83ced6 web/satellite: migrate ShareObject onboarding component to use SFC composition api
Change-Id: Ieab559f675b26132ee393dc644d4f7511140a4bb
2023-04-05 08:30:16 +00:00
Vitalii
50632340dd web/satellite: migrate ListObject onboarding component to use SFC composition api
Change-Id: I90382a0e7967e77eb45524392854c6e472d87c96
2023-04-05 07:50:31 +00:00
Vitalii
9caf961621 web/satellite: migrate CreateBucket onboarding component to use SFC compostition api
Change-Id: I6c6f632e1a7f389bae72893f0e70c94bb10d5cdb
2023-04-05 07:11:32 +00:00
Vitalii
670d9fdc6b web/satellite: migrate CLIInstall component to use SFC composition api
Change-Id: Ic72c4e229ddc218fe8984b72d03450d8a9b50295
2023-04-05 06:32:55 +00:00
Vitalii
401c8aaf99 web/satellite: migrate APIKey onboarding component to use SFC composition api
Change-Id: I4a1e9cfce951dd9f38a73ce509d8b6e36af65a53
2023-04-05 05:53:31 +00:00
Vitalii
c1484e33ae web/satellite: migrate AGPermissions component to use SFC composition api
Change-Id: I34b012f2626a88e26a9c9d0dd973bf0539dfd6b3
2023-04-05 05:14:02 +00:00
Vitalii
16e224ebc1 web/satellite: migrate UploadCancelPopup component to use SFC composition api
Change-Id: I2f6d81f5a07ffb5e1018aa921ec454fab9e5922d
2023-04-05 04:34:58 +00:00
Vitalii
f9eb778c6d web/satellite: migrate FAQBullet component to use SFC composition api
Change-Id: I96f2f1086a8ed63f4cc9070f6e7317545385df84
2023-04-05 03:54:20 +00:00
Vitalii
5b62150c8c web/satellite: migrate EncryptionBanner component to use SFC composition api
Change-Id: Id6b5c960c2e3d19d2cf0b1f8976b3391a2d4a7b2
2023-04-05 03:14:50 +00:00
Vitalii
923ad68075 web/satellite: migrate BucketsView component to use SFC composition api
Change-Id: Ic3f015008587b335192ec6f6ccc13cc7ec6bfc04
2023-04-05 02:35:45 +00:00
Vitalii
35f9262c1b web/satellite: migrate BucketItem component to use SFC composition api
Change-Id: I82c6a1f5f8949977ef5ffb540fccd0d55fb0c865
2023-04-05 01:56:39 +00:00
Vitalii
32581849c8 web/satellite: migrate BucketGuide component to use SFC composition api
Change-Id: Ic6368530eb1067e4212203ede2c07634bc455043
2023-04-05 01:17:19 +00:00
Vitalii
1ba5ee787c web/satellite: migrate BucketDetailsOverview component to use SFC composition api
Change-Id: I913832792c7c87d4ae81d598eb42ad0c0028f4a1
2023-04-05 00:38:04 +00:00
Vitalii
0351bd9b92 web/satellite: migrate BucketDetails component to use SFC composition api
Change-Id: I869ed788e48b1863552cf346888826f840c1373c
2023-04-04 23:59:02 +00:00
Vitalii
68c016ad50 web/satellite: migrate NotificationArea component to use SFC composition api
Change-Id: I8ac32f49f5e4afb1f5dd75b193054b27f3222769
2023-04-04 23:19:43 +00:00
Vitalii
354aff424b web/satellite: migrate ShareObjectModal component to use SFC composition api
Change-Id: I9c7f7c6767489e161d9f44cc0c3b408fae81b84e
2023-04-04 22:40:42 +00:00
Vitalii
4c75bc0717 web/satellite: migrate ResourcesLinks component to use SFC composition api
Change-Id: Ifda7704109923f3e615637bd95f4b2317c842106
2023-04-04 21:48:48 +00:00
Vitalii
2d28556486 web/satellite: migrate QuickStartLinks component to use SFC composition api
Change-Id: Ic5f3cedc4991761caf2a9a2038cca07d8d74754b
2023-04-04 21:08:57 +00:00
Vitalii
28cc779191 web/satellite: migrate GuidesDropdown component to use SFC composition api
Change-Id: Iebd32660348f85eb75bb1a6006df562a29809cad
2023-04-04 20:33:58 +00:00
Vitalii
deccb1f133 web/satellite: migrate ObjectDetailsModal component to use SFC composition api
Change-Id: I4a7b1e91db5dbcb997cd2a6fa4da4f947c843d88
2023-04-04 19:25:53 +00:00
Vitalii
2cae58dcb7 web/satellite: migrate NewFolderModal component to use SFC composition api
Change-Id: Ibc66e3b47c183ac06f8225a309abbd3c2dbc476e
2023-04-04 18:44:42 +00:00
paul cannon
9e6955cc17 satellite/repair: fix flaky TestFailedDataRepair and friends
The following tests should be made less flaky by this change:

- TestFailedDataRepair
- TestOfflineNodeDataRepair
- TestUnknownErrorDataRepair
- TestMissingPieceDataRepair_Succeed
- TestMissingPieceDataRepair
- TestCorruptDataRepair_Succeed
- TestCorruptDataRepair_Failed

This follows on to a change in commit 6bb64796. Nearly all tests in the
repair suite used to rely on events happening in a certain order. After
some of our performance work, those things no longer happen in that
expected order every time. This caused much flakiness.

The fix in 6bb64796 was sufficient for the tests operating directly on
an `*ECRepairer` instance, but not for the tests that make use of the
repairer by way of the repair queue and the repair worker. These tests
needed a different way to indicate the number of expected failures. This
change provides that different way.

Refs: https://github.com/storj/storj/issues/5736
Refs: https://github.com/storj/storj/issues/5718
Refs: https://github.com/storj/storj/issues/5715
Refs: https://github.com/storj/storj/issues/5609
Change-Id: Iddcf5be3a3ace7ad35fddb513ab53dd3f2f0eb0e
2023-04-04 18:08:52 +00:00
Vitalii
bafd3826f0 web/satellite: migrate EnterPassphraseModal component to use SFC composition api
Change-Id: I07d48165442251c1375b5ce58eb7b31e5f03bdf6
2023-04-04 17:14:37 +00:00
Vitalii
403edd961c web/satellite: migrate AddTokenFundsModal to use SFC composition api
Change-Id: I42a92cab21ec06dc54f624b91c72a17262d995fd
2023-04-04 16:32:26 +00:00
Jeremy Wharton
f2ae202024 satellite/payments,web/satellite: separate UI cost estimates by partner
Components related to project usage costs have been updated to show
different estimations for each partner, and the satellite has been
updated to send the client the information it needs to do this.

Previously, project costs in the satellite frontend were estimated
using only the price model corresponding to the partner that the user
registered with. This caused users who had a project containing
differently-attributed buckets to see an incorrect price estimation.

Resolves storj/storj-private#186

Change-Id: I2531643bc49f24fcb2e5f87e528b552285b6ff20
2023-04-04 15:56:16 +00:00
paul cannon
556250911c storagenode/monitor: add option to log only when verification check fails
This is not recommended for most nodes; leaving your node running when
it can't handle requests fast enough is a good way to fail audits and
get disqualified, which may happen before you even know about the
problem.

But some Windows users are finding that this is being triggered
regularly on their nodes, and that it apparently causes the whole system
to lock up occasionally. We are adding this option as a way to mitigate
that problem until we can collect more information.

Change-Id: I7a652b0f9f970bbb9ed9f2cb3ad1cb89d90db8d7
2023-04-04 12:41:33 +00:00
Michal Niewrzal
4c05293d8b satellite: set names for lrucache metrics
Fixes https://github.com/storj/storj/issues/5685

Change-Id: I9c19b7644b0cd3297448982b920c97abcdce9119
2023-04-04 11:55:20 +00:00
Vitalii
4f515e759d web/satellite: migrate NewBillingAddCouponCodeModal component to use SFC composition api
Change-Id: I78f4e2316921bea43bebdfe97183d3f58e345c29
2023-04-04 10:50:42 +00:00
Vitalii
aca348fc5b web/satellite: migrate MFARecoveryCodesModal component to use SFC composition api
Change-Id: Ibe2a83829ba60bb2b541e8aaa1d8b0fb01ef01bd
2023-04-04 10:15:58 +00:00
Vitalii
ceaa50016d web/satellite: migrate OpenBucketModal component to use SFC composition api
Change-Id: I0236d655fdc33f9ac3540a251298c486fe48f4d5
2023-04-04 09:24:13 +00:00
Vitalii
a51ce288d5 web/satellite: migrate InactivityModal component to use SFC composition api
Change-Id: I73409da66186409664ad59d5538a6e6e4f484d8c
2023-04-04 07:49:23 +00:00
Vitalii
891d74fe7d web/satellite: migrate StripeCardInput component to use SFC composition api
Change-Id: Id61a6726716b87d0a61e872a47a41b6b4c553ff9
2023-04-04 07:08:06 +00:00
Clement Sam
80fc7e94ec web/storagenode: add banner with info on storagenode payout changes
Closes https://github.com/storj/storj/issues/5712

Change-Id: I037adb2af756d44f87e6f5ee38c0f9bd8033809d
2023-04-04 06:17:46 +00:00
Michal Niewrzal
4db3d33d3e satellite/accounting: check bucket existance with GetProjectObjectsSegments
Check if project have any buckets before trying to get stats from
bucket_storage_tallies table.

Change-Id: If87159e29236a1816c3fb99c2d889ff735737100
2023-04-03 20:06:11 +00:00
Vitalii
c4db4165c1 web/satellite: migrate DisableMFAModal component to use SFC composition api
Change-Id: Id5fbedda7e72e18e225e437fcf51d6e9bebb112e
2023-04-03 18:59:14 +00:00
Vitalii
8d544ac3eb web/satellite: migrate AllModals component to use SFC composition api
Change-Id: Id1271c0010035eb7a847c48c7eff9e59a81c25e5
2023-04-03 18:19:08 +00:00
Vitalii
8d15154fc6 web/satellite: migrate infoBars components to use SFC composition api
Change-Id: Ieb25ea37d0ee59bb50ecec219321182bdcd32633
2023-04-03 17:42:33 +00:00
Jeff Wendling
7b06575f6f satellite/meta{base,info}: reduce db round trips for download
This combines the ListStreamPositions and GetSegmentByPosition
calls with a ListSegments call that now knows how to return
only the segments within a Range, just like ListStreamPositions.

It would theoretically be possible to also include the
GetObjectLastCommitted call by having it do one of three
queries based on the incoming request range, but that would
mean duplicating the data for the object in every single
row that is returned for each segment in the range.

One gross thing that ListSegments has to do now is update the
first segment returned with the information from any ancestor
segment because GetSegmentByPosition used to do that. It only
updates the first segment so that it doesn't do O(N) database
queries. It seems difficult to have it do a single query to
update all of the segments at once. I'm not certain this change
should be merged on this basis alone.

This change has made me think a couple of things should happen:

1. Server side copy with ancestor segments strikes again
   making the code less clear and potentially more buggy
   or inefficient for a rare case (empirically <0.1%)

2. The download code requests individual segments from
   the satellite lazily as part of its download which
   requires the satellite telling it the locations of
   all of the segments which requires the satellite
   querying the locations of all of the segments. Instead
   the download RPC could return the orders for all of
   the segments for a range and the download code could
   issue N download calls rather than 1 download call and
   N get segment calls. I believe both sides of the code
   paths would be simpler and more efficient this way.

3. In looking at the timing information for downloads when
   testing this, we really need to focus on getting the
   auth key and bandwidth limit verification times down.
   Here's the timing I saw:

       - 42ms: validate auth
       - 52ms: bandwidth usage checking
       - 14ms: get object info
       - 26ms: get segment position info
       - 26ms: getting the first segment full info
       - 20ms: unaccounted for by spans
       - 6ms:  creating the orders

   This change will remove 26ms, but there's a good 90ms
   in just validation. With improved semantics hitting the
   database only once and improved validation, a download
   rpc taking ~30ms seems doable compared to our current
   ~200ms.

Change-Id: I4109dba082eaedb79e634c61dbf86efa93ab1222
2023-04-03 16:49:00 +00:00