You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@bookkeeper.apache.org by "Yixue (Andrew) Zhu" <yx...@gmail.com> on 2012/10/25 04:45:56 UTC

Review Request: Track remote region subscribed status in zookeeper node under topic

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/7732/
-----------------------------------------------------------

Review request for bookkeeper, Ivan Kelly and Sijie Guo.


Description
-------

Ignore hub-client remote subscription failure if we have succeeded before, to handle transient remote region unavailable scenerio# The following invariants are maintained:
        1. Track remote region subscribed status in zookeeper node under topic, which is best effort for now.
        2. Untrack remote region subscribed status once last local subscription for the topic is removed.
        3. The remote subscription is still attempted if no active local subscriptions on bootstrap, and retried until it succeed.


This addresses bug BOOKKEEPER-362.
    https://issues.apache.org/jira/browse/BOOKKEEPER-362


Diffs
-----

  hedwig-client/src/main/java/org/apache/hedwig/util/HedwigSocketAddress.java 8bfdada 
  hedwig-protocol/src/main/java/org/apache/hedwig/exceptions/PubSubException.java f2a20d0 
  hedwig-protocol/src/main/java/org/apache/hedwig/protocol/PubSubProtocol.java 8d8f2ac 
  hedwig-protocol/src/main/protobuf/PubSubProtocol.proto 7fafcce 
  hedwig-server/src/main/java/org/apache/hedwig/server/meta/MetadataManagerFactory.java bca37d2 
  hedwig-server/src/main/java/org/apache/hedwig/server/meta/RemoteSubscriptionDataManager.java PRE-CREATION 
  hedwig-server/src/main/java/org/apache/hedwig/server/meta/ZkMetadataManagerFactory.java e65ad78 
  hedwig-server/src/main/java/org/apache/hedwig/server/netty/PubSubServer.java c06f03a 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/HedwigHubClient.java 063a99c 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/HedwigHubClientFactory.java 68d317e 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/HedwigHubSubscriber.java 7055251 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/NoOpRemoteSubscriptionManager.java PRE-CREATION 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/RegionManager.java bae960b 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/ZKRemoteSubscriptionManager.java PRE-CREATION 
  hedwig-server/src/main/java/org/apache/hedwig/server/subscriptions/AbstractSubscriptionManager.java 5552265 
  hedwig-server/src/main/java/org/apache/hedwig/server/subscriptions/InMemorySubscriptionManager.java 1400e49 
  hedwig-server/src/main/java/org/apache/hedwig/server/subscriptions/SubscriptionEventListener.java 6c6e626 
  hedwig-server/src/test/java/org/apache/hedwig/server/TestRegionSubscribe.java PRE-CREATION 
  hedwig-server/src/test/java/org/apache/hedwig/server/meta/TestMetadataManagerFactory.java 44c30d7 
  hedwig-server/src/test/java/org/apache/hedwig/server/regions/TestNoOpRemoteSubManager.java PRE-CREATION 
  hedwig-server/src/test/java/org/apache/hedwig/server/regions/TestZkRemoteSubManager.java PRE-CREATION 

Diff: https://reviews.apache.org/r/7732/diff/


Testing
-------

Added unit tests + existing


Thanks,

Yixue (Andrew) Zhu


Re: Review Request: Track remote region subscribed status in zookeeper node under topic

Posted by "Yixue (Andrew) Zhu" <yx...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/7732/
-----------------------------------------------------------

(Updated Oct. 26, 2012, 7:24 p.m.)


Review request for bookkeeper, Ivan Kelly and Sijie Guo.


Changes
-------

Updated per comment


Description
-------

Ignore hub-client remote subscription failure if we have succeeded before, to handle transient remote region unavailable scenerio# The following invariants are maintained:
        1. Track remote region subscribed status in zookeeper node under topic, which is best effort for now.
        2. Untrack remote region subscribed status once last local subscription for the topic is removed.
        3. The remote subscription is still attempted if no active local subscriptions on bootstrap, and retried until it succeed.


This addresses bug BOOKKEEPER-362.
    https://issues.apache.org/jira/browse/BOOKKEEPER-362


Diffs (updated)
-----

  hedwig-client/src/main/java/org/apache/hedwig/util/HedwigSocketAddress.java 8bfdada 
  hedwig-protocol/src/main/java/org/apache/hedwig/exceptions/PubSubException.java f2a20d0 
  hedwig-protocol/src/main/java/org/apache/hedwig/protocol/PubSubProtocol.java 8d8f2ac 
  hedwig-protocol/src/main/protobuf/PubSubProtocol.proto 7fafcce 
  hedwig-server/src/main/java/org/apache/hedwig/server/meta/MetadataManagerFactory.java bca37d2 
  hedwig-server/src/main/java/org/apache/hedwig/server/meta/RemoteSubscriptionDataManager.java PRE-CREATION 
  hedwig-server/src/main/java/org/apache/hedwig/server/meta/ZkMetadataManagerFactory.java e65ad78 
  hedwig-server/src/main/java/org/apache/hedwig/server/netty/PubSubServer.java c06f03a 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/HedwigHubClient.java 063a99c 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/HedwigHubClientFactory.java 68d317e 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/HedwigHubSubscriber.java 7055251 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/NoOpRemoteSubscriptionManager.java PRE-CREATION 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/RegionManager.java bae960b 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/ZKRemoteSubscriptionManager.java PRE-CREATION 
  hedwig-server/src/main/java/org/apache/hedwig/server/subscriptions/AbstractSubscriptionManager.java 5552265 
  hedwig-server/src/main/java/org/apache/hedwig/server/subscriptions/InMemorySubscriptionManager.java 1400e49 
  hedwig-server/src/main/java/org/apache/hedwig/server/subscriptions/SubscriptionEventListener.java 6c6e626 
  hedwig-server/src/test/java/org/apache/hedwig/server/TestRegionSubscribe.java PRE-CREATION 
  hedwig-server/src/test/java/org/apache/hedwig/server/meta/TestMetadataManagerFactory.java 44c30d7 
  hedwig-server/src/test/java/org/apache/hedwig/server/regions/TestNoOpRemoteSubManager.java PRE-CREATION 
  hedwig-server/src/test/java/org/apache/hedwig/server/regions/TestZkRemoteSubManager.java PRE-CREATION 

Diff: https://reviews.apache.org/r/7732/diff/


Testing
-------

Added unit tests + existing


Thanks,

Yixue (Andrew) Zhu


Re: Review Request: Track remote region subscribed status in zookeeper node under topic

Posted by "Yixue (Andrew) Zhu" <yx...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/7732/
-----------------------------------------------------------

(Updated Oct. 25, 2012, 5 p.m.)


Review request for bookkeeper, Ivan Kelly and Sijie Guo.


Changes
-------

Update InMemorySubManager portion which is needed by this change but will be part of BOOKKEEPER-441


Description
-------

Ignore hub-client remote subscription failure if we have succeeded before, to handle transient remote region unavailable scenerio# The following invariants are maintained:
        1. Track remote region subscribed status in zookeeper node under topic, which is best effort for now.
        2. Untrack remote region subscribed status once last local subscription for the topic is removed.
        3. The remote subscription is still attempted if no active local subscriptions on bootstrap, and retried until it succeed.


This addresses bug BOOKKEEPER-362.
    https://issues.apache.org/jira/browse/BOOKKEEPER-362


Diffs (updated)
-----

  hedwig-client/src/main/java/org/apache/hedwig/util/HedwigSocketAddress.java 8bfdada 
  hedwig-protocol/src/main/java/org/apache/hedwig/exceptions/PubSubException.java f2a20d0 
  hedwig-protocol/src/main/java/org/apache/hedwig/protocol/PubSubProtocol.java 8d8f2ac 
  hedwig-protocol/src/main/protobuf/PubSubProtocol.proto 7fafcce 
  hedwig-server/src/main/java/org/apache/hedwig/server/meta/MetadataManagerFactory.java bca37d2 
  hedwig-server/src/main/java/org/apache/hedwig/server/meta/RemoteSubscriptionDataManager.java PRE-CREATION 
  hedwig-server/src/main/java/org/apache/hedwig/server/meta/ZkMetadataManagerFactory.java e65ad78 
  hedwig-server/src/main/java/org/apache/hedwig/server/netty/PubSubServer.java c06f03a 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/HedwigHubClient.java 063a99c 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/HedwigHubClientFactory.java 68d317e 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/HedwigHubSubscriber.java 7055251 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/NoOpRemoteSubscriptionManager.java PRE-CREATION 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/RegionManager.java bae960b 
  hedwig-server/src/main/java/org/apache/hedwig/server/regions/ZKRemoteSubscriptionManager.java PRE-CREATION 
  hedwig-server/src/main/java/org/apache/hedwig/server/subscriptions/AbstractSubscriptionManager.java 5552265 
  hedwig-server/src/main/java/org/apache/hedwig/server/subscriptions/InMemorySubscriptionManager.java 1400e49 
  hedwig-server/src/main/java/org/apache/hedwig/server/subscriptions/SubscriptionEventListener.java 6c6e626 
  hedwig-server/src/test/java/org/apache/hedwig/server/TestRegionSubscribe.java PRE-CREATION 
  hedwig-server/src/test/java/org/apache/hedwig/server/meta/TestMetadataManagerFactory.java 44c30d7 
  hedwig-server/src/test/java/org/apache/hedwig/server/regions/TestNoOpRemoteSubManager.java PRE-CREATION 
  hedwig-server/src/test/java/org/apache/hedwig/server/regions/TestZkRemoteSubManager.java PRE-CREATION 

Diff: https://reviews.apache.org/r/7732/diff/


Testing
-------

Added unit tests + existing


Thanks,

Yixue (Andrew) Zhu


Re: Review Request: Track remote region subscribed status in zookeeper node under topic

Posted by "Yixue (Andrew) Zhu" <yx...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/7732/#review12752
-----------------------------------------------------------



hedwig-server/src/main/java/org/apache/hedwig/server/subscriptions/AbstractSubscriptionManager.java
<https://reviews.apache.org/r/7732/#comment27229>

    This change is covered by BOOKKEEPER-441, which I already sent separate code review out.
    It is needed here, but will be checked in separately.


- Yixue (Andrew) Zhu


On Oct. 25, 2012, 2:45 a.m., Yixue (Andrew) Zhu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/7732/
> -----------------------------------------------------------
> 
> (Updated Oct. 25, 2012, 2:45 a.m.)
> 
> 
> Review request for bookkeeper, Ivan Kelly and Sijie Guo.
> 
> 
> Description
> -------
> 
> Ignore hub-client remote subscription failure if we have succeeded before, to handle transient remote region unavailable scenerio# The following invariants are maintained:
>         1. Track remote region subscribed status in zookeeper node under topic, which is best effort for now.
>         2. Untrack remote region subscribed status once last local subscription for the topic is removed.
>         3. The remote subscription is still attempted if no active local subscriptions on bootstrap, and retried until it succeed.
> 
> 
> This addresses bug BOOKKEEPER-362.
>     https://issues.apache.org/jira/browse/BOOKKEEPER-362
> 
> 
> Diffs
> -----
> 
>   hedwig-client/src/main/java/org/apache/hedwig/util/HedwigSocketAddress.java 8bfdada 
>   hedwig-protocol/src/main/java/org/apache/hedwig/exceptions/PubSubException.java f2a20d0 
>   hedwig-protocol/src/main/java/org/apache/hedwig/protocol/PubSubProtocol.java 8d8f2ac 
>   hedwig-protocol/src/main/protobuf/PubSubProtocol.proto 7fafcce 
>   hedwig-server/src/main/java/org/apache/hedwig/server/meta/MetadataManagerFactory.java bca37d2 
>   hedwig-server/src/main/java/org/apache/hedwig/server/meta/RemoteSubscriptionDataManager.java PRE-CREATION 
>   hedwig-server/src/main/java/org/apache/hedwig/server/meta/ZkMetadataManagerFactory.java e65ad78 
>   hedwig-server/src/main/java/org/apache/hedwig/server/netty/PubSubServer.java c06f03a 
>   hedwig-server/src/main/java/org/apache/hedwig/server/regions/HedwigHubClient.java 063a99c 
>   hedwig-server/src/main/java/org/apache/hedwig/server/regions/HedwigHubClientFactory.java 68d317e 
>   hedwig-server/src/main/java/org/apache/hedwig/server/regions/HedwigHubSubscriber.java 7055251 
>   hedwig-server/src/main/java/org/apache/hedwig/server/regions/NoOpRemoteSubscriptionManager.java PRE-CREATION 
>   hedwig-server/src/main/java/org/apache/hedwig/server/regions/RegionManager.java bae960b 
>   hedwig-server/src/main/java/org/apache/hedwig/server/regions/ZKRemoteSubscriptionManager.java PRE-CREATION 
>   hedwig-server/src/main/java/org/apache/hedwig/server/subscriptions/AbstractSubscriptionManager.java 5552265 
>   hedwig-server/src/main/java/org/apache/hedwig/server/subscriptions/InMemorySubscriptionManager.java 1400e49 
>   hedwig-server/src/main/java/org/apache/hedwig/server/subscriptions/SubscriptionEventListener.java 6c6e626 
>   hedwig-server/src/test/java/org/apache/hedwig/server/TestRegionSubscribe.java PRE-CREATION 
>   hedwig-server/src/test/java/org/apache/hedwig/server/meta/TestMetadataManagerFactory.java 44c30d7 
>   hedwig-server/src/test/java/org/apache/hedwig/server/regions/TestNoOpRemoteSubManager.java PRE-CREATION 
>   hedwig-server/src/test/java/org/apache/hedwig/server/regions/TestZkRemoteSubManager.java PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/7732/diff/
> 
> 
> Testing
> -------
> 
> Added unit tests + existing
> 
> 
> Thanks,
> 
> Yixue (Andrew) Zhu
> 
>