PHPStorm suddenly cannot resolve SFTP sites

I am suddenly seeing errors like this when I try to upload files to my servers. I am also unable to sync my IDE settings:

[2021-02-01, 16:57] Upload to DEVELOPMENT (CDS) failed. Could not resolve file "sftp://servant.pesgce.com/". (Socket closed)

I am able to connect to the remote host via command line SFTP.

I have updated my Mac to the latest OS (macOS Big Sur 11.2). The IDE is:

 PhpStorm 2021.1 EAP
Build #PS-211.4961.37, built on January 28, 2021
PhpStorm EAP User
Expiration date: February 27, 2021
Runtime version: 11.0.9.1+11-b1257.1 x86_64
VM: Dynamic Code Evolution 64-Bit Server VM by JetBrains s.r.o.
macOS 11.2
GC: G1 Young Generation, G1 Old Generation
Memory: 2500M
Cores: 16
Registry: run.processes.with.pty=TRUE
Non-Bundled Plugins: ru.adelf.idea.dotenv (2021.1)

I see a lot of "java.net.SocketException: Socket closed” in the IDE log.

Any suggestions? I am, naturally, knee-deep in a bunch of code updates and suddenly being unable to use PHPStorm is a major, major PITA.

[I should add that the exact same problem occurs if I roll back to PHPStorm 2020.3.2]

17 comments
Comment actions Permalink

Do you have anything unusual in your ~/.ssh/config?
If not, please add #com.jetbrains.plugins.webDeployment and #com.intellij.ssh to Help | Diagnostic Tools | Debug Log Settings, restart the IDE, try to upload a file, and then share the logs (Help | Collect Logs and Diagnostic Data) via our upload service.

0
Comment actions Permalink

I do not have a ~/.ssh/config file 

Upload id: 2021_02_02_FTFFJNCd8G1wTLG1 (file: phpstorm-logs-20210202-084045.zip)

0
Comment actions Permalink

I should add that I am now unable to even launch 2021.1 EAP. It immediately goes into “Not Responding” mode and stays hung until I force quit it. When I do so, I get /var/log/system.log entries like the one below:

Feb  2 08:55:24 mrspeel com.apple.xpc.launchd[1] (application.com.jetbrains.PhpStorm-EAP.76807415.76808232.4200E11C-F9FB-4C1B-934E-6A79748B589D[41732]): Service exited with abnormal code: 143

I’m seeing log entries like these three when I attempt to launch 2021.1 EAP:

Feb  2 08:59:50 mrspeel phpstorm[43615]: getattrlist failed for /Library/GPUBundles/AMDRadeonX6000GLDriver.bundle/Contents/MacOS/ATIRadeonX6000SCLib.dylib: #2: No such file or directory

Feb  2 08:59:50 mrspeel phpstorm[43615]: getattrlist failed for /System/Library/Extensions/AMDRadeonX6000GLDriver.bundle/Contents/MacOS/ATIRadeonX6000SCLib.dylib: #2: No such file or directory

Feb  2 08:59:50 mrspeel phpstorm[43615]: getattrlist failed for /System/Library/Frameworks/OpenGL.framework/Resources//GLRendererFloat.bundle/GLRendererFloat: #2: No such file or directory

I am only able to launch 2020.3.2, which also can no longer connect to sites or sync IDE settings.

I was successfully able to use PHPStorm two days ago, up until I got the notice that 2021.1 EAP had been installed. 

0
Comment actions Permalink

It's not about SFTP even, your log is filled with Socket Closed messages generated by various subsystems. We can't get your config from JetBrains Account, we can't connect to our Marketplace.
Why do you have this in your Help | Edit Custom VM Options?

-Dhttp.proxyHost -Dhttp.proxyPort -Dhttps.proxyHost -Dhttps.proxyPort -DsocksProxyHost -DsocksProxyPort

0
Comment actions Permalink

Eugene, I have no idea. Should I try removing the lines to see if it helps?

Edit: I’m in 2020.3.2 and go to Help | Edit Custom VM Options. The file that PHPStorm opens is “PhpStorm 2020.3 EAP.app.vmoptions” and the contents are:

-Xms128m
-Xmx2500m
-XX:ReservedCodeCacheSize=240m
-XX:+UseCompressedOops
-Dfile.encoding=UTF-8
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-XX:ErrorFile=$USER_HOME/java_error_in_phpstorm_%p.log
-XX:HeapDumpPath=$USER_HOME/java_error_in_phpstorm.hprof
-Dide.no.platform.update=true
-Dsun.io.useCanonPrefixCache=false
-XX:+UseG1GC
-XX:CICompilerCount=2
-Djdk.module.illegalAccess.silent=true
-Djdk.attach.allowAttachSelf=true
-Didea.plugins.path=/Users/atropos/Library/Application Support/JetBrains/Toolbox/apps/PhpStorm/ch-0/203.7148.74/PhpStorm 2020.3 EAP.app.plugins

I don’t see the lines you mentioned above.

0
Comment actions Permalink

Definitely. A restart is required after the file modification. Also, make sure you don't have a proxy configured at Preferences | Appearance & Behavior | System Settings | HTTP Proxy.

0
Comment actions Permalink

I don’t see the lines you mentioned above.

Please also check Help | Edit Custom Properties for similar lines.

If it isn't there either, please uninstall PhpStorm in Toolbox and install 2020.3.2 back, hopefully, it resets those settings.

If it doesn't, please also confirm that you have no similar lines in ~/Library/Application Support/JetBrains/PhpStorm2020.3, *.vmoptions and *.properties.

0
Comment actions Permalink

I don’t have a proxy configured, but see the alert message below: I have no idea what it means, I’m afraid. I don’t touch Java on this computer, beyond installing the updates the Java “preference” app recommends.

There are no *.vmoptions or *.properties files in the path you mentioned above.

There is a .vmoptions file at

~/Library/Application\ Support/JetBrains/Toolbox/apps/PhpStorm/ch-1/203.7148.74/PhpStorm\ 2020.3\ EAP.app.vmoptions — is it safe to edit the file in, e.g., emacs or BBEdit?

0
Comment actions Permalink

I used Toolbox to uninstall PhpStorm and reinstalled:

PhpStorm 2020.3.2
Build #PS-203.7148.74, built on January 27, 2021
Licensed to AffinityCE / David O'Donnell
Subscription is active until March 19, 2021.
Runtime version: 11.0.9.1+11-b1145.77 x86_64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 10.16
GC: ParNew, ConcurrentMarkSweep
Memory: 725M
Cores: 16
Registry: run.processes.with.pty=TRUE

I am still unable to sync settings or upload files. I have uploaded a new log set at

Upload id: 2021_02_02_NeFxjwHDGGq5GmWd (file: phpstorm-logs-20210202-112153.zip)

Preferences > Appearance & Behavior > System Settings > HTTP Proxy still has the same error as in my earlier post.

0
Comment actions Permalink

Those arguments are now gone from the VM options, but apparently, it wasn't enough.

I have no idea where this https.proxy comes from. Please try the following:

  1. Close PhpStorm.
  2. Download and install PhpStorm from the DMG package: https://www.jetbrains.com/phpstorm/download/
  3. Rename the `~/Library/Application Support/JetBrains/PhpStorm2020.3` directory.
  4. Rename the `~/Library/Caches/JetBrains/PhpStorm2020.3` directory.
  5. Start PhpStorm from the Application pane, the one you just installed from the DMG.
  6. Create a temporary deployment configuration and check if it can connect now.
0
Comment actions Permalink

Eugene, when I followed the steps above, PhpStorm launched and immediately re-opened the last Project I had been working on in the previous app version.

The application is still unable to sync settings or connect over SFTP to a host, including creating a new temporary deployment configuration.

0
Comment actions Permalink

I renamed the other PhpStorm directories (PhpStorm2020.2, PhyStorm2021.3) that were in both locations you mentioned above, then removed the newly-created PhpStorm2020.3 directories. That reverted the new install to an unlicensed copy. I was unable to activate with our license information. Suspecting it was due to the Java socket problem, I elected to evaluate for free. As soon as I created a new project, I saw the error flag about not being able to sync IDE settings. I was unable to connect to any SFTP hosts in a new deployment configuration. The error I got was the same as above, Socket Closed.

Under Preferences > Appearance & Behavior > System Settings > HTTP Proxy, I see the same error message as from my screen shot before.

I have uploaded a new log set: Upload id: 2021_02_02_NfPshWFrcTgvKtki (file: phpstorm-logs-20210202-124853.zip)

0
Comment actions Permalink

That's rough. Please share the output of the printenv command.

0
Comment actions Permalink

╭─atropos@mrspeel.fates.org ~  

╰─➤  printenv

__CFBundleIdentifier=com.apple.Terminal

TMPDIR=/var/folders/98/7m8pr1x938s88v75r2mh8s7h0000gn/T/

XPC_FLAGS=0x0

LaunchInstanceID=C590FAF6-C6B4-4295-9FA9-8B333B3DF32A

TERM=xterm-256color

SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.NWJhiZi7iJ/Listeners

SECURITYSESSIONID=186ad

XPC_SERVICE_NAME=0

TERM_PROGRAM=Apple_Terminal

TERM_PROGRAM_VERSION=440

TERM_SESSION_ID=D5A7C6A3-3FC7-4C8D-A31E-074FB16076C8

SHELL=/bin/zsh

HOME=/Users/atropos

LOGNAME=atropos

USER=atropos

PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/Little Snitch.app/Contents/Components:/Library/Apple/usr/bin

SHLVL=1

PWD=/Users/atropos

OLDPWD=/Users/atropos

ZSH=/Users/atropos/.oh-my-zsh

PAGER=less

LESS=-R

LSCOLORS=Gxfxcxdxbxegedabagacad

LANG=en_US.UTF-8

_=/usr/bin/printenv

0
Comment actions Permalink

Hm. Could you please uninstall Little Snitch temporarily to see if it's what is causing the issue?

1
Comment actions Permalink

You’re a genius—with Little Snitch off, everything works fine. I still see the JVM proxy error, but I’m able to SFTP files again.

0
Comment actions Permalink

Great, I was running out of ideas already. Thank you for the update!
Also, it seems to be possible to configure Little Snitch in such a manner that it doesn't block PhpStorm, but for a Toolbox-managed installation, it's a bit harder because the configuration has to be re-done on each update:
https://youtrack.jetbrains.com/issue/IDEA-256339

0

Please sign in to leave a comment.