Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Load more caches broken for "Found by" search #13698

Open
Tracked by #13537 ...
Lineflyer opened this issue Nov 20, 2022 · 8 comments
Open
Tracked by #13537 ...

Load more caches broken for "Found by" search #13698

Lineflyer opened this issue Nov 20, 2022 · 8 comments
Labels
Bug Issues classified as a bug Google Play or Beta feedback Issues derived from Google Play reporting or beta user feedback

Comments

@Lineflyer
Copy link
Member

Describe your problem!

A user on support mail reported, that the search for caches found by a certain user has a problem.
It will only load 20 caches, but tapping on "Load more" does not load more caches

How to reproduce?

  • Go to Search
  • Search "Found by" for a username with >> 20 finds

Actual result after these steps?

First 20 results are returned and seemingly correct.
Tapping on "Load more" at the bottom of the list however just makes the list flicker, but the content does not change.

Expected result after these steps?

20 more results are shown

Reproducible

Yes

c:geo Version

2022.11.13

System information

No response

Additional Information

No response

@Lineflyer Lineflyer added Bug Issues classified as a bug Google Play or Beta feedback Issues derived from Google Play reporting or beta user feedback labels Nov 20, 2022
@Lineflyer
Copy link
Member Author

Stack trace:

2022-11-20 01:33:50.088  3075-3227  LeakCanary   cgeo.geocaching  D  Setting up flushing for Thread[Filter,5,main]
2022-11-20 01:33:51.660  3075-3075  cgeo         cgeo.geocaching  D  [main] LooperLogger: total:#7000/30146ms/avg 4ms {LooperLogger.process:78/LooperLogger.lambda$IQJlhstRB0ylWGjFWsOcbpEUIlc:0/-$$Lambda$LooperLogger$IQJlhstRB0ylWGjFWsOcbpEUIlc.println:2/Looper.loop:258/ActivityThread.main:7656/Method.invoke:-2/RuntimeInit$MethodAndArgsCaller.run:592/ZygoteInit.main:947}
2022-11-20 01:33:54.305  3075-3075  Toolb...pper cgeo.geocaching  I  Progress display unsupported
2022-11-20 01:33:54.332  3075-3784  cgeo         cgeo.geocaching  D  [network--3] HTTP-GET: https://www.geocaching.com/seek/nearest.aspx?ul=Velberlinle {Network.request:345/Network.getRequest:473/GCLogin.getRequestLogged:537/GCParser.searchByAny:902/GCParser.searchByUsername:947/GCMap.searchByFinder:149/GCMap.createSearchForFilter:134/GCMap.searchByFilter:98}
2022-11-20 01:33:54.332  3075-8403  cgeo         cgeo.geocaching  D  [OkHttp] GET https://www.geocaching.com/seek/nearest.aspx?ul=Velberlinle {Network$LoggingInterceptor.intercept:386/RealInterceptorChain.proceed:109/Network$HeadersInterceptor.intercept:374/RealInterceptorChain.proceed:109/RealCall.getResponseWithInterceptorChain$okhttp:201/RealCall$AsyncCall.run:517/ThreadPoolExecutor.runWorker:1167/ThreadPoolExecutor$Worker.run:641}
2022-11-20 01:33:54.333  3075-3075  cgeo         cgeo.geocaching  D  [main] RestartLocationPermissionGrantedCallback.execute for 2223 {RestartLocationPermissionGrantedCallback.execute:18/PermissionHandler.executeIfLocationPermissionGranted:46/CacheListActivity.onResume:597/Instrumentation.callActivityOnResume:1456/Activity.performResume:8135/ActivityThread.performResumeActivity:4434/ActivityThread.handleResumeActivity:4476/ResumeActivityItem.execute:52}
2022-11-20 01:33:54.334  3075-3075  cgeo         cgeo.geocaching  D  [main] LocationProvider: requesting most precise locations {LocationProvider.updateRequest:48/LocationProvider.lambda$get$2:75/-$$Lambda$LocationProvider$rw-WxxzEx79SYp2clxnKA04m3Ck.subscribe:4/ObservableCreate.subscribeActual:41/Observable.subscribe:13173/ObservableOnErrorNext.subscribeActual:36/Observable.subscribe:13173/ObservableDoOnEach.subscribeActual:42}
2022-11-20 01:33:54.335  3075-3299  cgeo         cgeo.geocaching  D  [looper callbacks] RotationProvider: registering listener {RotationProvider.lambda$create$1:73/-$$Lambda$RotationProvider$4ttwV43ERa0Y4bvgqqjQZJbUCEM.subscribe:4/ObservableCreate.subscribeActual:41/Observable.subscribe:13173/ObservableSubscribeOn$SubscribeTask.run:96/HandlerScheduler$ScheduledRunnable.run:123/Handler.handleCallback:938/Handler.dispatchMessage:99}
2022-11-20 01:33:54.683  3075-8403  cgeo         cgeo.geocaching  D  [OkHttp] 200 (351 ms) GET https://www.geocaching.com/seek/nearest.aspx?ul=Velberlinle (http/1.1) {Network$LoggingInterceptor.intercept:394/RealInterceptorChain.proceed:109/Network$HeadersInterceptor.intercept:374/RealInterceptorChain.proceed:109/RealCall.getResponseWithInterceptorChain$okhttp:201/RealCall$AsyncCall.run:517/ThreadPoolExecutor.runWorker:1167/ThreadPoolExecutor$Worker.run:641}
2022-11-20 01:33:54.883  3075-3784  cgeo         cgeo.geocaching  D  [network--3] [CtxLog]DataStore.loadCachesFromGeoCodes(#20):START {DataStore.loadCachesFromGeocodes:2806/DataStore.loadCaches:2752/DataStore.saveCaches:2146/SearchResult.addAndPutInCache:313/GCParser.parseSearch:283/GCParser.searchByAny:910/GCParser.searchByUsername:947/GCMap.searchByFinder:149}
2022-11-20 01:33:54.885  3075-3784  cgeo         cgeo.geocaching  D  [network--3] [CtxLog]DataStore.loadCachesFromGeoCodes(#20):END (3ms)flags:[DB_MINIMAL, ATTRIBUTES, WAYPOINTS, SPOILERS, LOGS, INVENTORY, OFFLINE_LOG](1ms);gc#20[GC3QTK8,GC2YWEP,GC109GH,GC9T091,GC4F421,GC4F3X9,GC8YXFM,GC3599Y,GC86GAD,GC9M8BR](1ms);RET:#0(3ms); {DataStore.loadCachesFromGeocodes:2889/DataStore.loadCaches:2752/DataStore.saveCaches:2146/SearchResult.addAndPutInCache:313/GCParser.parseSearch:283/GCParser.searchByAny:910/GCParser.searchByUsername:947/GCMap.searchByFinder:149}
2022-11-20 01:33:54.885  3075-3784  cgeo         cgeo.geocaching  D  [network--3] DataStore.loadCaches([GC3QTK8, GC2YWEP, GC109GH, GC9T091, GC4F421, GC4F3X9, GC8YXFM, GC3599Y, GC86GAD, GC9M8BR, GC6G1FH, GC43VFA, GC4F40H, GC5ZPDK, GC63QT1, GC7G9GF, GC53G0Q, GC6QZTD, GC7788J, GC62V4T]) returned no results {DataStore.loadCaches:2770/DataStore.saveCaches:2146/SearchResult.addAndPutInCache:313/GCParser.parseSearch:283/GCParser.searchByAny:910/GCParser.searchByUsername:947/GCMap.searchByFinder:149/GCMap.createSearchForFilter:134}
2022-11-20 01:33:54.887  3075-3784  cgeo         cgeo.geocaching  I  [network--3] Trying to get .loc for 20 caches {GCParser.parseSearch:297/GCParser.searchByAny:910/GCParser.searchByUsername:947/GCMap.searchByFinder:149/GCMap.createSearchForFilter:134/GCMap.searchByFilter:98/GCMap.searchByFilter:85/GCConnector.searchByFilter:317}
2022-11-20 01:33:54.891  3075-3784  cgeo         cgeo.geocaching  D  [network--3] HTTP-POST: https://www.geocaching.com/seek/nearest.aspx?ul=Velberlinle {Network.request:345/Network.postRequest:164/GCParser.parseSearch:320/GCParser.searchByAny:910/GCParser.searchByUsername:947/GCMap.searchByFinder:149/GCMap.createSearchForFilter:134/GCMap.searchByFilter:98}
2022-11-20 01:33:54.892  3075-8403  cgeo         cgeo.geocaching  D  [OkHttp] POST https://www.geocaching.com/seek/nearest.aspx?ul=Velberlinle {Network$LoggingInterceptor.intercept:386/RealInterceptorChain.proceed:109/Network$HeadersInterceptor.intercept:374/RealInterceptorChain.proceed:109/RealCall.getResponseWithInterceptorChain$okhttp:201/RealCall$AsyncCall.run:517/ThreadPoolExecutor.runWorker:1167/ThreadPoolExecutor$Worker.run:641}
2022-11-20 01:33:55.108  3075-8403  cgeo         cgeo.geocaching  D  [OkHttp] 200 (216 ms) POST https://www.geocaching.com/seek/nearest.aspx?ul=Velberlinle (http/1.1) {Network$LoggingInterceptor.intercept:394/RealInterceptorChain.proceed:109/Network$HeadersInterceptor.intercept:374/RealInterceptorChain.proceed:109/RealCall.getResponseWithInterceptorChain$okhttp:201/RealCall$AsyncCall.run:517/ThreadPoolExecutor.runWorker:1167/ThreadPoolExecutor$Worker.run:641}
2022-11-20 01:33:55.113  3075-3784  cgeo         cgeo.geocaching  D  [network--3] Coordinates found in .loc content: 20 {LocParser.parseLoc:122/LocParser.parseLoc:68/LocParser.parseLoc:55/GCParser.parseSearch:328/GCParser.searchByAny:910/GCParser.searchByUsername:947/GCMap.searchByFinder:149/GCMap.createSearchForFilter:134}
2022-11-20 01:33:58.835  3075-3798  cgeo         cgeo.geocaching  D  [network--4] HTTP-POST: https://www.geocaching.com/seek/nearest.aspx?ul=Velberlinle {Network.request:345/Network.postRequest:164/GCLogin.postRequestLogged:516/GCParser.searchByNextPage:860/GCConnector.searchByNextPage:286/NextPageGeocacheListLoader.lambda$runSearch$0$NextPageGeocacheListLoader:19/-$$Lambda$NextPageGeocacheListLoader$abkS-vO3-p-ZvKWlkrdbu4FSwn0.apply:4/SearchResult.lambda$parallelCombineActive$7:377}
2022-11-20 01:33:58.836  3075-8403  cgeo         cgeo.geocaching  D  [OkHttp] POST https://www.geocaching.com/seek/nearest.aspx?ul=Velberlinle {Network$LoggingInterceptor.intercept:386/RealInterceptorChain.proceed:109/Network$HeadersInterceptor.intercept:374/RealInterceptorChain.proceed:109/RealCall.getResponseWithInterceptorChain$okhttp:201/RealCall$AsyncCall.run:517/ThreadPoolExecutor.runWorker:1167/ThreadPoolExecutor$Worker.run:641}
2022-11-20 01:33:59.103  3075-8403  cgeo         cgeo.geocaching  D  [OkHttp] 200 (267 ms) POST https://www.geocaching.com/seek/nearest.aspx?ul=Velberlinle (http/1.1) {Network$LoggingInterceptor.intercept:394/RealInterceptorChain.proceed:109/Network$HeadersInterceptor.intercept:374/RealInterceptorChain.proceed:109/RealCall.getResponseWithInterceptorChain$okhttp:201/RealCall$AsyncCall.run:517/ThreadPoolExecutor.runWorker:1167/ThreadPoolExecutor$Worker.run:641}
2022-11-20 01:33:59.108  3075-3798  cgeo         cgeo.geocaching  W  [network--4] GCParser.searchByNextPage: No cache parsed {GCParser.searchByNextPage:873/GCConnector.searchByNextPage:286/NextPageGeocacheListLoader.lambda$runSearch$0$NextPageGeocacheListLoader:19/-$$Lambda$NextPageGeocacheListLoader$abkS-vO3-p-ZvKWlkrdbu4FSwn0.apply:4/SearchResult.lambda$parallelCombineActive$7:377/-$$Lambda$SearchResult$bkP3obAy-CSIm80iNz3q2k1Trgg.call:4/MaybeFromCallable.subscribeActual:47/Maybe.subscribe:5375}
2022-11-20 01:34:09.547  3075-3075  cgeo         cgeo.geocaching  D  [main] LooperLogger: total:#8000/31943ms/avg 3ms {LooperLogger.process:78/LooperLogger.lambda$IQJlhstRB0ylWGjFWsOcbpEUIlc:0/-$$Lambda$LooperLogger$IQJlhstRB0ylWGjFWsOcbpEUIlc.println:2/Looper.loop:258/ActivityThread.main:7656/Method.invoke:-2/RuntimeInit$MethodAndArgsCaller.run:592/ZygoteInit.main:947}

@Lineflyer
Copy link
Member Author

Support ticket: #500060

@eddiemuc eddiemuc self-assigned this Nov 20, 2022
@eddiemuc
Copy link
Contributor

There seems to be some website changes including captchas which creates problems here. By debugging into code I could see that the website returned for "next page" does not include any caches (table is gone), but the following:

Fehlerhinweis für Inhaber der Website: Ungültige Domain für Websiteschlüssel

image

I have no idea which magic parameters/cookies/... to set to make this go away.

This might be a sign to abandon the old "page scanning" search for good, even if we loose functionality. What does the team think?

@eddiemuc eddiemuc removed their assignment Nov 20, 2022
@Lineflyer Lineflyer mentioned this issue Nov 21, 2022
13 tasks
@Lineflyer
Copy link
Member Author

No other chance I guess.
Did you doublecheck whether this function is really unavailable using the webAPI?
At least on the website filtering I can do it easily:
grafik

Takes me to:
https://www.geocaching.com/play/results/?ho=1&fb=Lineflyer&asc=true&sort=distance

@eddiemuc
Copy link
Contributor

Unless someone wants to dig deep into recaptchas here, I would vote for leaving everything as is. "Found by" should still work as designed for geocaching servers OTHER than gc.com (haven't checked though), and for gc.com I assume it is better to deliver just first 20 entries than nothing

@ztNFny
Copy link
Contributor

ztNFny commented Jan 29, 2023

There seems to be some website changes including captchas which creates problems here. By debugging into code I could see that the website returned for "next page" does not include any caches (table is gone), but the following:

Fehlerhinweis für Inhaber der Website: Ungültige Domain für Websiteschlüssel

image

I have no idea which magic parameters/cookies/... to set to make this go away.

This might be a sign to abandon the old "page scanning" search for good, even if we loose functionality. What does the team think?

I encountered this issue on gc.com itself today. So not a cgeo issue but something on their end, no chance for us to do anything.

@Lineflyer
Copy link
Member Author

What about the source I mentioned above?

@eddiemuc
Copy link
Contributor

What about the source I mentioned above?

Haven't checked the API. But the API we use is the one used by gc.com's map view. And if you open the filter options there you won't find the possiblity to search for "Found by" (only the option to filter for "Not found by"). This indicates that option is not available there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Issues classified as a bug Google Play or Beta feedback Issues derived from Google Play reporting or beta user feedback
Projects
None yet
Development

No branches or pull requests

3 participants