quarkusio / quarkusio.github.io

Website for Quarkus project
https://quarkus.io
160 stars 373 forks source link

Search returns incomplete results in latest/main (but not 3.8) #1986

Closed yrodiere closed 4 months ago

yrodiere commented 4 months ago

Describe the bug

See https://quarkus.io/guides/#q=orm

The Hibernate ORM guide is missing, as are others.

https://quarkus.io/version/3.8/guides/#q=orm works fine, oddly.

Which pages

https://quarkus.io/guides/#q=orm

yrodiere commented 4 months ago

https://quarkus.io/version/3.8/guides/#q=orm works fine, oddly.

Okay, now it's affected too. So... yay, at least it fails consistently? :grin:

yrodiere commented 4 months ago

@marko-bekhta I see this in the backend logs:

[2024-05-21T12:12:06,333][INFO ][o.o.e.ExtensionsManager  ] [search-backend-0] ExtensionsManager initialized

And this in the app logs:

12:12:24 WARN  [c.ar.at.jta] ARJUNA016029: SynchronizationImple.afterCompletion - failed for org.hibernate.resource.transaction.backend.jta.internal.synchronization.RegisteredSynchronization@7482bffc with exception: org.hibernate.HibernateException: Unable to perform afterTransactionCompletion callback: HSEARCH800024: Unable to index documents for indexing after transaction completion: HSEARCH700124: Indexing failure: HSEARCH400588: Call to the bulk REST API failed: HSEARCH400007: Elasticsearch request failed: search-backend-0.search-backend: Name or service not known
Request: POST /_bulk with parameters {}
Response: (no response).
The following entities may not have been updated correctly in the index: [Guide#https://pt.quarkus.io/version/main/guides/scheduler-reference, Guide#https://pt.quarkus.io/version/main/guides/extension-codestart, Guide#https://pt.quarkus.io/version/main/guides/hibernate-search-standalone-elasticsearch, Guide#https://pt.quarkus.io/version/main/guides/management-interface-reference, Guide#https://pt.quarkus.io/version/main/guides/doc-reference, Guide#https://pt.quarkus.io/version/main/guides/rest-client, Guide#https://pt.quarkus.io/version/main/guides/continuous-testing, Guide#https://pt.quarkus.io/version/main/guides/websockets, Guide#https://pt.quarkus.io/version/main/guides/security-openid-connect-dev-services, Guide#https://pt.quarkus.io/version/main/guides/web-dependency-locator].

I think the backend got restarted just after the app started mass indexing, and for some reason the app didn't report the failures...

EDIT: Indeed the end indexing looks like a success:

12:14:18 INFO  [i.qu.se.ap.in.Rollover] Committing index rollover
12:14:19 INFO  [i.qu.se.ap.in.IndexingService] Indexing success
12:14:19 INFO  [i.qu.se.ap.in.FailureCollector$GithubFailureReporter] Reporting indexing status to GitHub.

And the resulting status wasn't a failure: https://github.com/quarkusio/search.quarkus.io/issues/130#issuecomment-2119034827

yrodiere commented 4 months ago

Reindexing fixed this; tracking further work to prevent this from happening again in https://github.com/quarkusio/search.quarkus.io/issues/265