Leonard Lyubich
637077a883
[ #1181 ] CLI: Simplify object type output
...
There is no need to switch between object types since `Type` implements
`fmt.Stringer`.
Replace swich-case in `printHeader` with `%s` format notation function.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-03-15 13:03:23 +03:00
Evgenii Stratonikov
2181e033b8
go.mod: update dependencies
...
Fix Dependabot alert.
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-15 11:37:55 +03:00
Alex Vanin
b6720d5f97
[ #1231 ] Update new SDK Client interface
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-03-14 13:18:48 +03:00
Pavel Karpy
697c12a5e9
[ #1223 ] amd: Fix subnet node command
...
Added `-w` flag.
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-03-10 19:23:39 +03:00
Alex Vanin
e38d7dda6b
[ #1230 ] replicator: Improve error log
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-03-10 19:19:18 +03:00
Leonard Lyubich
14ea7b2c47
[ #1219 ] object/delete: Change approach of the tombstone broadcast
...
After `putsvc.Service` started to support additional container broadcast
of the saved objects there is no more need to perform broadcast of
tombstone object in `deletesvc.Service`.
Make `putsvc.Service` to perform additional broadcast of `TOMBSTONE`
objects. Remove `broadcastTombstone` stage from `deletesvc.execCtx`,
from now it is encapsulated in `saveTombstone` stage. Remove no longer
needed `putsvc.PutInitPrm.WithTraverseOption` method.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-03-05 16:23:21 +03:00
Leonard Lyubich
a55af18ad1
[ #1219 ] object/put: Support additional container broadcast
...
There are several cases when we need to spread the object around the
container after its primary placement (e.g. objects of type TOMBSTONE).
It'd be convenient to support this feature in `putsvc.Service`.
Add additional stage of container broadcast after the object is stored.
This stage is carried out no more than once and does not affect the
outcome of the main PUT operation.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-03-05 16:23:21 +03:00
Evgenii Stratonikov
0bf59522f7
[ #1191 ] object/acl: check session token verb
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-05 16:03:16 +03:00
Pavel Karpy
5e90d85020
[ #1183 ] node: Use NATS client as notification writer
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-03-05 15:57:24 +03:00
Pavel Karpy
1e96f62294
[ #1183 ] node/config: Add NATS configuration
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-03-05 15:57:24 +03:00
Pavel Karpy
79c6f52a27
[ #1183 ] node: Add NATS client
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-03-05 15:57:24 +03:00
Evgenii Stratonikov
51f12ea22b
*: Tidy go.mod
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-05 13:43:54 +03:00
Pavel Karpy
03b601b594
[ #1183 ] node: Init notificator on startup
...
It uses logger as a notification writer. NATS messaging will be implemented
later.
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-03-05 11:41:18 +03:00
Pavel Karpy
46cf15f03c
[ #1183 ] node/config: Add notification configuration
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-03-05 11:41:18 +03:00
Pavel Karpy
90ff066940
[ #1183 ] node/notificator: Implement notificator
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-03-05 11:41:18 +03:00
Pavel Karpy
7d0e3648a2
[ #1183 ] go.mod: Update neofs-sdk-go
...
v0.0.0-20220201141054-6a7ba33b59ef => v1.0.0-rc.2
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-03-05 11:41:18 +03:00
Pavel Karpy
0576db747b
[ #1183 ] go.mod: Drop replace section
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-03-05 11:41:18 +03:00
Pavel Karpy
cf17686321
[ #1111 ] control: Rename aliaces
...
`objectSDKAddress` -> `addressSDK`.
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-03-05 10:06:14 +03:00
Pavel Karpy
99b31e3235
[ #1111 ] object/acl: Refactor service
...
Make all operations that related to `neofs-api-go` library be placed in `v2`
packages. They parse all v2-versioned structs info `neofs-sdk-go`
abstractions and pass them to the corresponding `acl`/`eacl` packages. `v2`
packages are the only packages that do import `neofs-api-go` library. `eacl`
and `acl` provide public functions that only accepts `sdk` structures.
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-03-05 10:06:14 +03:00
Leonard Lyubich
7ccd1625af
[ #1214 ] *: Use single Object
type in whole project
...
Remove `Object` and `RawObject` types from `pkg/core/object` package.
Use `Object` type from NeoFS SDK Go library everywhere. Avoid using the
deprecated elements.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-03-04 17:45:00 +03:00
Evgenii Stratonikov
19ad349b27
[ #1204 ] shard: Save ID in the metabase
...
`AddShard` must return shard id, so we temporarily open metabase
there.
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-04 17:13:13 +03:00
Evgenii Stratonikov
1fe9cd4d36
[ #1186 ] engine: Allow to skip metabase in GetRange
...
Similarly to `Get`. Also fix a bug where `ErrNotFound` is returned
instead of `ErrRangeOutOfBounds`.
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-04 16:07:25 +03:00
Evgenii Stratonikov
2b5550ccf6
[ #1186 ] blobstor: Fix comment
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-04 16:07:25 +03:00
Evgenii Stratonikov
b33fb0f739
[ #1186 ] blobstor: Unify errors for Get
and GetRangeBig
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-04 16:07:25 +03:00
Evgenii Stratonikov
69e1e6ca20
[ #1186 ] engine: Read object directly from blobstor in case of conflicts
...
Metabase is expected to contain actual information about objects stored
in shard. If the object is present in metabase but is missing from
blobstor, peform an additional attempt to fetch it directly without
consulting metabase. Such a situation is unexpected, so error counter
is increased for the shard which has the object in the metabase. We
don't increase error counter for the shard which has the object in
blobstor, because some garbage can be expected there. In this
implementation there is no overhead for objects which are really
missing, i.e. are not present in any metabase.
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-04 16:07:25 +03:00
Evgenii Stratonikov
6e6f3648d2
[ #1188 ] metabase: log PUT / DELETE operations
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-04 15:21:35 +03:00
Evgenii Stratonikov
e292321ccf
[ #1114 ] neofs-node: Make some parameters optional in relay mode
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-04 14:30:55 +03:00
Evgenii Stratonikov
ce76325840
[ #1146 ] engine: remove TODO and add a comment
...
Parallel check seems to be slower, so remove TODO.
```
name \ time/op old new pool
Exists/2_shards-40 52.3µs ±23% 91.6µs ± 6% 84.2µs ± 1%
Exists/4_shards-40 72.7µs ±11% 121.8µs ± 8% 116.9µs ± 5%
name \ alloc/op old new pool
Exists/2_shards-40 5.00kB ± 0% 5.03kB ± 0% 5.16kB ± 0%
Exists/4_shards-40 9.89kB ± 0% 9.93kB ± 1% 10.19kB ± 0%
name \ allocs/op old new pool
Exists/2_shards-40 112 ± 1% 115 ± 1% 117 ± 1%
Exists/4_shards-40 207 ± 1% 211 ± 1% 216 ± 1%
```
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-04 12:31:41 +03:00
Evgenii Stratonikov
dab6bcabe4
[ #1146 ] engine: Add benchmarks for exists
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-04 12:31:41 +03:00
Pavel Karpy
0e0a675f35
[ #1212 ] morph: Fix NPE in multi client
...
Share multi cache between single clients.
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-03-04 12:16:11 +03:00
Alex Vanin
cbc816d57d
[ #1211 ] node: Fix object get init error check
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-03-04 11:47:24 +03:00
Alex Vanin
bc45a79d1f
[ #1211 ] innerring: Fix object get init error check
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-03-04 11:47:24 +03:00
Alex Vanin
99749ea042
[ #1211 ] neofs-cli: Specify address in session token
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-03-04 11:47:24 +03:00
Alex Vanin
1b5cb2dfe2
[ #1211 ] neofs-cli: Specify verb in object session token
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-03-04 11:47:24 +03:00
Alex Vanin
ca17eb0eb4
[ #1211 ] innerring: Fix objectIDs list reader
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-03-04 11:47:24 +03:00
Alex Vanin
6d3e626f20
[ #1211 ] neofs-cli: Fix objectIDs list reader
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-03-04 11:47:24 +03:00
Alex Vanin
4935016bf8
[ #1211 ] neofs-cli: Set bearer and session token in all object service requests
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-03-04 11:47:24 +03:00
Stanislav Bogatyrev
08f0a0b557
[ #1167 ] Fix typos in README
...
Based on changes suggested by @roschler.
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2022-03-04 10:50:16 +03:00
Leonard Lyubich
b5bdcfc076
[ #1194 ] client: Support request X-headers
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-03-03 15:38:38 +03:00
Leonard Lyubich
dd6d7d2d10
[ #1209 ] Upgrade NeoFS SDK Go
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-03-03 15:38:38 +03:00
Alex Vanin
09db5e387d
[ #1200 ] cli: Mention filter key prefixes in eACL creation command
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-03-01 10:36:41 +03:00
Evgenii Stratonikov
e10b8f53d6
[ #1151 ] morph/client: Cache notary transaction heights
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-01 10:35:54 +03:00
Leonard Lyubich
e0dce1043a
[ #1195 ] Adopt recent changes in NeoFS SDK
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-02-28 10:43:03 +03:00
Evgenii Stratonikov
a8d10704d5
[ #1182 ] neofs-cli: use BasicACL.String()
for user output
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-22 11:26:34 +03:00
ZhangTao1596
dd0e10d306
[ #1180 ] ir/internal: Fix audit range hash type
...
Signed-off-by: ZhangTao1596 <zhangtao@ngd.neo.org>
2022-02-14 12:36:02 +03:00
Alex Vanin
838a3fdb85
[ #1103 ] example: Add neofs-cli config example
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-02-11 15:36:26 +03:00
Evgenii Stratonikov
47cd10a4d7
[ #767 ] services/object: replace duplicate link in TODO
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-11 13:59:27 +03:00
Evgenii Stratonikov
e288a0188d
[ #749 ] neofs-adm: refactor password reading into a separate function
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-11 13:26:27 +03:00
Evgenii Stratonikov
e21d054fe2
[ #749 ] morph/client: set group signer scope
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-11 13:26:27 +03:00
Evgenii Stratonikov
fa947b85a6
[ #749 ] morph/client: reuse TestInvokePrm
in InvokePrm
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-11 13:26:27 +03:00