diff options
author | Jon Marius Venstad <venstad@gmail.com> | 2021-06-30 21:06:52 +0200 |
---|---|---|
committer | Jon Marius Venstad <venstad@gmail.com> | 2021-06-30 21:06:52 +0200 |
commit | 9ceacdab281de851c841d395b1e1fd42c25d4f18 (patch) | |
tree | 5da54dbaf9452414240afd0e0e1fc99a09b36eca | |
parent | eaed7fa806a307ca712d6f099d089288b8caaf7a (diff) |
Cast to MessageBusDocumentAccess only where needed
4 files changed, 9 insertions, 5 deletions
diff --git a/container-core/src/main/java/com/yahoo/container/core/documentapi/VespaDocumentAccess.java b/container-core/src/main/java/com/yahoo/container/core/documentapi/VespaDocumentAccess.java index bb78ee3022f..d01cd994fa5 100644 --- a/container-core/src/main/java/com/yahoo/container/core/documentapi/VespaDocumentAccess.java +++ b/container-core/src/main/java/com/yahoo/container/core/documentapi/VespaDocumentAccess.java @@ -27,7 +27,7 @@ import com.yahoo.vespa.config.content.LoadTypeConfig; import java.util.concurrent.atomic.AtomicReference; /** - * Wraps a lazily initialised MessageBusDocumentAccess. Lazy to allow it to always be set up. + * Wraps a lazily initialised {@link DocumentAccess}. Lazy to allow it to always be set up. * Inject this class directly (instead of DocumentAccess) for use in internal code. * * @author jonmv @@ -36,7 +36,7 @@ public class VespaDocumentAccess extends DocumentAccess { private final MessageBusParams parameters; - private final AtomicReference<MessageBusDocumentAccess> delegate = new AtomicReference<>(); + private final AtomicReference<DocumentAccess> delegate = new AtomicReference<>(); private boolean shutDown = false; VespaDocumentAccess(DocumentmanagerConfig documentmanagerConfig, @@ -53,8 +53,8 @@ public class VespaDocumentAccess extends DocumentAccess { this.parameters.getMessageBusParams().setMessageBusConfig(messagebusConfig); } - public MessageBusDocumentAccess delegate() { - MessageBusDocumentAccess access = delegate.getAcquire(); + public DocumentAccess delegate() { + DocumentAccess access = delegate.getAcquire(); return access != null ? access : delegate.updateAndGet(value -> { if (value != null) return value; diff --git a/container-search/src/main/java/com/yahoo/prelude/cluster/ClusterSearcher.java b/container-search/src/main/java/com/yahoo/prelude/cluster/ClusterSearcher.java index 307b3e17373..8685400b5c1 100644 --- a/container-search/src/main/java/com/yahoo/prelude/cluster/ClusterSearcher.java +++ b/container-search/src/main/java/com/yahoo/prelude/cluster/ClusterSearcher.java @@ -9,6 +9,7 @@ import com.yahoo.container.QrConfig; import com.yahoo.container.QrSearchersConfig; import com.yahoo.container.core.documentapi.VespaDocumentAccess; import com.yahoo.container.handler.VipStatus; +import com.yahoo.documentapi.DocumentAccess; import com.yahoo.prelude.IndexFacts; import com.yahoo.prelude.fastsearch.ClusterParams; import com.yahoo.prelude.fastsearch.DocumentdbInfoConfig; @@ -70,6 +71,7 @@ public class ClusterSearcher extends Searcher { DocumentdbInfoConfig documentDbConfig, ComponentRegistry<Dispatcher> dispatchers, QrConfig qrConfig, + VipStatus vipStatus, VespaDocumentAccess access) { super(id); diff --git a/container-search/src/main/java/com/yahoo/vespa/streamingvisitors/VdsStreamingSearcher.java b/container-search/src/main/java/com/yahoo/vespa/streamingvisitors/VdsStreamingSearcher.java index 3a4ff4d385b..24dd25c5182 100644 --- a/container-search/src/main/java/com/yahoo/vespa/streamingvisitors/VdsStreamingSearcher.java +++ b/container-search/src/main/java/com/yahoo/vespa/streamingvisitors/VdsStreamingSearcher.java @@ -7,6 +7,7 @@ import com.yahoo.document.select.parser.ParseException; import com.yahoo.document.select.parser.TokenMgrException; import com.yahoo.documentapi.VisitorParameters; import com.yahoo.documentapi.VisitorSession; +import com.yahoo.documentapi.messagebus.MessageBusDocumentAccess; import com.yahoo.documentapi.messagebus.loadtypes.LoadTypeSet; import com.yahoo.fs4.DocsumPacket; import com.yahoo.messagebus.routing.Route; @@ -90,7 +91,7 @@ public class VdsStreamingSearcher extends VespaBackEndSearcher { @Override public LoadTypeSet getLoadTypeSet() { - return access.delegate().getParams().getLoadTypes(); + return ((MessageBusDocumentAccess) access.delegate()).getParams().getLoadTypes(); } @Override diff --git a/container-search/src/test/java/com/yahoo/prelude/cluster/ClusterSearcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/cluster/ClusterSearcherTestCase.java index 465d54ae050..ca98b6a1a77 100644 --- a/container-search/src/test/java/com/yahoo/prelude/cluster/ClusterSearcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/cluster/ClusterSearcherTestCase.java @@ -530,6 +530,7 @@ public class ClusterSearcherTestCase { documentDbConfig.build(), dispatchers, new QrConfig.Builder().build(), + vipStatus, null); } |