Return to Project-GC

Welcome to Project-GC Q&A. Ask questions and get answers from other Project-GC users.

If you get a good answer, click the checkbox on the left to select it as the best answer.

Upvote answers or questions that have helped you.

If you don't get clear answers, edit your question to make it clearer.

0 votes
1.0k views
Is there a way to see how Project-GC calculates order of finds on a particular day.  I am curious to see on a specific day 8/21/21 where I found lab caches along with regular caches. I know this may be different than the way Geocaching.com does it. Is that data available to me as a premium member?
in Support and help by WanderingExplorer (7.5k points)

2 Answers

+1 vote
The information that Project-GC receives from Geocaching HQ is not sufficient to correctly order labs in relation to normal cache finds on the same day. The lab finds appear in order and the normal finds appear in order, but if you log a mix on the same day that will not be reflected on Project-GC. This is the reason that milestones may differ from Geocaching HQ if your milestone falls on a day when you logged both types of caches. This is not something that Project-GC can fix without Geocaching HQ providing more information.
by pinkunicorn (Moderator) (197k points)
Hello, your response did not answer my question.  I know from a previous response Project-GC cannot correctly order labs caches.  My question is as a premium member, or even a regular member am I able to see or get a report that shows how Project-GC orders my finds?  I would like to know for that specific day what is the order from a Project-GC perspective. Where do the regular caches and lab caches actually end up in the order?
0 votes
Ordering a list of objects requires a sort key containing unique values. Sure it could simply be an index number, but a datetime makes much more sense. Although Geocaching does store geocache finds with a datetime object, the time is often 00:00. You can see this if you export and examine your myfinds. The reason geocaching does not store times is historical - in the old days finds were made off line (and many still are, either by preference or simply because the cache is outside cellphone coverage) and so the time the find was logged often does not reflect the time the cache was found. As you have seen, although there is a way to override the date, Geocaching does not support a way to override the time.

As there is no sort key, there is no guarantee that a query on the Geocaching database will return the caches in the same order. This is an intentional feature of databases - they are optimised for speed. If you don't ask for the data to be sorted then the database will use any tricks it can to get the data to you faster, even if it means that the data is out of order. An example of how this might happen is that when someone runs a query that includes some of your finds (eg all caches in an area), these will be cached in the server so that when you subsequently run a query on your finds those results may be returned earlier in the query.  Another example of this is the MyFinds query - the contents of this gpx file is not even sorted by date. And this is also the reason that Geocaching supports the override of milestone finds.

As Geocaching does not store, and therefore export, find times, and as they do not store any index (eg nth find that day), it makes sense that Project-GC should not attempt to order finds beyond the date either. As was mentioned in other posts the order of unsorted data in Project-GC is also undefined and not guranteed to to be the same over repeated queries.

Geocaching has often been requested to store times, especially now that cellphones have become the primary GPS tool. Every time though, there is a large body of people requesting that this not happen, and it is also unclear how the currrent body of finds should be handled (all found at midnight?).

I do know that the API that Project-GC has access to for lab cahes is very limited, even missing other data that we would like to have (eg coordinates, owner). I would expect that Geocaching does not store times for these either. If Geocaching did store times and make these visible through the API Project-GC would use them.
by the Seagnoid (Expert) (46.3k points)
Thank you for this information, however it does not answer my specific question in the original post.  I am looking for an answer if this information is available to me or not.  If not then I will just have to accept that there is nothing I can do and that my milestones between Project-GC and Geocaching.com will forever be misaligned.
As explained in my post, the information regarding ordering of finds, regardless of type of cache, is not available.
Just to be clear, you are talking about Geocaching.com data correct?
As stated in my post, Geocaching.com provide no information on ordering of finds beyond the date. As such, Project-GC is also unable to, and doesn't attempt to, order finds more precisely than by date. Milestones cannot be guaranteed to be the same between PGC and GC, even if the finder had no labcache finds.
Thank you for your time in responding to my question.
@the Seagnoid If you read pinkunicorns comment here he says Project-GC has access to the order of the geocache finds on the date via the logID provided by Geocaching.com: https://project-gc.com/qa/?qa=27455/incorrect-milestone-on-project-gc
Hey, awesome! I had forgotten that logIDs werer serialised, and did not know that PGC was using them to provide a sort order. Many thanks for the update.
Just wondering, if I changed my log order in geocaching.com would I also see a change in Project-GC?
Given PinkUnicorn's assertion that logs are sorted by Log i.d., then if you deleted a log and an wrote a new one, then that new log would appear at the end of that day.
...