[GitHub] [geode] jdeppe-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
Only one `PubSub` is created for the lifetime of the adapter. Each 
`ExecutionContextHandler` receives a reference to it. 

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] kohlmu-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
Can we then just add an interface and an implementation... It is easier to do 
this BEFORE rather than after. Also it makes it easier to achieve loose 
coupling.


[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] kohlmu-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
I wonder if one should expose the `PubSub` world here... maybe have the context 
have a `publish` method, which then delegates to the internal `PubSub`. To me 
it is a little like feature envy... Where instead of having the 
`ExecutionHandlerContext` handle the publish, we first have to know that there 
is a `PubSub` and then ask it to do work  -- 
https://refactoring.guru/smells/feature-envy

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jdeppe-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
We're coding to the interface and not the concrete class. It could easily be 
changed if the need arises.

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jdeppe-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
Ditto above.

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jdeppe-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
Same ditto

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jdeppe-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
It's a good point. We realize that `context` is very overloaded right now and 
we're planning on refactoring in the future.

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jdeppe-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
I don't think that will work since `Comparable` only uses a single type and 
`isEqualTo` requires multiple types.

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] gesterzhou commented on issue #4638: GEODE-7683: introduce BR.cmnClearRegion

2020-02-11 Thread GitHub
there's some dunit tests fail from time to time on different test. I think it's 
unstable in base branch i.e feature/GEODE-7665

[ Full content available at: https://github.com/apache/geode/pull/4638 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jdeppe-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
Not really, but since this pattern is used throughout all the commands I think 
it would be better to make that change in a separate PR and cover all the 
commands.

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] kohlmu-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
Would we not prefer a checked exception here?

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] kohlmu-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
Could we please raise one and address accordingly

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] igodwin closed pull request #4686: GEODE-6070: Fix ShutdownCommandOverHttpDUnitTest

2020-02-11 Thread GitHub
[ pull request closed by igodwin ]

[ Full content available at: https://github.com/apache/geode/pull/4686 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jujoramos opened pull request #4687: [WIP] GEODE-7789: Cache DurableClienAttributes

2020-02-11 Thread GitHub
Keep the last known 'DurableClienAttributes' cached within the
'InternalDistributedMember' class to avoid the overhead of creating a
new instance every time.

Thank you for submitting a contribution to Apache Geode.

In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:

### For all changes:
- [X] Is there a JIRA ticket associated with this PR? Is it referenced in the 
commit message?

- [X] Has your PR been rebased against the latest commit within the target 
branch (typically `develop`)?

- [X] Is your initial contribution a single, squashed commit?

- [X] Does `gradlew build` run cleanly?

- [X] Have you written or updated unit tests to verify your changes?

- [ ] If adding new dependencies to the code, are these dependencies licensed 
in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)?

### Note:
Please ensure that once the PR is submitted, check Concourse for build issues 
and
submit an update to your PR as soon as possible. If you need help, please send 
an
email to d...@geode.apache.org.


[ Full content available at: https://github.com/apache/geode/pull/4687 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jdeppe-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
It ensures that the `PubSub` instance is fully constructed before use - since 
the Function requires a reference to it.

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] kohlmu-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
Let me rephrase, given that there are no dependencies as input parameters, the 
registering of Functions can happen at construction time.

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jdeppe-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
That is true.

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jdeppe-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
I'm not sure I understand. We need to know two things:
1 - has a client already subscribed to a channel
2 - how many subscriptions a client currently has

In order to address both of these concerns, the `findSubscribers` method would 
probably need to be inlined which seems like it would be less readable.

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jdeppe-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
I think that's just a different approach - also valid, but just different

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] kohlmu-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
So, you can 100% guarantee that the fields are ALWAYS non-null?

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] kohlmu-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
another approach is that the equals method is `this.channel.equals(channel`. 
This way the constructor can ensure that the instance channel field is non-null 
AND your `isEqualsTo` is null-safe

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] gesterzhou closed pull request #4638: GEODE-7683: introduce BR.cmnClearRegion

2020-02-11 Thread GitHub
[ pull request closed by gesterzhou ]

[ Full content available at: https://github.com/apache/geode/pull/4638 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] kohlmu-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
You are correct. 
That said.. What is the max number of Pub/Sub combinations we can expect? How 
does this approach scale?
Maybe two maps > and > ?

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jdeppe-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
Fixed code

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jdeppe-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
But I don't see any immediate value in changing it.

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] rhoughton-pivot closed pull request #4685: GEODE-7788: Alpine tools docker image creation fails due to internal

2020-02-11 Thread GitHub
[ pull request closed by rhoughton-pivot ]

[ Full content available at: https://github.com/apache/geode/pull/4685 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] kohlmu-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
Also, you can use `new PubSub` as the `registerFunction` can (and should) be 
called in the constructor of `PubSub` otherwise one is exposing knowledge that 
does not need to be exposed.

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] bschuchardt opened pull request #4688: GEODE-7792: configure logging for geode-membership integration tests

2020-02-11 Thread GitHub
Thank you for submitting a contribution to Apache Geode.

In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:

### For all changes:
- [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the 
commit message?

- [ ] Has your PR been rebased against the latest commit within the target 
branch (typically `develop`)?

- [ ] Is your initial contribution a single, squashed commit?

- [ ] Does `gradlew build` run cleanly?

- [ ] Have you written or updated unit tests to verify your changes?

- [ ] If adding new dependencies to the code, are these dependencies licensed 
in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)?

### Note:
Please ensure that once the PR is submitted, check Concourse for build issues 
and
submit an update to your PR as soon as possible. If you need help, please send 
an
email to d...@geode.apache.org.


[ Full content available at: https://github.com/apache/geode/pull/4688 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jdeppe-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
Could we leave optimization until it's actually determined that it is needed?

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] kohlmu-pivotal commented on pull request #4682: GEODE-7778: Add PUBLISH, SUBSCRIBE and UNSUBSCRIBE Redis commands

2020-02-11 Thread GitHub
I agree, premature optimization But I'd be interested in what the "normal" 
usage on this would be. Maybe we add a load testing ticket on this, to see what 
load this construct can take. Is it 100's or 1000's or even 10,000's...

But I think it would be good to understand when it will slow down / break.

[ Full content available at: https://github.com/apache/geode/pull/4682 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] BenjaminPerryRoss opened pull request #4689: GEODE-7684: Create messaging for PR Clear

2020-02-11 Thread GitHub
Thank you for submitting a contribution to Apache Geode.

In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:

### For all changes:
- [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the 
commit message?

- [ ] Has your PR been rebased against the latest commit within the target 
branch (typically `develop`)?

- [ ] Is your initial contribution a single, squashed commit?

- [ ] Does `gradlew build` run cleanly?

- [ ] Have you written or updated unit tests to verify your changes?

- [ ] If adding new dependencies to the code, are these dependencies licensed 
in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)?

### Note:
Please ensure that once the PR is submitted, check Concourse for build issues 
and
submit an update to your PR as soon as possible. If you need help, please send 
an
email to d...@geode.apache.org.


[ Full content available at: https://github.com/apache/geode/pull/4689 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jchen21 opened pull request #4690: GEODE-7746: onServers function throws a NPE if the distributed system is shutdown

2020-02-11 Thread GitHub
Thank you for submitting a contribution to Apache Geode.

In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:

### For all changes:
- [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the 
commit message?

- [ ] Has your PR been rebased against the latest commit within the target 
branch (typically `develop`)?

- [ ] Is your initial contribution a single, squashed commit?

- [ ] Does `gradlew build` run cleanly?

- [ ] Have you written or updated unit tests to verify your changes?

- [ ] If adding new dependencies to the code, are these dependencies licensed 
in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)?

### Note:
Please ensure that once the PR is submitted, check Concourse for build issues 
and
submit an update to your PR as soon as possible. If you need help, please send 
an
email to d...@geode.apache.org.


[ Full content available at: https://github.com/apache/geode/pull/4690 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] BenjaminPerryRoss commented on issue #4689: GEODE-7684: Create messaging for PR Clear

2020-02-11 Thread GitHub
After talking with Gester - we should remove notify only and the transactional 
related stuff, make sure that doLocalClear() throws ForceReattemptException 
instead of PartitionedRegionException, and use a while loop to get the 
lock/check primary (see lucine IndexRepositoryFactory.java)

[ Full content available at: https://github.com/apache/geode/pull/4689 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] BenjaminPerryRoss commented on issue #4689: GEODE-7684: Create messaging for PR Clear

2020-02-11 Thread GitHub
After talking with Gester - we should remove notify only, transactional related 
stuff, and notifyGatewaySender logic, make sure that doLocalClear() throws 
ForceReattemptException instead of PartitionedRegionException, and use a while 
loop to get the lock/check primary (see lucine IndexRepositoryFactory.java)

[ Full content available at: https://github.com/apache/geode/pull/4689 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] DonalEvans commented on pull request #4689: GEODE-7684: Create messaging for PR Clear

2020-02-11 Thread GitHub
This is set in the constructor and used in `toData()` and `fromData()` but 
other than that it's never accessed or modified, so it can probably be removed.

[ Full content available at: https://github.com/apache/geode/pull/4689 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] DonalEvans commented on pull request #4689: GEODE-7684: Create messaging for PR Clear

2020-02-11 Thread GitHub
This is currently never used, so unless it's going to be needed for the API 
story, it should probably be removed.

[ Full content available at: https://github.com/apache/geode/pull/4689 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] DonalEvans commented on pull request #4689: GEODE-7684: Create messaging for PR Clear

2020-02-11 Thread GitHub
It might be worth including tests to confirm that `initMessage()` correctly 
sets the `processorId` and doesn't call `enableSevereAlertProcessing()` on the 
`ReplyProcessor` if the processor is null, a test to confirm that `send()` 
throws an exception if `putOutgoing(this)` returns a non-null set, a test to 
confirm that `operateOnPartitionedRegion()` calls `sendReply()` with the 
correct arguments if a `ForceReattemptException` is thrown during 
`doLocalClear()`, a test to confirm that we call 
`endPartitionMessagesProcessing()` in `sendReply()` when appropriate and a test 
to confirm that we only call `replyProcessor.process()` in 
`ClearReplyMessage.process()` when the replyProcessor is not null.

[ Full content available at: https://github.com/apache/geode/pull/4689 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] DonalEvans commented on pull request #4689: GEODE-7684: Create messaging for PR Clear

2020-02-11 Thread GitHub
`this.isSevereAlertCompatible()` is always true for this class, so it can 
probably be removed from this if statement.

[ Full content available at: https://github.com/apache/geode/pull/4689 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] DonalEvans commented on pull request #4689: GEODE-7684: Create messaging for PR Clear

2020-02-11 Thread GitHub
Remove comment.

[ Full content available at: https://github.com/apache/geode/pull/4689 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] jhuynh1 commented on pull request #4690: GEODE-7746: onServers function throws a NPE if the distributed system is shutdown

2020-02-11 Thread GitHub
Also, is there a way we can convert to awaitility so there is no chance a test 
can hang forever?

[ Full content available at: https://github.com/apache/geode/pull/4690 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org


[GitHub] [geode] dschneider-pivotal opened pull request #4692: Distributed rebalance status

2020-02-11 Thread GitHub
Thank you for submitting a contribution to Apache Geode.

In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:

### For all changes:
- [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the 
commit message?

- [ ] Has your PR been rebased against the latest commit within the target 
branch (typically `develop`)?

- [ ] Is your initial contribution a single, squashed commit?

- [ ] Does `gradlew build` run cleanly?

- [ ] Have you written or updated unit tests to verify your changes?

- [ ] If adding new dependencies to the code, are these dependencies licensed 
in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)?

### Note:
Please ensure that once the PR is submitted, check Concourse for build issues 
and
submit an update to your PR as soon as possible. If you need help, please send 
an
email to d...@geode.apache.org.


[ Full content available at: https://github.com/apache/geode/pull/4692 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org