Periodic spinning cursor - spindump

Using GarageSale Version 7.0.14b3 (831), macOS Version 10.12.6 (16G1212)

Every few minutes (5-7-8-10) I get a spinning pizza cursor for several seconds. Happens every day, all day. Doesn’t matter what I’m doing in GarageSale. Just happens consistently, periodically. Been trying to correlate this to some activity. Only thing I can discover is that RIGHT AFTER the spinning pizza, the Activity window seems to flash “Getting My eBay Selling for … ‘account’”, or “Updating eBay listings for seller … ‘account’” for 2 of my 3 accounts. Then it proceeds to do the updating for the 3rd account.

I have my “Update orders and Listings” Preference set to “Every 15 minutes”. Buy, I don’t think that is the problem since the spinning pizza happens more frequently than 15 minutes, and when it does happen the Activity window does NOT show that it is “Updating eBay listings”. It MIGHT be happening RIGHT BEFORE this updating???

I uploaded 7 spindump files (GarageSale_14855.spindump.zip) to your DropBox “GS7 Lib from Neal” (since they are too big to post here) from this morning when this was happening while do some basic Editing and Relisting… Hope they are helpful!

My Console also sometimes shows this line before this happens:
Mar 14 11:38:37 Neal-Trautmans-iMac-Computer GarageSale[11294]: uploader dealloced

Could it be “re-allocating the uploader”??? :slight_smile:

I also have these lines in my Console:

Mar 14 16:33:10 Neal-Trautmans-iMac-Computer GarageSale[11768]: Will disable account for auction update ~dmtinfla13 (99CF400B-0D18-4520-A994-D5258DEBD06E)
Mar 14 16:33:10 Neal-Trautmans-iMac-Computer GarageSale[11768]: Error in GetSellerListOperation 931: Validation of the authentication token in API request failed.
Mar 14 16:33:10 Neal-Trautmans-iMac-Computer GarageSale[11768]: Will disable account for auction update ~dmtinfla13 (99CF400B-0D18-4520-A994-D5258DEBD06E)
Mar 14 16:33:10 Neal-Trautmans-iMac-Computer GarageSale[11768]: Error in GetMyeBaySellingOperation 931: Validation of the authentication token in API request failed.
Mar 14 16:33:11 Neal-Trautmans-iMac-Computer GarageSale[11768]: Will disable account for auction update ~dmtinfla13 (99CF400B-0D18-4520-A994-D5258DEBD06E)
Mar 14 16:33:11 Neal-Trautmans-iMac-Computer GarageSale[11768]: Error in GetMyeBaySellingOperation 931: Validation of the authentication token in API request failed.
Mar 14 16:33:11 Neal-Trautmans-iMac-Computer GarageSale[11768]: Will disable account for auction update ~dmtinfla13 (99CF400B-0D18-4520-A994-D5258DEBD06E)
Mar 14 16:33:11 Neal-Trautmans-iMac-Computer GarageSale[11768]: Error in GetMyeBaySellingOperation 931: Validation of the authentication token in API request failed.
1 Like

Thanks for the spindumps. Will look through them, but I already have an idea where that’s coming from.

1 Like

I have also encountered the “spinning wheel of death”. I have not figured why or when it occurs. It seems random and is kinda annoying and slows the work flow. I have the fastest processor Apple makes and the desk top is maxed, Mac (Retina 5K, 27-inch, Late 2015), 4 GHz Intel Core i7, 32 GB 1867 MHz DDR3, so it surely isn’t a personal hardware issue? I assumed it was a processing issue but with my processor speed and desktop chips the spinning wheel has to be something else.

According to the spin dumps you sent, the beach ball appears because your Mac is busy updating the listings in your database.

In your case, there are two main reason why GarageSale shows the beach ball:

  1. Smart group updates while relisting and creating a copy of the original listing.

Maybe you have setup some smart groups that are especially expensive to evaluate for testing purposes. Even though I don’t have this issue with the database you sent me last week, I changed the code slightly, so the smart group evaluation is run after the listing duplication is complete, instead of checking smart group membership after each single property is copied. FYI: These are the spin-dumps, which show a high number before the string “-[SDBContext(SmartGroups) updateRegisteredSmartGroupsAfterObjectChange:]”.

http://downloads.iwascoding.com/downloads/GarageSale_7_2018-03-19.dmg

  1. Updating listing states after new data was downloaded from eBay.

In our testing, this take about 0.2s per result page received from eBay and hardly trigger the beach ball, but maybe something is blocking the queue for a little while, so several result pages are processed in a row once the queue gets unblocked?
I am not sure how to get this operation faster with the current architecture. FYI: These are the spin-dumps, which show a high number before the string “-[GSListingDataController(Operations) getSellerListPageReceived:]”.

OK, good. I did several more spindumps today and “-[SDBContext(SmartGroups) updateRegisteredSmartGroupsAfterObjectChange:]” never showed up as a problem. Good!

Hhhmmm… Well… OK.

Yea, I guess these 2 places seem to be the culprits!! I have done several spindumps today, and controlC right after the spinning pizza to cut it off and it is always one of these 2 places where the pizza is coming from…

  722    -[GSListingDataController(Operations) getSellerListPageReceived:] + 290 (GarageSale + 1727998) [0x106baedfe]
	452    -[GSListingDataController(Operations) handleGetSellerListResponsePageItems:operation:] + 478 (GarageSale + 1728555) [0x106baf02b]
	  155    +[GSEbayItemTypeImporter updateLiveStateOfListing:fromAPIItem:withAccountID:] + 2285 (GarageSale + 1646650) [0x106b9b03a]

	2291   -[GSListingDataController(Operations) handleGetSellerListResponsePageItems:operation:] + 478 (GarageSale + 1727851) [0x1046b4d6b]
	  669    +[GSEbayItemTypeImporter updateLiveStateOfListing:fromAPIItem:withAccountID:] + 2285 (GarageSale + 1645946) [0x1046a0d7a]

	1093    -[GSListingDataController(Operations) handleGetSellerListResponsePageItems:operation:] + 499 (GarageSale + 1727872) [0x1046b4d80]
	  1061    (anonymous namespace)::AutoreleasePoolPage::pop(void*) + 808 (libobjc.A.dylib + 41808) [0x7fffbb650350]
		622     -[__NSOrderedSetI dealloc] + 105 (CoreFoundation + 1008377) [0x7fffa63e42f9]

It always blocks for a total of 5-8 seconds. And happens ONLY 1 time, every few (6-8-10) minutes.

From my observation of the Activity window the spinning pizza is ALWAYS IMMEDIATELY followed by a very fast flashing “Getting My eBay Selling for … <account>”, or “Updating eBay listings for seller … <account>”.

Maybe add some additional logging to the Console or Activity window?
For handleGetSellerListResponsePageItems?
For updateLiveStateOfListing:fromAPIItem:withAccountID?
Does this actually do a Synchronous call to eBay to “update” the “Live state” of the “currently selected listing”???

:slight_smile: Really kinda feels like a Periodic Background Network operation is blocking with a synchronous call… :slight_smile:

Could it be “waiting” to receive the end of the last page, when the last page is not full and it runs out of data???

:wink:

Neal

Or what about a delay so that GS doesn’t cause work to stop while I am entering or typing? Or giving the user priority over getting updates from ebay?

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.