Giter VIP home page Giter VIP logo

Comments (3)

prestonvanloon avatar prestonvanloon commented on September 4, 2024 1

I think this PR might be related: #13542

from prysm.

james-prysm avatar james-prysm commented on September 4, 2024

image
could you let me know what you were expecting? maybe more keys listed initially?

I pasted above what I see, you can scroll through the validator of choice using the arrow keys. Will test on another os

from prysm.

sjb933 avatar sjb933 commented on September 4, 2024

Hi James, I think it may be that you need a long list of validator keys for the issue to present itself. In order to reproduce I am:

  1. Connected to a linux server via SSH
  2. Running the validator exit command on a validator with many keys (more than one page is perhaps necessary for the issue to present itself).

I also triggered a panic related to this issue using the latest v5.0.3 prysmctl - detail below.

Here is the latest/broken version (v5.0.3) with panic stack trace

You can see that the rendering goes beyond the visible range of the terminal. Jumping around in the list causes sporadic rendering and it appears to jump around randomly in the list.

This is rendered first:
broken-v5 0 3 (1)

Then if navigate with the arrow keys it jumps to the head of the list and you can no longer see the selection:
broken-v5 0 3 (2)

When in this state, I was able to produce a panic by pressing the arrow keys several times and then exiting with CTRL-C:

panic: runtime error: slice bounds out of range [4468:4451]

goroutine 269 [running]:
bytes.(*Buffer).Write(0x0?, {0x2f77324?, 0x0?, 0x0?})
        GOROOT/src/bytes/buffer.go:181 +0xc5
github.com/manifoldco/promptui/screenbuf.(*ScreenBuf).Clear(0xc00033e420)
        external/com_github_manifoldco_promptui/screenbuf/screenbuf.go:47 +0x7c
github.com/manifoldco/promptui/screenbuf.(*ScreenBuf).Write(0xc00033e420, {0xc000c8cd00, 0xe, 0x10})
        external/com_github_manifoldco_promptui/screenbuf/screenbuf.go:68 +0x65
github.com/manifoldco/promptui.(*Select).innerRun.func1({0x31ce6c0?, 0xc00071f080?, 0x2cc9500?}, 0xc00041f030?, 0xba5c48?)
        external/com_github_manifoldco_promptui/select.go:336 +0xa89
github.com/chzyer/readline.(*DumpListener).OnChange(0xc00041efa0?, {0x31ce6c0?, 0x0?, 0xc3a040?}, 0xc000ba5f00?, 0x1?)
        external/com_github_chzyer_readline/operation.go:522 +0x2b
github.com/chzyer/readline.(*Operation).ioloop(0xc0004820e0)
        external/com_github_chzyer_readline/operation.go:341 +0x1a13
created by github.com/chzyer/readline.NewOperation in goroutine 1
        external/com_github_chzyer_readline/operation.go:88 +0x2d6

Here is the prior version which works as expected (v4.2.1)

You can see that it limits its rendering to a few lines that can be properly navigated with arrow keys

working-v4 2 1

from prysm.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.