Stream: containers

Topic: search services: goldenOldies, oddlyEnough


view this post on Zulip Philip Durbin ๐Ÿš€ (Jun 26 2025 at 14:02):

In #11281 we are introducing optional, configurable search services (such as external AI search, as demonstrated during the recent community meeting).

In the Dockerized environment (but not the classic environment), the example search services "goldenOldies" and "oddlyEnough" are being loaded up but as I argue at https://github.com/IQSS/dataverse/pull/11281#discussion_r2164017028 I don't think they should be.

As I just posted in that thread, GoldenOldiesSearchServiceBean.class and OddlyEnoughSearchServiceBean.class show up in target/dataverse-6.6.jar. Is this why they are loaded up? Any ideas on how we can prevent them from being loaded?

view this post on Zulip Oliver Bertuch (Jun 26 2025 at 16:36):

Why aren't they loaded in a classic environment? Are there exclusion rules for the WAR?

view this post on Zulip Philip Durbin ๐Ÿš€ (Jun 26 2025 at 16:36):

Yes:

<packagingExcludes>
    WEB-INF/classes/edu/harvard/iq/dataverse/search/GetExternalSearchServiceBean.class,
    WEB-INF/classes/edu/harvard/iq/dataverse/search/PostExternalSearchServiceBean.class,
    WEB-INF/classes/edu/harvard/iq/dataverse/search/GoldenOldiesSearchServiceBean.class,
    WEB-INF/classes/edu/harvard/iq/dataverse/search/OddlyEnoughSearchServiceBean.class
</packagingExcludes>

view this post on Zulip Oliver Bertuch (Jun 26 2025 at 16:37):

Ah!

view this post on Zulip Oliver Bertuch (Jun 26 2025 at 16:37):

Well they probably shouldn't be a part of the main app Maven module anyway...

view this post on Zulip Oliver Bertuch (Jun 26 2025 at 16:37):

That said, we can simply exclude them as well

view this post on Zulip Philip Durbin ๐Ÿš€ (Jun 26 2025 at 16:38):

If we can define them once, great.

view this post on Zulip Oliver Bertuch (Jun 26 2025 at 16:38):

That may be tricky. We may be in luck to use the list in a property

view this post on Zulip Oliver Bertuch (Jun 26 2025 at 16:39):

Also, why are these not at least in a separate package under the main module, so you can exclude them by glob?

view this post on Zulip Philip Durbin ๐Ÿš€ (Jun 26 2025 at 16:40):

No objection but it's Jim's PR. Maybe you can add on to the thread at https://github.com/IQSS/dataverse/pull/11281#discussion_r2164017028

view this post on Zulip Oliver Bertuch (Jun 26 2025 at 16:40):

Painstaking to type... :weary: (on my mobile)

view this post on Zulip Philip Durbin ๐Ÿš€ (Jun 26 2025 at 16:41):

I just linked back to here (again) from that thread.

view this post on Zulip Philip Durbin ๐Ÿš€ (Jun 26 2025 at 16:42):

Thanks for your thoughts on this!

view this post on Zulip Oliver Bertuch (Jun 26 2025 at 16:45):

Done. https://github.com/IQSS/dataverse/pull/11281#discussion_r2169476879

view this post on Zulip Philip Durbin ๐Ÿš€ (Jun 27 2025 at 12:09):

@Oliver Bertuch thanks! Jim pushed some exclusions here but they aren't working for me: https://github.com/IQSS/dataverse/pull/11281/commits/d49256ca30f4b6ba548a94d93009d651be4a8d2a

GoldenOldiesSearchServiceBean.class (for example) is now absent from the target/docker/gdcc/dataverse/unstable/build/maven/app/WEB-INF/classes/edu/harvard/iq/dataverse/search directory.

However, "goldenOldies" still active in the app. I can see it at http://localhost:8080/api/search/services

Any ideas for us?

view this post on Zulip Philip Durbin ๐Ÿš€ (Jun 27 2025 at 18:59):

I went ahead and approved the PR. The excludes Jim added aren't working but he followed up with another change that prevents "goldenOldies" and friends from appearing: https://github.com/IQSS/dataverse/pull/11281/commits/56a63109e3b45518ec002b7b8e30b486ce67588a :shrugdog:

view this post on Zulip Philip Durbin ๐Ÿš€ (Jun 27 2025 at 18:59):

Discussion at https://github.com/IQSS/dataverse/pull/11281#discussion_r2172488939


Last updated: Oct 30 2025 at 05:14 UTC