aws / amazon-sagemaker-feedback

Amazon SageMaker Public Feedback Dashboard
Creative Commons Attribution Share Alike 4.0 International
6 stars 1 forks source link

Unable to open terminal in Sagemaker Studio Code Editor #111

Open RolfeySBG opened 4 months ago

RolfeySBG commented 4 months ago

Product Version

Issue Description

Hello,

I've recently been unable to open the Terminal in Code Editor. When I click New Terminal, or use the keyboard shortcut, it opens briefly and then just closes down immediately.

Expected Behavior

Previously, the terminal would load up as expected, but now it doesn't. Occasionally it will work, but I can't see a pattern as to why it sometimes does work. It's effecting the whole team, it's not just an issue local to me.

Observed Behavior

I click the New Terminal button, it loads briefly for a few milliseconds but then instantly closes down.

Product Category

Code-Editor

Feedback Category

Configuration and Setup, User Interface

Other Details

No response

RodrigoCasarCQ commented 4 months ago

same problem here!

ghazalsaheb commented 4 months ago

I have the same issue. Sometimes I can open it but when I change the root directory and open another folder, it keeps crashing

orangewise commented 4 months ago

I have the same problem, once I open a folder, the terminal exits...

RodrigoCasarCQ commented 4 months ago

I have found a post about this problem on vscode: https://github.com/microsoft/vscode/issues/157421

orangewise commented 4 months ago

I have found a post about this problem on vscode: microsoft/vscode#157421

code editor in Sagemaker is on more recent version than mentioned in this post...

RinseL commented 4 months ago

same problem here, simply restarting space does help.

gui-miotto commented 4 months ago

Experiencing the same problem.

lsaizlap commented 4 months ago

I'm having the same issue

aluke1 commented 4 months ago

I have the same issue:

When I launch code editor, the terminal opens no problem. However, when I go to file -> open folder, the terminal no longer works. When I launch a new terminal, the terminal closes immediately. If I try to run a program in the folder (run and debug -> press play) I get this error:

Screenshot 2024-08-02 at 10 55 44 AM

I have tried restarting the space, changing the browser (issue occurs on safari and chrome), and changing the sagemaker image (both 1.8 and 1.9), and the issue still occurs.

This bug effectively breaks sagemaker code editor and needs immediate attention. We are considering switching vendors now because out entire team is experiencing this issue.

orangewise commented 4 months ago

I've opened an AWS support ticket and escalated it. Issue has been reproduced by AWS, they are still working on a fix...

david-waterworth commented 3 months ago

I'm seeing this as well, only when I open a folder though. If I open https://XXX.studio.XXX.sagemaker.aws/codeeditor/default the terminal works, but as soon as I open a folder it fails.

Before it stopped working at all, the terminal was unstable, it kept oscillating between an empty shell prompt, and previous output etc.

Edit: this eventually stopped working as well - to the point I cannot start a terminal at all, or run the debugger. But restarting the instance seems to work as a temporary fix.

scottfleming commented 3 months ago

Experiencing the same problem.

Restarting the space doesn't solve it

admivsn commented 3 months ago

Same issue here hope this can be resolved ASAP

scottfleming commented 3 months ago

Give a 🖐🏼 if you're taking your business to Lambda Labs for compute

rickyking commented 3 months ago

same issue with 1.9.

gui-miotto commented 3 months ago

My team has discovered a "solution" that is working for us.

Step 1: Press cmd/ctrl + J to open a new terminal Step 2: During the split second that the terminal will be open, spam click the + button to request new terminals. Step 3: Keep on clicking as fast as you can. Terminals will keep opening and crashing. Step 4: Eventually one terminal will survive. You are good now.

This plus button: Screenshot 2024-08-12 at 10 04 47

Yes, super elegant. I know.

RolfeySBG commented 3 months ago

@gui-miotto works for us as well. Thank you for sharing, and your team for discovering. Still fix it though, SageMaker :D

gui-miotto commented 3 months ago

Another workaround if you want to use the debugger: Edit the console and internalConsoleOptions keys of your launch.json.

For instance, this is how my launch.json looks like:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Current File",
            "type": "debugpy",
            "request": "launch",
            "program": "${file}",
            "console": "internalConsole",
            "internalConsoleOptions":"openOnSessionStart",
            "justMyCode": false,
        }
    ]
}
rickyking commented 3 months ago

I switched back to 1.8 image and works fine for now. Will report back if it does not work by downgrading...

jpmorris commented 3 months ago

Building off of @gui-miotto 's suggestion. All you have to do is spam the 'New Terminal' hotkey. In my case it's CTRL + SHIFT + <backtick>. Hit this 10 times, faster than sagemaker can close the terminals, and you'll usually stop the auto-closing. Sagemaker probably loses track of everything it wants to close to prevent you from working, so dust off those video game skills ;).

Oh and also, after you get in, you may notice that you cant run your debugger or program inside the terminal. What you should do is kill -9 <pid> (pkill doesnt work) for all bash and python (in my case) you can find. Kill the bash with the biggest PID last (that is probably your currently running terminal. The cause of this problem may be due to a background bash or python (if you use that) process running that the terminal lost. If you kill -9 al these it may get you your terminal control back.

jpmorris commented 3 months ago

Ok here's a better way. You may have to spam the hotkey to get ANY terminal to open. The issue appears to be a currently running bash in the background. You can use $$ to get your current bash PID and kill -9 all the other PIDs (not your currently running one) and then exit the final terminal and this should put you back in a working terminal state (they wont auto-close any longer). To make it easier run for pid in $(ps -ef | grep "bash" | grep -v $$ | awk '{print $2}'); do kill -9 $pid; done that will kill all but your currently running terminal. Then exit your currently running and then you should be able to open a terminal normally without issue.

orangewise commented 2 months ago

The fix for this issue has been released, terminals are opening again. One problem remains, when you open a folder using the code editor and then open a terminal, it is not opening in the correct folder...