Commit Graph

4227 Commits (00aa6d974990b5a84a2fcdff1f9e91d2f6b30011)

Author SHA1 Message Date
Evgenii Stratonikov c6af4a3ec8 [#679] engine: Do not increase error counter on meta mismatch
DCO action / DCO (pull_request) Successful in 1m43s Details
Vulncheck / Vulncheck (pull_request) Successful in 2m0s Details
Tests and linters / Staticcheck (pull_request) Successful in 2m54s Details
Build / Build Components (1.20) (pull_request) Successful in 2m49s Details
Build / Build Components (1.21) (pull_request) Successful in 2m44s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 3m43s Details
Tests and linters / Lint (pull_request) Successful in 3m58s Details
Tests and linters / Tests (1.20) (pull_request) Successful in 23m28s Details
Tests and linters / Tests with -race (pull_request) Successful in 29m0s Details
It was introduced in 69e1e6ca to help node determine faulty shards.
However, the situation is possible in a real-life scenario:
1. Object O is evacuated from shard A to B.
2. Shard A is unmounted because of lower-level errors.
3. We now have object in meta on A and in blobstor on B. Technically we
   have it in meta on shard B too, but we still got the error if B goes
   to a degraded mode.

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-14 10:39:18 +03:00
Evgenii Stratonikov 58239d1b2c [#683] cli: Add context to policy parsing errors
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-12 09:47:21 +00:00
Evgenii Stratonikov 3c76884182 [#682] cli: Unify array of ranges type
DCO action / DCO (pull_request) Successful in 3m39s Details
Vulncheck / Vulncheck (pull_request) Successful in 5m15s Details
Build / Build Components (1.21) (pull_request) Successful in 6m51s Details
Build / Build Components (1.20) (pull_request) Successful in 7m10s Details
Tests and linters / Staticcheck (pull_request) Successful in 9m16s Details
Tests and linters / Lint (pull_request) Successful in 9m37s Details
Tests and linters / Tests with -race (pull_request) Failing after 16m19s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 17m56s Details
Tests and linters / Tests (1.20) (pull_request) Successful in 18m5s Details
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-12 10:42:34 +03:00
Evgenii Stratonikov f435ab1b26 [#682] go.mod: Update sdk-go
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-12 10:42:34 +03:00
Airat Arifullin aa9f8dce3d [#677] client: Refactor PrmAnnounceSpace/EndpointInfo/NetworkInfo usage
Vulncheck / Vulncheck (pull_request) Successful in 1m28s Details
DCO action / DCO (pull_request) Successful in 2m25s Details
Build / Build Components (1.21) (pull_request) Successful in 4m14s Details
Tests and linters / Staticcheck (pull_request) Successful in 4m24s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 4m34s Details
Tests and linters / Lint (pull_request) Successful in 5m28s Details
Tests and linters / Tests (1.20) (pull_request) Successful in 7m46s Details
Tests and linters / Tests with -race (pull_request) Successful in 8m10s Details
Build / Build Components (1.20) (pull_request) Successful in 9m1s Details
Signed-off-by: Airat Arifullin <a.arifullin@yadro.com>
2023-09-08 09:42:28 +03:00
Ekaterina Lebedeva 8a81af5a3b [#653] Add context parameter to Open functions
DCO action / DCO (pull_request) Successful in 1m38s Details
Build / Build Components (1.20) (pull_request) Successful in 4m22s Details
Build / Build Components (1.21) (pull_request) Successful in 4m25s Details
Vulncheck / Vulncheck (pull_request) Successful in 4m56s Details
Tests and linters / Lint (pull_request) Successful in 6m1s Details
Tests and linters / Tests (1.20) (pull_request) Successful in 7m43s Details
Tests and linters / Staticcheck (pull_request) Successful in 8m1s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 8m14s Details
Tests and linters / Tests with -race (pull_request) Successful in 8m32s Details
Signed-off-by: Ekaterina Lebedeva <ekaterina.lebedeva@yadro.com>
2023-09-07 18:03:29 +03:00
Evgenii Stratonikov a716db99db [#668] shard/test: Do not alter rootPath option
Supposedly, this was added to allow creating 2 different shards without
subtest. Now we use t.TempDir() everywhere, so this should not be a
problem.

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-07 07:39:39 +00:00
Evgenii Stratonikov 36759f8434 [#668] shard/test: Properly check event processing
See https://git.frostfs.info/TrueCloudLab/frostfs-node/actions/runs/1594/jobs/2

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-07 07:39:39 +00:00
Evgenii Stratonikov 39879fa868 [#668] shard/test: Add dontRelease options
Most of the time we would like to close shard with minor exceptions.

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-07 07:39:39 +00:00
Evgenii Stratonikov c661ba1312 [#668] shard/test: Use sane defaults in the test constructor
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-07 07:39:39 +00:00
Evgenii Stratonikov 268adb79cb [#668] shard/test: Simplify shard construction
newCustomShard() has many parameters but only the first is obligatory.
`enableWriteCache` is left as-is, because it directly affects the
functionality.

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-07 07:39:39 +00:00
Evgenii Stratonikov 429f941cda [#668] shard/test: Release shard in t.Cleanup()
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-07 07:39:39 +00:00
Evgenii Stratonikov 382eb8a485 [#668] shard/test: Disable GC where it is not needed
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-07 07:39:39 +00:00
Evgenii Stratonikov 42696016de [#668] shard: Close stopChannel in GC
It is done once, but now we could read it from multiple places.

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-07 07:39:39 +00:00
Evgenii Stratonikov bdecfbc1be [#668] shard/test: Move tests to the main package
Semantic patch (also, duplicate definitions are removed):
```
@@
var e identifier
@@
-import "git.frostfs.info/TrueCloudLab/frostfs-node/pkg/local_object_storage/shard"

-shard.e
+e
```

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-07 07:39:39 +00:00
Evgenii Stratonikov aa23c6a83a [#668] shard/test: Remove subtest from TestCounters
Otherwise, individual tests cannot be run.

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-07 07:39:39 +00:00
Evgenii Stratonikov da8f384324 [#668] shard/test: Fix typo in `existence`
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-07 07:39:39 +00:00
Anton Nikiforov aeeb8193d2 [#676] node: Fix header source creation when checking eacl
DCO action / DCO (pull_request) Successful in 2m55s Details
Build / Build Components (1.20) (pull_request) Successful in 4m53s Details
Vulncheck / Vulncheck (pull_request) Successful in 4m36s Details
Tests and linters / Staticcheck (pull_request) Successful in 6m35s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 7m7s Details
Tests and linters / Tests (1.20) (pull_request) Successful in 7m47s Details
Tests and linters / Tests with -race (pull_request) Failing after 10m7s Details
Build / Build Components (1.21) (pull_request) Successful in 11m3s Details
Tests and linters / Lint (pull_request) Successful in 17m34s Details
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-09-06 17:06:54 +03:00
Airat Arifullin d9de9e2bbb [#675] client: Refactor PrmObjectDelete usage
Signed-off-by: Airat Arifullin <a.arifullin@yadro.com>
2023-09-06 08:05:47 +00:00
Anton Nikiforov 88d50e4c77 [#656] policer: Add "bad" testcase
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-09-06 08:04:59 +00:00
Evgenii Stratonikov 054e3ef3d3 [#674] pre-commit: Update shellcheck-py
DCO action / DCO (pull_request) Successful in 4m8s Details
Vulncheck / Vulncheck (pull_request) Successful in 5m32s Details
Build / Build Components (1.21) (pull_request) Successful in 5m54s Details
Build / Build Components (1.20) (pull_request) Successful in 6m7s Details
Tests and linters / Staticcheck (pull_request) Successful in 7m16s Details
Tests and linters / Lint (pull_request) Successful in 8m49s Details
Tests and linters / Tests (1.20) (pull_request) Successful in 8m52s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 8m52s Details
Tests and linters / Tests with -race (pull_request) Successful in 9m41s Details
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-04 15:34:24 +03:00
Evgenii Stratonikov a54b4472de [#674] network: Close connections on address updates
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-09-04 15:34:24 +03:00
Dmitrii Stepanov 7456c8556a [#536] blobovnicza: Add blobovniczatree DB cache
DCO action / DCO (pull_request) Successful in 1m33s Details
Vulncheck / Vulncheck (pull_request) Successful in 2m43s Details
Build / Build Components (1.20) (pull_request) Successful in 3m40s Details
Tests and linters / Staticcheck (pull_request) Successful in 3m59s Details
Tests and linters / Tests (1.20) (pull_request) Successful in 5m44s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 6m3s Details
Tests and linters / Tests with -race (pull_request) Successful in 6m28s Details
Build / Build Components (1.21) (pull_request) Successful in 12m34s Details
Tests and linters / Lint (pull_request) Successful in 12m51s Details
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-09-01 13:53:11 +03:00
Dmitrii Stepanov c672f59ab8 [#536] blobovnicza: Drop cache
Each blobovnicza instance is opened
while is in use.

Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-09-01 13:51:26 +03:00
Evgenii Stratonikov b9b86d2ec8 [#666] shard/test: Fix data race in metrics tests
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-31 08:39:42 +00:00
Anton Nikiforov 4dff9555f1 [#568] writecache: Improve flushing scheme for badger
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-08-30 17:22:28 +00:00
Airat Arifullin 806cc13d9f [#658] client: Refactor PrmObjectGet/Head/Range usage
Signed-off-by: Airat Arifullin <a.arifullin@yadro.com>
2023-08-30 17:13:23 +00:00
Alejandro Lopez 1daef2ceeb [#660] writecache: Fix remaining addr2key uses
Signed-off-by: Alejandro Lopez <a.lopez@yadro.com>
2023-08-30 17:12:33 +00:00
Anton Nikiforov fe5aa06a75 [#665] node: Bind length of copies number to number of replicas
Allow to use one digit in copies number array for backward compatibility.

Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-08-30 17:11:55 +00:00
Evgenii Stratonikov 91f3745b58 [#659] debian: Remove nspcc email
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-30 08:29:26 +00:00
Evgenii Stratonikov 7654847f79 [#659] adm: Remove nspcc.ru from the default email
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-30 08:29:26 +00:00
Evgenii Stratonikov a724debb19 [#632] .forgejo: Print --version
DCO action / DCO (pull_request) Successful in 1m57s Details
Vulncheck / Vulncheck (pull_request) Successful in 2m47s Details
Build / Build Components (1.20) (pull_request) Successful in 3m46s Details
Tests and linters / Staticcheck (pull_request) Successful in 4m25s Details
Tests and linters / Tests (1.20) (pull_request) Successful in 5m51s Details
Tests and linters / Tests with -race (pull_request) Successful in 5m59s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 6m9s Details
Build / Build Components (1.21) (pull_request) Successful in 11m38s Details
Tests and linters / Lint (pull_request) Successful in 17m16s Details
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-29 12:41:45 +03:00
Dmitrii Stepanov 55b82e744b [#529] objectcore: Use common sender classifier
DCO action / DCO (pull_request) Successful in 2m19s Details
Vulncheck / Vulncheck (pull_request) Successful in 3m5s Details
Build / Build Components (1.21) (pull_request) Successful in 4m8s Details
Build / Build Components (1.20) (pull_request) Successful in 4m24s Details
Tests and linters / Tests (1.20) (pull_request) Successful in 4m57s Details
Tests and linters / Staticcheck (pull_request) Successful in 4m43s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 5m2s Details
Tests and linters / Lint (pull_request) Successful in 5m21s Details
Tests and linters / Tests with -race (pull_request) Successful in 6m17s Details
Use common sender classifier for ACL service and format validator.

Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-08-29 10:33:06 +03:00
Dmitrii Stepanov ae81d6660a [#529] objectcore: Fix object content validation
There are old objects where the owner of the object
may not match the one who issued the token.

Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-08-29 10:33:06 +03:00
Dmitrii Stepanov ab2614ec2d [#528] objectcore: Validate token issuer
Add token issuer against object owner validation.

Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-08-29 10:10:10 +03:00
Airat Arifullin 4ea0df77d0 [#574] policer: Check if the container was really removed
Signed-off-by: Airat Arifullin <a.arifullin@yadro.com>
2023-08-28 14:21:38 +00:00
Airat Arifullin 554ff2c06b [#574] core: Extend Source interface with DeletionInfo method
* Introduce common method EverExisted
* Define DeletionInfo for struct that must implement Source
* Refactor tree srv

Signed-off-by: Airat Arifullin <a.arifullin@yadro.com>
2023-08-28 14:21:38 +00:00
Evgenii Stratonikov 9072772a09 [#649] shard/test: Increase GC remover interval
This was set in #348 to speed up tests.
It seems 100ms doesn't increase overall test time,
but it reduces the amount of logs by 100x factor.

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-25 10:10:25 +00:00
Evgenii Stratonikov c4db8e7690 [#637] shard/test: Fix data race
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-25 10:10:25 +00:00
Evgenii Stratonikov f8ba60aa0c [#648] objsvc/delete: Handle errors in Go style
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-25 09:45:35 +00:00
Evgenii Stratonikov d2084ece41 [#648] objsvc/delete: Remove redundant logs
We never propagate delete requests to the container node, because
tombstone broadcast is done via PUT. No need to pollute logs.

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-25 09:45:35 +00:00
Evgenii Stratonikov 40b556fc19 [#647] objsvc/search: Improve testing coverage
DCO action / DCO (pull_request) Successful in 1m32s Details
Build / Build Components (1.20) (pull_request) Successful in 3m54s Details
Tests and linters / Staticcheck (pull_request) Successful in 3m44s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 4m18s Details
Tests and linters / Tests (1.20) (pull_request) Successful in 4m35s Details
Tests and linters / Lint (pull_request) Successful in 4m42s Details
Vulncheck / Vulncheck (pull_request) Successful in 5m11s Details
Tests and linters / Tests with -race (pull_request) Successful in 6m23s Details
Build / Build Components (1.21) (pull_request) Successful in 8m38s Details
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-25 10:40:01 +03:00
Evgenii Stratonikov 4db2cbc927 [#647] objsvc/search: Wrap in uniqueIDWriter during parameter setting
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-25 10:40:01 +03:00
Evgenii Stratonikov 966ad22abf [#647] objsvc/search: Simplify error handling
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-25 10:40:01 +03:00
Evgenii Stratonikov 56f841b022 [#647] objsvc/search: Remove TraverserGenerator wrapper
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-25 10:40:01 +03:00
Evgenii Stratonikov ba58144de1 [#647] objsvc/search: Remove netmap.Source wrapper
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-25 10:40:01 +03:00
Evgenii Stratonikov c9e3c9956e [#643] objsvc/put: Unify extraBroadcastEnabled usage
DCO action / DCO (pull_request) Successful in 1m26s Details
Vulncheck / Vulncheck (pull_request) Successful in 2m44s Details
Build / Build Components (1.20) (pull_request) Successful in 3m26s Details
Tests and linters / Staticcheck (pull_request) Successful in 3m51s Details
Tests and linters / Tests (1.20) (pull_request) Successful in 5m4s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 5m46s Details
Tests and linters / Tests with -race (pull_request) Successful in 6m23s Details
Build / Build Components (1.21) (pull_request) Successful in 13m1s Details
Tests and linters / Lint (pull_request) Successful in 19m46s Details
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-24 11:03:17 +03:00
Evgenii Stratonikov facd3b2c4b [#643] objsvc/put: Unify placement iterators
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-24 11:03:17 +03:00
Evgenii Stratonikov 3fcf56f2fb [#643] objsvc/put: Copy config to `distributedTarget`
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-24 11:03:17 +03:00
Evgenii Stratonikov 96e690883f [#638] Unify test loggers
In some places we have debug=false, in others debug=true.
Let's be consistent.

Semantic patch:
```
@@
@@
-test.NewLogger(..., false)
+test.NewLogger(..., true)
```

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-23 11:21:05 +00:00