Commit graph

8109 commits

Author SHA1 Message Date
Ekaterina Pavlova
f5ea79d649 services: refactor NeoFS client naming
There is just NeoFS client/conn.

Signed-off-by: Ekaterina Pavlova <ekt@morphbits.io>
2024-12-16 11:12:46 +03:00
Ekaterina Pavlova
e741053f0c services: drop check of Unimplemented gRPC status in neofs helper
NeoFS oracle can miss problem NeoFS server on dial. So `Unimplemented`
gRPC status should not be ignored.

Close #3757

Signed-off-by: Ekaterina Pavlova <ekt@morphbits.io>
2024-12-16 11:12:43 +03:00
Anna Shaleva
9189b3eb7d
Merge pull request #3753 from nspcc-dev/rel-0.107.2
CHANGELOG: release v0.107.2
2024-12-13 19:47:58 +03:00
Anna Shaleva
fec1ac8aee CHANGELOG: release v0.107.2
Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
2024-12-13 19:32:05 +03:00
Anna Shaleva
53ab704971 docs: add defaults to NeoFS BlockFetcher configuration
Follow #3742.

Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
2024-12-13 19:32:04 +03:00
Anna Shaleva
3f651cde27
Merge pull request #3756 from nspcc-dev/neofs-sdk-update
cli: refactor `neofs-sdk-go` related operations in `upload-bin`
2024-12-13 19:30:09 +03:00
Ekaterina Pavlova
39cec7d0d6 cli: refactor neofs-sdk-go related operations in upload-bin
Signed-off-by: Ekaterina Pavlova <ekt@morphbits.io>
2024-12-13 19:19:15 +03:00
Anna Shaleva
388ee25cd6
Merge pull request #3725 from nspcc-dev/neofs-sdk-update
*: update `neofs-sdk-go`
2024-12-13 17:52:56 +03:00
Ekaterina Pavlova
9e3f75e977 *: update neofs-sdk-go
Update to the version without pool panics
https://github.com/nspcc-dev/neofs-sdk-go/pull/643.

Signed-off-by: Ekaterina Pavlova <ekt@morphbits.io>
2024-12-13 17:07:52 +03:00
Anna Shaleva
f82088b851
Merge pull request #3749 from nspcc-dev/timestamp
cli: change block timestamp attribute of objects in `upload-bin`
2024-12-13 17:00:14 +03:00
Ekaterina Pavlova
be4fc98041 cli: refactor upload-bin handler to reuse SDK built-in functionality
Close #3714

Signed-off-by: Ekaterina Pavlova <ekt@morphbits.io>
2024-12-13 16:36:37 +03:00
Ekaterina Pavlova
247ee831e5 cli: change block timestamp attribute of objects in upload-bin
Close #3654

Signed-off-by: Ekaterina Pavlova <ekt@morphbits.io>
2024-12-13 16:35:14 +03:00
Anna Shaleva
e0c8bebd05
Merge pull request #3751 from nspcc-dev/debug-upload-bin
cli: add debug on retry in `upload-bin`
2024-12-13 16:33:43 +03:00
Anna Shaleva
9834b83cf0
Merge pull request #3750 from nspcc-dev/removeuntraceableheaders
RemoveUntraceableHeaders
2024-12-13 16:30:31 +03:00
Roman Khimov
90b6a42331 network: make GetHeaders best-effort
Be a nice neighbor, try to reply with whatever headers we have, don't fail
completely because of a single missing header.

Signed-off-by: Roman Khimov <roman@nspcc.ru>
2024-12-13 16:09:00 +03:00
Roman Khimov
9599fba24f core: fix removing old transfer data with RemoveUntraceableHeaders
Transfer data is timestamp-based, previously it always had and used headers,
no we can go via a small cache (we don't want it to grow or be stored forever).
Otherwise it's unable to do the job:

    2024-12-13T12:55:15.056+0300    ERROR   failed to find block header for transfer GC     {"time": "19.066µs", "error": "key not found"}

Signed-off-by: Roman Khimov <roman@nspcc.ru>
2024-12-13 16:09:00 +03:00
Roman Khimov
7d89a53043 core: drop redundant tgtBlock normalization
It's there since 423c7883b8, but looks like it
never changed anything, the same thing is done six lines above and tgtBlock is
not changed since.

Signed-off-by: Roman Khimov <roman@nspcc.ru>
2024-12-13 16:09:00 +03:00
Roman Khimov
c53b0645bb core: extend NewBlockchain coverage a bit
Signed-off-by: Roman Khimov <roman@nspcc.ru>
2024-12-13 16:09:00 +03:00
Roman Khimov
c7f5f173ae core: introduce RemoveUntraceableHeaders
With blocks available from NeoFS we can drop them from the local DB.

Signed-off-by: Roman Khimov <roman@nspcc.ru>
2024-12-13 16:09:00 +03:00
Ekaterina Pavlova
46cbfab264 cli: add more debug info about retry to the upload-bin
Signed-off-by: Ekaterina Pavlova <ekt@morphbits.io>
2024-12-13 13:52:33 +03:00
Anna Shaleva
38f635bce0
Merge pull request #3742 from nspcc-dev/default-blockfetcher-config
services: add default values for NeoFSBlockFetcher configuration
2024-12-13 12:17:56 +03:00
Ekaterina Pavlova
65bdc82da8 *: move constant and NeoFS related code into separate package
Signed-off-by: Ekaterina Pavlova <ekt@morphbits.io>
2024-12-13 11:43:19 +03:00
Ekaterina Pavlova
c79ffa967f services: add default values for NeoFSBlockFetcher configuration
The minimum sufficient configuration is Addresses and ContainerID,
example:
```
  NeoFSBlockFetcher:
    Enabled: true
    Addresses:
      - st1.storage.fs.neo.org:8080
      - st2.storage.fs.neo.org:8080
      - st3.storage.fs.neo.org:8080
      - st4.storage.fs.neo.org:8080
    ContainerID: "87JRc7vyWcjW8uS32LMoLTAj4ckCzFZWfKbacjU3sAob"
```

Close #3718

Signed-off-by: Ekaterina Pavlova <ekt@morphbits.io>
2024-12-13 11:39:22 +03:00
Anna Shaleva
283ca5cb6c
Merge pull request #3748 from nspcc-dev/fix-gomod
go.mod: tidy
2024-12-12 16:41:57 +03:00
Anna Shaleva
3c372de570 *: update interop deps
Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
2024-12-12 16:08:32 +03:00
Anna Shaleva
cb4b21fcf4
Merge pull request #3735 from nspcc-dev/index-files-put
cli: update `upload-bin` to create index files during block uploading
2024-12-12 16:08:05 +03:00
Anna Shaleva
ea0a6114d2 go.mod: tidy
Fix linter after #3746 and #3747:
```
 Running [/home/runner/golangci-lint-1.62.2-linux-amd64/golangci-lint run --path-prefix=scripts --config=/home/runner/work/neo-go/neo-go/nspcc-gh/.golangci.yml] in [/home/runner/work/neo-go/neo-go/scripts] ...
  level=error msg="Running error: context loading failed: no go files to analyze: running `go mod tidy` may solve the problem"

  Error: golangci-lint exit with code 5
```

Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
2024-12-12 16:07:05 +03:00
Roman Khimov
15cc559c73
Merge pull request #3747 from nspcc-dev/dependabot/go_modules/examples/nft-nd-nns/golang.org/x/crypto-0.31.0
build(deps): bump golang.org/x/crypto from 0.26.0 to 0.31.0 in /examples/nft-nd-nns
2024-12-12 12:38:07 +03:00
dependabot[bot]
1447158f2b
build(deps): bump golang.org/x/crypto in /examples/nft-nd-nns
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.26.0 to 0.31.0.
- [Commits](https://github.com/golang/crypto/compare/v0.26.0...v0.31.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-12 09:16:57 +00:00
Ekaterina Pavlova
62615f8c7e cli: update upload-bin to create index files during block uploading
Close #3655
Close #3652

Signed-off-by: Ekaterina Pavlova <ekt@morphbits.io>
2024-12-12 12:08:49 +03:00
Roman Khimov
e530ba0791
Merge pull request #3746 from nspcc-dev/dependabot/go_modules/golang.org/x/crypto-0.31.0
build(deps): bump golang.org/x/crypto from 0.26.0 to 0.31.0
2024-12-12 12:04:39 +03:00
dependabot[bot]
b058b6cf21
build(deps): bump golang.org/x/crypto from 0.26.0 to 0.31.0
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.26.0 to 0.31.0.
- [Commits](https://github.com/golang/crypto/compare/v0.26.0...v0.31.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-12 09:00:01 +00:00
Anna Shaleva
6d1eea307b
Merge pull request #3696 from nspcc-dev/basic-chain-tests
basicchain: use UnitTestNet default config for generation
2024-12-12 10:51:42 +03:00
Ekaterina Pavlova
e993c1bdac basicchain: use UnitTestNet default config
It's important to have the same chain configuration for all tests.
Otherwise, a mismatched hardfork configuration is used to dump/restore
the basic chain.

Close #3681

Signed-off-by: Ekaterina Pavlova <ekt@morphbits.io>
2024-12-11 21:42:00 +03:00
Anna Shaleva
4fa5fdc39c
Merge pull request #3715 from nspcc-dev/sub-test
rpcsrv: fix `TestFilteredSubscriptions`
2024-12-11 20:50:52 +03:00
Ekaterina Pavlova
0bd378770d rpcsrv: fix TestFilteredSubscriptions
Close #3693

Signed-off-by: Ekaterina Pavlova <ekt@morphbits.io>
2024-12-11 14:18:23 +03:00
Roman Khimov
727262a95a
Merge pull request #3737 from nspcc-dev/fix-timer-drain
services: fix timer draining
2024-12-09 15:06:30 +03:00
Anna Shaleva
827acfca23 services: fix timer draining
Ref. #3736.

Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
2024-12-09 12:11:01 +03:00
Anna Shaleva
35c2c5cc0e
Merge pull request #3736 from nspcc-dev/retry
services: fix defer function in `retry` of NeoFSBlockFetcher
2024-12-09 12:08:45 +03:00
Ekaterina Pavlova
3010324c4f services: fix defer function in retry of NeoFSBlockFetcher
Drain the channel only if it has pending events. This avoids trying to
read from an already-empty channel.

Close #3734

Signed-off-by: Ekaterina Pavlova <ekt@morphbits.io>
2024-12-08 00:04:14 +03:00
Anna Shaleva
5f92da21fa
Merge pull request #3731 from nspcc-dev/rel-0.107.1
CHANGELOG: release 0.107.1
2024-12-06 16:48:31 +03:00
Anna Shaleva
703e066acc CHANGELOG: release 0.107.1
Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
2024-12-06 16:26:02 +03:00
Anna Shaleva
c84dac501d
Merge pull request #3730 from nspcc-dev/tune-getaddr-trigger
network: take into account good known peers when thinking of GetAddr
2024-12-06 15:55:32 +03:00
Roman Khimov
703bf6c458 network: take into account good known peers when thinking of GetAddr
They will be returned to pool when disconnected anyway. On a smaller network
this can make a difference because there are not a lot of addresses in the
pool usually.

Signed-off-by: Roman Khimov <roman@nspcc.ru>
2024-12-06 15:31:33 +03:00
Anna Shaleva
2bc41dbe30
Merge pull request #3724 from nspcc-dev/hf-latest-stable
Latest stable hardforks
2024-12-06 13:18:03 +03:00
Anna Shaleva
a68856c27c
Merge pull request #3728 from nspcc-dev/blockfetcher-close
Fix blockfetcher closing
2024-12-06 13:07:19 +03:00
Roman Khimov
5f09e00e44 docs: introduce Echidna hardfork
Signed-off-by: Roman Khimov <roman@nspcc.ru>
2024-12-06 12:24:00 +03:00
Roman Khimov
fc705433a3 docs: move Hardforks into a section of their own
It's impossible to maintain a 4K line. I'm not even sure new table works good
enough, but at least it's per-hardfork.

Signed-off-by: Roman Khimov <roman@nspcc.ru>
2024-12-06 12:24:00 +03:00
Roman Khimov
a164db92cc config: replace LatestHardfork() with HFLatestStable
Function doesn't make much sense here. The change is rather trivial and this
is not expected to be used by external code, so no deprecation.

Signed-off-by: Roman Khimov <roman@nspcc.ru>
2024-12-06 12:24:00 +03:00
Roman Khimov
981ae10091 config: declare and use the latest stable hardfork
Differentiate released and stable ones from test-only not-yet-ready and such.
Enabled only stable ones by default to avoid surprises in private networks
when some beta hardfork is made available with some node release.

Fixes #3719.

Signed-off-by: Roman Khimov <roman@nspcc.ru>
2024-12-06 12:23:46 +03:00