Skip to content

Commit ffece83

Browse files
committed
Remove pprof to file
- because it impacts performance if running all the time - because you can easily download the file from the http server - because it clutters the main code
1 parent 8bd126c commit ffece83

File tree

7 files changed

+7
-136
lines changed

7 files changed

+7
-136
lines changed

cmd/gossamer/flags.go

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -97,14 +97,6 @@ var (
9797
Name: "basepath",
9898
Usage: "Data directory for the node",
9999
}
100-
CPUProfFlag = cli.StringFlag{
101-
Name: "cpuprof",
102-
Usage: "File to write CPU profile to",
103-
}
104-
MemProfFlag = cli.StringFlag{
105-
Name: "memprof",
106-
Usage: "File to write memory profile to",
107-
}
108100
PprofServerFlag = cli.StringFlag{
109101
Name: "pprofserver",
110102
Usage: "enable or disable the pprof HTTP server",
@@ -390,8 +382,6 @@ var (
390382
ChainFlag,
391383
ConfigFlag,
392384
BasePathFlag,
393-
CPUProfFlag,
394-
MemProfFlag,
395385
PprofServerFlag,
396386
PprofAddressFlag,
397387
PprofBlockRateFlag,

cmd/gossamer/main.go

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -200,12 +200,6 @@ func gossamerAction(ctx *cli.Context) error {
200200
return fmt.Errorf("failed to read command argument: %q", arguments[0])
201201
}
202202

203-
// begin profiling, if set
204-
stopFunc, err := beginProfile(ctx)
205-
if err != nil {
206-
return err
207-
}
208-
209203
// setup gossamer logger
210204
lvl, err := setupLogger(ctx)
211205
if err != nil {
@@ -283,7 +277,7 @@ func gossamerAction(ctx *cli.Context) error {
283277
return err
284278
}
285279

286-
node, err := dot.NewNode(cfg, ks, stopFunc)
280+
node, err := dot.NewNode(cfg, ks)
287281
if err != nil {
288282
logger.Errorf("failed to create node services: %s", err)
289283
return err

cmd/gossamer/profile.go

Lines changed: 0 additions & 80 deletions
This file was deleted.

docs/docs/usage/command-line.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,7 @@ The global flags can be used in conjunction with any Gossamer command
2626
--basepath value Data directory for the node
2727
--chain value Node implementation id used to load default node configuration
2828
--config value TOML configuration file
29-
--cpuprof File to write CPU profile to
3029
--log value Supports levels crit (silent) to trce (trace) (default: "info")
31-
--memprof File to write memory profile to
3230
--name value Node implementation name
3331
--rewind value Rewind head of chain by given number of blocks
3432
--pprofserver Enable or disable the pprof HTTP server

docs/docs/usage/configuration.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@ Gossamer consumes a `.toml` file containing predefined settings for the node fro
1414
[global]
1515
basepath = "~/.gossamer/gssmr"
1616
log = " | trace | debug | info | warn | error | crit"
17-
cpuprof = "~/cpuprof.out"
18-
memprof = "~/memprof.out"
1917
name = "gssmr"
2018
pprofserver = false
2119
pprofaddress = ":6060"

dot/node.go

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ var logger = log.NewFromGlobal(log.AddContext("pkg", "dot"))
3737
type Node struct {
3838
Name string
3939
Services *services.ServiceRegistry // registry of all node services
40-
StopFunc func() // func to call when node stops, currently used for profiling
4140
wg sync.WaitGroup
4241
started chan struct{}
4342
}
@@ -172,7 +171,7 @@ func LoadGlobalNodeName(basepath string) (nodename string, err error) {
172171
}
173172

174173
// NewNode creates a new dot node from a dot node configuration
175-
func NewNode(cfg *Config, ks *keystore.GlobalKeystore, stopFunc func()) (*Node, error) {
174+
func NewNode(cfg *Config, ks *keystore.GlobalKeystore) (*Node, error) {
176175
// set garbage collection percent to 10%
177176
// can be overwritten by setting the GOGC env variable, which defaults to 100
178177
prev := debug.SetGCPercent(10)
@@ -291,7 +290,6 @@ func NewNode(cfg *Config, ks *keystore.GlobalKeystore, stopFunc func()) (*Node,
291290
serviceRegistryLogger := logger.New(log.AddContext("pkg", "services"))
292291
node := &Node{
293292
Name: cfg.Global.Name,
294-
StopFunc: stopFunc,
295293
Services: services.NewServiceRegistry(serviceRegistryLogger),
296294
started: make(chan struct{}),
297295
}
@@ -397,10 +395,6 @@ func (n *Node) Start() error {
397395

398396
// Stop stops all dot node services
399397
func (n *Node) Stop() {
400-
if n.StopFunc != nil {
401-
n.StopFunc()
402-
}
403-
404398
// stop all node services
405399
n.Services.StopAll()
406400
n.wg.Done()

dot/node_test.go

Lines changed: 5 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,8 @@
44
package dot
55

66
import (
7-
"io"
87
"math/big"
98
"reflect"
10-
"sync"
119
"testing"
1210

1311
"github.com/ChainSafe/gossamer/dot/core"
@@ -19,7 +17,6 @@ import (
1917
"github.com/ChainSafe/gossamer/lib/genesis"
2018
"github.com/ChainSafe/gossamer/lib/grandpa"
2119
"github.com/ChainSafe/gossamer/lib/keystore"
22-
"github.com/ChainSafe/gossamer/lib/services"
2320
"github.com/ChainSafe/gossamer/lib/trie"
2421
"github.com/ChainSafe/gossamer/lib/utils"
2522

@@ -102,7 +99,7 @@ func TestNewNode(t *testing.T) {
10299

103100
cfg.Core.Roles = types.FullNodeRole
104101

105-
node, err := NewNode(cfg, ks, nil)
102+
node, err := NewNode(cfg, ks)
106103
require.NoError(t, err)
107104

108105
bp := node.Services.Get(&babe.Service{})
@@ -135,7 +132,7 @@ func TestNewNode_Authority(t *testing.T) {
135132

136133
cfg.Core.Roles = types.AuthorityRole
137134

138-
node, err := NewNode(cfg, ks, nil)
135+
node, err := NewNode(cfg, ks)
139136
require.NoError(t, err)
140137

141138
bp := node.Services.Get(&babe.Service{})
@@ -168,7 +165,7 @@ func TestStartNode(t *testing.T) {
168165

169166
cfg.Core.Roles = types.FullNodeRole
170167

171-
node, err := NewNode(cfg, ks, nil)
168+
node, err := NewNode(cfg, ks)
172169
require.NoError(t, err)
173170

174171
go func() {
@@ -270,7 +267,7 @@ func TestInitNode_LoadStorageRoot(t *testing.T) {
270267
ks.Gran.Insert(ed25519Keyring.Alice())
271268
sr25519Keyring, _ := keystore.NewSr25519Keyring()
272269
ks.Babe.Insert(sr25519Keyring.Alice())
273-
node, err := NewNode(cfg, ks, nil)
270+
node, err := NewNode(cfg, ks)
274271
require.NoError(t, err)
275272

276273
if reflect.TypeOf(node) != reflect.TypeOf(&Node{}) {
@@ -328,7 +325,7 @@ func TestInitNode_LoadBalances(t *testing.T) {
328325
ed25519Keyring, _ := keystore.NewEd25519Keyring()
329326
ks.Gran.Insert(ed25519Keyring.Alice())
330327

331-
node, err := NewNode(cfg, ks, nil)
328+
node, err := NewNode(cfg, ks)
332329
require.NoError(t, err)
333330

334331
if reflect.TypeOf(node) != reflect.TypeOf(&Node{}) {
@@ -356,26 +353,6 @@ func TestInitNode_LoadBalances(t *testing.T) {
356353
require.Equal(t, expected, bal)
357354
}
358355

359-
func TestNode_StopFunc(t *testing.T) {
360-
testvar := "before"
361-
stopFunc := func() {
362-
testvar = "after"
363-
}
364-
365-
serviceRegistryLogger := log.New(log.SetWriter(io.Discard))
366-
servicesRegistry := services.NewServiceRegistry(serviceRegistryLogger)
367-
368-
node := &Node{
369-
Services: servicesRegistry,
370-
StopFunc: stopFunc,
371-
wg: sync.WaitGroup{},
372-
}
373-
node.wg.Add(1)
374-
375-
node.Stop()
376-
require.Equal(t, testvar, "after")
377-
}
378-
379356
func TestNode_PersistGlobalName_WhenInitialize(t *testing.T) {
380357
globalName := RandomNodeName()
381358

0 commit comments

Comments
 (0)