Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

rjalex

macrumors 6502
Original poster
Mar 27, 2011
274
62
Rome, Italy
In the last couple of weeks I was seriously unable to work with an application I'm using on my Mac (Protegè by Stanford university). I tried troubleshooting the app with no solution and lastly opened a Github problem on its website. In a nutshell the program could not open a "modal window" anymore, such as when you want to do a "File open" and the modal window to let you choose the file appears.

I called up Apple support and they asked me to reinstall MacOS. I felt this would not be a solution but it was. The application worked well again. So some system file got "corrupted" it seems.

How is this possible? Are there ways to assess the OS integrity?

If anyone's curious the bug I opened on github is pasted below. Take care and thanks

=====================================================

Protegè 5.5.0 on MacOS 12.3 on Mac Mini M1 2020

Protegè works fine when I load just one ontology file.

When I try to open a second ontology file, whether in the same window or not, just nothing happens. The log does not show anything special but if I start the application from the command line:

/Applications/Protégé.app/Contents/MacOS/JavaAppLauncher

I see the following error:

2022-03-17 20:16:28.909 JavaAppLauncher[3628:48585] -[NSApplication runModalForWindow:] may not be invoked inside of transaction begin/commit pair, or inside of transaction commit (usually this means it was invoked inside of a view's -drawRect: method.) The modal dialog has been suppressed to avoid deadlock. (
0 AppKit 0x00007ff80601eecc -[NSApplication runModalForWindow:] + 183
1 AppKit 0x00007ff80677db6e -[NSSavePanel runModal] + 519
2 AppKit 0x00007ff80677e0fe -[NSSavePanel runModalForDirectory:file:types:] + 168
3 libawt_lwawt.dylib 0x00000001259d3355 -[CFileDialog safeSaveOrLoad] + 391
4 Foundation 0x00007ff8041be857 __NSThreadPerformPerform + 179
5 CoreFoundation 0x00007ff803413bca CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION + 17
6 CoreFoundation 0x00007ff803413b32 __CFRunLoopDoSource0 + 180
7 CoreFoundation 0x00007ff8034138b0 __CFRunLoopDoSources0 + 242
8 CoreFoundation 0x00007ff8034122c0 __CFRunLoopRun + 892
9 CoreFoundation 0x00007ff803411884 CFRunLoopRunSpecific + 562
10 Foundation 0x00007ff80419cd9a -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 216
11 libawt_lwawt.dylib 0x00000001259f11ea Java_sun_lwawt_macosx_LWCToolkit_doAWTRunLoopImpl + 256
12 ??? 0x000000010e3c4434 0x0 + 4533797940
13 ??? 0x000000010e3b52bd 0x0 + 4533736125
14 ??? 0x000000010e3b52bd 0x0 + 4533736125
)

I see the same error when I try to use the "Save as..." command. I get a modal window asking what type of format I want (and click ok on TTL) but then get the above error (and nothing happens in the GUI).

This happens with any ontology file I am loading. All of the ontologies I am using load just fine if they are the only one. Can anyone please tell me how to solve this, please?

PS There might be some documentation on this on Apple’s developer site: https://developer.apple.com/documentation/appkit/nsapplication/1428436-runmodalforwindow
 
  • Like
Reactions: maxoakland
The 1s and 0s get jumbled up, which causes corruption. This probably happens when little bytes get caught as they are scurrying around, or bumped off course and never make it to their destination.

Go with that until you find a better story. In the meantime, focus on the tricks that fix things and be happy when they work.
 
Eh eh very funny :) So let's talk about the last part of your message. How do you even understand that there's a problem with the OS as opposed to the application misbehaving?
 
I'd put money on it being a Protege problem. The version you're using (5.5.0) was released in March 2019 when macOS Mojave was the current version. Since then, Catalina, Big Sur and Monterey have been released and they've been doozies as far as third-party application functioning goes…not to mention you're obviously running it via Rosetta 2 on your M1 Mini.

What do the developers have to say about this issue?
 
  • Like
Reactions: Tagbert and rjalex
Modern macOS cannot become corrupted. The OS volume is sealed and signed. When the machine boots, the integrity of the OS volume is checked and if any bit differs from what was expected the machine will not boot.

I agree with BrianBaughn. Your problem was most likely due to Protege or one of its filed becoming corrupted.
 
  • Like
Reactions: haginile and rjalex
I'd put money on it being a Protege problem. The version you're using (5.5.0) was released in March 2019 when macOS Mojave was the current version. Since then, Catalina, Big Sur and Monterey have been released and they've been doozies as far as third-party application functioning goes…not to mention you're obviously running it via Rosetta 2 on your M1 Mini.

What do the developers have to say about this issue?
Unfortunately their Github issues page ias as dead as a beached dead whale with 300+ open issues most of which don't even have a reply :(

So luckily it's working now as it had been for a few months on 12.x. Go guess what breaks ..... no clue at all (BTW it's a Java 8 app)

Thanks for caring.
 
Modern macOS cannot become corrupted. The OS volume is sealed and signed. When the machine boots, the integrity of the OS volume is checked and if any bit differs from what was expected the machine will not boot.

I agree with BrianBaughn. Your problem was most likely due to Protege or one of its filed becoming corrupted.
I see, but then how can the OS reinstall have fixed the problem (at least for now) ?
 
  • Like
Reactions: ratsg
Files in the /Library folder or User Account files do get fouled up or might contain legacy files that the new macOS doesn't like.

If you migrated your User Account and apps over from a prior version of macOS…one scenario is that something in those folders is wonking things up.

A new User Account, for testing purposes, is a way to see if it's a problem there.

I had an issue in Monterey with NTFS disks not being able to mount. It turned out to be two files a level down in the /Library folder. In my case I found them by doing a clean install of Monterey to another SSD and using Terminal to compare the two /Library folders for differences. Removing the offending files fixed it.
 
  • Like
Reactions: thebroz and rjalex
An OS install does several things beyond "writing the system files". It will have emptied all cache and temp files. There are also system configuration files (e.g. settings, prefs) which obviously are not immutable and can get corrupted or written with the wrong values.

Problems are likely to be caused by: incompatible third-party software; incorrect/corrupted user prefs; corrupted cache data; incorrect system configuration.

A reinstall of the OS won't affect much in the user folder (beyond caches), nor in /Library.

Installation as a fixing tool is over-rated. The internet is full of "I've reinstalled 12 times and it still doesn't work!!! How many more times must I do it?".
 
  • Like
Reactions: Tagbert and rjalex
In the last couple of weeks I was seriously unable to work with an application I'm using on my Mac (Protegè by Stanford university). I tried troubleshooting the app with no solution and lastly opened a Github problem on its website. In a nutshell the program could not open a "modal window" anymore, such as when you want to do a "File open" and the modal window to let you choose the file appears.

I called up Apple support and they asked me to reinstall MacOS. I felt this would not be a solution but it was. The application worked well again. So some system file got "corrupted" it seems.

How is this possible? Are there ways to assess the OS integrity?

If anyone's curious the bug I opened on github is pasted below. Take care and thanks

=====================================================

Protegè 5.5.0 on MacOS 12.3 on Mac Mini M1 2020

Protegè works fine when I load just one ontology file.

When I try to open a second ontology file, whether in the same window or not, just nothing happens. The log does not show anything special but if I start the application from the command line:

/Applications/Protégé.app/Contents/MacOS/JavaAppLauncher

I see the following error:

2022-03-17 20:16:28.909 JavaAppLauncher[3628:48585] -[NSApplication runModalForWindow:] may not be invoked inside of transaction begin/commit pair, or inside of transaction commit (usually this means it was invoked inside of a view's -drawRect: method.) The modal dialog has been suppressed to avoid deadlock. (
0 AppKit 0x00007ff80601eecc -[NSApplication runModalForWindow:] + 183
1 AppKit 0x00007ff80677db6e -[NSSavePanel runModal] + 519
2 AppKit 0x00007ff80677e0fe -[NSSavePanel runModalForDirectory:file:types:] + 168
3 libawt_lwawt.dylib 0x00000001259d3355 -[CFileDialog safeSaveOrLoad] + 391
4 Foundation 0x00007ff8041be857 __NSThreadPerformPerform + 179
5 CoreFoundation 0x00007ff803413bca CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION + 17
6 CoreFoundation 0x00007ff803413b32 __CFRunLoopDoSource0 + 180
7 CoreFoundation 0x00007ff8034138b0 __CFRunLoopDoSources0 + 242
8 CoreFoundation 0x00007ff8034122c0 __CFRunLoopRun + 892
9 CoreFoundation 0x00007ff803411884 CFRunLoopRunSpecific + 562
10 Foundation 0x00007ff80419cd9a -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 216
11 libawt_lwawt.dylib 0x00000001259f11ea Java_sun_lwawt_macosx_LWCToolkit_doAWTRunLoopImpl + 256
12 ??? 0x000000010e3c4434 0x0 + 4533797940
13 ??? 0x000000010e3b52bd 0x0 + 4533736125
14 ??? 0x000000010e3b52bd 0x0 + 4533736125
)

I see the same error when I try to use the "Save as..." command. I get a modal window asking what type of format I want (and click ok on TTL) but then get the above error (and nothing happens in the GUI).

This happens with any ontology file I am loading. All of the ontologies I am using load just fine if they are the only one. Can anyone please tell me how to solve this, please?

PS There might be some documentation on this on Apple’s developer site: https://developer.apple.com/documentation/appkit/nsapplication/1428436-runmodalforwindow

Every now and then Outlook will fail to run for me on my Mac. Uninstalling it doesn’t fix it because the standard uninstall does not clear out every last spot where the app stores files.

So I use AppCleaner now to delete all those folders - leaving the app itself intact and then Outlook starts up fresh, an working.

Don’t be so quick to blame the OS - this goes quadrupled when the app is old, with no updates and apparently full of known issues…
 
  • Like
Reactions: rjalex
Thank TiggrToo :) Not blaming the OS, just striving to understand! So if this happens again, instead of going the OS reinstall route as suggested by Apple you're saying that I should maybe try an Appcleaner uninstall and see what give ... will try even though I am slightly skeptic since when the Mac Protegè install started misbehaving, I downloaded their "platform independent" bundle and ran it under a different JVM (Azul) and the problem persisted and went away only when I reinstalled the OS.
 
  • Like
Reactions: maxoakland
Ben and Brian thanks for your insights! I think I understand a bit more now. Still wonder why the Apple reps go that way then.
 
I see, but then how can the OS reinstall have fixed the problem (at least for now) ?
The one time I had an issue, and this required (OK, maybe it was my preference to do so) a Clean install. what happened was that I got duplicate system files over the years and an incompatible one was loading instead of the correct one. I haven't heard of this problem for awhile, so maybe an install will actually delete the older incompatible system files? Does it? the answer is simple, I dunno.
 
  • Like
Reactions: collin_ and rjalex
I would not recommend any app that claims to "clean", "purge" or otherwise tidy your disk. MacOS does not get dirty, go rusty, or need an oil change every 5,000 miles. The dangers of CRUFT :eek: (old residual files) are vastly overstated.

Such apps can easily delete things you need. Emptying cache files regularly will only slow down your computer until they re-fill.

Your problems with Protege look to be problems that the developer of the app needs to address.
 
This sounds like something java-related, or related to the app you're using.
The Mac OS itself... not so much.

With the "sealed system volume" that the m-series Macs use, OS "corruption" becomes unlikely (I would think)... because apps (like the user) can't "touch it"...
 
The 1s and 0s get jumbled up, which causes corruption. This probably happens when little bytes get caught as they are scurrying around, or bumped off course and never make it to their destination.

Go with that until you find a better story. In the meantime, focus on the tricks that fix things and be happy when they work.
Wow, this was incredibly condescending and unhelpful... It says a lot about how the culture at MR has changed that this is the first response to a humble request for help and insight.
 
Modern macOS cannot become corrupted. The OS volume is sealed and signed. When the machine boots, the integrity of the OS volume is checked and if any bit differs from what was expected the machine will not boot.

I agree with BrianBaughn. Your problem was most likely due to Protege or one of its filed becoming corrupted.
Is the OS integrity checked at boot, or are the system volumes just marked read only to prevent intentional modification? There are things that can cause unintentional changes in the filesystem...
 
  • Wow
Reactions: maxoakland
I would not recommend any app that claims to "clean", "purge" or otherwise tidy your disk. MacOS does not get dirty, go rusty, or need an oil change every 5,000 miles. The dangers of CRUFT :eek: (old residual files) are vastly overstated.

Such apps can easily delete things you need. Emptying cache files regularly will only slow down your computer until they re-fill.

Your problems with Protege look to be problems that the developer of the app needs to address.
That’s not correct. Even just normal installing and uninstalling applications will leave leftover files in the Library folder. What happens when those files stay for several OS upgrades and you end up installing a new version of the app?

That’s just one example I can think of
 
That’s not correct. Even just normal installing and uninstalling applications will leave leftover files in the Library folder. What happens when those files stay for several OS upgrades and you end up installing a new version of the app?
That will depend on how you uninstalled, and what provision the devs of the app made for dealing with an existing installation. Broadly, I'd say, most apps deal with legacy library components well.

Cleaning apps have been known to delete the wrong content -- they can make a mistake just as easily as you; so I'd favour learning about the contents of Library folders yourself, rather than regularly running an app of that kind. Neither situation is black & white.
 
That’s not correct. Even just normal installing and uninstalling applications will leave leftover files in the Library folder. What happens when those files stay for several OS upgrades and you end up installing a new version of the app?

That’s just one example I can think of

True. Every now an then I find leftovers of uninstalled apps in user library/application support. And I'm not talking about some shady apps. Using AppCleaner for more than decade, and never experienced deleting wrong content.
 
Modern macOS cannot become corrupted. The OS volume is sealed and signed. When the machine boots, the integrity of the OS volume is checked and if any bit differs from what was expected the machine will not boot.

I agree with BrianBaughn. Your problem was most likely due to Protege or one of its filed becoming corrupted.
As far as I can tell, this is true. So... @rjalex good question. I would also like to know how this can happen (if it even can happen).

I still do clean installs decently often, partially because it's relatively quick and easy once you've done it enough times (password manager helps, too). Provided that I don't feel my 'Data' volume has gotten too messy, is this a complete waste of time?

Whenever I get a new device, I wipe and reinstall not only the OS but also the firmware directly to the latest version using the Restore function on Apple Configurator 2, then set it up as a new device. Just feels "clean" idk.
 
Last edited:
on the legacy ms side, this is so common its been given the term win rot.

Anything mechanical (i.e. read spinning rust hard disk drive) will ultimately fail.

Electronics, assuming good clean power, once its ran for a couple of weeks is typically good for years and sometimes decades. From our shared Apple HW past, it seems that long term capacitors are typically the electronic component most likely to fail. But still, poor power, power spikes/hits, etc can cause issue and corruption.

We all love our Apple products here, but nothing is infalable. That is what backups are for, recovery when the worst happens.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.