-
Notifications
You must be signed in to change notification settings - Fork 106
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
Debugger 2.0.2 service is messed up #2544
Comments
I am going to add an addendum here as I feel it important. I have an update and its even worse than I thought. However, its consistent! I just went to another dev system, went thru the clean up and setup process, and got it working so the debug worked. Notified the dev team for that system that debugger was running. Anyway, I ran a test today after my earlier post when I opened this issue and the debug still worked. I then grabbed a colleague and we did a test with his laptop on the same IBM i dev system. Same version of vscode and all extensions updated. I watched him do it. This is a screen shot of my system on the left and his system on the right. You can see the server and service job numbers are identical, just like my previous post image showed on that system. I had him open his file explorer to look for a cert. One is there. It was old, but it was there. It should have prompted him that there was a cert mismatch, Import option allowed. Didn't. I guess I call that a pattern now. Again, explains why developers were cranking out new certs multiple times a day. One generates, debugs what they need, then another comes along, generates and debugs, then another gens certs and debugs. Like a revolving door. Hope this helps. |
Sounds like there is an issue when the debug service status is being checked. |
Here you go Sebastien, |
Thanks @duieolson ! This should return test -r /QIBM/UserData/IBMiDebugService/.code4i.debug; echo $? This should return test -r /QIBM/UserData/IBMiDebugService/C4iDebugService.env; echo $? This should return cat /QIBM/UserData/IBMiDebugService/C4iDebugService.env | grep CODE4IDEBUG Let me know how it goes; thanks! |
@sebjulliand Is there any update to this issue? |
@duieolson We're going to need your help so we can collect more information about your setup. Please see this PR and download the VSIX that is available and install it into your VS Code instance. Following that, navigate to the Debug View after connecting to a system and head to the Code for IBM i output channel. Please share the contents of your Code for IBM i output channel after the error appears in the view. |
I am trying to get you want you need, but I am now struggling to do that. java version "11.0.25" 2024-10-15 I also thought about the configuration file and I went into there and cleared out anything after line 60. java version "17.0.13" 2024-10-15 So I keep digging and find out that our PTF crew just put on a new set of PTFs. Including 5770JV1 Java 17 My other system that is debugging ok doesn't have that Java 17 yet. It will in a couple weeks. I presume that will break then too? |
@duieolson On the system that is not starting up the Debug Service, can you please share the contents of these files:
|
Sure Liam, |
ok, cleared the noted directory leaving the directory itself. java version "11.0.25" 2024-10-15 Here's the same 3 files post reset. |
@duieolson After you see the Debug View, can you please share the Code for IBM i output as requested before? |
Code for IBM i, version 2.15.3 .: echo "This should be the only text!" .: echo $HOME && cd && test -w $HOME /home/: /usr/bin/uname -rv /home/: echo "$HOME/.vscode/" /home/: echo "$HOME/.vscode/" /home/: echo "$HOME/.vscode/" /home/: echo "$HOME/.vscode/" Code for IBM i components: /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 { /home/: echo $SHELL /home/: test -r /QIBM/UserData/IBMiDebugService/C4iDebugService.env /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" CCSID information: /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" { /home/: test -r /QIBM/ProdData/IBMiDebugService/package.json { /home/: test -r /QIBM/UserData/IBMiDebugService/C4iDebugService.env /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: test -r /QIBM/ProdData/IBMiDebugService/package.json /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: test -r /QIBM/UserData/IBMiDebugService/C4iDebugService.env /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 { /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" { /home/: test -f /QIBM/UserData/IBMiDebugService/certs/debug_service.pfx /home/: test -f /QIBM/UserData/IBMiDebugService/certs/debug_service.crt /home/: test -f /QIBM/UserData/IBMiDebugService/.code4i.debug /home/: test -f /QIBM/ProdData/IBMiDebugService/bin/certs/debug_service.pfx /home/: test -r /QIBM/UserData/IBMiDebugService/C4iDebugService.env /home/: test -f /QIBM/UserData/IBMiDebugService/.code4i.debug /home/: test -f /QIBM/UserData/IBMiDebugService/certs/debug_service.pfx /home/: test -f /QIBM/UserData/IBMiDebugService/certs/debug_service.crt /home/: cat /QIBM/UserData/IBMiDebugService/certs/debug_service.crt /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" { /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: test -r /QIBM/UserData/IBMiDebugService/C4iDebugService.env /QIBM/UserData/IBMiDebugService: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" |
@duieolson Can you please confirm you are using the VSIX that was built for this? |
Sorry Liam, I was not.. Here is the code for i output with VSIX installed. /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" /home/: LC_ALL=EN_US.UTF-8 /home//.vscode/cqsh_1 -c "system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"" |
Type: Bug
Sorry for the length, bug I have to open a new issue on the debugger.
New dev system. SJ03030 is on. V2.0.2 loaded.
I just went thru the process of cleaning up the .env file so that nothing is after line 60.
I then deleted the certs in the IFS.
I then deleted the cert on my laptop.
I then restarted VSCode, Connect and Reload.
Swithed to the Debug perspective.
Status of the server, a green check.
Status of Service-Dead, Need to generate new certs. Took that option.
Generated and downloaded new cert.
Rebooted VSCode.
Redid the Connect and Reload
Opened Code for i. Opened a pgm source and made it ready to debug.
Switched to Debug perspective again. 2 green check marks.
switched back to Code for i. Started debug in Batch.
Worked!
I emailed dev team Debugger is up and working.
Dev member emailed back, no it is not.
We had a teams mtg to see his screen.
His Debug Server is a green check.
His Debug Service says 'Need to regenerate certificate'. What!??
So, to avoid that (what's the point, I just did it, plus I don't want them clicking on generate certs, ever), we went out to his c:\Users<profile><hostname>_debug_service.crt and we just deleted the cert file.
Restarted, VSCode on his system, along with a Connect and Reload.
Switched to the debug perspective. Server - green check.
Service- dead. wants to regenerate the certificate. Even though I just blew away the cert file from his laptop. Here's the screenshot of both my system on the left that just did a debug and his system on the right that he can't even connect the service job. He's stuck not able to get by the forced generate cert message. I was expecting the Service to say, wait, you dont have a matching cert. Import. That didn't happen.
So, with no cert, we then hovered on the system in the tray, choose Settings. Went to the Debugger tab, on the bottom, we clicked on the Download Certificate option. It downloaded it. Verified the cert file existed on his laptop.
Again, Restart VSCode, Connect and Reload.. Switch to Debug perspective... Status: Server-Green check. Service.. Forced to regenerate certificate. It didn't even know he just downloaded the cert. I guess I expected the download option to reset all check flags that are done to see if the server and service are ok and now in green check status.
That should have worked. But, it didn't reset the failed Service status to start over and go back to check and see if my laptop cert matches the system. Now I am starting to figure out why my developers are constantly generating new certificates. Cause it is unique to the person apparently.
How do I reset that flag that says force the cert regeneration to not know anything and go check it all again?
I dont know how to reset this or prevent this.
Extension version: 2.14.11
VS Code version: Code 1.97.2 (e54c774e0add60467559eb0d1e229c6452cf8447, 2025-02-12T23:20:35.343Z)
OS version: Windows_NT x64 10.0.22631
Modes:
System Info
canvas_oop_rasterization: enabled_on
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
video_decode: enabled
video_encode: enabled
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: enabled
webnn: disabled_off
A/B Experiments
The text was updated successfully, but these errors were encountered: