Opened 6 years ago

Closed 5 years ago

Last modified 4 years ago

#14025 closed bug (fixed)

[HaikuDepot] crash in PackageInfo::Title(PackageInfo)

Reported by: Iosend Owned by: stippi
Priority: normal Milestone: R1/beta2
Component: Applications/HaikuDepot Version: R1/Development
Keywords: Cc:
Blocked By: Blocking: #14184
Platform: All

Description

I running search after start - on search in HaikuDepot

Attachments (8)

HaikuDepot-250-debug-07-03-2018-13-00-39.report (14.3 KB ) - added by Iosend 6 years ago.
HaikuDepot-519-debug-07-07-2018-11-40-39.report (15.1 KB ) - added by vidrep 6 years ago.
HaikuDepot_refresh_terminal.txt (5.8 KB ) - added by vidrep 6 years ago.
HaikuDepot_first_launch.png (190.0 KB ) - added by vidrep 6 years ago.
HaikuDepot_first_launch.txt (3.3 KB ) - added by vidrep 6 years ago.
HaikuDepot_refresh.png (276.0 KB ) - added by vidrep 6 years ago.
HaikuDepot_refresh.txt (4.2 KB ) - added by vidrep 6 years ago.
HaikuDepot-890-debug-06-08-2018-16-12-25.report (15.9 KB ) - added by vidrep 6 years ago.

Download all attachments as: .zip

Change History (27)

comment:1 by diver, 6 years ago

Component: - GeneralApplications/HaikuDepot
Owner: changed from nobody to stippi
Summary: Error HaikuDepot[HaikuDepot] crash in PackageInfo::Title(PackageInfo)

comment:2 by diver, 6 years ago

Blocking: 14184 added

comment:3 by vidrep, 6 years ago

hrev52047 x86_gcc2h

Debugger report attached

comment:4 by apl-haiku, 6 years ago

I am trying this now and don't see a problem on hrev52080 (x86_gcc2); is there a specific keyword that causes the problem to occur?

comment:5 by vidrep, 6 years ago

It seems that most of theses crashes are occurring on a first time search after a fresh install of Haiku, which is something I do quite often. Updates are not so much affected.

comment:6 by vidrep, 6 years ago

Would it help for me to do another fresh install, then start HaikuDepot from Terminal, to see if it will crash again? Please refer to blocker ticket: https://dev.haiku-os.org/ticket/14184

Last edited 6 years ago by vidrep (previous) (diff)

comment:7 by apl-haiku, 6 years ago

Hello; If you have time to try a fresh install to see if it still happens for you, it would be appreciated; otherwise I will come back to it when I can.

comment:8 by vidrep, 6 years ago

I was able to reproduce the problem on consecutive fresh installs. It appears that HaikuDepot is not fully populating the package list on first launch. It will only fully populate after the repositories are refreshed. If you enter a search term for an item that is not in the list, before you have refreshed the list, it will crash. Line 46 is where the error occurs. I have attached a terminal log of HaikuDepot first launch, and repository refresh.

Last edited 6 years ago by vidrep (previous) (diff)

by vidrep, 6 years ago

comment:9 by waddlesplash, 6 years ago

I attempted to reproduce this on x86_gcc2 by deleting the following folders:

/system/cache/tmp
~/config/cache/HaikuDepot
~/config/settings/HaikuDepot

... and then after launching HaikuDepot I got output nearly identical to vidrep's log, but trying to search at any point in that did not result in a crash. I also disabled internet access after deleting the folders, so that HaikuDepot could not refresh, and it still didn't crash.

@vidrep, could you see if you can find a way to reproduce without a fresh install? If not, I'll try to debug and then fix it that way.

comment:10 by vidrep, 6 years ago

I have attached a pair of terminal logs and screenshots to illustrate the issue.

by vidrep, 6 years ago

Attachment: HaikuDepot_first_launch.png added

by vidrep, 6 years ago

Attachment: HaikuDepot_first_launch.txt added

by vidrep, 6 years ago

Attachment: HaikuDepot_refresh.png added

by vidrep, 6 years ago

Attachment: HaikuDepot_refresh.txt added

comment:11 by apl-haiku, 6 years ago

I have followed these guessed steps to reproduce the problem;

  • pulled my development branch to master and built a new ISO
  • installed the ISO into a VirtualBox environment
  • Run HaikuDepot desktop application
  • Unchecked "Show only featured packages"
  • Type some search terms into the search box a few times

I unfortunately don't seem to see this problem mentioned arising.

| ... It will only do so when repositories are refreshed ...

Can you clarify here. Do you mean when the operating system pulls a fresh hpkr from the remote site or do you mean HaikuDepot retrieves fresh package meta-data from the server?

One thing I see in your log that I do not see in mine;

...
SSL error:00000002:lib(0):func(0):system lib
[ServerIconExportUpdateProcess] did complete streaming data [1744896 bytes]
delete any existing stored data
will unpack to [/boot/home/config/cache/HaikuDepot/__allicons]
unable to unpack item data to; [/boot/home/config/cache/HaikuDepot/__allicons/hicn/jnpad_j/64.png]
did unpack 1415 tar items
error occurred unpacking tar items; Value too large for defined type
did complete fetching icons
...

The tar-ball downloaded from the server is *actually* around 3206365 bytes long - around 2x the length of what your client is downloading. I see this error in the following supplied logs from yourself;

  • HaikuDepot_first_launch.txt​
  • HaikuDepot_refresh_terminal.txt​

I wonder if this might somehow have something to do with it?

comment:12 by vidrep, 6 years ago

See edited comment: 8

comment:14 by vidrep, 6 years ago

Had another crash today using hrev52175 x86_gcc2h. Entering a search term before the icons have loaded appears to have been the cause. This time it was NOT on a fresh install, but one that has been updated several times. Debugger report attached.

Last edited 6 years ago by vidrep (previous) (diff)

comment:15 by diver, 5 years ago

Still here in hrev53142.

comment:16 by apl-haiku, 5 years ago

I spent some more time on it, but am still unable to reproduce this error locally. Is somebody other than vidrep able to try to reproduce this error following the procedures on this ticket?

In the error trace I see the following calls in the stack trace;

SearchTermsFilter::AcceptsPackage(SearchTermsFilter) + 0x7f
Model::MatchesFilter(Model) + 0x5a
Model::CreatePackageList(Model) + 0xee
MainWindow::_AdoptModel() + 0x25
MainWindow::MessageReceived(BMessage*) + 0x8de
BLooper::DispatchMessage(BMessage*, BHandler*) + 0x59
...

Without being able to check, it appears that;

void
MainWindow::_AdoptModel()
{
  fVisiblePackages = fModel.CreatePackageList();
...

...should be locking the fModel across the CreatePackageList() method call. I can't see the problem to see if this fixes it, but I think that this lock should be there anyway so I'll add it via PR and we can see.

comment:17 by vidrep, 5 years ago

hrev53152 x86_64

I could not reproduce the crash on a fresh install.

comment:18 by waddlesplash, 5 years ago

Resolution: fixed
Status: newclosed

Fix merged in hrev53157.

comment:19 by nielx, 4 years ago

Milestone: UnscheduledR1/beta2

Assign tickets with status=closed and resolution=fixed within the R1/beta2 development window to the R1/beta2 Milestone

Note: See TracTickets for help on using tickets.