Commit Graph

13708 Commits

Author SHA1 Message Date
galargh
c7d3bec39f chore: bump version to v0.18.0-dev 2022-11-10 17:13:39 +01:00
Piotr Galar
a4da8f6cc7
Merge pull request #9387 from ipfs/chore/update-libp2p-0.23.3
chore: Update go-libp2p to v0.23.4
2022-11-10 17:06:34 +01:00
Antonio Navarro Perez
9da7f3a02d
Update to v0.23.4
Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>
2022-11-10 10:49:08 -05:00
Antonio Navarro Perez
3550758035
chore: Update go-libp2p to v0.23.3
Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>
2022-11-10 10:48:07 -05:00
Antonio Navarro Perez
254d81a9d5
feat: Improve ResourceManager UX (#9338)
This PR adds several new functionalities to make easier the usage of ResourceManager:

- Now resource manager logs when resources are exceeded are on ERROR instead of warning.
- The resources exceeded error now shows what kind of limit was reached and the scope.
- When there was no limit exceeded, we print a message for the user saying that limits are not exceeded anymore.
- Added `swarm limit all` command to show all set limits with the same format as `swarm stats all`
- Added `min-used-limit-perc` option to `swarm stats all` to only show stats that are above a specific percentage
- Simplify a lot default values.
- **Enable ResourceManager by default.**

Output example:
```
2022-11-09T10:51:40.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:51:50.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 483095 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:51:50.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:52:00.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 455294 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:00.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:52:10.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 471384 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:10.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:52:20.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 8 times with error "peer:12D3KooWKqcaBtcmZKLKCCoDPBuA6AXGJMNrLQUPPMsA5Q6D1eG6: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:20.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 192 times with error "peer:12D3KooWPjetWPGQUih9LZTGHdyAM9fKaXtUxDyBhA93E3JAWCXj: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:20.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 469746 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:20.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:52:30.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 484137 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:30.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 29 times with error "peer:12D3KooWPjetWPGQUih9LZTGHdyAM9fKaXtUxDyBhA93E3JAWCXj: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:30.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:52:40.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 468843 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:40.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:52:50.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 366638 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:50.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:53:00.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 405526 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:53:00.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 107 times with error "peer:12D3KooWQZQCwevTDGhkE9iGYk5sBzWRDUSX68oyrcfM9tXyrs2Q: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:53:00.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:53:10.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 336923 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:53:10.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:53:20.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 71 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:53:20.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:53:30.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:64      Resrouce limits are no longer being exceeded.

```
## Validation tests

- Accelerated DHT client runs with no errors when ResourceManager is active. No problems were observed.
- Running an attack with 200 connections and 1M streams using yamux protocol. Node was usable during the attack. With ResourceManager deactivated, the node was killed by the OS because of the amount of memory consumed.
	- Actions done when the attack was active:
		- Add files 
		- Force a reprovide
		- Use the gateway to resolve an IPNS address.

It closes #9001 
It closes #9351
It closes #9322
2022-11-10 12:25:57 +01:00
Marcin Rataj
72262a8e10 feat: ipfs-webui 2.20.0
https://github.com/ipfs/ipfs-webui/releases/tag/v2.20.0
2022-11-10 01:11:08 +01:00
Russell Dempsey
4bebe2b667
docs: note log tail is broken (#9383) 2022-11-10 00:20:53 +01:00
Henrique Dias
a210abd743
feat(gateway): TAR response format (#9029)
Implementation of IPIP-288 (https://github.com/ipfs/specs/pull/288)

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-11-09 19:20:33 +01:00
Jorropo
3574caede5 fix: error when using huge json limit file
This error nicely instead of ooming when trying to use a json file so big it would oom.
2022-11-08 22:28:14 +01:00
Marcin Rataj
d69f7a5ac9 chore: go-multicodec v0.7.0
https://github.com/multiformats/go-multicodec/releases/tag/v0.7.0
2022-11-08 18:33:36 +01:00
Jorropo
b5b18e23e7 fix: remove old unused buggy coredag code 2022-11-03 14:46:28 +00:00
Andreas Källberg
2fd4e197a0 feat: Add command line completion for fish 2022-10-30 21:13:53 +00:00
Piotr Galar
a9cbdef023
Merge pull request #9377 from ipfs/disable-welcome-bot
chore: disable welcome bot
2022-10-29 11:56:30 +01:00
Piotr Galar
518fc32511
chore: disable welcome bot 2022-10-29 12:37:06 +02:00
Piotr Galar
1060477d45
Merge pull request #9352 from ipfs/no-snap
chore: delete snap configuration
2022-10-28 20:23:35 +01:00
Gus Eggert
27bf61ecc3
docs: update scoop package 2022-10-20 11:13:18 -04:00
Piotr Galar
0f44f2974a
Merge pull request #9283 from ipfs/docs-release-0.16.0
docs: init release issue template improvement process v0.16.0
2022-10-20 08:25:34 +02:00
Gus Eggert
8c72ea909a
feat: add delegated routing metrics (#9354) 2022-10-19 09:50:30 -04:00
galargh
c656952d78 Apply suggestions from the code review 2022-10-19 14:38:18 +02:00
Piotr Galar
cba1bdf4ea
Apply suggestions from code review
Co-authored-by: Steve Loeppky <biglep@protocol.ai>
2022-10-19 14:37:49 +02:00
Piotr Galar
baf315baf3
Merge pull request #9353 from ipfs/changelog-v0.17
chore: create v0.17.md changelog
2022-10-19 12:49:56 +02:00
Piotr Galar
f54018c39a
chore: create v0.17.md changelog 2022-10-18 18:55:20 +02:00
galargh
5482d4b0da chore: delete snap configuration 2022-10-18 17:17:41 +02:00
Marcin Rataj
b7a19d057e docs: pin remote arg
It accepts only one arg.
2022-10-14 21:16:36 +02:00
Russell Dempsey
396660956f feat: webui@v2.19.0 2022-10-14 21:15:36 +02:00
Rod Vagg
9e3745ebeb deps: upgrade go-ipld-prime to v0.19.0
Ref: https://github.com/ipld/go-ipld-prime/releases/tag/v0.19.0
2022-10-14 05:23:43 +02:00
Marcin Rataj
41fb5f18a8 test(car): export/import of (dag-)cbor/json codecs
This ensures we have full test coverage.
2022-10-13 19:47:09 +02:00
Nikhilesh Susarla
553d3e0ce7
add refs local alias repo ls (#9320)
* add refs local alias repo ls

* add test for /repo/ls

Co-authored-by: Nikhilesh Susarla <nikhilesh.susarla@cylogic.com>
2022-10-13 17:30:19 +02:00
Daniel Norman
007c960e0f
docs(cmds): Clarify block fetching of refs endpoint. 2022-10-13 17:29:29 +02:00
Lucas Molas
4b3307919f
Merge pull request #9219 from ipfs/schomatis/chore/dag-import/use-ipld-legacy-decode
chore(cmds): dag import: use ipld legacy decode
2022-10-13 11:55:13 -03:00
Lucas Molas
e48626f517 chore(cmds): dag import: use ipld legacy decode 2022-10-13 16:45:50 +02:00
Yann Autissier
b5fe824964
fix ipfs swarm peering crash in offline mode (#9261) 2022-10-13 16:43:06 +02:00
Ian Davis
066a0b9cab
feat: remove provider delay interval in bitswap (#9053)
* feat: remove provider delay interval in bitswap

* Use a non-zero provider search delay

* Add ProviderSearchDelay to Internal.Bitswap config

* Revert bitswap provider delay to 1s
2022-10-13 06:43:29 +02:00
Antonio Navarro Perez
bf8274f6e2
feat: --reset flag on swarm limit command (#9310)
* feat: --reset flag on swarm limit command

This flag allows to the user to reset limits to default values.

Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>

* Use adjusted default limits and remove already fixed FIXME

Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>

* Apply suggestions from code review

Co-authored-by: Gus Eggert <gus@gus.dev>

* Return correct defaults

* Remove resetting all values from a map.

Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>

Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>
Co-authored-by: Gus Eggert <gus@gus.dev>
2022-10-12 11:02:43 -04:00
Piotr Galar
cf4bf8a1c8
Merge branch 'master' into docs-release-0.16.0 2022-10-12 13:41:48 +02:00
galargh
2321be0457 docs: self-review the release issue template updates 2022-10-12 13:29:39 +02:00
galargh
4f76b9f326 docs: apply updates discovered during the final release 2022-10-12 12:13:37 +02:00
Henrique Dias
4291d6b236
fix: add InlineDNSLink flag to PublicGateways config (#9328)
https://github.com/ipfs/kubo/issues/9243
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-10-11 15:45:43 +02:00
Jamie Dubs
052d797ca7
docs: Fix typo and grammar in README 2022-10-07 22:11:05 +02:00
Gus Eggert
e550d9e476
ci: add stylecheck to golangci-lint (#9334) 2022-10-06 10:18:40 -04:00
Antonio Navarro Perez
bffc012c6b Fix: swarm stats all command
`swarm stats all` requires that the ResourceManager instance
implements `rcmgr.ResourceManagerState`, and `loggingResourceManager`
was not implementing it, so the command was failing.

Also added a sharness test to check that the command is executing
correctly, because `jq -e` doesn't return an error if the json is nil.

Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>
2022-10-06 14:55:18 +02:00
Piotr Galar
353e6a22e5
Merge pull request #9324 from ipfs/merge-release-v0.16.0
Merge release v0.16.0 back into master
2022-10-05 13:13:36 +02:00
galargh
564f82dc4d Merge remote-tracking branch 'origin/master' into release-merge-master 2022-10-04 19:22:14 +02:00
Piotr Galar
38117db6fc
Merge pull request #9306 from ipfs/release-v0.16.0
release v0.16.0
2022-10-04 11:40:41 +02:00
galargh
6d85f9d629 chore: bump version to 0.16.0 2022-10-04 11:22:03 +02:00
galargh
9364243414 docs: update changelog-v0.16 with full changelog data 2022-10-04 11:15:00 +02:00
galargh
5d2f3373da docs: update application testing examples 2022-10-01 17:51:51 +02:00
galargh
940e3974b1 docs: copy final release instructions 2022-10-01 13:38:04 +02:00
Antonio Navarro Perez
a92e87a46d fix: Set default Methods value to nil 2022-09-29 13:37:55 +02:00
Marcin Rataj
c4a0656920 docs: document remaining 0.16.0 features 2022-09-28 20:13:03 +02:00