Skip to content
This repository has been archived by the owner on Sep 6, 2021. It is now read-only.

Sudden white screen in Bracket when trying to edit any JS file #12617

Open
soniajay80 opened this issue Jul 25, 2016 · 28 comments
Open

Sudden white screen in Bracket when trying to edit any JS file #12617

soniajay80 opened this issue Jul 25, 2016 · 28 comments

Comments

@soniajay80
Copy link

Hi,
bracketwhiteissue
Bracket editor become white and also not responding when i try to edit some content. It is not a fixed time pattern issue, sometime within 1 or 2 min it will happen but sometime after 10 min,

Below are my environment and Bracket version details:

Bracket Version: Release 1.7 build 1.7.0-16898 (release b0a363b)
OS : Windows 7 Enterprise SP-1 and Windows 8.1 Pro

@petetnt
Copy link
Collaborator

petetnt commented Jul 26, 2016

Hey there @soniajay80,

next time you are using Brackets, could you open your Developer Tools (from Debug -> Show Developer Tools) if by some chance the developer tools wouldn't hard crash too and we would get some errors to log by. Just keep the window open and then check the Console in the tools when the hard crash occurs.

@ilyachch
Copy link

/utils/EventDispatcher.js:125 Possible memory leak: 16 'activeEditorChange' listeners attached to Object {_eventHandlers: Object, _EventDispatcher: true}

some of same arrors were before fail

@caleb87
Copy link

caleb87 commented Oct 26, 2016

This also happens to me several times per day. I'll try to get a log posted.

@surendra-pichkaari
Copy link

Hi,
screenshot 34
I kept Developer Tools open like you said and image of console at the time of whitescreen. Hope you can solve this issue.

@zaggino
Copy link
Contributor

zaggino commented Nov 2, 2016

Seems like a CEF crash to me :-/

@surendra-pichkaari
Copy link

what does that mean?

@ficristo
Copy link
Collaborator

ficristo commented Nov 6, 2016

CEF stands for Chromium Embedded Framework, you can find it at https://bitbucket.org/chromiumembedded/cef
Basically it let us have access to the underlyng OS while building Brackets with web technologies.
I hit similar problems when running our test suite, which can use a lot of CPU and memory.
It is possible that your workflow could cause a crash of CEF, so maybe we need to update our version.

It would interesting to know if you still hit this problem with https://github.com/zaggino/brackets-electron/
(It is a fork of Brackets which uses a differrent shell, electron instead of CEF)

@ficristo ficristo added the cef label Nov 6, 2016
@ficristo ficristo added this to the Release 1.9 milestone Nov 6, 2016
@zaggino
Copy link
Contributor

zaggino commented Nov 7, 2016

Guys I have replicated this with running a script. Basically it dumps about 5 databases to the hard drive in a way that it first deletes the old dumps and then writes them to disk, leading to a lot of deletes and creates reported by file watchers in very short time. Talking about 1000+ files deleted and then created again in less than a second.

The culprit seems to be tons of calls (possibly recursive) to _addSearchResultsForEntry https://github.com/adobe/brackets/blob/master/src/search/FindInFiles.js#L756

This also crashes Brackets-Electron btw

@petetnt
Copy link
Collaborator

petetnt commented Nov 7, 2016

Nice job debugging the issue @zaggino 👍

@gem0303
Copy link

gem0303 commented Jan 6, 2017

Constantly getting this crash. As noted, it only seems to occur when editing js files and it happens whether or not I have extensions loaded. Is there any known workaround? I don't want to switch text editors but this workflow is unsustainable. :(

edit: I saw a comment above that (I think) says this error occurs when there's programs using a lot of CPU and memory. I have Adobe Photoshop CC 2017 running while working which is a huge resource hog. I just reduced the amount of RAM Photoshop uses to see if there's any improvement in Brackets.

edit #2: I lowered the RAM and opened a smaller PS file, and was able to work for several hours without interruption. I opened a larger PS file and within 10 minutes had a crash. Pete requested I post my Brackets Health Report.

{
    "uuid": "4bf26be5-5ef6-4e23-98ae-70f077d63d1f",
    "snapshotTime": 1483741610531,
    "os": "win",
    "userAgent": "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Brackets/1.8.0.0 Chrome/49.0.2623.110 Safari/537.36",
    "osLanguage": "en-GB",
    "bracketsLanguage": "en-GB",
    "bracketsVersion": "1.8.0-17108",
    "fileStats": {
        "openedFileExt": {
            "css": 15,
            "js": 13,
            "html": 8
        },
        "workingSetFileExt": {
            "css": 1
        }
    },
    "ProjectDetails": {
        "prj-1187525310": {
            "numFiles": 14,
            "cacheSize": 118680
        }
    },
    "projectLoadTimes": ":296",
    "fileOpenTimes": ":677",
    "ModuleDepsResolved": 644,
    "AppStartupTime": 2170,
    "prefNodeSearchDisabled": false,
    "prefInstantSearchDisabled": false,
    "installedExtensions": [
        {
            "name": "brackets-semicolon-terminator",
            "version": "0.9.2"
        },
        {
            "name": "raven",
            "version": "1.0.5"
        },
        {
            "name": "brackets-css-color-preview",
            "version": "0.0.7"
        },
        {
            "name": "fdecampredon.brackets-tslint",
            "version": "0.1.1"
        },
        {
            "name": "rhuno.replace.in.selection",
            "version": "1.0.0"
        },
        {
            "name": "work-heatmap",
            "version": "1.1.0"
        },
        {
            "name": "dnbard.extensions-rating",
            "version": "0.7.4"
        },
        {
            "name": "edc.brackets-snippets",
            "version": "1.8.1"
        },
        {
            "name": "jonwolfe.file-tree-exclude",
            "version": "0.6.3"
        },
        {
            "name": "ivogabe.icons",
            "version": "1.5.7"
        },
        {
            "name": "le717.html-skeleton",
            "version": "1.4.3"
        },
        {
            "name": "brackets-emmet",
            "version": "1.2.2"
        }
    ],
    "bracketsTheme": "raven"
}

@gem0303
Copy link

gem0303 commented Jan 6, 2017 via email

@petetnt
Copy link
Collaborator

petetnt commented Jan 6, 2017

Yeah sorry about that @gem0303, I responded but then remembered that Zaggino had already nailed down the cause. Thanks for your health report though!

Wonder if we should throttle/queue _addSearchResultsForEntry

@zaggino
Copy link
Contributor

zaggino commented Jan 9, 2017

@petetnt one of the causes, not all of them, it still happens to me from time to time but I can't replicate consistently. I think tern code analysis running in the worker is to blame.

@trevorbest
Copy link

I was getting this a lot yesterday, interestingly, not 100% sure but whilst having a folder open on a network drive rather than local.

@gem0303
Copy link

gem0303 commented Jan 27, 2017

@ficristo

It would interesting to know if you still hit this problem with https://github.com/zaggino/brackets-electron/

I just installed Brackets Electron and unfortunately still had the white screen crash, as @zaggino mentioned.

Is there anything I can do to fix the crashes? If not, will this issue be resolved in Brackets 1.9 and what is its expected release date?

I'm really bummed to switch away from Brackets because I love it, but I can't be productive with it anymore.

@ficristo
Copy link
Collaborator

Could you leave open the developer tools and see if there are some errors when the crash happens?
And do you have some step to reproduce?
For the network drive I think our current watching mechanism is not good at least on macOS.
(Probably we should check if it is a network drive and switch to the polling mode)

@zaggino
Copy link
Contributor

zaggino commented Jan 27, 2017

@ficristo I'm 90% sure it's something doing infinite loops in browser process, first guess would be js code hints, we updated it recently and it's using webworker. #11948 should fix this. If this was the watching mechanism, it wouldn't crash electron, the processes are separate there.

@gem0303
Copy link

gem0303 commented Jan 28, 2017

Thanks for the quick replies. I'm using Notepad++ at work and it works well enough, but it's no Brackets!

developer tools

@ficristo I've kept it open before and never had any error messages when the crash occurs.

Repro steps

The only 100% consistent thing that crashes it is editing a js file (normally they're rather long files, but I'm not sure if the size of the js file has any impact).

It will crash whether or not Adobe Photoshop is open, whether or not I have a network folder open, and also whether or not I have extensions loaded. I've reinstalled Brackets a couple times, too. I'm running Win 10. Health report is posted several comments up.

I didn't have these issues at all until a month or two ago, so something must've changed with my workflow or work computer to exacerbate the issue. Off the top of my head, my computer has had the following changes recently:
-- new graphics card
-- BIOS update
-- switched to a monitor with 2,560-by-1,440 resolution

Can't think of anything that changed with my workflow or programs, besides normal Adobe or browser updates.

@zaggino Should I try/is it possible to disable js code hints?

@zaggino
Copy link
Contributor

zaggino commented Jan 28, 2017

@gem0303 try deleting extensions\default\JavaScriptCodeHints folder from your Brackets installation. Just to see if it helps (you might also want to move it so you can move it back)

@gem0303
Copy link

gem0303 commented Feb 21, 2017

Apologies for the huge delay in reporting back. I removed the JavaScriptCodeHints folder as @zaggino suggested and have not had any further issues with Brackets crashing. Thanks so much for the help!

@gravsten
Copy link

FYI, this problem has become a crucial issue since Brackets 1.11 added several default extensions... leading to repeated hangs whenever one moves from one tab to another (if a JS file), and sometimes a complete "white screen" crash.
How can such a productivity killer be allowed and enabled by default in a production software, this is beyond me.
My solution (after considering moving to SublimeText 3) was to disable the following default extensions:

  • brackets-javascript-code-hints
  • ESLint
  • JavaScriptQuickEdit
  • JSLint

Not sure which one is the real culprit, just hoping the next release of Brackets will show some better sense.

@moeiscool
Copy link

omg. i lost much changes, very sad i am. can't open logs. i crys. this happen much. i try different text editor now. i know no one cares but i wanted to vent anyway.

@petetnt
Copy link
Collaborator

petetnt commented Feb 11, 2018

Sorry about that @moeiscool. We do care though. Could you share your Health Report (Help -> Health Report) and details about your operating system?

@gravsten
Copy link

After taking a second look at SublimeText 3, I found it uses much less RAM, is much faster, has the much needed multiline Search & Replace (even with RegEx!), no hangs, no white screen and no crash.

This has now become my main development tool, as I only use Brackets for the rare case of editing a RegEx string due to syntax highlighting (SublimeText 3 only highlights matching brackets in code, not in a RegEx string).

Will happily reconsider if/when Brackets solves this now 18-month old bugs that make it repeatedly hang or crash with a "white screen" of death.

@petetnt
Copy link
Collaborator

petetnt commented Feb 11, 2018

Awesome that you found a tool that works for you! If you want want to help with issues like yours, do share your Health Report and details of your usage and other related things!

Thanks.

@moeiscool
Copy link

moeiscool commented Feb 11, 2018

@gravsten sublime text requires $ which makes it not a choice for everyone. If you think it's cheap that's fine but not everyone is willing to shell out for a text editor. I do see they have no time limit on eval but that's, in a way, stealing if you don't give something back to the devs.

@petetnt here is my health report on the project folder that crashes the most. My other project folders don't seem to be plagued by this.

I should also mention i keep 4 instances of brackets open usually. 1 for each project i am working on.. and repeatedly it's just my project, not my client's... i guess i should be sort of happy about that :P

Oh and brackets is probably the best editor there is. So please fix it! or at least add a recovery method to get our unsaved changes.

[
    {
        "snapshotTime": 1518374104980,
        "os": "win",
        "userAgent": "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Brackets/1.12.0.0 Chrome/49.0.2623.110 Safari/537.36",
        "osLanguage": "en-US",
        "bracketsLanguage": "en-US",
        "bracketsVersion": "1.12.0-17621",
        "fileStats": {
            "openedFileExt": {
                "ejs": 1,
                "js": 5,
                "sql": 1
            },
            "workingSetFileExt": {
                "sql": 1
            },
            "openedFileEncoding": {
                "UTF-8": 7
            }
        },
        "ProjectDetails": {
            "prj206204125": {
                "numFiles": 200,
                "cacheSize": 7124328
            },
            "prj-1322084079": {
                "numFiles": 2960,
                "cacheSize": 27821052
            },
            "prj2097739149": {
                "numFiles": 3884,
                "cacheSize": 27304234
            }
        },
        "projectLoadTimes": ":179",
        "fileOpenTimes": ":89(358)627[269]:205",
        "ModuleDepsResolved": 716,
        "AppStartupTime": 1839,
        "prefNodeSearchDisabled": false,
        "prefInstantSearchDisabled": false,
        "installedExtensions": [
            {
                "name": "brackets-markdown-preview",
                "version": "2.2.0"
            }
        ],
        "bracketsTheme": "dark-theme",
        "uuid": "6bd5-a232-cc15-18e6-d4a0",
        "olderuuid": "6bd5-a232-cc15-18e6-d4a0"
    },
    {
        "project": "brackets-service",
        "environment": "production",
        "time": "2018-02-11T18:35:07.208Z",
        "ingesttype": "dunamis",
        "data": {
            "event.guid": "471100da-9a5e-43b3-84dd-dbe1504d72bc",
            "event.user_guid": "6bd5-a232-cc15-18e6-d4a0",
            "event.dts_end": "2018-02-11T18:35:07.211Z",
            "event.category": "pingData",
            "event.subcategory": "",
            "event.type": "",
            "event.subtype": "",
            "event.user_agent": "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Brackets/1.12.0.0 Chrome/49.0.2623.110 Safari/537.36",
            "event.language": "en-US",
            "source.name": "1.12.0-17621",
            "source.platform": "win",
            "source.version": "1.12.0-17621"
        }
    }
]

@gravsten
Copy link

@moeiscool Brackets was probably the best editor (I could forgive its excessive use of RAM and lack of multiline Search & Replace, considering it's free) until version 1.11 when it started to repeatedly hang on me whenever I switched tab or made any edit in a JS file (presumably due to linting).

My productivity as a developer went through the floor because suddenly any user interaction with Brackets resulted in tens of seconds of waiting for the editor to unfreeze. And that's not even taking into account the occasional white screen of death crash with unsaved changes lost forever.

Unfortunately, version 1.12 didn't fix these critical issues, which makes paying $80 for a commercial editor look very reasonable.

This is to say that I sincerely hope Brackets can fix the aforementioned issues (whether in the editor itself or in any extension peddled by it) before adding new functionality or other improvement.
I am definitely in favour of open-source solutions, and it's not just about the $.

@moeiscool
Copy link

moeiscool commented Feb 12, 2018

@gravsten ive tried atom and other editors. Brackets is the only one that makes it easy to get used to programming. It also being the younger sibling of Dreamweaver adds sentiment. I used to use Dreamweaver in elementary school. That alone makes me more productive. The nostalgia.

The number of times it does this white crash thing isn't as much of a problem as lacking features and requiring modification. I think the tool should have the necessary features to make it worth using and easy to get used to. Bugs happen, it's up to the work ethic of the developers to fix it. Seeing as how brackets has come this far and is free I am willing to follow Brackets.

Brackets is a community program. This makes society more productive and i am more willing to donate $80 to the brackets team than pay sublime for anything.

You're absolutely right, its not just about the $.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests