[prev in list] [next in list] [prev in thread] [next in thread]
List: kstars-devel
Subject: Re: Kstars 3.6.0 MacOS find Object crash
From: Peter Amerl <pvamerl () gmail ! com>
Date: 2022-08-21 2:43:55
Message-ID: C0824747-64AB-4D79-831B-1E5F12B6CD42 () gmail ! com
[Download RAW message or body]
Hi All,
Just in case it is important, last night I tried out starting the executable from the \
command line, with the same Application crash whenever I tried the find operation, \
either by Apple-f or by selecting it through the menu system with the mouse. … \
sorry if someone already knows this to be the case … just trying to avoid a red \
herring due to lack of information.
Regards,
Peter
> On 20 Aug 2022, at 20:30, kstars-devel-request@kde.org wrote:
>
> Send Kstars-devel mailing list submissions to
> kstars-devel@kde.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
> https://mail.kde.org/mailman/listinfo/kstars-devel
> or, via email, send a message with subject or body 'help' to
> kstars-devel-request@kde.org
>
> You can reach the person managing the list at
> kstars-devel-owner@kde.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Kstars-devel digest..."
>
>
> Today's Topics:
>
> 1. Re: Kstars 3.6.0 MacOS find Object crash (Robert Lancaster)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Sat, 20 Aug 2022 01:01:35 -0400
> From: Robert Lancaster <rlancaste@gmail.com>
> To: Jasem Mutlaq <mutlaqja@ikarustech.com>
> Cc: KStars Development Mailing List <kstars-devel@kde.org>
> Subject: Re: Kstars 3.6.0 MacOS find Object crash
> Message-ID: <5B5B9058-0EFD-4F8F-BE25-B329CC3ED597@gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> Hey guys,
>
>
> Ok, I dug into this and ran a bunch of tests. I don't know why this crash only \
> occurs when running by double clicking the app and not by running from Terminal or \
> QT Creator. It is very inconvenient to have an error that won't happen when you \
> run the code in a debugger and then will happen every time if you don't! I had \
> thought that maybe it was something with MacOS sandboxing or gatekeeper, or maybe \
> it was something with packaging, or maybe it was something with environment \
> variables. But as far as I could tell through my tests it is none of those. I \
> printed the environments in a QMessagebox and they were slightly different, but not \
> in any way that mattered I think. The packaging was not the culprit because it \
> happened in the app both before and after packaging and I was running it on the \
> same machine, so it should not be the issue. I haven't fully ruled out something \
> with MacOS, but I don't currently think that is what it is since there was no error \
> message or warning that pops up about the app being blocked from doing something it \
> wasn't supposed to.
> So then I proceeded to experiment with the changes in that one Commit. I first \
> tried narrowing down where the problem was by copying and pasting code from before \
> or after the commit and testing. That let me rule out a lot of the commit. Then I \
> added some Qmessagebox debug dialogs to see exactly when it would fail. As of now, \
> it seems that the crash is entirely based on what happens when constructing the \
> Find Dialog in find dialog.cpp. Specifically, it happens here:
> m_asyncDBManager(new CatalogsDB::AsyncDBManager(CatalogsDB::dso_db_path()))
>
> On line 65 when it constructs the new Asynch DB Manager. I did try changing the \
> couple of lines of code in find dialog.cpp and find dialog.h so that it would use \
> the old manager code from before this commit to verify if the new AsynchDBManger \
> was really the culprit. And yes, it worked fine with the old code. So then I \
> changed it back. Then I played around with the constructor for that class. Very \
> strangely, I found that when I put my test QMessageBox message in just after line \
> 772:
> m_thread->start();
>
> It didn't crash when it printed my debug QMessagebox but it did crash when I didn't \
> have it there! That got me thinking that maybe for some reason, this object needed \
> a little more time in its constructor for some reason, even though there are no \
> more commands after that. So I just added a sleep command to see if that would \
> serve the same purpose and it worked!
> QThread::msleep(100);
>
> So I would really like to know why this works. Here is a commit with a band aid \
> for you guys to take a look at:
> https://invent.kde.org/education/kstars/-/merge_requests/706 \
> <https://invent.kde.org/education/kstars/-/merge_requests/706>
> Thanks,
>
> Rob
>
>
> > On Aug 17, 2022, at 2:06 AM, Jasem Mutlaq <mutlaqja@ikarustech.com> wrote:
> >
> > I received one report for Find Dialog crash as well on Raspberry Pi, so perhaps \
> > it's not unique to MacOS?
> > However, I couldn't reproduce on Raspberry PI, Widows, or any x86-64 machine.
> >
> > --
> > Best Regards,
> > Jasem Mutlaq
> >
> >
> >
> > On Wed, Aug 17, 2022 at 8:52 AM Robert Lancaster <rlancaste@gmail.com \
> > <mailto:rlancaste@gmail.com>> wrote: Ok I did some more testing.
> >
> > This commit is when the Find Dialog broke when running KStars on MacOS by double \
> > clicking the app:
> > https://github.com/KDE/kstars/commit/5a2ba9f8e8b275f44b7593a50ca66f09cb2f985d#diff-c2a2ab763404c18a2daee3feb8b31f2ec278034e7cc720870c4e5158081e0ee9 \
> > <https://github.com/KDE/kstars/commit/5a2ba9f8e8b275f44b7593a50ca66f09cb2f985d#diff-c2a2ab763404c18a2daee3feb8b31f2ec278034e7cc720870c4e5158081e0ee9>
> >
> > I think that is the one you were hoping was not the one. I still don't know why \
> > it broke it though. Every time I run it from terminal or qt creator there is no \
> > problem. It is just when running it by double clicking that is the problem.
> > Note that I did test playing with the environment variables in qt creator and \
> > that seemed to have no effect. And it also didn't seem to matter whether kstars \
> > was packaged up or not, so it doesn't seem to be a packaging issue.
> > > > On Aug 16, 2022, at 2:11 PM, Akarsh Simha <akarshsimha@gmail.com \
> > > > <mailto:akarshsimha@gmail.com>> wrote:
> > >
> > > If I am to blame for this, the parallelism introduced in the asynchronous find \
> > > dialog is my suspect, rather than the comet regex (which was actually Hy and \
> > > not me). The regex seems unlikely to cause the erratic behavior Robert is \
> > > observing where it runs fine under a debugger.
> > > But if it works fine when running KStars from a command line, that probably \
> > > exonerates me and Hy, and is likely an environment issue like Robert points \
> > > out!
> > > Regards
> > > Akarsh
> > >
> > >
> > > > On Tue, Aug 16, 2022 at 07:28 Robert Lancaster <rlancaste@gmail.com \
> > > > <mailto:rlancaste@gmail.com>> wrote:
> > > Hey guys,
> > >
> > > I just got back from my two week trip to the Southwest. Yesterday I resolved \
> > > the issue with building a dmg with my script, so now I can build DMGs that will \
> > > work with older Macs and have all the features we want in the dmg.
> > > Next we can look into this Find Dialog bug. I did some experiments today and I \
> > > found that if I run kstars from the command line or in a debugger, the find \
> > > dialog works fine, but when running the app by double clicking it crashes when \
> > > you first access the find dialog. This seems to me to indicate an environment \
> > > issue, like maybe an issue with environment variables or maybe a link to a \
> > > library that isn't properly in the app. I will check further.
> > > Thanks,
> > >
> > > Rob
> > >
> > > > On Aug 13, 2022, at 6:09 AM, John Evans <john.e.evans.email@gmail.com \
> > > > <mailto:john.e.evans.email@gmail.com>> wrote:
> > > > I have the same problem with 3.6.0. Crashes everytime the find object dialog \
> > > > is invoked (button, keyboard, etc.)
> > > > Works great when I run it in debug in Qt though.
> > > >
> > > > Workaround is to use the skymap and click on the object you want. In the \
> > > > scheduler enter some text in the object field (doesn't matter what) and hit \
> > > > the + to use sky coordinates from the map.
> > > > On Sat, 13 Aug 2022 at 10:05, Akarsh Simha <akarshsimha@gmail.com \
> > > > <mailto:akarshsimha@gmail.com>> wrote:
> > > >
> > > > On Sat, Aug 13, 2022 at 01:27 Peter Amerl <pvamerl@gmail.com \
> > > > <mailto:pvamerl@gmail.com>> wrote: Hi All,
> > > > Has anyone else experienced an immediate crash when searching for objects on \
> > > > a Mac using the Apple-f key combination? I can confirm that it has worked in \
> > > > the past without a crash. Neither Ctrl-f, nor selecting it from the menu \
> > > > appears to work for me at this time. The Crash trace is appended in the zip \
> > > > if anyone wants to have a look.
> > > > Hi Peter
> > > >
> > > > When you say it worked in the past, could you provide the exact version / git \
> > > > commit, and also your current version / git commit that has the bug? I made \
> > > > several changes to the Find Dialog in the most recent version, notably \
> > > > performing asynchronous database queries through another thread. It never \
> > > > crashed on my Linux system. Also curious if someone else can reproduce it on \
> > > > MacOS or if it is unique to your system.
> > > > Regards
> > > > Akarsh
> > > >
> > > >
> > > > Cheers,
> > > > Peter
> > > >
> > > >
> > >
> >
>
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://mail.kde.org/pipermail/kstars-devel/attachments/20220820/4f452c3d/attachment-0001.htm>
>
> ------------------------------
>
> Subject: Digest Footer
>
> _______________________________________________
> Kstars-devel mailing list
> Kstars-devel@kde.org
> https://mail.kde.org/mailman/listinfo/kstars-devel
>
>
> ------------------------------
>
> End of Kstars-devel Digest, Vol 223, Issue 9
> ********************************************
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic