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

Process: Make warning about processes hanging if output buffers get full more visible #4864

Closed
2 tasks
pat0026 opened this issue Sep 11, 2023 · 3 comments
Closed
2 tasks

Comments

@pat0026
Copy link

pat0026 commented Sep 11, 2023

Related to #3661,

Before finding the related issue above, my binary hung when using the RUN PROCESS. It has consumed a lot of my time investigating whether the robot test has found a bug or not. I found out that it is a limitation or weird behavior on RF based on the related issue. It could really help other developers to note this limitation, to avoid misunderstanding the test, and to avoid unnecessary investigation. Thank you in advance.

RobotFramework Version: 6.1.1
Actions to resolve the issue:

  • Add this limitation or behavior in the Process Library Documentation
  • Fix the bug ( if possible )
@pat0026 pat0026 changed the title Warn users or fix issue regarding hanging process to avoid unnecessary investigation Warn users or fix issue regarding hanging process Sep 11, 2023
@pekkaklarck
Copy link
Member

Large outputs hanging processes is already documented. Do you have concrete ideas how to enhance the documentation?

The general problem that output buffers get full cannot be fixed. We are not planning to look at that simply because redirecting outputs to files is such an easy workaround. If you have ideas how to fix the underlying issue and are willing to provide a PR doing that we certainly are interested, though.

The above said, there was an issue related to standard input configuration (#4065) that we have now fixed. We first introduced new stdin argument in RF 4.1.1 (#4102) to control the behavior and RF 7.0 changes the default value of stdin so that it shouldn't anymore cause issues (#4103). If your issue was related to stdin, then it's already fixed (although RF 7.0 is still under development).

@pat0026
Copy link
Author

pat0026 commented Sep 13, 2023

Good day,

Thanks for pointing out that this is already included in the documentation.
To be honest I have skimmed the document and focused on the Run Process keyword itself and partially the Running processes in shell. I only thought that instructions in Standard output and error streams is setting the stdout and stderr destination.

Personally, I think that the following could help other developers:

  • if there was a warning box or a note that stands out regarding the hanging process under stdout and stderr streams.
  • Add a warning/note or link that points to the in-memory buffer limitation inside the Run Process and Start Process keywords container so that they immediately know the behavior of this keyword.

Thank you again and have a nice day.

@pekkaklarck
Copy link
Member

Yeah, this could be mentioned in the Run Process and Start Process docs.

@pekkaklarck pekkaklarck changed the title Warn users or fix issue regarding hanging process Process: Make warning about processes hanging if output buffers get full more visible Sep 13, 2023
@pekkaklarck pekkaklarck added this to the v7.0 milestone Sep 13, 2023
@pekkaklarck pekkaklarck self-assigned this Sep 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants