Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cannot build on s390x #2148

Closed
tseeling opened this issue Sep 20, 2021 · 3 comments · Fixed by #2151
Closed

cannot build on s390x #2148

tseeling opened this issue Sep 20, 2021 · 3 comments · Fixed by #2151

Comments

@tseeling
Copy link

tseeling commented Sep 20, 2021

>> checking rules for correctness
find . -name "*rules*.yml" | xargs -I {} /homes/DPAORNET/seelinth-admin/opt/node_exporter/bin/promtool check rules {}
Checking ./docs/example-16-compatibility-rules-new-to-old.yml
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
        panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xf47336]

goroutine 1 [running]:
gopkg.in/yaml%2ev3.handleErr(0xc00063f910)
        /app/vendor/gopkg.in/yaml.v3/yaml.go:276 +0xae
panic(0x11a4660, 0x2295140)
        /usr/local/go/src/runtime/panic.go:969 +0x132

Host operating system: output of uname -a

Linux myhostname 3.10.0-1127.el7.s390x #1 SMP Tue Feb 18 16:39:30 EST 2020 s390x s390x s390x GNU/Linux

node_exporter version: output of node_exporter --version

$ ~/node_exporter/node_exporter --version
node_exporter, version 1.2.2 (branch: HEAD, revision: 26645363b486e12be40af7ce4fc91e731a33104e)
  build user:       DPAORNET+seelinth-admin@myhostname
  build date:       20210920-16:58:41
  go version:       go1.15.6
  platform:         linux/s390x

node_exporter command line flags

problem occured during make

Are you running node_exporter in Docker?

no

What did you do that produced an error?

run make

What did you expect to see?

no error messages

What did you see instead?

lots of sigsegv and panic messages

@tseeling
Copy link
Author

Updated to latest go 1.17.1 for s390x, still no beef. Fails at make step "checking rules".

>> checking rules for correctness
find . -name "*rules*.yml" | xargs -I {} /homes/DPAORNET/seelinth-admin/go/bin/promtool check rules {}
Checking ./docs/example-16-compatibility-rules-new-to-old.yml
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
        panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xf47336]

goroutine 1 [running]:
gopkg.in/yaml%2ev3.handleErr(0xc00063f910)
        /app/vendor/gopkg.in/yaml.v3/yaml.go:276 +0xae
panic(0x11a4660, 0x2295140)
        /usr/local/go/src/runtime/panic.go:969 +0x132
gopkg.in/yaml%2ev3.yaml_parser_parse_node(0xc0005b8800, 0xc0005b8ab0, 0x100000000000080, 0x24)
        /app/vendor/gopkg.in/yaml.v3/parserc.go:564 +0x496
gopkg.in/yaml%2ev3.yaml_parser_state_machine(0xc0005b8800, 0xc0005b8ab0, 0x3ff8e5bf680)
        /app/vendor/gopkg.in/yaml.v3/parserc.go:170 +0x1a4
gopkg.in/yaml%2ev3.yaml_parser_parse(0xc0005b8800, 0xc0005b8ab0, 0x3ffb5240108)
        /app/vendor/gopkg.in/yaml.v3/parserc.go:129 +0x82
gopkg.in/yaml%2ev3.(*parser).peek(0xc0005b8800, 0x0)
        /app/vendor/gopkg.in/yaml.v3/decode.go:102 +0x3c
gopkg.in/yaml%2ev3.(*parser).parse(0xc0005b8800, 0x0)
        /app/vendor/gopkg.in/yaml.v3/decode.go:141 +0x36
gopkg.in/yaml%2ev3.(*parser).parseChild(0xc0005b8800, 0xc0005c75e0, 0x0)
        /app/vendor/gopkg.in/yaml.v3/decode.go:186 +0x2a
gopkg.in/yaml%2ev3.(*parser).document(0xc0005b8800, 0x300000000000030)
        /app/vendor/gopkg.in/yaml.v3/decode.go:195 +0xa6
gopkg.in/yaml%2ev3.(*parser).parse(0xc0005b8800, 0x0)
        /app/vendor/gopkg.in/yaml.v3/decode.go:151 +0x13a
gopkg.in/yaml%2ev3.unmarshal(0xc000014000, 0x1cc7, 0x1ec7, 0x1185a40, 0xc00000c980, 0x102fe80, 0x0, 0x0)
        /app/vendor/gopkg.in/yaml.v3/yaml.go:161 +0x22c
gopkg.in/yaml%2ev3.Unmarshal(...)
        /app/vendor/gopkg.in/yaml.v3/yaml.go:89
github.com/prometheus/prometheus/pkg/rulefmt.Parse(0xc000014000, 0x1cc7, 0x1ec7, 0x1cc7, 0x1ec7, 0x0, 0x0)
        /app/pkg/rulefmt/rulefmt.go:270 +0x90
github.com/prometheus/prometheus/pkg/rulefmt.ParseFile(0x3ffe4f7f311, 0x34, 0xc00063fae0, 0x2, 0x2, 0x3e)
        /app/pkg/rulefmt/rulefmt.go:292 +0x6a
main.checkRules(0x3ffe4f7f311, 0x34, 0xb, 0x1045a5a, 0xc00000c960, 0x2)
        /app/cmd/promtool/main.go:297 +0xa2
main.CheckRules(0xc00014e250, 0x1, 0x1, 0x100000000000003)
        /app/cmd/promtool/main.go:277 +0x180
main.main()
        /app/cmd/promtool/main.go:121 +0x243e

@discordianfish
Copy link
Member

Looks like it's a bug in promtool on s390x

@tseeling
Copy link
Author

Changed PROMTOOL_VERSION ?= 2.30.0 in Makefile, runs perfect now.

SuperQ added a commit that referenced this issue Sep 22, 2021
Fixes: #2148

Signed-off-by: Ben Kochie <superq@gmail.com>
SuperQ added a commit that referenced this issue Sep 22, 2021
Fixes: #2148

Signed-off-by: Ben Kochie <superq@gmail.com>
oblitorum pushed a commit to shatteredsilicon/node_exporter that referenced this issue Apr 9, 2024
Fixes: prometheus#2148

Signed-off-by: Ben Kochie <superq@gmail.com>
oblitorum pushed a commit to shatteredsilicon/node_exporter that referenced this issue Apr 9, 2024
Fixes: prometheus#2148

Signed-off-by: Ben Kochie <superq@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants