Multi site plugin configuration

166 views
Skip to first unread message

Sweta Asnodkar

unread,
Jun 18, 2024, 2:31:49 AM6/18/24
to Repo and Gerrit Discussion
Hello TEam,

I am trying to install multi site plugin for our gerrit. 
We are planning to have gerrit installed on different machine and having multi master setup.

I was going through the documentation found some things but not sure how to go about it.
Plugins I would for the setup
1) Multi site plugin
2) events-broker plugin 
3) global-refdb plugin (To be installed under lib)
4) Pull replication plugin
5) message broker (We will need another plugin for this or events broker itself will take care of this?)
6) Load balancer (Will this be needed while using normal VMs?)

Please let me know if I am missing something.

Thanks,
Sweta


Daniele Sassoli

unread,
Jun 18, 2024, 6:21:49 AM6/18/24
to Repo and Gerrit Discussion
Hi Sweta

On Tuesday 18 June 2024 at 07:31:49 UTC+1 Sweta Asnodkar wrote:
Hello TEam,

I am trying to install multi site plugin for our gerrit. 
We are planning to have gerrit installed on different machine and having multi master setup.

I was going through the documentation found some things but not sure how to go about it.
Plugins I would for the setup
1) Multi site plugin
2) events-broker plugin 
3) global-refdb plugin (To be installed under lib)
You will also need a concrete implementation of the global-refdb, there are a few different flavours of it, like zookeeper  and dynamodb.
4) Pull replication plugin
5) message broker (We will need another plugin for this or events broker itself will take care of this?)
As per global-refdb, you will need a concrete implementation of this, like kafka or pubsub. 
6) Load balancer (Will this be needed while using normal VMs?)
You will most certainly need this, but it will be external to Gerrit.

Luca Milanesio

unread,
Jun 18, 2024, 8:53:57 AM6/18/24
to Repo and Gerrit Discussion, Luca Milanesio, Daniele Sassoli
Sweta,
There is a lot of material and information about the Gerrit multi-site support, I would recommend to start with:

1) Videos and past presentations, on the GerritForge’s multi-site playlist on YouTube:


2) Test setup and show-case


3) Additional Community and Enterprise Support for a hands-on help on setting this up for you


HTH

Luca.

Sweta Asnodkar

unread,
Jul 24, 2024, 4:19:17 AM7/24/24
to Repo and Gerrit Discussion
Thank you for your reply Luca and  Daniele

>>>>>>I tried the installation of all the plugins.
Installed plugins in lib directory
1) events-broker.jar
2) global-refdb.jar
3) multi-site.jar

Installed plugins in plugins directory 
1) zookeeper-refdb.jar
2) events-kafka.jar

Configuration details
gerrit.config
[multisite]
        primaryInstance = true
        instanceId = instanceid1
        peers = secondaryMachine

multisite.config
[ref-database "zookeeper"]
        connectString = localhost:2181
        transactionLockTimeoutMs = 1000
[plugin "events-kafka"]
        bootstrapServers = localhost:9092
        instanceId =  instanceid1
        sendStreamEvents = true
        topic = gerrit_stream_events
        sendAsync = true
        pollingIntervalMs = 3000
        numberOfSubscribers = 7
[ref-database]
        enabled = true

replication.config
[gerrit]
        defaultForceUpdate = true
        autoReload = true
        replicateOnStartup = true
        maxRetries = 3

[remote " secondaryMachine"]
        url = gerrit2@ secondaryMachine:/var/git/repos/gerrit/${name}.git
        push = +refs/*:refs/*
        mirror = true
        threads = 4
        authGroup = replicators
        rescheduleDelay = 15

Gerrit is starting but there is an issue with multi-site plugin installation. I am getting below error:

[2024-07-16T03:25:58.757-04:00] [main] WARN  com.google.gerrit.server.plugins.PluginLoader : Cannot load plugin multi-site

com.google.inject.CreationException: Unable to create injector, see the following errors:

 

1) [Guice/MissingImplementation]: No implementation for MessageLogger was bound.

 

Requested by:

1  : StreamEventPublisher.<init>(StreamEventPublisher.java:51)

      \_ for 6th parameter msgLog

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> EventModule -> StreamEventPublisherModule

2  : BrokerApiWrapper.<init>(BrokerApiWrapper.java:50)

      \_ for 4th parameter msgLog

     at PluginModule.configure(PluginModule.java:64)

3  : BatchIndexEventSubscriber.<init>(BatchIndexEventSubscriber.java:43)

      \_ for 4th parameter msgLog

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

4  : CacheEvictionEventSubscriber.<init>(CacheEvictionEventSubscriber.java:38)

      \_ for 4th parameter msgLog

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

5  : IndexEventSubscriber.<init>(IndexEventSubscriber.java:48)

      \_ for 4th parameter msgLog

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

6  : ProjectUpdateEventSubscriber.<init>(ProjectUpdateEventSubscriber.java:42)

      \_ for 4th parameter msgLog

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

7  : StreamEventSubscriber.<init>(StreamEventSubscriber.java:42)

      \_ for 4th parameter msgLog

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

 

Learn more:

  https://github.com/google/guice/wiki/MISSING_IMPLEMENTATION

 

2) [Guice/MissingImplementation]: No implementation for ProjectVersionLogger was bound.

 

Requested by:

1  : ReplicationStatus.<init>(ReplicationStatus.java:91)

      \_ for 3rd parameter verLogger

     at ReplicationStatusModule.configure(ReplicationStatusModule.java:35)

      \_ installed by: PluginModule -> ReplicationStatusModule

2  : ProjectVersionRefUpdateImpl.<init>(ProjectVersionRefUpdateImpl.java:63)

      \_ for 4th parameter verLogger

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> EventModule

 

Learn more:

  https://github.com/google/guice/wiki/MISSING_IMPLEMENTATION

 

3) [Guice/MissingImplementation]: No implementation for ChangeCheckerImpl$Factory was bound.

 

Requested by:

1  : ForwardedIndexChangeHandler.<init>(ForwardedIndexChangeHandler.java:52)

      \_ for 5th parameter changeCheckerFactory

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 2nd parameter indexChangeHandler

     at IndexEventSubscriber.<init>(IndexEventSubscriber.java:48)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

2  : ForwardedIndexChangeHandler.<init>(ForwardedIndexChangeHandler.java:52)

      \_ for 5th parameter changeCheckerFactory

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 2nd parameter indexChangeHandler

     at BatchIndexEventSubscriber.<init>(BatchIndexEventSubscriber.java:43)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

3  : ForwardedIndexChangeHandler.<init>(ForwardedIndexChangeHandler.java:52)

      \_ for 5th parameter changeCheckerFactory

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 2nd parameter indexChangeHandler

     at StreamEventRouter.<init>(StreamEventRouter.java:30)

      \_ for 2nd parameter indexEventRouter

     at StreamEventSubscriber.<init>(StreamEventSubscriber.java:42)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

 

Learn more:

  https://github.com/google/guice/wiki/MISSING_IMPLEMENTATION

 

4) [Guice/MissingImplementation]: No implementation for GroupChecker was bound.

 

Requested by:

1  : ForwardedIndexGroupHandler.<init>(ForwardedIndexGroupHandler.java:48)

      \_ for 3rd parameter groupChecker

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 3rd parameter indexGroupHandler

     at IndexEventSubscriber.<init>(IndexEventSubscriber.java:48)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

2  : ForwardedIndexGroupHandler.<init>(ForwardedIndexGroupHandler.java:48)

      \_ for 3rd parameter groupChecker

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 3rd parameter indexGroupHandler

     at BatchIndexEventSubscriber.<init>(BatchIndexEventSubscriber.java:43)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

3  : ForwardedIndexGroupHandler.<init>(ForwardedIndexGroupHandler.java:48)

      \_ for 3rd parameter groupChecker

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 3rd parameter indexGroupHandler

     at StreamEventRouter.<init>(StreamEventRouter.java:30)

      \_ for 2nd parameter indexEventRouter

     at StreamEventSubscriber.<init>(StreamEventSubscriber.java:42)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

 

Learn more:

  https://github.com/google/guice/wiki/MISSING_IMPLEMENTATION

 

5) [Guice/MissingImplementation]: No implementation for ProjectChecker was bound.

 

Requested by:

1  : ForwardedIndexProjectHandler.<init>(ForwardedIndexProjectHandler.java:48)

      \_ for 2nd parameter projectChecker

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 4th parameter indexProjectHandler

     at IndexEventSubscriber.<init>(IndexEventSubscriber.java:48)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

2  : ForwardedIndexProjectHandler.<init>(ForwardedIndexProjectHandler.java:48)

      \_ for 2nd parameter projectChecker

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 4th parameter indexProjectHandler

     at BatchIndexEventSubscriber.<init>(BatchIndexEventSubscriber.java:43)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

3  : ForwardedIndexProjectHandler.<init>(ForwardedIndexProjectHandler.java:48)

      \_ for 2nd parameter projectChecker

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 4th parameter indexProjectHandler

     at StreamEventRouter.<init>(StreamEventRouter.java:30)

      \_ for 2nd parameter indexEventRouter

     at StreamEventSubscriber.<init>(StreamEventSubscriber.java:42)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

 

Learn more:

  https://github.com/google/guice/wiki/MISSING_IMPLEMENTATION

 

6) [Guice/MissingImplementation]: No implementation for Executor annotated with @BrokerExecutor() was bound.

 

Did you mean?

    * Executor annotated with interface StreamEventPublisherExecutor bound at StreamEventPublisherModule.configure(StreamEventPublisherModule.java:27)

      \_ installed by: PluginModule -> EventModule -> StreamEventPublisherModule

 

Requested by:

1  : BrokerApiWrapper.<init>(BrokerApiWrapper.java:50)

      \_ for 1st parameter executor

     at PluginModule.configure(PluginModule.java:64)

 

Learn more:

  https://github.com/google/guice/wiki/MISSING_IMPLEMENTATION

 

7) [Guice/MissingImplementation]: No implementation for ScheduledExecutorService annotated with @ForwardedIndexExecutor() was bound.

 

Did you mean?

    * ScheduledExecutorService annotated with @Named("replication_status") bound at ReplicationStatus$1.configure(ReplicationStatus.java:65)

      \_ installed by: PluginModule -> ReplicationStatusModule -> ReplicationStatus$1

 

Requested by:

1  : ForwardedIndexChangeHandler.<init>(ForwardedIndexChangeHandler.java:52)

      \_ for 3rd parameter indexExecutor

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 2nd parameter indexChangeHandler

     at IndexEventSubscriber.<init>(IndexEventSubscriber.java:48)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

2  : ForwardedIndexChangeHandler.<init>(ForwardedIndexChangeHandler.java:52)

      \_ for 3rd parameter indexExecutor

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 2nd parameter indexChangeHandler

     at BatchIndexEventSubscriber.<init>(BatchIndexEventSubscriber.java:43)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

3  : ForwardedIndexChangeHandler.<init>(ForwardedIndexChangeHandler.java:52)

      \_ for 3rd parameter indexExecutor

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 2nd parameter indexChangeHandler

     at StreamEventRouter.<init>(StreamEventRouter.java:30)

      \_ for 2nd parameter indexEventRouter

     at StreamEventSubscriber.<init>(StreamEventSubscriber.java:42)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

4  : ForwardedIndexGroupHandler.<init>(ForwardedIndexGroupHandler.java:48)

      \_ for 5th parameter indexExecutor

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 3rd parameter indexGroupHandler

     at IndexEventSubscriber.<init>(IndexEventSubscriber.java:48)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

5  : ForwardedIndexGroupHandler.<init>(ForwardedIndexGroupHandler.java:48)

      \_ for 5th parameter indexExecutor

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 3rd parameter indexGroupHandler

     at BatchIndexEventSubscriber.<init>(BatchIndexEventSubscriber.java:43)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

6  : ForwardedIndexGroupHandler.<init>(ForwardedIndexGroupHandler.java:48)

      \_ for 5th parameter indexExecutor

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 3rd parameter indexGroupHandler

     at StreamEventRouter.<init>(StreamEventRouter.java:30)

      \_ for 2nd parameter indexEventRouter

     at StreamEventSubscriber.<init>(StreamEventSubscriber.java:42)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

7  : ForwardedIndexProjectHandler.<init>(ForwardedIndexProjectHandler.java:48)

      \_ for 4th parameter indexExecutor

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 4th parameter indexProjectHandler

     at IndexEventSubscriber.<init>(IndexEventSubscriber.java:48)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

8  : ForwardedIndexProjectHandler.<init>(ForwardedIndexProjectHandler.java:48)

      \_ for 4th parameter indexExecutor

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 4th parameter indexProjectHandler

     at BatchIndexEventSubscriber.<init>(BatchIndexEventSubscriber.java:43)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

9  : ForwardedIndexProjectHandler.<init>(ForwardedIndexProjectHandler.java:48)

      \_ for 4th parameter indexExecutor

     at IndexEventRouter.<init>(IndexEventRouter.java:61)

      \_ for 4th parameter indexProjectHandler

     at StreamEventRouter.<init>(StreamEventRouter.java:30)

      \_ for 2nd parameter indexEventRouter

     at StreamEventSubscriber.<init>(StreamEventSubscriber.java:42)

      \_ for 1st parameter eventRouter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

 

Learn more:

  https://github.com/google/guice/wiki/MISSING_IMPLEMENTATION

 

8) [Guice/MissingConstructor]: No injectable constructor for type SharedRefDbConfiguration.

 

class SharedRefDbConfiguration does not have a @Inject annotated constructor or a no-arg constructor.

 

Requested by:

1  : SharedRefDbConfiguration.class(SharedRefDbConfiguration.java:40)

     at ProjectsFilter.<init>(ProjectsFilter.java:84)

      \_ for 1st parameter cfg

     at IndexEventSubscriber.<init>(IndexEventSubscriber.java:48)

      \_ for 7th parameter projectsFilter

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> SubscriberModule

2  : SharedRefDbConfiguration.class(SharedRefDbConfiguration.java:40)

     at ValidationMetrics.<init>(ValidationMetrics.java:47)

      \_ for 2nd parameter cfg

     at ProjectDeletedSharedDbCleanup.<init>(ProjectDeletedSharedDbCleanup.java:40)

      \_ for 2nd parameter validationMetrics

     at DynamicSet.bind(DynamicSet.java:112)

 

Learn more:

  https://github.com/google/guice/wiki/MISSING_CONSTRUCTOR

 

9) [Guice/MissingConstructor]: No injectable constructor for type DynamicItem<BrokerApi>.

 

class DynamicItem does not have a @Inject annotated constructor or a no-arg constructor.

 

Requested by:

1  : DynamicItem.class(DynamicItem.java:53)

     at BrokerApiWrapper.<init>(BrokerApiWrapper.java:50)

      \_ for 2nd parameter apiDelegate

     at PluginModule.configure(PluginModule.java:64)

2  : DynamicItem.class(DynamicItem.java:53)

     at StreamEventPublisher.<init>(StreamEventPublisher.java:51)

      \_ for 1st parameter brokerApi

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> EventModule -> StreamEventPublisherModule

3  : DynamicItem.class(DynamicItem.java:53)

     at MultiSiteConsumerRunner.<init>(MultiSiteConsumerRunner.java:38)

      \_ for 1st parameter brokerApi

     at LifecycleModule.listener(LifecycleModule.java:40)

 

Learn more:

  https://github.com/google/guice/wiki/MISSING_CONSTRUCTOR

 

10) [Guice/MissingConstructor]: No injectable constructor for type DynamicItem<BrokerMetrics>.

 

class DynamicItem does not have a @Inject annotated constructor or a no-arg constructor.

 

Requested by:

1  : DynamicItem.class(DynamicItem.java:53)

     at StreamEventPublisher.<init>(StreamEventPublisher.java:51)

      \_ for 5th parameter brokerMetrics

     at DynamicSet.bind(DynamicSet.java:112)

      \_ installed by: PluginModule -> EventModule -> StreamEventPublisherModule

 

Learn more:

  https://github.com/google/guice/wiki/MISSING_CONSTRUCTOR

 

10 errors

 

======================

Full classname legend:

======================

BatchIndexEventSubscriber:     "com.googlesource.gerrit.plugins.multisite.consumer.BatchIndexEventSubscriber"

BrokerApi:                     "com.gerritforge.gerrit.eventbroker.BrokerApi"

BrokerApiWrapper:              "com.googlesource.gerrit.plugins.multisite.broker.BrokerApiWrapper"

BrokerExecutor:                "com.googlesource.gerrit.plugins.multisite.broker.BrokerExecutor"

BrokerMetrics:                 "com.gerritforge.gerrit.eventbroker.metrics.BrokerMetrics"

CacheEvictionEventSubscriber:  "com.googlesource.gerrit.plugins.multisite.consumer.CacheEvictionEventSubscriber"

ChangeCheckerImpl$Factory:     "com.googlesource.gerrit.plugins.multisite.index.ChangeCheckerImpl$Factory"

DynamicItem:                   "com.google.gerrit.extensions.registration.DynamicItem"

DynamicSet:                    "com.google.gerrit.extensions.registration.DynamicSet"

EventModule:                   "com.googlesource.gerrit.plugins.multisite.event.EventModule"

Executor:                      "java.util.concurrent.Executor"

ForwardedIndexChangeHandler:   "com.googlesource.gerrit.plugins.multisite.forwarder.ForwardedIndexChangeHandler"

ForwardedIndexExecutor:        "com.googlesource.gerrit.plugins.multisite.index.ForwardedIndexExecutor"

ForwardedIndexGroupHandler:    "com.googlesource.gerrit.plugins.multisite.forwarder.ForwardedIndexGroupHandler"

ForwardedIndexProjectHandler:  "com.googlesource.gerrit.plugins.multisite.forwarder.ForwardedIndexProjectHandler"

GroupChecker:                  "com.googlesource.gerrit.plugins.multisite.index.GroupChecker"

IndexEventRouter:              "com.googlesource.gerrit.plugins.multisite.forwarder.router.IndexEventRouter"

IndexEventSubscriber:          "com.googlesource.gerrit.plugins.multisite.consumer.IndexEventSubscriber"

LifecycleModule:               "com.google.gerrit.lifecycle.LifecycleModule"

MessageLogger:                 "com.gerritforge.gerrit.eventbroker.log.MessageLogger"

MultiSiteConsumerRunner:       "com.googlesource.gerrit.plugins.multisite.consumer.MultiSiteConsumerRunner"

Named:                         "com.google.inject.name.Named"

PluginModule:                  "com.googlesource.gerrit.plugins.multisite.PluginModule"

ProjectChecker:                "com.googlesource.gerrit.plugins.multisite.index.ProjectChecker"

ProjectDeletedSharedDbCleanup: "com.gerritforge.gerrit.globalrefdb.validation.ProjectDeletedSharedDbCleanup"

ProjectUpdateEventSubscriber:  "com.googlesource.gerrit.plugins.multisite.consumer.ProjectUpdateEventSubscriber"

ProjectVersionLogger:          "com.googlesource.gerrit.plugins.multisite.ProjectVersionLogger"

ProjectVersionRefUpdateImpl:   "com.googlesource.gerrit.plugins.multisite.validation.ProjectVersionRefUpdateImpl"

ProjectsFilter:                "com.gerritforge.gerrit.globalrefdb.validation.ProjectsFilter"

ReplicationStatus:             "com.googlesource.gerrit.plugins.multisite.consumer.ReplicationStatus"

ReplicationStatus$1:           "com.googlesource.gerrit.plugins.multisite.consumer.ReplicationStatus$1"

ReplicationStatusModule:       "com.googlesource.gerrit.plugins.multisite.consumer.ReplicationStatusModule"

ScheduledExecutorService:      "java.util.concurrent.ScheduledExecutorService"

SharedRefDbConfiguration:      "com.gerritforge.gerrit.globalrefdb.validation.SharedRefDbConfiguration"

StreamEventPublisher:          "com.gerritforge.gerrit.eventbroker.publisher.StreamEventPublisher"

StreamEventPublisherExecutor:  "com.gerritforge.gerrit.eventbroker.publisher.executor.StreamEventPublisherExecutor"

StreamEventPublisherModule:    "com.gerritforge.gerrit.eventbroker.publisher.StreamEventPublisherModule"

StreamEventRouter:             "com.googlesource.gerrit.plugins.multisite.forwarder.router.StreamEventRouter"

StreamEventSubscriber:         "com.googlesource.gerrit.plugins.multisite.consumer.StreamEventSubscriber"

SubscriberModule:              "com.googlesource.gerrit.plugins.multisite.consumer.SubscriberModule"

ValidationMetrics:             "com.gerritforge.gerrit.globalrefdb.validation.ValidationMetrics"

========================

End of classname legend:

========================

 

        at com.google.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:589)

        at com.google.inject.internal.InternalInjectorCreator.initializeStatically(InternalInjectorCreator.java:163)

        at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:110)

        at com.google.inject.internal.InjectorImpl.createChildInjector(InjectorImpl.java:240)

        at com.google.inject.internal.InjectorImpl.createChildInjector(InjectorImpl.java:245)

        at com.google.gerrit.server.plugins.ServerPlugin.startPlugin(ServerPlugin.java:233)

        at com.google.gerrit.server.plugins.ServerPlugin.start(ServerPlugin.java:196)

        at com.google.gerrit.server.plugins.PluginLoader.runPlugin(PluginLoader.java:523)

        at com.google.gerrit.server.plugins.PluginLoader.rescan(PluginLoader.java:444)

        at com.google.gerrit.server.plugins.PluginLoader.start(PluginLoader.java:344)

        at com.google.gerrit.lifecycle.LifecycleManager.start(LifecycleManager.java:95)

        at com.google.gerrit.pgm.Daemon.start(Daemon.java:407)

        at com.google.gerrit.pgm.Daemon.run(Daemon.java:300)

        at com.google.gerrit.pgm.util.AbstractProgram.main(AbstractProgram.java:62)

        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)

        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.base/java.lang.reflect.Method.invoke(Method.java:568)

        at com.google.gerrit.launcher.GerritLauncher.invokeProgram(GerritLauncher.java:251)

        at com.google.gerrit.launcher.GerritLauncher.mainImpl(GerritLauncher.java:147)

        at com.google.gerrit.launcher.GerritLauncher.main(GerritLauncher.java:92)

        at Main.main(Main.java:30)


Can someone please help?


Thanks,
Sweta

Álvaro Vilaplana García

unread,
Jul 24, 2024, 5:56:08 AM7/24/24
to Sweta Asnodkar, Repo and Gerrit Discussion
Hi Sweta,



--
--
To unsubscribe, email repo-discuss...@googlegroups.com
More info at http://groups.google.com/group/repo-discuss?hl=en

---
You received this message because you are subscribed to the Google Groups "Repo and Gerrit Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to repo-discuss...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/repo-discuss/be9b83a6-4c8b-4460-863c-39fb90d80ceen%40googlegroups.com.


--
______________________________

Álvaro Vilaplana García

Álvaro Vilaplana García

unread,
Jul 24, 2024, 5:56:51 AM7/24/24
to Sweta Asnodkar, Repo and Gerrit Discussion
Hi Sweta,

El mié, 24 jul 2024 a las 9:19, Sweta Asnodkar (<sweta.notim...@gmail.com>) escribió:
Thank you for your reply Luca and  Daniele

On Tuesday, June 18, 2024 at 6:23:57 PM UTC+5:30 Luca Milanesio wrote:

On 18 Jun 2024, at 11:21, Daniele Sassoli <daniele...@gmail.com> wrote:

Hi Sweta

On Tuesday 18 June 2024 at 07:31:49 UTC+1 Sweta Asnodkar wrote:
Hello TEam,

I am trying to install multi site plugin for our gerrit. 
Which version of Gerrit are you trying to deploy? I see a lot of inconsistencies in the information (configuration and plugins/libs) that you have provided.
 
--
--
To unsubscribe, email repo-discuss...@googlegroups.com
More info at http://groups.google.com/group/repo-discuss?hl=en

---
You received this message because you are subscribed to the Google Groups "Repo and Gerrit Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to repo-discuss...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/repo-discuss/be9b83a6-4c8b-4460-863c-39fb90d80ceen%40googlegroups.com.

Sweta Asnodkar

unread,
Jul 24, 2024, 6:08:36 AM7/24/24
to Repo and Gerrit Discussion
On Wednesday, July 24, 2024 at 3:26:51 PM UTC+5:30 Álvaro Vilaplana García wrote:
Hi Sweta,

El mié, 24 jul 2024 a las 9:19, Sweta Asnodkar (<sweta.notim...@gmail.com>) escribió:
Thank you for your reply Luca and  Daniele

On Tuesday, June 18, 2024 at 6:23:57 PM UTC+5:30 Luca Milanesio wrote:

On 18 Jun 2024, at 11:21, Daniele Sassoli <daniele...@gmail.com> wrote:

Hi Sweta

On Tuesday 18 June 2024 at 07:31:49 UTC+1 Sweta Asnodkar wrote:
Hello TEam,

I am trying to install multi site plugin for our gerrit. 
Which version of Gerrit are you trying to deploy? I see a lot of inconsistencies in the information (configuration and plugins/libs) that you have provided.
>> Gerrit version is 3.10. I am not sure abt the way to do actual configuration. Must have messed somethings up here and there. 

Luca Milanesio

unread,
Jul 24, 2024, 3:17:42 PM7/24/24
to Repo and Gerrit Discussion, Luca Milanesio
Hi Sweta,

On 24 Jul 2024, at 11:08, Sweta Asnodkar <sweta.notim...@gmail.com> wrote:



On Wednesday, July 24, 2024 at 3:26:51 PM UTC+5:30 Álvaro Vilaplana García wrote:
Hi Sweta,

El mié, 24 jul 2024 a las 9:19, Sweta Asnodkar (<sweta.notim...@gmail.com>) escribió:
Thank you for your reply Luca and  Daniele

On Tuesday, June 18, 2024 at 6:23:57 PM UTC+5:30 Luca Milanesio wrote:

On 18 Jun 2024, at 11:21, Daniele Sassoli <daniele...@gmail.com> wrote:

Hi Sweta

On Tuesday 18 June 2024 at 07:31:49 UTC+1 Sweta Asnodkar wrote:
Hello TEam,

I am trying to install multi site plugin for our gerrit. 
Which version of Gerrit are you trying to deploy? I see a lot of inconsistencies in the information (configuration and plugins/libs) that you have provided.
>> Gerrit version is 3.10. I am not sure abt the way to do actual configuration. Must have messed somethings up here and there. 

Di you follow my suggestions?

1) Videos and past presentations, on the GerritForge’s multi-site playlist on YouTube:


2) Test setup and show-case


3) Additional Community and Enterprise Support for a hands-on help on setting this up for you


If you follow 1) and 2) you’ll end up with a sample working setup. If you still cannot configure it, you can consider 3) with Enterprise Support, where some senior expert can help you out setting up multi-site and configuring it.

With the output you’ve shared with the mailing list, it looks like your configuration does not look like 2).

HTH

Luca.

Reply all
Reply to author
Forward
0 new messages