[jira] [Commented] (GEODE-8201) The internal redis data region name should begin with double underscore

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119276#comment-17119276
 ] 

ASF GitHub Bot commented on GEODE-8201:
---

dschneider-pivotal commented on pull request #5181:
URL: https://github.com/apache/geode/pull/5181#issuecomment-635765391


   the GemFireDeadlockDetectorDUnitTest > testDistributedDeadlockWithDLock 
failure is a known issue



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> The internal redis data region name should begin with double underscore
> ---
>
> Key: GEODE-8201
> URL: https://issues.apache.org/jira/browse/GEODE-8201
> Project: Geode
>  Issue Type: Bug
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> To prevent the internal name of the redis data region from conflicting with a 
> user's region name, the internal name should begin with "__". This is not 
> allowed for user region names so this will prevent the redis internal name 
> from conflicting with a user's region name.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8171) javadoc for putAll need to have accurate exception

2020-05-28 Thread Geode Integration (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8171?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119178#comment-17119178
 ] 

Geode Integration commented on GEODE-8171:
--

Anilkumar Gingade added a comment in Pivotal Tracker:   
   
Changes are approved by docs, support and engineering.   
   
View this Pivotal Tracker story: 
https://www.pivotaltracker.com/story/show/172970377

> javadoc for putAll need to have accurate exception 
> ---
>
> Key: GEODE-8171
> URL: https://issues.apache.org/jira/browse/GEODE-8171
> Project: Geode
>  Issue Type: Improvement
>Reporter: Xiaojian Zhou
>Assignee: Xiaojian Zhou
>Priority: Major
>  Labels: GeodeOperationAPI
> Fix For: 1.14.0
>
>
> Both the javadocs and the user guide need a more accurate description of the 
> exceptions that can be thrown when an app calls putAll().  
> Correct the javadocs to list all exceptions that may be thrown.
> Add a code fragment example to the user guide (and to the javadocs, if 
> appropriate) that shows a best practice for an app to call putAll() and 
> handle exceptions.
> Describe what might cause the exceptions and let users know how to adjust 
> cluster configuration mitigate the exceptions.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-7678) Partitioned Region clear operations must invoke cache level listeners

2020-05-28 Thread Geode Integration (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-7678?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119176#comment-17119176
 ] 

Geode Integration commented on GEODE-7678:
--

Anilkumar Gingade added a comment in Pivotal Tracker:   
   
Acceptance: Tests are added. PR is approved. PR related .bts are run.
   
View this Pivotal Tracker story: 
https://www.pivotaltracker.com/story/show/172704534

> Partitioned Region clear operations must invoke cache level listeners
> -
>
> Key: GEODE-7678
> URL: https://issues.apache.org/jira/browse/GEODE-7678
> Project: Geode
>  Issue Type: Sub-task
>  Components: regions
>Reporter: Nabarun Nag
>Assignee: Anilkumar Gingade
>Priority: Major
>  Labels: GeodeCommons, GeodeOperationAPI
>
> Clear operations are successful and CacheListener.afterRegionClear(), 
> CacheWriter.beforeRegionClear() are invoked.
>  
> Acceptance :
>  * DUnit tests validating the above behavior.
>  * Test coverage to when a member departs in this scenario
>  * Test coverage to when a member restarts in this scenario
>  * Unit tests with complete code coverage for the newly written code.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8100) Log Cluster Configuration information to system log

2020-05-28 Thread Geode Integration (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8100?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119175#comment-17119175
 ] 

Geode Integration commented on GEODE-8100:
--

Anilkumar Gingade added a comment in Pivotal Tracker:   
   
Verified by manual test...
Example for REST:
[info 2020/05/18 10:09:08.396 PDT  tid=0x1] Management Request: 
POST[url=/v1/regions]; user=user; payload={"name":"products","type":"REPLICATE"}
[info 2020/05/18 10:09:08.396 PDT  tid=0x1] Management Response: 
Status=403; response={"statusCode":"UNAUTHORIZED","statusMessage":"User not 
authorized for DATA:MANAGE."}
10:11
[info 2020/05/18 10:09:08.288 PDT  tid=0x1] Management Request: 
POST[url=/v1/regions]; user=dataManage; 
payload={"name":"products","type":"REPLICATE"}
[info 2020/05/18 10:09:08.289 PDT  tid=0x1] Management Response: 
Status=201; response={"statusCode":"OK","statusMessage":"Successfully updated 
configuration for 
cluster.","links":{"indexes":"http://localhost/v1/regions/products/indexes","self":"http://localhost/v1/regions/products","list":"http://localhost/v1/regions"}}
   
   
View this Pivotal Tracker story: 
https://www.pivotaltracker.com/story/show/172748712

> Log Cluster Configuration information to system log
> ---
>
> Key: GEODE-8100
> URL: https://issues.apache.org/jira/browse/GEODE-8100
> Project: Geode
>  Issue Type: Bug
>  Components: configuration
>Reporter: Anilkumar Gingade
>Assignee: Dave Barnes
>Priority: Major
>  Labels: GeodeOperationAPI
> Fix For: 1.13.0, 1.14.0
>
>
> All the changes made to the cluster configuration should be logger for 
> auditing purpose. Should help in knowing when and who modified the 
> configuration. Currently this information could be added in the Geode system 
> log.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8200) Rebalance operations stuck in "IN_PROGRESS" state forever

2020-05-28 Thread Geode Integration (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8200?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119174#comment-17119174
 ] 

Geode Integration commented on GEODE-8200:
--

A Pivotal Tracker story has been created for this Issue: 
https://www.pivotaltracker.com/story/show/173071677

> Rebalance operations stuck in "IN_PROGRESS" state forever
> -
>
> Key: GEODE-8200
> URL: https://issues.apache.org/jira/browse/GEODE-8200
> Project: Geode
>  Issue Type: Bug
>  Components: management
>Reporter: Aaron Lindsey
>Priority: Major
>  Labels: GeodeOperationAPI
>
> We use the management REST API to call rebalance immediately before stopping 
> a server to limit the possibility of data loss. In a cluster with 3 locators, 
> 3 servers, and no regions, we noticed that sometimes the rebalance operation 
> never ends if one of the locators is restarting concurrently with the 
> rebalance operation.
> More specifically, the scenario where we see this issue crop up is during an 
> automated "rolling restart" operation in a Kubernetes environment which 
> proceeds as follows:
> * At most one locator and one server are restarting at any point in time
> * Each locator/server waits until the previous locator/server is fully online 
> before restarting
> * Immediately before stopping a server, a rebalance operation is performed 
> and the server is not stopped until the rebalance operation is completed
> The impact of this issue is that the "rolling restart" operation will never 
> complete, because it cannot proceed with stopping a server until the 
> rebalance operation is completed. A human is then required to intervene and 
> manually trigger a rebalance and stop the server. This type of "rolling 
> restart" operation is triggered fairly often in Kubernetes — any time part of 
> the configuration of the locators or servers changes. 
> The following JSON is a sample response from the management REST API that 
> shows the rebalance operation stuck in "IN_PROGRESS".
> {code}
> {
>   "statusCode": "IN_PROGRESS",
>   "links": {
> "self": 
> "http://geodecluster-sample-locator.default/management/v1/operations/rebalances/a47f23c8-02b3-443c-a367-636fd6921ea7;,
> "list": 
> "http://geodecluster-sample-locator.default/management/v1/operations/rebalances;
>   },
>   "operationStart": "2020-05-27T22:38:30.619Z",
>   "operationId": "a47f23c8-02b3-443c-a367-636fd6921ea7",
>   "operation": {
> "simulate": false
>   }
> }
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (GEODE-8200) Rebalance operations stuck in "IN_PROGRESS" state forever

2020-05-28 Thread Anilkumar Gingade (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8200?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anilkumar Gingade updated GEODE-8200:
-
Labels: GeodeOperationAPI  (was: )

> Rebalance operations stuck in "IN_PROGRESS" state forever
> -
>
> Key: GEODE-8200
> URL: https://issues.apache.org/jira/browse/GEODE-8200
> Project: Geode
>  Issue Type: Bug
>  Components: management
>Reporter: Aaron Lindsey
>Priority: Major
>  Labels: GeodeOperationAPI
>
> We use the management REST API to call rebalance immediately before stopping 
> a server to limit the possibility of data loss. In a cluster with 3 locators, 
> 3 servers, and no regions, we noticed that sometimes the rebalance operation 
> never ends if one of the locators is restarting concurrently with the 
> rebalance operation.
> More specifically, the scenario where we see this issue crop up is during an 
> automated "rolling restart" operation in a Kubernetes environment which 
> proceeds as follows:
> * At most one locator and one server are restarting at any point in time
> * Each locator/server waits until the previous locator/server is fully online 
> before restarting
> * Immediately before stopping a server, a rebalance operation is performed 
> and the server is not stopped until the rebalance operation is completed
> The impact of this issue is that the "rolling restart" operation will never 
> complete, because it cannot proceed with stopping a server until the 
> rebalance operation is completed. A human is then required to intervene and 
> manually trigger a rebalance and stop the server. This type of "rolling 
> restart" operation is triggered fairly often in Kubernetes — any time part of 
> the configuration of the locators or servers changes. 
> The following JSON is a sample response from the management REST API that 
> shows the rebalance operation stuck in "IN_PROGRESS".
> {code}
> {
>   "statusCode": "IN_PROGRESS",
>   "links": {
> "self": 
> "http://geodecluster-sample-locator.default/management/v1/operations/rebalances/a47f23c8-02b3-443c-a367-636fd6921ea7;,
> "list": 
> "http://geodecluster-sample-locator.default/management/v1/operations/rebalances;
>   },
>   "operationStart": "2020-05-27T22:38:30.619Z",
>   "operationId": "a47f23c8-02b3-443c-a367-636fd6921ea7",
>   "operation": {
> "simulate": false
>   }
> }
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8127) redis function+delta may not always execute function on primary

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8127?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119172#comment-17119172
 ] 

ASF GitHub Bot commented on GEODE-8127:
---

dschneider-pivotal commented on pull request #5179:
URL: https://github.com/apache/geode/pull/5179#issuecomment-635679767


   It looks like the failures are not related to these changes and are not 
required so I think it would be okay to merge.



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> redis function+delta may not always execute function on primary
> ---
>
> Key: GEODE-8127
> URL: https://issues.apache.org/jira/browse/GEODE-8127
> Project: Geode
>  Issue Type: Bug
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Jens Deppe
>Priority: Major
>
> The redis use of regions depends on the code that will modify the region that 
> is storing redis data, to always execute on the primary. It thought it was 
> accomplishing this by marking the function as "optimizeForWrite=true" and by 
> routing the function to the node with the bucket using "withFilter(key)". 
> This works most of the time. But in some cases the function executes on a 
> redundant copy. It looks like what is happening is that at the time the 
> function is dispatched it has one idea of who the primary is and sends the 
> function to that node. But before it executes the primary moves from this 
> node to another that is doing redundancy recovery. Then when our function 
> finally does a "put" on the localDataSet it ends up being a remote operation 
> that is sent to the other node.
> If our redis function could get a lock that prevents the bucket primary 
> status from changing (see BucketRegion doLockForPrimary) and then check to 
> see if we are the primary (if not throw an exception that causes the function 
> sender to retry  (see BucketMovedException) otherwise execute the function 
> and at the end release the lock (see BucketRegion doUnlockForPrimary).
> We could enable this with a new method added to Function (much like the 
> existing isHA and optimizeForWrite). This new method could be 
> executeOnPrimary and default to false (adding a default method to the 
> Function interface will not cause backwards compatibility issues unless a 
> current class that implements Function already had added a method named 
> "executeOnPrimary").



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Issue Comment Deleted] (GEODE-8197) Embedded Pulse fails to start with custom log4j2.xml

2020-05-28 Thread Kirk Lund (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8197?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kirk Lund updated GEODE-8197:
-
Comment: was deleted

(was: So far, I've been able to fix this problem in my local repo by adding 
log4j-web jar to the Pulse web app. I'll file a PR after I write an acceptance 
test.)

> Embedded Pulse fails to start with custom log4j2.xml
> 
>
> Key: GEODE-8197
> URL: https://issues.apache.org/jira/browse/GEODE-8197
> Project: Geode
>  Issue Type: Bug
>  Components: logging, pulse
>Reporter: Kirk Lund
>Assignee: Kirk Lund
>Priority: Major
>  Labels: GeodeOperationAPI
>
> Starting a Locator with a custom log4j2.xml referencing Geode appenders or 
> converters fails to correctly start embedded Pulse web application.
> {noformat}
> [info 2020/05/28 10:51:51.954 PDT  tid=1] Adding webapp /pulse
> 2020-05-28 10:51:53,328 main ERROR Unable to invoke factory method in class 
> org.apache.geode.alerting.log4j.internal.impl.AlertAppender for element 
> GeodeAlert: java.lang.IllegalStateException: No factory method found for 
> class org.apache.geode.alerting.log4j.internal.impl.AlertAppender 
> java.lang.IllegalStateException: No factory method found for class 
> org.apache.geode.alerting.log4j.internal.impl.AlertAppender
>   at 
> org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.findFactoryMethod(PluginBuilder.java:234)
>   at 
> org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:134)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1002)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:942)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:934)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:552)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:241)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:288)
>   at 
> org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:618)
>   at 
> org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:691)
>   at 
> org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:708)
>   at 
> org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:263)
>   at 
> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153)
>   at 
> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
>   at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194)
>   at 
> org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:138)
>   at 
> org.apache.logging.log4j.jcl.LogAdapter.getContext(LogAdapter.java:39)
>   at 
> org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:48)
>   at 
> org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:40)
>   at 
> org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:55)
>   at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:655)
>   at 
> org.springframework.web.filter.GenericFilterBean.(GenericFilterBean.java:86)
>   at 
> org.springframework.web.filter.DelegatingFilterProxy.(DelegatingFilterProxy.java:107)
>   at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>   at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
>   at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>   at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
>   at 
> org.eclipse.jetty.server.handler.ContextHandler$Context.createInstance(ContextHandler.java:2520)
>   at 
> org.eclipse.jetty.servlet.ServletContextHandler$Context.createFilter(ServletContextHandler.java:1284)
>   at 
> org.eclipse.jetty.servlet.FilterHolder.initialize(FilterHolder.java:118)
>   at 
> org.eclipse.jetty.servlet.ServletHandler.lambda$initialize$0(ServletHandler.java:751)
>   at 
> java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
>   at 
> java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742)
>   at 
> java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742)
>   at 
> 

[jira] [Resolved] (GEODE-8068) Revert GEODE-8033 and GEODE-8044

2020-05-28 Thread Dave Barnes (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8068?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dave Barnes resolved GEODE-8068.

Fix Version/s: 1.13.0
   Resolution: Done

Reversion completed, so this ticket (GEODE-8068) is closed, and the two tickets 
mentioned in the title (GEODE-8033 AND GEODE-8044) are reopened.

> Revert GEODE-8033 and GEODE-8044
> 
>
> Key: GEODE-8068
> URL: https://issues.apache.org/jira/browse/GEODE-8068
> Project: Geode
>  Issue Type: New Feature
>Reporter: Patrick Johnsn
>Priority: Major
> Fix For: 1.13.0
>
>




--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8201) The internal redis data region name should begin with double underscore

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119157#comment-17119157
 ] 

ASF GitHub Bot commented on GEODE-8201:
---

dschneider-pivotal opened a new pull request #5181:
URL: https://github.com/apache/geode/pull/5181


   The RedisData region name now starts with "__".
   Also it now always tries to create the region and will fail
   if it already exists.
   
   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.
   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> The internal redis data region name should begin with double underscore
> ---
>
> Key: GEODE-8201
> URL: https://issues.apache.org/jira/browse/GEODE-8201
> Project: Geode
>  Issue Type: Bug
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> To prevent the internal name of the redis data region from conflicting with a 
> user's region name, the internal name should begin with "__". This is not 
> allowed for user region names so this will prevent the redis internal name 
> from conflicting with a user's region name.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Assigned] (GEODE-8201) The internal redis data region name should begin with double underscore

2020-05-28 Thread Darrel Schneider (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Darrel Schneider reassigned GEODE-8201:
---

Assignee: Darrel Schneider

> The internal redis data region name should begin with double underscore
> ---
>
> Key: GEODE-8201
> URL: https://issues.apache.org/jira/browse/GEODE-8201
> Project: Geode
>  Issue Type: Bug
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> To prevent the internal name of the redis data region from conflicting with a 
> user's region name, the internal name should begin with "__". This is not 
> allowed for user region names so this will prevent the redis internal name 
> from conflicting with a user's region name.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (GEODE-8201) The internal redis data region name should begin with double underscore

2020-05-28 Thread Darrel Schneider (Jira)
Darrel Schneider created GEODE-8201:
---

 Summary: The internal redis data region name should begin with 
double underscore
 Key: GEODE-8201
 URL: https://issues.apache.org/jira/browse/GEODE-8201
 Project: Geode
  Issue Type: Bug
  Components: redis
Reporter: Darrel Schneider


To prevent the internal name of the redis data region from conflicting with a 
user's region name, the internal name should begin with "__". This is not 
allowed for user region names so this will prevent the redis internal name from 
conflicting with a user's region name.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Assigned] (GEODE-8127) redis function+delta may not always execute function on primary

2020-05-28 Thread Darrel Schneider (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8127?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Darrel Schneider reassigned GEODE-8127:
---

Assignee: Jens Deppe  (was: Darrel Schneider)

> redis function+delta may not always execute function on primary
> ---
>
> Key: GEODE-8127
> URL: https://issues.apache.org/jira/browse/GEODE-8127
> Project: Geode
>  Issue Type: Bug
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Jens Deppe
>Priority: Major
>
> The redis use of regions depends on the code that will modify the region that 
> is storing redis data, to always execute on the primary. It thought it was 
> accomplishing this by marking the function as "optimizeForWrite=true" and by 
> routing the function to the node with the bucket using "withFilter(key)". 
> This works most of the time. But in some cases the function executes on a 
> redundant copy. It looks like what is happening is that at the time the 
> function is dispatched it has one idea of who the primary is and sends the 
> function to that node. But before it executes the primary moves from this 
> node to another that is doing redundancy recovery. Then when our function 
> finally does a "put" on the localDataSet it ends up being a remote operation 
> that is sent to the other node.
> If our redis function could get a lock that prevents the bucket primary 
> status from changing (see BucketRegion doLockForPrimary) and then check to 
> see if we are the primary (if not throw an exception that causes the function 
> sender to retry  (see BucketMovedException) otherwise execute the function 
> and at the end release the lock (see BucketRegion doUnlockForPrimary).
> We could enable this with a new method added to Function (much like the 
> existing isHA and optimizeForWrite). This new method could be 
> executeOnPrimary and default to false (adding a default method to the 
> Function interface will not cause backwards compatibility issues unless a 
> current class that implements Function already had added a method named 
> "executeOnPrimary").



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (GEODE-8166) Change redis expiration commands to use function+delta

2020-05-28 Thread Darrel Schneider (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8166?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Darrel Schneider resolved GEODE-8166.
-
Fix Version/s: 1.14.0
   Resolution: Fixed

> Change redis expiration commands to use function+delta
> --
>
> Key: GEODE-8166
> URL: https://issues.apache.org/jira/browse/GEODE-8166
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
> Fix For: 1.14.0
>
>
> The redis expiration commands (expire, pexpire, expireat, pexpireat, ttl, 
> pttl, and persist) need to be reimplemented to use the new function+delta 
> data model. They should also be careful to work correctly in a multi-node 
> cluster if one of the servers die.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8166) Change redis expiration commands to use function+delta

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119132#comment-17119132
 ] 

ASF GitHub Bot commented on GEODE-8166:
---

dschneider-pivotal merged pull request #5174:
URL: https://github.com/apache/geode/pull/5174


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Change redis expiration commands to use function+delta
> --
>
> Key: GEODE-8166
> URL: https://issues.apache.org/jira/browse/GEODE-8166
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> The redis expiration commands (expire, pexpire, expireat, pexpireat, ttl, 
> pttl, and persist) need to be reimplemented to use the new function+delta 
> data model. They should also be careful to work correctly in a multi-node 
> cluster if one of the servers die.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8166) Change redis expiration commands to use function+delta

2020-05-28 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119133#comment-17119133
 ] 

ASF subversion and git services commented on GEODE-8166:


Commit 2d85af4807dc00319b23805705736a444eb4bc20 in geode's branch 
refs/heads/develop from Darrel Schneider
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=2d85af4 ]

GEODE-8166: reimplement redis expiration to use new data model (#5174)

* Added timestamp field to RedisData and implemented serialization and delta 
for it.
Both active and passive expiration have been implemented.

* RedisHash, RedisSet, and RedisString now subclass AbstractRedisData
* type command now uses function
* getset, incr, decr, incrby, and decrby now uses function and is atomic


> Change redis expiration commands to use function+delta
> --
>
> Key: GEODE-8166
> URL: https://issues.apache.org/jira/browse/GEODE-8166
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> The redis expiration commands (expire, pexpire, expireat, pexpireat, ttl, 
> pttl, and persist) need to be reimplemented to use the new function+delta 
> data model. They should also be careful to work correctly in a multi-node 
> cluster if one of the servers die.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8199) optimize ByteArrayWrapper serialization and memory usage

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8199?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119129#comment-17119129
 ] 

ASF GitHub Bot commented on GEODE-8199:
---

dschneider-pivotal opened a new pull request #5180:
URL: https://github.com/apache/geode/pull/5180


   ByteArrayWrapper now implements DataSerializableFixedID which should save us 
~40 bytes each time it is serialized.
   
   ByteArrayWrapper no longer caches its "hash" and "string" form which will 
cut down its memory overhead by over 70%.
   When we convert a sequence of bytes to a String, the Coder no longer calls 
"intern" which will also save some memory and 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:
   - [ ] 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.
   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> optimize ByteArrayWrapper serialization and memory usage
> 
>
> Key: GEODE-8199
> URL: https://issues.apache.org/jira/browse/GEODE-8199
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> ByteArrayWrapper is currently DataSerializable but it would be even better to 
> make it DataSerializableFixedID.
> Also toString on it should not call String.intern and the string form should 
> not be kept in memory since that will double the memory footprint of each 
> ByteArrayWrapper instance.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-6070) CI Failure: ShutdownCommandOverHttpDUnitTest > testShutdownAll

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-6070?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119126#comment-17119126
 ] 

ASF GitHub Bot commented on GEODE-6070:
---

jchen21 commented on a change in pull request #5162:
URL: https://github.com/apache/geode/pull/5162#discussion_r432157888



##
File path: 
geode-web/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ShutdownCommandOverHttpDUnitTest.java
##
@@ -96,48 +93,61 @@ public void setup() throws Exception {
 
 locatorString = "localhost[" + locatorPort + "]";
 
-locator.invoke(
-() -> startLocator(locatorDir, locatorPort, locatorJmxPort, 
locatorHttpPort));
+locator.invoke(() -> startLocator(locatorDir, locatorPort, locatorJmxPort, 
locatorHttpPort));
 server1.invoke(() -> startServer(SERVER1_NAME, server1Dir, locatorString));
 server2.invoke(() -> startServer(SERVER2_NAME, server2Dir, locatorString));
 
 gfsh.connectAndVerify(locatorHttpPort, PortType.http);
+
+addIgnoredException(DistributedSystemDisconnectedException.class);
   }
 
   @Test
   public void testShutdownServers() {
 String command = "shutdown";
 
-
gfsh.executeAndAssertThat(command).statusIsSuccess().containsOutput("Shutdown 
is triggered");
+gfsh.executeAndAssertThat(command)
+.statusIsSuccess()
+.containsOutput("Shutdown is triggered");
 
 for (VM vm : toArray(server1, server2)) {
   vm.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 }
 
-gfsh.executeAndAssertThat("list members").statusIsSuccess();
+gfsh.executeAndAssertThat("list members")
+.statusIsSuccess();
+
 assertThat(gfsh.getGfshOutput()).contains("locator");
   }
 
   @Test
   public void testShutdownAll() {
 String command = "shutdown --include-locators=true";
 
-
gfsh.executeAndAssertThat(command).statusIsSuccess().containsOutput("Shutdown 
is triggered");
+gfsh.executeAndAssertThat(command)
+.statusIsSuccess()
+.containsOutput("Shutdown is triggered");
+
 server1.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 server2.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 locator.invoke(() -> 
verifyNotConnected(LOCATOR_LAUNCHER.get().getCache()));
   }
 
   private void verifyNotConnected(Cache cache) {
-await().untilAsserted(() -> 
assertThat(cache.getDistributedSystem().isConnected()).isFalse());
+await().untilAsserted(() -> {
+  assertThat(cache.getDistributedSystem().isConnected())
+  .as("cache.getDistributedSystem().isConnected()")

Review comment:
   Thank you for the explanation and examples!





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> CI Failure: ShutdownCommandOverHttpDUnitTest > testShutdownAll
> --
>
> Key: GEODE-6070
> URL: https://issues.apache.org/jira/browse/GEODE-6070
> Project: Geode
>  Issue Type: Bug
>Affects Versions: 1.12.0
>Reporter: Helena Bales
>Assignee: Kirk Lund
>Priority: Major
>  Labels: GeodeCommons, flaky
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Failed with stacktrace:
> {noformat}
> org.apache.geode.management.internal.cli.commands.ShutdownCommandOverHttpDUnitTest
>  > testShutdownAll FAILED
> java.lang.AssertionError: Suspicious strings were written to the log 
> during this run.
> Fix the strings or use IgnoredException.addIgnoredException to ignore.
> ---
> Found suspect string in log4j at line 302
> org.apache.geode.distributed.DistributedSystemDisconnectedException: 
> Distribution manager on 172.17.0.3(server-1:496):41002 started at Thu Nov 
> 15 19:47:58 UTC 2018: Message distribution has terminated
> {noformat}
> Test results can be found here:
> http://files.apachegeode-ci.info/builds/apache-develop-main/1.9.0-build.158/test-results/distributedTest/1542315851/classes/org.apache.geode.management.internal.cli.commands.ShutdownCommandOverHttpDUnitTest.html#testShutdownAll
>  
> Test Artifacts can be found here:
> http://files.apachegeode-ci.info/builds/apache-develop-main/1.9.0-build.158/test-artifacts/1542315851/distributedtestfiles-OpenJDK8-1.9.0-build.158.tgz



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-6070) CI Failure: ShutdownCommandOverHttpDUnitTest > testShutdownAll

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-6070?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119120#comment-17119120
 ] 

ASF GitHub Bot commented on GEODE-6070:
---

kirklund commented on a change in pull request #5162:
URL: https://github.com/apache/geode/pull/5162#discussion_r432154931



##
File path: 
geode-web/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ShutdownCommandOverHttpDUnitTest.java
##
@@ -96,48 +93,61 @@ public void setup() throws Exception {
 
 locatorString = "localhost[" + locatorPort + "]";
 
-locator.invoke(
-() -> startLocator(locatorDir, locatorPort, locatorJmxPort, 
locatorHttpPort));
+locator.invoke(() -> startLocator(locatorDir, locatorPort, locatorJmxPort, 
locatorHttpPort));
 server1.invoke(() -> startServer(SERVER1_NAME, server1Dir, locatorString));
 server2.invoke(() -> startServer(SERVER2_NAME, server2Dir, locatorString));
 
 gfsh.connectAndVerify(locatorHttpPort, PortType.http);
+
+addIgnoredException(DistributedSystemDisconnectedException.class);
   }
 
   @Test
   public void testShutdownServers() {
 String command = "shutdown";
 
-
gfsh.executeAndAssertThat(command).statusIsSuccess().containsOutput("Shutdown 
is triggered");
+gfsh.executeAndAssertThat(command)
+.statusIsSuccess()
+.containsOutput("Shutdown is triggered");
 
 for (VM vm : toArray(server1, server2)) {
   vm.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 }
 
-gfsh.executeAndAssertThat("list members").statusIsSuccess();
+gfsh.executeAndAssertThat("list members")
+.statusIsSuccess();
+
 assertThat(gfsh.getGfshOutput()).contains("locator");
   }
 
   @Test
   public void testShutdownAll() {
 String command = "shutdown --include-locators=true";
 
-
gfsh.executeAndAssertThat(command).statusIsSuccess().containsOutput("Shutdown 
is triggered");
+gfsh.executeAndAssertThat(command)
+.statusIsSuccess()
+.containsOutput("Shutdown is triggered");
+
 server1.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 server2.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 locator.invoke(() -> 
verifyNotConnected(LOCATOR_LAUNCHER.get().getCache()));
   }
 
   private void verifyNotConnected(Cache cache) {
-await().untilAsserted(() -> 
assertThat(cache.getDistributedSystem().isConnected()).isFalse());
+await().untilAsserted(() -> {
+  assertThat(cache.getDistributedSystem().isConnected())
+  .as("cache.getDistributedSystem().isConnected()")

Review comment:
   And this is the same assertion failure without `as` or `withFailMessage`:
   ```
   org.junit.ComparisonFailure: 
   Expected :false
   Actual   :true

   
   
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at 
org.apache.geode.test.awaitility.WithFailMessageTest.foo(WithFailMessageTest.java:78)
   ```





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> CI Failure: ShutdownCommandOverHttpDUnitTest > testShutdownAll
> --
>
> Key: GEODE-6070
> URL: https://issues.apache.org/jira/browse/GEODE-6070
> Project: Geode
>  Issue Type: Bug
>Affects Versions: 1.12.0
>Reporter: Helena Bales
>Assignee: Kirk Lund
>Priority: Major
>  Labels: GeodeCommons, flaky
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Failed with stacktrace:
> {noformat}
> org.apache.geode.management.internal.cli.commands.ShutdownCommandOverHttpDUnitTest
>  > testShutdownAll FAILED
> java.lang.AssertionError: Suspicious strings were written to the log 
> during this run.
> Fix the strings or use IgnoredException.addIgnoredException to ignore.
> ---
> Found suspect string in log4j at line 302
> org.apache.geode.distributed.DistributedSystemDisconnectedException: 
> Distribution manager on 172.17.0.3(server-1:496):41002 started at Thu Nov 
> 15 19:47:58 UTC 2018: Message distribution has terminated
> {noformat}
> Test results can be found here:
> 

[jira] [Commented] (GEODE-6070) CI Failure: ShutdownCommandOverHttpDUnitTest > testShutdownAll

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-6070?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119119#comment-17119119
 ] 

ASF GitHub Bot commented on GEODE-6070:
---

kirklund commented on a change in pull request #5162:
URL: https://github.com/apache/geode/pull/5162#discussion_r432154188



##
File path: 
geode-web/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ShutdownCommandOverHttpDUnitTest.java
##
@@ -96,48 +93,61 @@ public void setup() throws Exception {
 
 locatorString = "localhost[" + locatorPort + "]";
 
-locator.invoke(
-() -> startLocator(locatorDir, locatorPort, locatorJmxPort, 
locatorHttpPort));
+locator.invoke(() -> startLocator(locatorDir, locatorPort, locatorJmxPort, 
locatorHttpPort));
 server1.invoke(() -> startServer(SERVER1_NAME, server1Dir, locatorString));
 server2.invoke(() -> startServer(SERVER2_NAME, server2Dir, locatorString));
 
 gfsh.connectAndVerify(locatorHttpPort, PortType.http);
+
+addIgnoredException(DistributedSystemDisconnectedException.class);
   }
 
   @Test
   public void testShutdownServers() {
 String command = "shutdown";
 
-
gfsh.executeAndAssertThat(command).statusIsSuccess().containsOutput("Shutdown 
is triggered");
+gfsh.executeAndAssertThat(command)
+.statusIsSuccess()
+.containsOutput("Shutdown is triggered");
 
 for (VM vm : toArray(server1, server2)) {
   vm.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 }
 
-gfsh.executeAndAssertThat("list members").statusIsSuccess();
+gfsh.executeAndAssertThat("list members")
+.statusIsSuccess();
+
 assertThat(gfsh.getGfshOutput()).contains("locator");
   }
 
   @Test
   public void testShutdownAll() {
 String command = "shutdown --include-locators=true";
 
-
gfsh.executeAndAssertThat(command).statusIsSuccess().containsOutput("Shutdown 
is triggered");
+gfsh.executeAndAssertThat(command)
+.statusIsSuccess()
+.containsOutput("Shutdown is triggered");
+
 server1.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 server2.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 locator.invoke(() -> 
verifyNotConnected(LOCATOR_LAUNCHER.get().getCache()));
   }
 
   private void verifyNotConnected(Cache cache) {
-await().untilAsserted(() -> 
assertThat(cache.getDistributedSystem().isConnected()).isFalse());
+await().untilAsserted(() -> {
+  assertThat(cache.getDistributedSystem().isConnected())
+  .as("cache.getDistributedSystem().isConnected()")

Review comment:
   I use `as` to indicate an alias for the subject of the assertion, and 
`withFailMessage` as a full replacement of the failure message.
   
   `distributed system isConnected` is probably a better example of English for 
an `as` in this case. It's kind of interesting to compare the output when using 
`as` vs `withFailMessage`.
   
   Using `as`:
   ```
   org.junit.ComparisonFailure: [cache.getDistributedSystem().isConnected()] 
   Expected :false
   Actual   :true

   
   
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at 
org.apache.geode.test.awaitility.WithFailMessageTest.foo(WithFailMessageTest.java:79)
   ```
   Using `withFailMessage`:
   ```
   java.lang.AssertionError: cache.getDistributedSystem().isConnected()
   
at 
org.apache.geode.test.awaitility.WithFailMessageTest.foo(WithFailMessageTest.java:79)
   ```
   So I only use `withFailMessage` if I want to actually suppress and replace 
the native assertion failure message.





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> CI Failure: ShutdownCommandOverHttpDUnitTest > testShutdownAll
> --
>
> Key: GEODE-6070
> URL: https://issues.apache.org/jira/browse/GEODE-6070
> Project: Geode
>  Issue Type: Bug
>Affects Versions: 1.12.0
>Reporter: Helena Bales
>Assignee: Kirk Lund
>Priority: Major
>  Labels: GeodeCommons, flaky
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Failed with stacktrace:
> {noformat}
> org.apache.geode.management.internal.cli.commands.ShutdownCommandOverHttpDUnitTest
>  > testShutdownAll FAILED
> java.lang.AssertionError: Suspicious strings were written to 

[jira] [Commented] (GEODE-6070) CI Failure: ShutdownCommandOverHttpDUnitTest > testShutdownAll

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-6070?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119118#comment-17119118
 ] 

ASF GitHub Bot commented on GEODE-6070:
---

kirklund commented on a change in pull request #5162:
URL: https://github.com/apache/geode/pull/5162#discussion_r432154188



##
File path: 
geode-web/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ShutdownCommandOverHttpDUnitTest.java
##
@@ -96,48 +93,61 @@ public void setup() throws Exception {
 
 locatorString = "localhost[" + locatorPort + "]";
 
-locator.invoke(
-() -> startLocator(locatorDir, locatorPort, locatorJmxPort, 
locatorHttpPort));
+locator.invoke(() -> startLocator(locatorDir, locatorPort, locatorJmxPort, 
locatorHttpPort));
 server1.invoke(() -> startServer(SERVER1_NAME, server1Dir, locatorString));
 server2.invoke(() -> startServer(SERVER2_NAME, server2Dir, locatorString));
 
 gfsh.connectAndVerify(locatorHttpPort, PortType.http);
+
+addIgnoredException(DistributedSystemDisconnectedException.class);
   }
 
   @Test
   public void testShutdownServers() {
 String command = "shutdown";
 
-
gfsh.executeAndAssertThat(command).statusIsSuccess().containsOutput("Shutdown 
is triggered");
+gfsh.executeAndAssertThat(command)
+.statusIsSuccess()
+.containsOutput("Shutdown is triggered");
 
 for (VM vm : toArray(server1, server2)) {
   vm.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 }
 
-gfsh.executeAndAssertThat("list members").statusIsSuccess();
+gfsh.executeAndAssertThat("list members")
+.statusIsSuccess();
+
 assertThat(gfsh.getGfshOutput()).contains("locator");
   }
 
   @Test
   public void testShutdownAll() {
 String command = "shutdown --include-locators=true";
 
-
gfsh.executeAndAssertThat(command).statusIsSuccess().containsOutput("Shutdown 
is triggered");
+gfsh.executeAndAssertThat(command)
+.statusIsSuccess()
+.containsOutput("Shutdown is triggered");
+
 server1.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 server2.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 locator.invoke(() -> 
verifyNotConnected(LOCATOR_LAUNCHER.get().getCache()));
   }
 
   private void verifyNotConnected(Cache cache) {
-await().untilAsserted(() -> 
assertThat(cache.getDistributedSystem().isConnected()).isFalse());
+await().untilAsserted(() -> {
+  assertThat(cache.getDistributedSystem().isConnected())
+  .as("cache.getDistributedSystem().isConnected()")

Review comment:
   I use `as` to indicate an alias for the subject of the assertion, and 
`withFailMessage` as a full replacement of the failure message.
   
   `distributed system isConnected` is probably a better example of English for 
an `as` in this case. It's kind of interesting to compare the output when using 
`as` vs `withFailMessage`.
   
   Using `as`:
   ```
   org.junit.ComparisonFailure: [cache.getDistributedSystem().isConnected()] 
   Expected :false
   Actual   :true

   
   
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at 
org.apache.geode.test.awaitility.WithFailMessageTest.foo(WithFailMessageTest.java:79)
   ```
   Using `withFailMessage`:
   java.lang.AssertionError: cache.getDistributedSystem().isConnected()
   
at 
org.apache.geode.test.awaitility.WithFailMessageTest.foo(WithFailMessageTest.java:79)
   ```
   So I only use `withFailMessage` if I want to actually suppress and replace 
the native assertion failure message.





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> CI Failure: ShutdownCommandOverHttpDUnitTest > testShutdownAll
> --
>
> Key: GEODE-6070
> URL: https://issues.apache.org/jira/browse/GEODE-6070
> Project: Geode
>  Issue Type: Bug
>Affects Versions: 1.12.0
>Reporter: Helena Bales
>Assignee: Kirk Lund
>Priority: Major
>  Labels: GeodeCommons, flaky
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Failed with stacktrace:
> {noformat}
> org.apache.geode.management.internal.cli.commands.ShutdownCommandOverHttpDUnitTest
>  > testShutdownAll FAILED
> java.lang.AssertionError: Suspicious strings were written to the log 

[jira] [Resolved] (GEODE-8174) JCAManagedConnection throws ConcurrentModificationExceptions

2020-05-28 Thread Owen Nichols (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8174?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Owen Nichols resolved GEODE-8174.
-
Resolution: Fixed

> JCAManagedConnection throws ConcurrentModificationExceptions 
> -
>
> Key: GEODE-8174
> URL: https://issues.apache.org/jira/browse/GEODE-8174
> Project: Geode
>  Issue Type: Bug
>  Components: transactions
>Reporter: Udo Kohlmeyer
>Assignee: Udo Kohlmeyer
>Priority: Major
> Fix For: 1.12.1, 1.13.0, 1.14.0
>
>
> {code:java}
> Caused by: java.util.ConcurrentModificationException
> at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:920) 
> ~[?:1.8.0]
> at java.util.ArrayList$Itr.next(ArrayList.java:870) ~[?:1.8.0]
> at 
> org.apache.geode.internal.ra.spi.JCAManagedConnection.onClose(JCAManagedConnection.java:212)
>  ~[geode-core-9.8.3.jar:?]
> at 
> org.apache.geode.internal.ra.GFConnectionImpl.close(GFConnectionImpl.java:42) 
> ~[geode-core-9.8.3.jar:?]
> at 
> org.springframework.data.gemfire.config.annotation.support.AbstractGemFireAsLastResourceAspectSupport$GemFireConnectionHolder.lambda$close$0(AbstractGemFireAsLastResourceAspectSupport.java:561)
>  ~[spring-data-gemfire-2.1.10.RELEASE.jar:2.1.10.RELEASE]
> at 
> org.springframework.data.gemfire.config.annotation.support.AbstractGemFireAsLastResourceAspectSupport$GemFireConnectionHolder$$Lambda$970.1C3AB4F0.accept(Unknown
>  Source) ~[?:?]
> at java.util.Optional.ifPresent(Optional.java:170) ~[?:1.8.0]
> {code}
> Under testing the JCAManagedConnection throws a CME when trying to close the 
> connection.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8144) endpoint identification in servers is not working

2020-05-28 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119101#comment-17119101
 ] 

ASF subversion and git services commented on GEODE-8144:


Commit 367e0a1557307ab6b8ba30c5a8b8c15324f6b552 in geode's branch 
refs/heads/support/1.13 from Bruce Schuchardt
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=367e0a1 ]

GEODE-8144 another attempt to fix a failing test (#5172)

one more test change

(cherry picked from commit 42c11640c75ae87038e07cbde3c98a3ca6b36987)


> endpoint identification in servers is not working
> -
>
> Key: GEODE-8144
> URL: https://issues.apache.org/jira/browse/GEODE-8144
> Project: Geode
>  Issue Type: Bug
>  Components: membership, messaging
>Reporter: Bruce J Schuchardt
>Priority: Major
> Fix For: 1.14.0
>
>
> *update 5/20/2020*: this needs to be ported to 1.13 so it's picked up ASAP by 
> TGF for VMs.
> If you enable endpoint identification in a server the server will not start.  
> It will log exceptions like this:
>  
> {noformat}
> javax.net.ssl.SSLHandshakeException: General SSLEngine problem
>   at sun.security.ssl.Handshaker.checkThrown(Handshaker.java:1566)
>   at 
> sun.security.ssl.SSLEngineImpl.checkTaskThrown(SSLEngineImpl.java:545)
>   at 
> sun.security.ssl.SSLEngineImpl.writeAppRecord(SSLEngineImpl.java:1217)
>   at sun.security.ssl.SSLEngineImpl.wrap(SSLEngineImpl.java:1185)
>   at javax.net.ssl.SSLEngine.wrap(SSLEngine.java:471)
>   at 
> org.apache.geode.internal.net.NioSslEngine.handshake(NioSslEngine.java:158)
>   at 
> org.apache.geode.internal.net.SocketCreator.handshakeSSLSocketChannel(SocketCreator.java:597)
>   at 
> org.apache.geode.internal.tcp.Connection.createIoFilter(Connection.java:1731)
>   at org.apache.geode.internal.tcp.Connection.(Connection.java:1167)
>   at 
> org.apache.geode.internal.tcp.Connection.createSender(Connection.java:1004)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.handleNewPendingConnection(ConnectionTable.java:288)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.getSharedConnection(ConnectionTable.java:392)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.get(ConnectionTable.java:571)
>   at 
> org.apache.geode.internal.tcp.TCPConduit.getConnection(TCPConduit.java:800)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.getConnections(DirectChannel.java:451)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToMany(DirectChannel.java:268)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToOne(DirectChannel.java:182)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.send(DirectChannel.java:510)
>   at 
> org.apache.geode.distributed.internal.DistributionImpl.directChannelSend(DistributionImpl.java:346)
>   at 
> org.apache.geode.distributed.internal.DistributionImpl.send(DistributionImpl.java:291)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendViaMembershipManager(ClusterDistributionManager.java:2058)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1986)
>   at 
> org.apache.geode.distributed.internal.StartupOperation.sendStartupMessage(StartupOperation.java:74)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendStartupMessage(ClusterDistributionManager.java:1623)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.create(ClusterDistributionManager.java:361)
>   at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:779)
>   at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.access$200(InternalDistributedSystem.java:135)
>   at 
> org.apache.geode.distributed.internal.InternalDistributedSystem$Builder.build(InternalDistributedSystem.java:3033)
>   at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.connectInternal(InternalDistributedSystem.java:290)
>   at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.connectInternal(InternalDistributedSystem.java:216)
>   at 
> org.apache.geode.distributed.DistributedSystem.connect(DistributedSystem.java:159)
>   at src.EntryConsumer.initialize(EntryConsumer.java:69)
>   at src.EntryConsumer.main(EntryConsumer.java:340)
> Caused by: javax.net.ssl.SSLHandshakeException: General SSLEngine problem
>   at sun.security.ssl.Alerts.getSSLException(Alerts.java:198)
>   at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1729)
>   at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:333)
>   at 

[jira] [Created] (GEODE-8200) Rebalance operations stuck in "IN_PROGRESS" state forever

2020-05-28 Thread Aaron Lindsey (Jira)
Aaron Lindsey created GEODE-8200:


 Summary: Rebalance operations stuck in "IN_PROGRESS" state forever
 Key: GEODE-8200
 URL: https://issues.apache.org/jira/browse/GEODE-8200
 Project: Geode
  Issue Type: Bug
  Components: management
Reporter: Aaron Lindsey


We use the management REST API to call rebalance immediately before stopping a 
server to limit the possibility of data loss. In a cluster with 3 locators, 3 
servers, and no regions, we noticed that sometimes the rebalance operation 
never ends if one of the locators is restarting concurrently with the rebalance 
operation.

More specifically, the scenario where we see this issue crop up is during an 
automated "rolling restart" operation in a Kubernetes environment which 
proceeds as follows:
* At most one locator and one server are restarting at any point in time
* Each locator/server waits until the previous locator/server is fully online 
before restarting
* Immediately before stopping a server, a rebalance operation is performed and 
the server is not stopped until the rebalance operation is completed

The impact of this issue is that the "rolling restart" operation will never 
complete, because it cannot proceed with stopping a server until the rebalance 
operation is completed. A human is then required to intervene and manually 
trigger a rebalance and stop the server. This type of "rolling restart" 
operation is triggered fairly often in Kubernetes — any time part of the 
configuration of the locators or servers changes. 

The following JSON is a sample response from the management REST API that shows 
the rebalance operation stuck in "IN_PROGRESS".

{code}
{
  "statusCode": "IN_PROGRESS",
  "links": {
"self": 
"http://geodecluster-sample-locator.default/management/v1/operations/rebalances/a47f23c8-02b3-443c-a367-636fd6921ea7;,
"list": 
"http://geodecluster-sample-locator.default/management/v1/operations/rebalances;
  },
  "operationStart": "2020-05-27T22:38:30.619Z",
  "operationId": "a47f23c8-02b3-443c-a367-636fd6921ea7",
  "operation": {
"simulate": false
  }
}
{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Assigned] (GEODE-8199) optimize ByteArrayWrapper serialization and memory usage

2020-05-28 Thread Darrel Schneider (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8199?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Darrel Schneider reassigned GEODE-8199:
---

Assignee: Darrel Schneider

> optimize ByteArrayWrapper serialization and memory usage
> 
>
> Key: GEODE-8199
> URL: https://issues.apache.org/jira/browse/GEODE-8199
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> ByteArrayWrapper is currently DataSerializable but it would be even better to 
> make it DataSerializableFixedID.
> Also toString on it should not call String.intern and the string form should 
> not be kept in memory since that will double the memory footprint of each 
> ByteArrayWrapper instance.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (GEODE-8199) optimize ByteArrayWrapper serialization and memory usage

2020-05-28 Thread Darrel Schneider (Jira)
Darrel Schneider created GEODE-8199:
---

 Summary: optimize ByteArrayWrapper serialization and memory usage
 Key: GEODE-8199
 URL: https://issues.apache.org/jira/browse/GEODE-8199
 Project: Geode
  Issue Type: Improvement
  Components: redis
Reporter: Darrel Schneider


ByteArrayWrapper is currently DataSerializable but it would be even better to 
make it DataSerializableFixedID.

Also toString on it should not call String.intern and the string form should 
not be kept in memory since that will double the memory footprint of each 
ByteArrayWrapper instance.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8144) endpoint identification in servers is not working

2020-05-28 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119004#comment-17119004
 ] 

ASF subversion and git services commented on GEODE-8144:


Commit 207e3ee0c3aae704216bd0e9ec1275606b9116a2 in geode's branch 
refs/heads/support/1.13 from Bruce Schuchardt
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=207e3ee ]

GEODE-8144: endpoint identification in servers is not working (#5131)

* GEODE-8144: endpoint identification in servers is not working

Set the SNI server-name field in SSL parameters for p2p communications,
allowing endpoint identification to work properly.

I modified one of the SNI haproxy tests to have keystores with the
proper subject-alternative-names for p2p communications in the docker
containers and for client/server off-platform communications.  I used
Sai's keystore/truststore construction CertificateMaterial/CertStores
classes to generate the stores...

  .sanDnsName("geode") // for inside the docker container
  .sanDnsName("localhost") // for inside the docker container
  .sanIpAddress(InetAddress.getByName("0.0.0.0")) // for inside the docker 
container
  .sanDnsName(certName) // for client endpoint validation (locator-maeve 
for instance)

* modified SocketCreator to look for a hostname if one is not present and 
endpoint verification is enabled

This fixes some problems when running in docker containers

* removed test shell script

* sanction used of getCanonicalHostName() in SocketCreator

(cherry picked from commit b22df8cf0f11b73237dd88dc1de9217f5f7cc8c3)


> endpoint identification in servers is not working
> -
>
> Key: GEODE-8144
> URL: https://issues.apache.org/jira/browse/GEODE-8144
> Project: Geode
>  Issue Type: Bug
>  Components: membership, messaging
>Reporter: Bruce J Schuchardt
>Priority: Major
> Fix For: 1.14.0
>
>
> *update 5/20/2020*: this needs to be ported to 1.13 so it's picked up ASAP by 
> TGF for VMs.
> If you enable endpoint identification in a server the server will not start.  
> It will log exceptions like this:
>  
> {noformat}
> javax.net.ssl.SSLHandshakeException: General SSLEngine problem
>   at sun.security.ssl.Handshaker.checkThrown(Handshaker.java:1566)
>   at 
> sun.security.ssl.SSLEngineImpl.checkTaskThrown(SSLEngineImpl.java:545)
>   at 
> sun.security.ssl.SSLEngineImpl.writeAppRecord(SSLEngineImpl.java:1217)
>   at sun.security.ssl.SSLEngineImpl.wrap(SSLEngineImpl.java:1185)
>   at javax.net.ssl.SSLEngine.wrap(SSLEngine.java:471)
>   at 
> org.apache.geode.internal.net.NioSslEngine.handshake(NioSslEngine.java:158)
>   at 
> org.apache.geode.internal.net.SocketCreator.handshakeSSLSocketChannel(SocketCreator.java:597)
>   at 
> org.apache.geode.internal.tcp.Connection.createIoFilter(Connection.java:1731)
>   at org.apache.geode.internal.tcp.Connection.(Connection.java:1167)
>   at 
> org.apache.geode.internal.tcp.Connection.createSender(Connection.java:1004)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.handleNewPendingConnection(ConnectionTable.java:288)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.getSharedConnection(ConnectionTable.java:392)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.get(ConnectionTable.java:571)
>   at 
> org.apache.geode.internal.tcp.TCPConduit.getConnection(TCPConduit.java:800)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.getConnections(DirectChannel.java:451)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToMany(DirectChannel.java:268)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToOne(DirectChannel.java:182)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.send(DirectChannel.java:510)
>   at 
> org.apache.geode.distributed.internal.DistributionImpl.directChannelSend(DistributionImpl.java:346)
>   at 
> org.apache.geode.distributed.internal.DistributionImpl.send(DistributionImpl.java:291)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendViaMembershipManager(ClusterDistributionManager.java:2058)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1986)
>   at 
> org.apache.geode.distributed.internal.StartupOperation.sendStartupMessage(StartupOperation.java:74)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendStartupMessage(ClusterDistributionManager.java:1623)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.create(ClusterDistributionManager.java:361)
>   at 
> 

[jira] [Commented] (GEODE-8179) gfsh query command returns incorrect results if '=' sign is missing for query option

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119009#comment-17119009
 ] 

ASF GitHub Bot commented on GEODE-8179:
---

agingade commented on a change in pull request #5178:
URL: https://github.com/apache/geode/pull/5178#discussion_r432044428



##
File path: geode-docs/tools_modules/gfsh/command-pages/query.html.md.erb
##
@@ -42,11 +42,36 @@ query --query=value [--file=path/to/results/file] 
[--member=member-name]
 
 
 
-| Name | Description   
 |
-|--||
-| query   | 
*Required.* The OQL string |
-| file | When specified, 
all query results are written to the specified file. An error is issued if the 
file already exists. |
-| member  | Name/Id of 
the member on which to execute the query (as shown in the output of the gfsh 
`describe region` command, for example) |
+
+
+
+
+
+
+
+Name
+Description
+
+
+
+
+\-\-query
+Required. The OQL string.
+
+
+Note: It is important not to forget the `=` sign and follow the pattern 
`\-\-query=value`. `gfsh` automatically removes the `=` so if it is not 
introduced, the first `=` in the query (if any) will be removed changing the 
query statement.

Review comment:
   Instead of updating the doc; my request will be fixing the issue. You 
mentioned that we can't upgrade, the "spring shell", is the reason for that is, 
it is not active anymore. Have we tried requesting change with spring-shell 
team... 





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> gfsh query command returns incorrect results if '=' sign is missing for query 
> option
> 
>
> Key: GEODE-8179
> URL: https://issues.apache.org/jira/browse/GEODE-8179
> Project: Geode
>  Issue Type: Bug
>  Components: gfsh
>Reporter: Eric Shu
>Assignee: Alberto Bustamante Reyes
>Priority: Major
>
> gfsh returns correct result when "=" is there for the query option:
> gfsh>query --query="Select ID from /portfolio where ID = 3"
> Result : true
> Limit  : 100
> Rows   : 1
> Result
> --
> 3
> It returns wrong result when "=" is missing for the query option.
> gfsh>query --query "Select ID from /portfolio where ID <= 3 "
> Result : true
> Limit  : 100
> Rows   : 3
> Result
> --
> 0
> 1
> 2
> gfsh>query --query " Select ID from /portfolio where ID = 3 "
> Result  : false
> Message : Query is invalid due to error :  token: ID>
> gfsh>query --query " Select ID from /portfolio where ID == 3 "
> Result  : true
> Limit   : 100
> Rows: 1
> Query Trace : Query Executed in 0.968059 ms; indexesUsed(0)
> Result
> --
> 3
> gfsh>query --query " Select ID from /portfolio where ID =<= 3 "
> Result  : true
> Limit   : 100
> Rows: 4
> Query Trace : Query Executed in 1.427194 ms; indexesUsed(0)
> Result
> --
> 0
> 1
> 2
> 3
> Seems that first '=' in the query string is discarded by gfsh. 
> Either fail the query if the query option'=' is missing or gfsh should return 
> correct result from the query string.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8144) endpoint identification in servers is not working

2020-05-28 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119007#comment-17119007
 ] 

ASF subversion and git services commented on GEODE-8144:


Commit bcc097a6dda38ab276720521ab0308cef7a4c1be in geode's branch 
refs/heads/support/1.13 from Bruce Schuchardt
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=bcc097a ]

GEODE-8144 another attempt to fix a failing test (#5172)

* modified SocketCreator to look for a hostname if one is not present and 
endpoint verification is enabled

This fixes some problems when running in docker containers

* removed test shell script

* GEODE-8144 another attempt to fix a failing test

The JMX tests in this test class use "localhost" to connect to a
Manager.  This is being transformed somehow into an IP numeric address
and is failing endpoint verification.  The test passes on my Windows machine
and also passes on Mac and Ubuntu when I run it there.  I'm
adding the "localhost" IP address to the certificate to get past this.
Another fix would be to change the Rule that's using "localhost" to
use the real host name but that would affect a lot of other tests.

Before I started messing with this test it was adding
InetAddress.getLocalHost() as an IP address to the certificate so I
don't think this is a big change to the original test.  The test now
uses LocalHostUtils.getLocalHost() to get an IP to add to the
certificate, which is the correct "localhost" to use with Geode.

(cherry picked from commit 42c11640c75ae87038e07cbde3c98a3ca6b36987)


> endpoint identification in servers is not working
> -
>
> Key: GEODE-8144
> URL: https://issues.apache.org/jira/browse/GEODE-8144
> Project: Geode
>  Issue Type: Bug
>  Components: membership, messaging
>Reporter: Bruce J Schuchardt
>Priority: Major
> Fix For: 1.14.0
>
>
> *update 5/20/2020*: this needs to be ported to 1.13 so it's picked up ASAP by 
> TGF for VMs.
> If you enable endpoint identification in a server the server will not start.  
> It will log exceptions like this:
>  
> {noformat}
> javax.net.ssl.SSLHandshakeException: General SSLEngine problem
>   at sun.security.ssl.Handshaker.checkThrown(Handshaker.java:1566)
>   at 
> sun.security.ssl.SSLEngineImpl.checkTaskThrown(SSLEngineImpl.java:545)
>   at 
> sun.security.ssl.SSLEngineImpl.writeAppRecord(SSLEngineImpl.java:1217)
>   at sun.security.ssl.SSLEngineImpl.wrap(SSLEngineImpl.java:1185)
>   at javax.net.ssl.SSLEngine.wrap(SSLEngine.java:471)
>   at 
> org.apache.geode.internal.net.NioSslEngine.handshake(NioSslEngine.java:158)
>   at 
> org.apache.geode.internal.net.SocketCreator.handshakeSSLSocketChannel(SocketCreator.java:597)
>   at 
> org.apache.geode.internal.tcp.Connection.createIoFilter(Connection.java:1731)
>   at org.apache.geode.internal.tcp.Connection.(Connection.java:1167)
>   at 
> org.apache.geode.internal.tcp.Connection.createSender(Connection.java:1004)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.handleNewPendingConnection(ConnectionTable.java:288)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.getSharedConnection(ConnectionTable.java:392)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.get(ConnectionTable.java:571)
>   at 
> org.apache.geode.internal.tcp.TCPConduit.getConnection(TCPConduit.java:800)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.getConnections(DirectChannel.java:451)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToMany(DirectChannel.java:268)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToOne(DirectChannel.java:182)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.send(DirectChannel.java:510)
>   at 
> org.apache.geode.distributed.internal.DistributionImpl.directChannelSend(DistributionImpl.java:346)
>   at 
> org.apache.geode.distributed.internal.DistributionImpl.send(DistributionImpl.java:291)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendViaMembershipManager(ClusterDistributionManager.java:2058)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1986)
>   at 
> org.apache.geode.distributed.internal.StartupOperation.sendStartupMessage(StartupOperation.java:74)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendStartupMessage(ClusterDistributionManager.java:1623)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.create(ClusterDistributionManager.java:361)
>   at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:779)
>   at 
> 

[jira] [Commented] (GEODE-8144) endpoint identification in servers is not working

2020-05-28 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119003#comment-17119003
 ] 

ASF subversion and git services commented on GEODE-8144:


Commit 207e3ee0c3aae704216bd0e9ec1275606b9116a2 in geode's branch 
refs/heads/support/1.13 from Bruce Schuchardt
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=207e3ee ]

GEODE-8144: endpoint identification in servers is not working (#5131)

* GEODE-8144: endpoint identification in servers is not working

Set the SNI server-name field in SSL parameters for p2p communications,
allowing endpoint identification to work properly.

I modified one of the SNI haproxy tests to have keystores with the
proper subject-alternative-names for p2p communications in the docker
containers and for client/server off-platform communications.  I used
Sai's keystore/truststore construction CertificateMaterial/CertStores
classes to generate the stores...

  .sanDnsName("geode") // for inside the docker container
  .sanDnsName("localhost") // for inside the docker container
  .sanIpAddress(InetAddress.getByName("0.0.0.0")) // for inside the docker 
container
  .sanDnsName(certName) // for client endpoint validation (locator-maeve 
for instance)

* modified SocketCreator to look for a hostname if one is not present and 
endpoint verification is enabled

This fixes some problems when running in docker containers

* removed test shell script

* sanction used of getCanonicalHostName() in SocketCreator

(cherry picked from commit b22df8cf0f11b73237dd88dc1de9217f5f7cc8c3)


> endpoint identification in servers is not working
> -
>
> Key: GEODE-8144
> URL: https://issues.apache.org/jira/browse/GEODE-8144
> Project: Geode
>  Issue Type: Bug
>  Components: membership, messaging
>Reporter: Bruce J Schuchardt
>Priority: Major
> Fix For: 1.14.0
>
>
> *update 5/20/2020*: this needs to be ported to 1.13 so it's picked up ASAP by 
> TGF for VMs.
> If you enable endpoint identification in a server the server will not start.  
> It will log exceptions like this:
>  
> {noformat}
> javax.net.ssl.SSLHandshakeException: General SSLEngine problem
>   at sun.security.ssl.Handshaker.checkThrown(Handshaker.java:1566)
>   at 
> sun.security.ssl.SSLEngineImpl.checkTaskThrown(SSLEngineImpl.java:545)
>   at 
> sun.security.ssl.SSLEngineImpl.writeAppRecord(SSLEngineImpl.java:1217)
>   at sun.security.ssl.SSLEngineImpl.wrap(SSLEngineImpl.java:1185)
>   at javax.net.ssl.SSLEngine.wrap(SSLEngine.java:471)
>   at 
> org.apache.geode.internal.net.NioSslEngine.handshake(NioSslEngine.java:158)
>   at 
> org.apache.geode.internal.net.SocketCreator.handshakeSSLSocketChannel(SocketCreator.java:597)
>   at 
> org.apache.geode.internal.tcp.Connection.createIoFilter(Connection.java:1731)
>   at org.apache.geode.internal.tcp.Connection.(Connection.java:1167)
>   at 
> org.apache.geode.internal.tcp.Connection.createSender(Connection.java:1004)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.handleNewPendingConnection(ConnectionTable.java:288)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.getSharedConnection(ConnectionTable.java:392)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.get(ConnectionTable.java:571)
>   at 
> org.apache.geode.internal.tcp.TCPConduit.getConnection(TCPConduit.java:800)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.getConnections(DirectChannel.java:451)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToMany(DirectChannel.java:268)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToOne(DirectChannel.java:182)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.send(DirectChannel.java:510)
>   at 
> org.apache.geode.distributed.internal.DistributionImpl.directChannelSend(DistributionImpl.java:346)
>   at 
> org.apache.geode.distributed.internal.DistributionImpl.send(DistributionImpl.java:291)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendViaMembershipManager(ClusterDistributionManager.java:2058)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1986)
>   at 
> org.apache.geode.distributed.internal.StartupOperation.sendStartupMessage(StartupOperation.java:74)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendStartupMessage(ClusterDistributionManager.java:1623)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.create(ClusterDistributionManager.java:361)
>   at 
> 

[jira] [Commented] (GEODE-8144) endpoint identification in servers is not working

2020-05-28 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17119006#comment-17119006
 ] 

ASF subversion and git services commented on GEODE-8144:


Commit bcc097a6dda38ab276720521ab0308cef7a4c1be in geode's branch 
refs/heads/support/1.13 from Bruce Schuchardt
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=bcc097a ]

GEODE-8144 another attempt to fix a failing test (#5172)

* modified SocketCreator to look for a hostname if one is not present and 
endpoint verification is enabled

This fixes some problems when running in docker containers

* removed test shell script

* GEODE-8144 another attempt to fix a failing test

The JMX tests in this test class use "localhost" to connect to a
Manager.  This is being transformed somehow into an IP numeric address
and is failing endpoint verification.  The test passes on my Windows machine
and also passes on Mac and Ubuntu when I run it there.  I'm
adding the "localhost" IP address to the certificate to get past this.
Another fix would be to change the Rule that's using "localhost" to
use the real host name but that would affect a lot of other tests.

Before I started messing with this test it was adding
InetAddress.getLocalHost() as an IP address to the certificate so I
don't think this is a big change to the original test.  The test now
uses LocalHostUtils.getLocalHost() to get an IP to add to the
certificate, which is the correct "localhost" to use with Geode.

(cherry picked from commit 42c11640c75ae87038e07cbde3c98a3ca6b36987)


> endpoint identification in servers is not working
> -
>
> Key: GEODE-8144
> URL: https://issues.apache.org/jira/browse/GEODE-8144
> Project: Geode
>  Issue Type: Bug
>  Components: membership, messaging
>Reporter: Bruce J Schuchardt
>Priority: Major
> Fix For: 1.14.0
>
>
> *update 5/20/2020*: this needs to be ported to 1.13 so it's picked up ASAP by 
> TGF for VMs.
> If you enable endpoint identification in a server the server will not start.  
> It will log exceptions like this:
>  
> {noformat}
> javax.net.ssl.SSLHandshakeException: General SSLEngine problem
>   at sun.security.ssl.Handshaker.checkThrown(Handshaker.java:1566)
>   at 
> sun.security.ssl.SSLEngineImpl.checkTaskThrown(SSLEngineImpl.java:545)
>   at 
> sun.security.ssl.SSLEngineImpl.writeAppRecord(SSLEngineImpl.java:1217)
>   at sun.security.ssl.SSLEngineImpl.wrap(SSLEngineImpl.java:1185)
>   at javax.net.ssl.SSLEngine.wrap(SSLEngine.java:471)
>   at 
> org.apache.geode.internal.net.NioSslEngine.handshake(NioSslEngine.java:158)
>   at 
> org.apache.geode.internal.net.SocketCreator.handshakeSSLSocketChannel(SocketCreator.java:597)
>   at 
> org.apache.geode.internal.tcp.Connection.createIoFilter(Connection.java:1731)
>   at org.apache.geode.internal.tcp.Connection.(Connection.java:1167)
>   at 
> org.apache.geode.internal.tcp.Connection.createSender(Connection.java:1004)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.handleNewPendingConnection(ConnectionTable.java:288)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.getSharedConnection(ConnectionTable.java:392)
>   at 
> org.apache.geode.internal.tcp.ConnectionTable.get(ConnectionTable.java:571)
>   at 
> org.apache.geode.internal.tcp.TCPConduit.getConnection(TCPConduit.java:800)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.getConnections(DirectChannel.java:451)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToMany(DirectChannel.java:268)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToOne(DirectChannel.java:182)
>   at 
> org.apache.geode.distributed.internal.direct.DirectChannel.send(DirectChannel.java:510)
>   at 
> org.apache.geode.distributed.internal.DistributionImpl.directChannelSend(DistributionImpl.java:346)
>   at 
> org.apache.geode.distributed.internal.DistributionImpl.send(DistributionImpl.java:291)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendViaMembershipManager(ClusterDistributionManager.java:2058)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1986)
>   at 
> org.apache.geode.distributed.internal.StartupOperation.sendStartupMessage(StartupOperation.java:74)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendStartupMessage(ClusterDistributionManager.java:1623)
>   at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.create(ClusterDistributionManager.java:361)
>   at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:779)
>   at 
> 

[jira] [Commented] (GEODE-8127) redis function+delta may not always execute function on primary

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8127?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118989#comment-17118989
 ] 

ASF GitHub Bot commented on GEODE-8127:
---

jhutchison opened a new pull request #5179:
URL: https://github.com/apache/geode/pull/5179


   flaky test ignored
   
   This reverts commit f243c4d99e1a223af0a3134d6a423b972195c507.
   
   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.
   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> redis function+delta may not always execute function on primary
> ---
>
> Key: GEODE-8127
> URL: https://issues.apache.org/jira/browse/GEODE-8127
> Project: Geode
>  Issue Type: Bug
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> The redis use of regions depends on the code that will modify the region that 
> is storing redis data, to always execute on the primary. It thought it was 
> accomplishing this by marking the function as "optimizeForWrite=true" and by 
> routing the function to the node with the bucket using "withFilter(key)". 
> This works most of the time. But in some cases the function executes on a 
> redundant copy. It looks like what is happening is that at the time the 
> function is dispatched it has one idea of who the primary is and sends the 
> function to that node. But before it executes the primary moves from this 
> node to another that is doing redundancy recovery. Then when our function 
> finally does a "put" on the localDataSet it ends up being a remote operation 
> that is sent to the other node.
> If our redis function could get a lock that prevents the bucket primary 
> status from changing (see BucketRegion doLockForPrimary) and then check to 
> see if we are the primary (if not throw an exception that causes the function 
> sender to retry  (see BucketMovedException) otherwise execute the function 
> and at the end release the lock (see BucketRegion doUnlockForPrimary).
> We could enable this with a new method added to Function (much like the 
> existing isHA and optimizeForWrite). This new method could be 
> executeOnPrimary and default to false (adding a default method to the 
> Function interface will not cause backwards compatibility issues unless a 
> current class that implements Function already had added a method named 
> "executeOnPrimary").



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8179) gfsh query command returns incorrect results if '=' sign is missing for query option

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118969#comment-17118969
 ] 

ASF GitHub Bot commented on GEODE-8179:
---

alb3rtobr opened a new pull request #5178:
URL: https://github.com/apache/geode/pull/5178


   @davebarnes97 please take a look. As we cannot upgrade `spring shell` 
version I agreed with @pivotal-eshu to add a note in the `--query` option.



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> gfsh query command returns incorrect results if '=' sign is missing for query 
> option
> 
>
> Key: GEODE-8179
> URL: https://issues.apache.org/jira/browse/GEODE-8179
> Project: Geode
>  Issue Type: Bug
>  Components: gfsh
>Reporter: Eric Shu
>Assignee: Alberto Bustamante Reyes
>Priority: Major
>
> gfsh returns correct result when "=" is there for the query option:
> gfsh>query --query="Select ID from /portfolio where ID = 3"
> Result : true
> Limit  : 100
> Rows   : 1
> Result
> --
> 3
> It returns wrong result when "=" is missing for the query option.
> gfsh>query --query "Select ID from /portfolio where ID <= 3 "
> Result : true
> Limit  : 100
> Rows   : 3
> Result
> --
> 0
> 1
> 2
> gfsh>query --query " Select ID from /portfolio where ID = 3 "
> Result  : false
> Message : Query is invalid due to error :  token: ID>
> gfsh>query --query " Select ID from /portfolio where ID == 3 "
> Result  : true
> Limit   : 100
> Rows: 1
> Query Trace : Query Executed in 0.968059 ms; indexesUsed(0)
> Result
> --
> 3
> gfsh>query --query " Select ID from /portfolio where ID =<= 3 "
> Result  : true
> Limit   : 100
> Rows: 4
> Query Trace : Query Executed in 1.427194 ms; indexesUsed(0)
> Result
> --
> 0
> 1
> 2
> 3
> Seems that first '=' in the query string is discarded by gfsh. 
> Either fail the query if the query option'=' is missing or gfsh should return 
> correct result from the query string.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (GEODE-8198) Revise docs to better specify putAll() behavior

2020-05-28 Thread Karen Smoler Miller (Jira)
Karen Smoler Miller created GEODE-8198:
--

 Summary: Revise docs to better specify putAll() behavior
 Key: GEODE-8198
 URL: https://issues.apache.org/jira/browse/GEODE-8198
 Project: Geode
  Issue Type: Improvement
  Components: docs
Reporter: Karen Smoler Miller


[GEODE-8171|https://issues.apache.org/jira/browse/GEODE-8171] updated the 
Javadocs for the Region.putAll() method. Our user guide should also specify the 
behavior under exceptions and give readers more context such that they can 
produce better apps.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8197) Embedded Pulse fails to start with custom log4j2.xml

2020-05-28 Thread Geode Integration (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8197?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118959#comment-17118959
 ] 

Geode Integration commented on GEODE-8197:
--

A Pivotal Tracker story has been created for this Issue: 
https://www.pivotaltracker.com/story/show/173065603

> Embedded Pulse fails to start with custom log4j2.xml
> 
>
> Key: GEODE-8197
> URL: https://issues.apache.org/jira/browse/GEODE-8197
> Project: Geode
>  Issue Type: Bug
>  Components: logging, pulse
>Reporter: Kirk Lund
>Assignee: Kirk Lund
>Priority: Major
>  Labels: GeodeOperationAPI
>
> Starting a Locator with a custom log4j2.xml referencing Geode appenders or 
> converters fails to correctly start embedded Pulse web application.
> {noformat}
> [info 2020/05/28 10:51:51.954 PDT  tid=1] Adding webapp /pulse
> 2020-05-28 10:51:53,328 main ERROR Unable to invoke factory method in class 
> org.apache.geode.alerting.log4j.internal.impl.AlertAppender for element 
> GeodeAlert: java.lang.IllegalStateException: No factory method found for 
> class org.apache.geode.alerting.log4j.internal.impl.AlertAppender 
> java.lang.IllegalStateException: No factory method found for class 
> org.apache.geode.alerting.log4j.internal.impl.AlertAppender
>   at 
> org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.findFactoryMethod(PluginBuilder.java:234)
>   at 
> org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:134)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1002)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:942)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:934)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:552)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:241)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:288)
>   at 
> org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:618)
>   at 
> org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:691)
>   at 
> org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:708)
>   at 
> org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:263)
>   at 
> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153)
>   at 
> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
>   at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194)
>   at 
> org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:138)
>   at 
> org.apache.logging.log4j.jcl.LogAdapter.getContext(LogAdapter.java:39)
>   at 
> org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:48)
>   at 
> org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:40)
>   at 
> org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:55)
>   at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:655)
>   at 
> org.springframework.web.filter.GenericFilterBean.(GenericFilterBean.java:86)
>   at 
> org.springframework.web.filter.DelegatingFilterProxy.(DelegatingFilterProxy.java:107)
>   at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>   at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
>   at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>   at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
>   at 
> org.eclipse.jetty.server.handler.ContextHandler$Context.createInstance(ContextHandler.java:2520)
>   at 
> org.eclipse.jetty.servlet.ServletContextHandler$Context.createFilter(ServletContextHandler.java:1284)
>   at 
> org.eclipse.jetty.servlet.FilterHolder.initialize(FilterHolder.java:118)
>   at 
> org.eclipse.jetty.servlet.ServletHandler.lambda$initialize$0(ServletHandler.java:751)
>   at 
> java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
>   at 
> java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742)
>   at 
> java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742)
>   at 
> java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580)

[jira] [Updated] (GEODE-8197) Embedded Pulse fails to start with custom log4j2.xml

2020-05-28 Thread Kirk Lund (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8197?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kirk Lund updated GEODE-8197:
-
Labels: GeodeOperationAPI  (was: )

> Embedded Pulse fails to start with custom log4j2.xml
> 
>
> Key: GEODE-8197
> URL: https://issues.apache.org/jira/browse/GEODE-8197
> Project: Geode
>  Issue Type: Bug
>  Components: logging, pulse
>Reporter: Kirk Lund
>Assignee: Kirk Lund
>Priority: Major
>  Labels: GeodeOperationAPI
>
> Starting a Locator with a custom log4j2.xml referencing Geode appenders or 
> converters fails to correctly start embedded Pulse web application.
> {noformat}
> [info 2020/05/28 10:51:51.954 PDT  tid=1] Adding webapp /pulse
> 2020-05-28 10:51:53,328 main ERROR Unable to invoke factory method in class 
> org.apache.geode.alerting.log4j.internal.impl.AlertAppender for element 
> GeodeAlert: java.lang.IllegalStateException: No factory method found for 
> class org.apache.geode.alerting.log4j.internal.impl.AlertAppender 
> java.lang.IllegalStateException: No factory method found for class 
> org.apache.geode.alerting.log4j.internal.impl.AlertAppender
>   at 
> org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.findFactoryMethod(PluginBuilder.java:234)
>   at 
> org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:134)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1002)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:942)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:934)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:552)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:241)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:288)
>   at 
> org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:618)
>   at 
> org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:691)
>   at 
> org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:708)
>   at 
> org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:263)
>   at 
> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153)
>   at 
> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
>   at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194)
>   at 
> org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:138)
>   at 
> org.apache.logging.log4j.jcl.LogAdapter.getContext(LogAdapter.java:39)
>   at 
> org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:48)
>   at 
> org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:40)
>   at 
> org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:55)
>   at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:655)
>   at 
> org.springframework.web.filter.GenericFilterBean.(GenericFilterBean.java:86)
>   at 
> org.springframework.web.filter.DelegatingFilterProxy.(DelegatingFilterProxy.java:107)
>   at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>   at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
>   at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>   at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
>   at 
> org.eclipse.jetty.server.handler.ContextHandler$Context.createInstance(ContextHandler.java:2520)
>   at 
> org.eclipse.jetty.servlet.ServletContextHandler$Context.createFilter(ServletContextHandler.java:1284)
>   at 
> org.eclipse.jetty.servlet.FilterHolder.initialize(FilterHolder.java:118)
>   at 
> org.eclipse.jetty.servlet.ServletHandler.lambda$initialize$0(ServletHandler.java:751)
>   at 
> java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
>   at 
> java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742)
>   at 
> java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742)
>   at 
> java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580)
>   at 
> org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:744)
>   at 
> 

[jira] [Commented] (GEODE-8197) Embedded Pulse fails to start with custom log4j2.xml

2020-05-28 Thread Kirk Lund (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8197?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118946#comment-17118946
 ] 

Kirk Lund commented on GEODE-8197:
--

So far, I've been able to fix this problem in my local repo by adding log4j-web 
jar to the Pulse web app. I'll file a PR after I write an acceptance test.

> Embedded Pulse fails to start with custom log4j2.xml
> 
>
> Key: GEODE-8197
> URL: https://issues.apache.org/jira/browse/GEODE-8197
> Project: Geode
>  Issue Type: Bug
>  Components: logging, pulse
>Reporter: Kirk Lund
>Assignee: Kirk Lund
>Priority: Major
>
> Starting a Locator with a custom log4j2.xml referencing Geode appenders or 
> converters fails to correctly start embedded Pulse web application.
> {noformat}
> [info 2020/05/28 10:51:51.954 PDT  tid=1] Adding webapp /pulse
> 2020-05-28 10:51:53,328 main ERROR Unable to invoke factory method in class 
> org.apache.geode.alerting.log4j.internal.impl.AlertAppender for element 
> GeodeAlert: java.lang.IllegalStateException: No factory method found for 
> class org.apache.geode.alerting.log4j.internal.impl.AlertAppender 
> java.lang.IllegalStateException: No factory method found for class 
> org.apache.geode.alerting.log4j.internal.impl.AlertAppender
>   at 
> org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.findFactoryMethod(PluginBuilder.java:234)
>   at 
> org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:134)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1002)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:942)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:934)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:552)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:241)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:288)
>   at 
> org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:618)
>   at 
> org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:691)
>   at 
> org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:708)
>   at 
> org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:263)
>   at 
> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153)
>   at 
> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
>   at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194)
>   at 
> org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:138)
>   at 
> org.apache.logging.log4j.jcl.LogAdapter.getContext(LogAdapter.java:39)
>   at 
> org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:48)
>   at 
> org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:40)
>   at 
> org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:55)
>   at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:655)
>   at 
> org.springframework.web.filter.GenericFilterBean.(GenericFilterBean.java:86)
>   at 
> org.springframework.web.filter.DelegatingFilterProxy.(DelegatingFilterProxy.java:107)
>   at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>   at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
>   at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>   at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
>   at 
> org.eclipse.jetty.server.handler.ContextHandler$Context.createInstance(ContextHandler.java:2520)
>   at 
> org.eclipse.jetty.servlet.ServletContextHandler$Context.createFilter(ServletContextHandler.java:1284)
>   at 
> org.eclipse.jetty.servlet.FilterHolder.initialize(FilterHolder.java:118)
>   at 
> org.eclipse.jetty.servlet.ServletHandler.lambda$initialize$0(ServletHandler.java:751)
>   at 
> java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
>   at 
> java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742)
>   at 
> java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742)
>   at 
> java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580)
>   at 

[jira] [Created] (GEODE-8197) Embedded Pulse fails to start with custom log4j2.xml

2020-05-28 Thread Kirk Lund (Jira)
Kirk Lund created GEODE-8197:


 Summary: Embedded Pulse fails to start with custom log4j2.xml
 Key: GEODE-8197
 URL: https://issues.apache.org/jira/browse/GEODE-8197
 Project: Geode
  Issue Type: Bug
  Components: logging, pulse
Reporter: Kirk Lund


Starting a Locator with a custom log4j2.xml referencing Geode appenders or 
converters fails to correctly start embedded Pulse web application.
{noformat}
[info 2020/05/28 10:51:51.954 PDT  tid=1] Adding webapp /pulse

2020-05-28 10:51:53,328 main ERROR Unable to invoke factory method in class 
org.apache.geode.alerting.log4j.internal.impl.AlertAppender for element 
GeodeAlert: java.lang.IllegalStateException: No factory method found for class 
org.apache.geode.alerting.log4j.internal.impl.AlertAppender 
java.lang.IllegalStateException: No factory method found for class 
org.apache.geode.alerting.log4j.internal.impl.AlertAppender
at 
org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.findFactoryMethod(PluginBuilder.java:234)
at 
org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:134)
at 
org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1002)
at 
org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:942)
at 
org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:934)
at 
org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:552)
at 
org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:241)
at 
org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:288)
at 
org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:618)
at 
org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:691)
at 
org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:708)
at 
org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:263)
at 
org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153)
at 
org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194)
at 
org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:138)
at 
org.apache.logging.log4j.jcl.LogAdapter.getContext(LogAdapter.java:39)
at 
org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:48)
at 
org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:40)
at 
org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:55)
at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:655)
at 
org.springframework.web.filter.GenericFilterBean.(GenericFilterBean.java:86)
at 
org.springframework.web.filter.DelegatingFilterProxy.(DelegatingFilterProxy.java:107)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at 
org.eclipse.jetty.server.handler.ContextHandler$Context.createInstance(ContextHandler.java:2520)
at 
org.eclipse.jetty.servlet.ServletContextHandler$Context.createFilter(ServletContextHandler.java:1284)
at 
org.eclipse.jetty.servlet.FilterHolder.initialize(FilterHolder.java:118)
at 
org.eclipse.jetty.servlet.ServletHandler.lambda$initialize$0(ServletHandler.java:751)
at 
java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
at 
java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742)
at 
java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742)
at 
java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580)
at 
org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:744)
at 
org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:361)
at 
org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1443)
at 
org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1407)
at 
org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:821)
at 

[jira] [Assigned] (GEODE-8197) Embedded Pulse fails to start with custom log4j2.xml

2020-05-28 Thread Kirk Lund (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8197?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kirk Lund reassigned GEODE-8197:


Assignee: Kirk Lund

> Embedded Pulse fails to start with custom log4j2.xml
> 
>
> Key: GEODE-8197
> URL: https://issues.apache.org/jira/browse/GEODE-8197
> Project: Geode
>  Issue Type: Bug
>  Components: logging, pulse
>Reporter: Kirk Lund
>Assignee: Kirk Lund
>Priority: Major
>
> Starting a Locator with a custom log4j2.xml referencing Geode appenders or 
> converters fails to correctly start embedded Pulse web application.
> {noformat}
> [info 2020/05/28 10:51:51.954 PDT  tid=1] Adding webapp /pulse
> 2020-05-28 10:51:53,328 main ERROR Unable to invoke factory method in class 
> org.apache.geode.alerting.log4j.internal.impl.AlertAppender for element 
> GeodeAlert: java.lang.IllegalStateException: No factory method found for 
> class org.apache.geode.alerting.log4j.internal.impl.AlertAppender 
> java.lang.IllegalStateException: No factory method found for class 
> org.apache.geode.alerting.log4j.internal.impl.AlertAppender
>   at 
> org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.findFactoryMethod(PluginBuilder.java:234)
>   at 
> org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:134)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1002)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:942)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:934)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:552)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:241)
>   at 
> org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:288)
>   at 
> org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:618)
>   at 
> org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:691)
>   at 
> org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:708)
>   at 
> org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:263)
>   at 
> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153)
>   at 
> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
>   at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194)
>   at 
> org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:138)
>   at 
> org.apache.logging.log4j.jcl.LogAdapter.getContext(LogAdapter.java:39)
>   at 
> org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:48)
>   at 
> org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:40)
>   at 
> org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:55)
>   at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:655)
>   at 
> org.springframework.web.filter.GenericFilterBean.(GenericFilterBean.java:86)
>   at 
> org.springframework.web.filter.DelegatingFilterProxy.(DelegatingFilterProxy.java:107)
>   at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>   at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
>   at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>   at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
>   at 
> org.eclipse.jetty.server.handler.ContextHandler$Context.createInstance(ContextHandler.java:2520)
>   at 
> org.eclipse.jetty.servlet.ServletContextHandler$Context.createFilter(ServletContextHandler.java:1284)
>   at 
> org.eclipse.jetty.servlet.FilterHolder.initialize(FilterHolder.java:118)
>   at 
> org.eclipse.jetty.servlet.ServletHandler.lambda$initialize$0(ServletHandler.java:751)
>   at 
> java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
>   at 
> java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742)
>   at 
> java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742)
>   at 
> java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580)
>   at 
> org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:744)
>   at 
> 

[jira] [Commented] (GEODE-2484) Remove ACE from native client dependencies

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-2484?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118921#comment-17118921
 ] 

ASF GitHub Bot commented on GEODE-2484:
---

codecov-commenter edited a comment on pull request #607:
URL: https://github.com/apache/geode-native/pull/607#issuecomment-635137877


   # [Codecov](https://codecov.io/gh/apache/geode-native/pull/607?src=pr=h1) 
Report
   > Merging 
[#607](https://codecov.io/gh/apache/geode-native/pull/607?src=pr=desc) into 
[develop](https://codecov.io/gh/apache/geode-native/commit/35b6d5260b2c04cf25e84b34d38bacbf56f0445e=desc)
 will **decrease** coverage by `0.01%`.
   > The diff coverage is `85.53%`.
   
   [![Impacted file tree 
graph](https://codecov.io/gh/apache/geode-native/pull/607/graphs/tree.svg?width=650=150=pr=plpAqoqGag)](https://codecov.io/gh/apache/geode-native/pull/607?src=pr=tree)
   
   ```diff
   @@ Coverage Diff @@
   ##   develop #607  +/-   ##
   ===
   - Coverage73.42%   73.40%   -0.02% 
   ===
 Files  639  641   +2 
 Lines5092650984  +58 
   ===
   + Hits 3739037426  +36 
   - Misses   1353613558  +22 
   ```
   
   
   | [Impacted 
Files](https://codecov.io/gh/apache/geode-native/pull/607?src=pr=tree) | 
Coverage Δ | |
   |---|---|---|
   | 
[cppcache/include/geode/CacheableString.hpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvaW5jbHVkZS9nZW9kZS9DYWNoZWFibGVTdHJpbmcuaHBw)
 | `96.07% <ø> (ø)` | |
   | 
[cppcache/src/AdminRegion.cpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0FkbWluUmVnaW9uLmNwcA==)
 | `40.67% <0.00%> (-31.74%)` | :arrow_down: |
   | 
[cppcache/src/AdminRegion.hpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0FkbWluUmVnaW9uLmhwcA==)
 | `100.00% <ø> (ø)` | |
   | 
[cppcache/src/CacheImpl.cpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0NhY2hlSW1wbC5jcHA=)
 | `77.98% <ø> (ø)` | |
   | 
[cppcache/src/CacheImpl.hpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0NhY2hlSW1wbC5ocHA=)
 | `97.56% <ø> (+2.43%)` | :arrow_up: |
   | 
[cppcache/src/ClientProxyMembershipID.hpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0NsaWVudFByb3h5TWVtYmVyc2hpcElELmhwcA==)
 | `82.60% <ø> (ø)` | |
   | 
[cppcache/src/ClientProxyMembershipIDFactory.hpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0NsaWVudFByb3h5TWVtYmVyc2hpcElERmFjdG9yeS5ocHA=)
 | `100.00% <ø> (ø)` | |
   | 
[cppcache/src/DistributedSystemImpl.cpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0Rpc3RyaWJ1dGVkU3lzdGVtSW1wbC5jcHA=)
 | `66.66% <ø> (ø)` | |
   | 
[...che/src/InternalCacheTransactionManager2PCImpl.cpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0ludGVybmFsQ2FjaGVUcmFuc2FjdGlvbk1hbmFnZXIyUENJbXBsLmNwcA==)
 | `32.18% <0.00%> (-0.76%)` | :arrow_down: |
   | 
[cppcache/src/SystemProperties.cpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL1N5c3RlbVByb3BlcnRpZXMuY3Bw)
 | `88.17% <ø> (ø)` | |
   | ... and [55 
more](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree-more)
 | |
   
   --
   
   [Continue to review full report at 
Codecov](https://codecov.io/gh/apache/geode-native/pull/607?src=pr=continue).
   > **Legend** - [Click here to learn 
more](https://docs.codecov.io/docs/codecov-delta)
   > `Δ = absolute  (impact)`, `ø = not affected`, `? = missing data`
   > Powered by 
[Codecov](https://codecov.io/gh/apache/geode-native/pull/607?src=pr=footer). 
Last update 
[35b6d52...44a2ece](https://codecov.io/gh/apache/geode-native/pull/607?src=pr=lastupdated).
 Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Remove ACE from native client dependencies
> --
>
> Key: GEODE-2484
> URL: https://issues.apache.org/jira/browse/GEODE-2484
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: David Kimura
>Priority: Major
>  Labels: pull-request-available
> Fix For: 1.9.0
>
>  

[jira] [Commented] (GEODE-2484) Remove ACE from native client dependencies

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-2484?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118919#comment-17118919
 ] 

ASF GitHub Bot commented on GEODE-2484:
---

pdxcodemonkey commented on a change in pull request #607:
URL: https://github.com/apache/geode-native/pull/607#discussion_r431929721



##
File path: cppcache/src/ClientProxyMembershipIDFactory.cpp
##
@@ -53,12 +54,13 @@ 
ClientProxyMembershipIDFactory::ClientProxyMembershipIDFactory(
 }
 
 std::unique_ptr 
ClientProxyMembershipIDFactory::create(
-const char* hostname, const ACE_INET_Addr& address, uint32_t hostPort,
-const char* durableClientId,
+const std::string& durableClientId,
 const std::chrono::seconds durableClntTimeOut) {
-  return std::unique_ptr(new ClientProxyMembershipID(
-  dsName, randString, hostname, address, hostPort, durableClientId,
-  durableClntTimeOut));
+  auto hostname = boost::asio::ip::host_name();

Review comment:
   const auto?

##
File path: cppcache/src/AdminRegion.hpp-a968f121
##
@@ -0,0 +1,84 @@
+/*

Review comment:
   What the heck is this filename about???  This looks like a leftover file 
from a Git operation or something, pls delete.

##
File path: cppcache/src/AdminRegion.hpp
##
@@ -74,7 +73,8 @@ class AdminRegion : public 
std::enable_shared_from_this {
   void init();
   void put(const std::shared_ptr& keyPtr,
const std::shared_ptr& valuePtr);
-  friend class apache::geode::statistics::HostStatSampler;
+  //  friend class apache::geode::statistics::HostStatSampler;

Review comment:
   Should just delete this commented line.  Also hooray for removing 
'friend' declaration!

##
File path: cppcache/include/geode/CacheableString.hpp
##
@@ -25,8 +25,7 @@
 #include "internal/DataSerializablePrimitive.hpp"
 #include "internal/geode_globals.hpp"
 
-/** @file
- */
+#undef max

Review comment:
   Need some explanation here, this is really odd.

##
File path: cppcache/src/SystemProperties.cpp
##
@@ -88,7 +88,7 @@ constexpr auto DefaultConnectWaitTimeout = 
std::chrono::seconds::zero();
 constexpr auto DefaultBucketWaitTimeout = std::chrono::seconds::zero();
 
 constexpr auto DefaultSamplingInterval = std::chrono::seconds(1);
-const bool DefaultSamplingEnabled = true;
+constexpr bool DefaultSamplingEnabled = false;

Review comment:
   auto?

##
File path: cppcache/src/CppCacheLibrary.hpp
##
@@ -31,17 +31,28 @@ namespace client {
 // initialize GEODE runtime if it has not already been initialized.
 class APACHE_GEODE_EXPORT CppCacheLibrary {
  public:
-  // Call to this to trigger initialization.
+  /**
+   * Call to this to trigger initialization.
+   */
   static void initLib(void);

Review comment:
   Do we need the initLib/closeLib methods?  closeLib is empty, and initLib 
has one line of code.  initLib is called in one place in the code base, by a 
wrapper function (initLibDllEntry) that also only contains one line of code.  
Said wrapper function is only called in one place, by _another_ wrapper 
function (initgflib) that contains _two_ lines of code: 
   ```
   initLibDllEntry(); 
   return true;
   ```
   initgflib is called in, you guessed it, one place in the code, on this line 
in dllmain.cpp:
   
   ```
   static bool initgflibDone = initgflib();
   ```
   initgflibDone is in turn checked in both the Windows and non-Windows 
versions of the function DllMainGetPath(), but _it can never be false_(!!!)





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Remove ACE from native client dependencies
> --
>
> Key: GEODE-2484
> URL: https://issues.apache.org/jira/browse/GEODE-2484
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: David Kimura
>Priority: Major
>  Labels: pull-request-available
> Fix For: 1.9.0
>
>  Time Spent: 11h 20m
>  Remaining Estimate: 0h
>
> Remove ACE from native client dependencies.
> Replace ACE usage with C++11 and/or Boost 1.63+



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-7680) Partitioned region clear operations must be successful while interacting with rebalance

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-7680?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118917#comment-17118917
 ] 

ASF GitHub Bot commented on GEODE-7680:
---

DonalEvans commented on a change in pull request #5095:
URL: https://github.com/apache/geode/pull/5095#discussion_r432000642



##
File path: 
geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionClearWithRebalanceDUnitTest.java
##
@@ -0,0 +1,386 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+package org.apache.geode.internal.cache;
+
+import static 
org.apache.geode.cache.PartitionAttributesFactory.GLOBAL_MAX_BUCKETS_DEFAULT;
+import static org.apache.geode.cache.RegionShortcut.PARTITION;
+import static org.apache.geode.cache.RegionShortcut.PARTITION_REDUNDANT;
+import static 
org.apache.geode.cache.RegionShortcut.PARTITION_REDUNDANT_PERSISTENT;
+import static org.apache.geode.internal.util.ArrayUtils.asList;
+import static org.apache.geode.test.awaitility.GeodeAwaitility.await;
+import static org.apache.geode.test.dunit.VM.getVM;
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.Matchers.greaterThan;
+import static org.junit.Assert.assertThat;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.concurrent.TimeUnit;
+import java.util.stream.IntStream;
+
+import junitparams.JUnitParamsRunner;
+import junitparams.Parameters;
+import junitparams.naming.TestCaseName;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import org.apache.geode.cache.PartitionAttributes;
+import org.apache.geode.cache.PartitionAttributesFactory;
+import org.apache.geode.cache.Region;
+import org.apache.geode.cache.RegionFactory;
+import org.apache.geode.cache.RegionShortcut;
+import org.apache.geode.cache.control.RebalanceOperation;
+import org.apache.geode.cache.control.RebalanceResults;
+import org.apache.geode.distributed.internal.DMStats;
+import org.apache.geode.test.awaitility.GeodeAwaitility;
+import org.apache.geode.test.dunit.AsyncInvocation;
+import org.apache.geode.test.dunit.DUnitBlackboard;
+import org.apache.geode.test.dunit.SerializableRunnableIF;
+import org.apache.geode.test.dunit.VM;
+import org.apache.geode.test.dunit.rules.CacheRule;
+import org.apache.geode.test.dunit.rules.DistributedDiskDirRule;
+import org.apache.geode.test.dunit.rules.DistributedRule;
+
+@RunWith(JUnitParamsRunner.class)
+public class PartitionedRegionClearWithRebalanceDUnitTest implements 
Serializable {

Review comment:
   Using three servers, with a PartitionedRegion with one redundant copy, 
and killing the non-coordinator server when the clear operation starts, I am 
still seeing a PartialClearException some of the time. It seems to be flaky 
whether the clear operation has enough time to find the new primary in the case 
that a server goes down. This happens even if there is no rebalance happening 
at the time; as long as some data is hosted on the member that is killed, there 
is a chance of a PartialClearException, it seems. I don't know if it will be 
possible to write a useful test in this scenario, since we have to either 
assert that the clear succeeds, or that it fails, but it doesn't do either 
reliably.





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Partitioned region clear operations must be successful while interacting with 
> rebalance 
> 
>
> Key: GEODE-7680
> URL: https://issues.apache.org/jira/browse/GEODE-7680
> Project: Geode
>  Issue Type: Sub-task
>  Components: regions
>Reporter: Nabarun Nag
>Assignee: Donal Evans

[jira] [Resolved] (GEODE-8193) Broken link in statistics list

2020-05-28 Thread Alberto Bustamante Reyes (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8193?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alberto Bustamante Reyes resolved GEODE-8193.
-
Fix Version/s: 1.14.0
   Resolution: Fixed

> Broken link in statistics list
> --
>
> Key: GEODE-8193
> URL: https://issues.apache.org/jira/browse/GEODE-8193
> Project: Geode
>  Issue Type: Improvement
>  Components: docs
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
>  Labels: pull-request-available
> Fix For: 1.14.0
>
>
> The link of region entry heap-based eviction is wrong and shows the html 
> anchor id in the statistics lists:
>  * Region Entry Eviction - Heap-based eviction 
> (HeapLRUStatistics)#section_3B74F6FA08A374FBD92AA23047929B4F)
> [https://geode.apache.org/docs/guide/112/reference/statistics_list.html]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-6070) CI Failure: ShutdownCommandOverHttpDUnitTest > testShutdownAll

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-6070?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118914#comment-17118914
 ] 

ASF GitHub Bot commented on GEODE-6070:
---

jchen21 commented on a change in pull request #5162:
URL: https://github.com/apache/geode/pull/5162#discussion_r431997075



##
File path: 
geode-web/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ShutdownCommandOverHttpDUnitTest.java
##
@@ -96,48 +93,61 @@ public void setup() throws Exception {
 
 locatorString = "localhost[" + locatorPort + "]";
 
-locator.invoke(
-() -> startLocator(locatorDir, locatorPort, locatorJmxPort, 
locatorHttpPort));
+locator.invoke(() -> startLocator(locatorDir, locatorPort, locatorJmxPort, 
locatorHttpPort));
 server1.invoke(() -> startServer(SERVER1_NAME, server1Dir, locatorString));
 server2.invoke(() -> startServer(SERVER2_NAME, server2Dir, locatorString));
 
 gfsh.connectAndVerify(locatorHttpPort, PortType.http);
+
+addIgnoredException(DistributedSystemDisconnectedException.class);
   }
 
   @Test
   public void testShutdownServers() {
 String command = "shutdown";
 
-
gfsh.executeAndAssertThat(command).statusIsSuccess().containsOutput("Shutdown 
is triggered");
+gfsh.executeAndAssertThat(command)
+.statusIsSuccess()
+.containsOutput("Shutdown is triggered");
 
 for (VM vm : toArray(server1, server2)) {
   vm.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 }
 
-gfsh.executeAndAssertThat("list members").statusIsSuccess();
+gfsh.executeAndAssertThat("list members")
+.statusIsSuccess();
+
 assertThat(gfsh.getGfshOutput()).contains("locator");
   }
 
   @Test
   public void testShutdownAll() {
 String command = "shutdown --include-locators=true";
 
-
gfsh.executeAndAssertThat(command).statusIsSuccess().containsOutput("Shutdown 
is triggered");
+gfsh.executeAndAssertThat(command)
+.statusIsSuccess()
+.containsOutput("Shutdown is triggered");
+
 server1.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 server2.invoke(() -> verifyNotConnected(SERVER_LAUNCHER.get().getCache()));
 locator.invoke(() -> 
verifyNotConnected(LOCATOR_LAUNCHER.get().getCache()));
   }
 
   private void verifyNotConnected(Cache cache) {
-await().untilAsserted(() -> 
assertThat(cache.getDistributedSystem().isConnected()).isFalse());
+await().untilAsserted(() -> {
+  assertThat(cache.getDistributedSystem().isConnected())
+  .as("cache.getDistributedSystem().isConnected()")

Review comment:
   Is it preferable to use `withFailMessage` than `as` for this case?





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> CI Failure: ShutdownCommandOverHttpDUnitTest > testShutdownAll
> --
>
> Key: GEODE-6070
> URL: https://issues.apache.org/jira/browse/GEODE-6070
> Project: Geode
>  Issue Type: Bug
>Affects Versions: 1.12.0
>Reporter: Helena Bales
>Assignee: Kirk Lund
>Priority: Major
>  Labels: GeodeCommons, flaky
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Failed with stacktrace:
> {noformat}
> org.apache.geode.management.internal.cli.commands.ShutdownCommandOverHttpDUnitTest
>  > testShutdownAll FAILED
> java.lang.AssertionError: Suspicious strings were written to the log 
> during this run.
> Fix the strings or use IgnoredException.addIgnoredException to ignore.
> ---
> Found suspect string in log4j at line 302
> org.apache.geode.distributed.DistributedSystemDisconnectedException: 
> Distribution manager on 172.17.0.3(server-1:496):41002 started at Thu Nov 
> 15 19:47:58 UTC 2018: Message distribution has terminated
> {noformat}
> Test results can be found here:
> http://files.apachegeode-ci.info/builds/apache-develop-main/1.9.0-build.158/test-results/distributedTest/1542315851/classes/org.apache.geode.management.internal.cli.commands.ShutdownCommandOverHttpDUnitTest.html#testShutdownAll
>  
> Test Artifacts can be found here:
> http://files.apachegeode-ci.info/builds/apache-develop-main/1.9.0-build.158/test-artifacts/1542315851/distributedtestfiles-OpenJDK8-1.9.0-build.158.tgz



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-7864) Code improvement refactoring

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-7864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118912#comment-17118912
 ] 

ASF GitHub Bot commented on GEODE-7864:
---

DonalEvans commented on a change in pull request #4866:
URL: https://github.com/apache/geode/pull/4866#discussion_r431995682



##
File path: 
geode-junit/src/main/java/org/apache/geode/pdx/TestObjectForJSONFormatter.java
##
@@ -992,6 +993,34 @@ boolean compareMaps(Map m1, Map m2) {
 return true;
   }
 
+  @Override
+  public int hashCode() {
+int result =
+Objects
+.hash(p_bool, p_byte, p_short, p_int, p_long, p_float, p_double, 
w_bool, w_byte,
+w_short,
+w_int, w_long, w_bigInt, w_float, w_bigDec, w_double, 
w_string, c_list, c_set,
+c_queue, c_deque, m_empByCity, day);

Review comment:
   Could this be formatted slightly neater? The following seems to make 
spotless happy on my machine:
   ```suggestion
   int result =
   Objects
   .hash(p_bool, p_byte, p_short, p_int, p_long, p_float, p_double, 
w_bool, w_byte,
   w_short,
   w_int, w_long, w_bigInt, w_float, w_bigDec, w_double, 
w_string, c_list, c_set,
   c_queue, c_deque, m_empByCity, day);
   ```





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Code improvement refactoring
> 
>
> Key: GEODE-7864
> URL: https://issues.apache.org/jira/browse/GEODE-7864
> Project: Geode
>  Issue Type: Improvement
>Reporter: Nabarun Nag
>Priority: Major
>  Time Spent: 13h 10m
>  Remaining Estimate: 0h
>
> This is a placeholder ticket.
>  * this is used to do refactoring.
>  * this ticket number is used to number the commit message.
>  * this ticket will never be closed.
>  * it will be used to mark improvements like correcting spelling mistakes, 
> efficient java code, etc.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-7864) Code improvement refactoring

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-7864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118913#comment-17118913
 ] 

ASF GitHub Bot commented on GEODE-7864:
---

DonalEvans commented on a change in pull request #4866:
URL: https://github.com/apache/geode/pull/4866#discussion_r431995682



##
File path: 
geode-junit/src/main/java/org/apache/geode/pdx/TestObjectForJSONFormatter.java
##
@@ -992,6 +993,34 @@ boolean compareMaps(Map m1, Map m2) {
 return true;
   }
 
+  @Override
+  public int hashCode() {
+int result =
+Objects
+.hash(p_bool, p_byte, p_short, p_int, p_long, p_float, p_double, 
w_bool, w_byte,
+w_short,
+w_int, w_long, w_bigInt, w_float, w_bigDec, w_double, 
w_string, c_list, c_set,
+c_queue, c_deque, m_empByCity, day);

Review comment:
   Could this be formatted slightly neater? The following seems to make 
spotless happy on my machine:
   ```suggestion
   int result = Objects.hash(p_bool, p_byte, p_short, p_int, p_long, p_float, 
p_double, w_bool,
   w_byte, w_short, w_int, w_long, w_bigInt, w_float, w_bigDec, 
w_double, w_string, c_list,
   c_set, c_queue, c_deque, m_empByCity, day);
   ```





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Code improvement refactoring
> 
>
> Key: GEODE-7864
> URL: https://issues.apache.org/jira/browse/GEODE-7864
> Project: Geode
>  Issue Type: Improvement
>Reporter: Nabarun Nag
>Priority: Major
>  Time Spent: 13h 10m
>  Remaining Estimate: 0h
>
> This is a placeholder ticket.
>  * this is used to do refactoring.
>  * this ticket number is used to number the commit message.
>  * this ticket will never be closed.
>  * it will be used to mark improvements like correcting spelling mistakes, 
> efficient java code, etc.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-7864) Code improvement refactoring

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-7864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118911#comment-17118911
 ] 

ASF GitHub Bot commented on GEODE-7864:
---

DonalEvans commented on a change in pull request #4866:
URL: https://github.com/apache/geode/pull/4866#discussion_r431995682



##
File path: 
geode-junit/src/main/java/org/apache/geode/pdx/TestObjectForJSONFormatter.java
##
@@ -992,6 +993,34 @@ boolean compareMaps(Map m1, Map m2) {
 return true;
   }
 
+  @Override
+  public int hashCode() {
+int result =
+Objects
+.hash(p_bool, p_byte, p_short, p_int, p_long, p_float, p_double, 
w_bool, w_byte,
+w_short,
+w_int, w_long, w_bigInt, w_float, w_bigDec, w_double, 
w_string, c_list, c_set,
+c_queue, c_deque, m_empByCity, day);

Review comment:
   Could this be formatted slightly neater? The following seems to make 
spotless happy on my machine:
   `int result = Objects.hash(p_bool, p_byte, p_short, p_int, p_long, p_float, 
p_double, w_bool,
   w_byte, w_short, w_int, w_long, w_bigInt, w_float, w_bigDec, 
w_double, w_string, c_list,
   c_set, c_queue, c_deque, m_empByCity, day);`





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Code improvement refactoring
> 
>
> Key: GEODE-7864
> URL: https://issues.apache.org/jira/browse/GEODE-7864
> Project: Geode
>  Issue Type: Improvement
>Reporter: Nabarun Nag
>Priority: Major
>  Time Spent: 13h 10m
>  Remaining Estimate: 0h
>
> This is a placeholder ticket.
>  * this is used to do refactoring.
>  * this ticket number is used to number the commit message.
>  * this ticket will never be closed.
>  * it will be used to mark improvements like correcting spelling mistakes, 
> efficient java code, etc.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8166) Change redis expiration commands to use function+delta

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118889#comment-17118889
 ] 

ASF GitHub Bot commented on GEODE-8166:
---

dschneider-pivotal commented on a change in pull request #5174:
URL: https://github.com/apache/geode/pull/5174#discussion_r431980369



##
File path: 
geode-redis/src/distributedTest/java/org/apache/geode/redis/executors/ExpireDUnitTest.java
##
@@ -115,7 +113,7 @@ public static void tearDown() {
   public void expireOnOneServer_shouldPropagateToAllServers() {
 String key = "key";
 
-jedis1.set(key, "value");
+jedis1.sadd(key, "value");

Review comment:
   early on this branch, the new expiration was only working on sets and 
hashes. So I changed these tests to use sets instead of strings. It seems like 
this test is okay with any data type so I left it using a set.

##
File path: 
geode-redis/src/distributedTest/java/org/apache/geode/redis/executors/keys/PersistDUnitTest.java
##
@@ -134,10 +133,8 @@ public void testConcurrentPersistOperations() throws 
InterruptedException {
 
   private void setKeysWithExpiration(Jedis jedis, Long iterationCount, String 
key) {
 for (int i = 0; i < iterationCount; i++) {
-  SetParams setParams = new SetParams();
-  setParams.ex(600);
-
-  jedis.set(key + i, "value" + i, setParams);
+  jedis.sadd(key + i, "value" + 9);
+  jedis.expire(key + i, 600);

Review comment:
   early on this branch, the new expiration was only working on sets and 
hashes. So I changed these tests to use sets instead of strings. It seems like 
this test is okay with any data type so I left it using a set.





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Change redis expiration commands to use function+delta
> --
>
> Key: GEODE-8166
> URL: https://issues.apache.org/jira/browse/GEODE-8166
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> The redis expiration commands (expire, pexpire, expireat, pexpireat, ttl, 
> pttl, and persist) need to be reimplemented to use the new function+delta 
> data model. They should also be careful to work correctly in a multi-node 
> cluster if one of the servers die.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8166) Change redis expiration commands to use function+delta

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=1711#comment-1711
 ] 

ASF GitHub Bot commented on GEODE-8166:
---

dschneider-pivotal commented on a change in pull request #5174:
URL: https://github.com/apache/geode/pull/5174#discussion_r431979408



##
File path: 
geode-redis/src/distributedTest/java/org/apache/geode/redis/executors/ExpireDUnitTest.java
##
@@ -115,7 +113,7 @@ public static void tearDown() {
   public void expireOnOneServer_shouldPropagateToAllServers() {
 String key = "key";
 
-jedis1.set(key, "value");
+jedis1.sadd(key, "value");

Review comment:
   c





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Change redis expiration commands to use function+delta
> --
>
> Key: GEODE-8166
> URL: https://issues.apache.org/jira/browse/GEODE-8166
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> The redis expiration commands (expire, pexpire, expireat, pexpireat, ttl, 
> pttl, and persist) need to be reimplemented to use the new function+delta 
> data model. They should also be careful to work correctly in a multi-node 
> cluster if one of the servers die.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8166) Change redis expiration commands to use function+delta

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118887#comment-17118887
 ] 

ASF GitHub Bot commented on GEODE-8166:
---

dschneider-pivotal commented on a change in pull request #5174:
URL: https://github.com/apache/geode/pull/5174#discussion_r431978288



##
File path: 
geode-redis/src/integrationTest/java/org/apache/geode/redis/general/ExpireIntegrationTest.java
##
@@ -366,4 +371,12 @@ public void 
CallingExpireOnAKeyThatAlreadyHasAnExiprationTime_ShouldUpdateTheExp
 Long timeToLive = jedis.ttl(key);
 assertThat(timeToLive).isGreaterThan(21);
   }
+
+  @Test
+  public void should_passivelyExpireKeys() {
+jedis.sadd("key", "value");
+jedis.pexpire("key", 100);
+
+GeodeAwaitility.await().until(() -> jedis.keys("key").isEmpty());

Review comment:
   right





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Change redis expiration commands to use function+delta
> --
>
> Key: GEODE-8166
> URL: https://issues.apache.org/jira/browse/GEODE-8166
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> The redis expiration commands (expire, pexpire, expireat, pexpireat, ttl, 
> pttl, and persist) need to be reimplemented to use the new function+delta 
> data model. They should also be careful to work correctly in a multi-node 
> cluster if one of the servers die.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-7846) Clear in Partitioned Region should have its own stats

2020-05-28 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-7846?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118876#comment-17118876
 ] 

ASF subversion and git services commented on GEODE-7846:


Commit 0fd56e418752c14ed8ebebe5a370164034aafc39 in geode's branch 
refs/heads/develop from Donal Evans
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=0fd56e4 ]

GEODE-7846: Replace all uses of hardcoded / with Region.SEPARATOR (#5157)

Authored-by: Donal Evans 

> Clear in Partitioned Region should have its own stats
> -
>
> Key: GEODE-7846
> URL: https://issues.apache.org/jira/browse/GEODE-7846
> Project: Geode
>  Issue Type: Improvement
>  Components: core
>Reporter: Xiaojian Zhou
>Priority: Major
>  Labels: GeodeCommons
>
> Clear operation in PR should have its own stats: 
> 1) clear operation executed. 
> 2) clear operation failed
> 3) clear messages sends to buckets



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-7846) Clear in Partitioned Region should have its own stats

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-7846?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118875#comment-17118875
 ] 

ASF GitHub Bot commented on GEODE-7846:
---

DonalEvans merged pull request #5157:
URL: https://github.com/apache/geode/pull/5157


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Clear in Partitioned Region should have its own stats
> -
>
> Key: GEODE-7846
> URL: https://issues.apache.org/jira/browse/GEODE-7846
> Project: Geode
>  Issue Type: Improvement
>  Components: core
>Reporter: Xiaojian Zhou
>Priority: Major
>  Labels: GeodeCommons
>
> Clear operation in PR should have its own stats: 
> 1) clear operation executed. 
> 2) clear operation failed
> 3) clear messages sends to buckets



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-7864) Code improvement refactoring

2020-05-28 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-7864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118871#comment-17118871
 ] 

ASF subversion and git services commented on GEODE-7864:


Commit bd2d118ba3e5a5d07dacc8cb2ce3fd153b171f5c in geode's branch 
refs/heads/develop from Nabarun Nag
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=bd2d118 ]

GEODE-7864: Override the default implementation of write(byte[],int,int) (#4871)

* Prevent overheads of writing one byte at a time.

> Code improvement refactoring
> 
>
> Key: GEODE-7864
> URL: https://issues.apache.org/jira/browse/GEODE-7864
> Project: Geode
>  Issue Type: Improvement
>Reporter: Nabarun Nag
>Priority: Major
>  Time Spent: 13h 10m
>  Remaining Estimate: 0h
>
> This is a placeholder ticket.
>  * this is used to do refactoring.
>  * this ticket number is used to number the commit message.
>  * this ticket will never be closed.
>  * it will be used to mark improvements like correcting spelling mistakes, 
> efficient java code, etc.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-7864) Code improvement refactoring

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-7864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118869#comment-17118869
 ] 

ASF GitHub Bot commented on GEODE-7864:
---

nabarunnag merged pull request #4871:
URL: https://github.com/apache/geode/pull/4871


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Code improvement refactoring
> 
>
> Key: GEODE-7864
> URL: https://issues.apache.org/jira/browse/GEODE-7864
> Project: Geode
>  Issue Type: Improvement
>Reporter: Nabarun Nag
>Priority: Major
>  Time Spent: 13h 10m
>  Remaining Estimate: 0h
>
> This is a placeholder ticket.
>  * this is used to do refactoring.
>  * this ticket number is used to number the commit message.
>  * this ticket will never be closed.
>  * it will be used to mark improvements like correcting spelling mistakes, 
> efficient java code, etc.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (GEODE-8195) ConcurrentModificationException from LocatorMembershipListenerImpl$DistributeLocatorsRunnable.run

2020-05-28 Thread Bill Burcham (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8195?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Bill Burcham updated GEODE-8195:

Description: 
this WAN code in 
{{LocatorMembershipListenerImpl$DistributeLocatorsRunnable.run}}:

{code}
Set joinMessages = entry.getValue();

for (LocatorJoinMessage locatorJoinMessage : joinMessages) {
  if (retryMessage(targetLocator, locatorJoinMessage, attempt)) {
joinMessages.remove(locatorJoinMessage);
  } else {
{code}

modifies the {{joinMessages}} set as it is iterating over the set, resulting in 
a {{ConcurrentModificationException}}.

This bug will cause (inter-site) notification of locators (of the presence of a 
new locator) to fail early if retry is necessary. If we have to retry notifying 
any locator, and we succeed, we’ll throw the 
{{ConcurrentModificationException}} and stop trying to notify any of the other 
locators. See the _Discovery For Multi-Site Systems_ section of the [Overview 
of Multi-Site 
Caching|https://geode.apache.org/docs/guide/14/topologies_and_comm/topology_concepts/multisite_overview.html]
 documentation for an overview of the locator's role in WAN.

Here is a scratch file that illustrates the issue, throwing 
{{ConcurrentModificationException}}:

{code}
import java.util.HashSet;
import java.util.Set;

class Scratch {
  public static void main(String[] args) {
final Set joinMessages = new HashSet<>();

joinMessages.add("one");
joinMessages.add("two");

for( final String entry:joinMessages ) {
  if (entry.equals("one"))
joinMessages.remove(entry);
}

  }
}
{code}

>From looking at the Geode code, {{joinMessages}} is not used outside the loop 
>so there is no need to modify it at all—I think we can simply remove this line:

{code}
joinMessages.remove(locatorJoinMessage);
{code}

  was:
this WAN code in 
{{LocatorMembershipListenerImpl$DistributeLocatorsRunnable.run}}:

{code}
Set joinMessages = entry.getValue();

for (LocatorJoinMessage locatorJoinMessage : joinMessages) {
  if (retryMessage(targetLocator, locatorJoinMessage, attempt)) {
joinMessages.remove(locatorJoinMessage);
  } else {
{code}

modifies the {{joinMessages}} set as it is iterating over the set, resulting in 
a {{ConcurrentModificationException}}.

This bug will cause (inter-site) notification of locators (of the presence of a 
new locator) to fail early if retry is necessary. If we have to retry notifying 
any locator, and we succeed, we’ll throw the 
{{ConcurrentModificationException}} and stop trying to notify any of the other 
locators.

Here is a scratch file that illustrates the issue, throwing 
{{ConcurrentModificationException}}:

{code}
import java.util.HashSet;
import java.util.Set;

class Scratch {
  public static void main(String[] args) {
final Set joinMessages = new HashSet<>();

joinMessages.add("one");
joinMessages.add("two");

for( final String entry:joinMessages ) {
  if (entry.equals("one"))
joinMessages.remove(entry);
}

  }
}
{code}

>From looking at the Geode code, {{joinMessages}} is not used outside the loop 
>so there is no need to modify it at all—I think we can simply remove this line:

{code}
joinMessages.remove(locatorJoinMessage);
{code}


> ConcurrentModificationException from 
> LocatorMembershipListenerImpl$DistributeLocatorsRunnable.run
> -
>
> Key: GEODE-8195
> URL: https://issues.apache.org/jira/browse/GEODE-8195
> Project: Geode
>  Issue Type: Bug
>  Components: membership
>Reporter: Bill Burcham
>Priority: Major
>
> this WAN code in 
> {{LocatorMembershipListenerImpl$DistributeLocatorsRunnable.run}}:
> {code}
> Set joinMessages = entry.getValue();
> for (LocatorJoinMessage locatorJoinMessage : joinMessages) {
>   if (retryMessage(targetLocator, locatorJoinMessage, attempt)) {
> joinMessages.remove(locatorJoinMessage);
>   } else {
> {code}
> modifies the {{joinMessages}} set as it is iterating over the set, resulting 
> in a {{ConcurrentModificationException}}.
> This bug will cause (inter-site) notification of locators (of the presence of 
> a new locator) to fail early if retry is necessary. If we have to retry 
> notifying any locator, and we succeed, we’ll throw the 
> {{ConcurrentModificationException}} and stop trying to notify any of the 
> other locators. See the _Discovery For Multi-Site Systems_ section of the 
> [Overview of Multi-Site 
> Caching|https://geode.apache.org/docs/guide/14/topologies_and_comm/topology_concepts/multisite_overview.html]
>  documentation for an overview of the locator's 

[jira] [Commented] (GEODE-8166) Change redis expiration commands to use function+delta

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118862#comment-17118862
 ] 

ASF GitHub Bot commented on GEODE-8166:
---

ringles commented on a change in pull request #5174:
URL: https://github.com/apache/geode/pull/5174#discussion_r431961890



##
File path: 
geode-redis/src/integrationTest/java/org/apache/geode/redis/general/ExpireIntegrationTest.java
##
@@ -366,4 +371,12 @@ public void 
CallingExpireOnAKeyThatAlreadyHasAnExiprationTime_ShouldUpdateTheExp
 Long timeToLive = jedis.ttl(key);
 assertThat(timeToLive).isGreaterThan(21);
   }
+
+  @Test
+  public void should_passivelyExpireKeys() {
+jedis.sadd("key", "value");
+jedis.pexpire("key", 100);
+
+GeodeAwaitility.await().until(() -> jedis.keys("key").isEmpty());

Review comment:
   To check my understanding - the jedis.keys() command will just get the 
keyset, but since it doesn't get the values of the keys it doesn't trigger the 
active expiration. Right?





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Change redis expiration commands to use function+delta
> --
>
> Key: GEODE-8166
> URL: https://issues.apache.org/jira/browse/GEODE-8166
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> The redis expiration commands (expire, pexpire, expireat, pexpireat, ttl, 
> pttl, and persist) need to be reimplemented to use the new function+delta 
> data model. They should also be careful to work correctly in a multi-node 
> cluster if one of the servers die.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8166) Change redis expiration commands to use function+delta

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118859#comment-17118859
 ] 

ASF GitHub Bot commented on GEODE-8166:
---

ringles commented on a change in pull request #5174:
URL: https://github.com/apache/geode/pull/5174#discussion_r431956870



##
File path: 
geode-redis/src/distributedTest/java/org/apache/geode/redis/executors/ExpireDUnitTest.java
##
@@ -115,7 +113,7 @@ public static void tearDown() {
   public void expireOnOneServer_shouldPropagateToAllServers() {
 String key = "key";
 
-jedis1.set(key, "value");
+jedis1.sadd(key, "value");

Review comment:
   Is there a reason for switching from string values to Sets?





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Change redis expiration commands to use function+delta
> --
>
> Key: GEODE-8166
> URL: https://issues.apache.org/jira/browse/GEODE-8166
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> The redis expiration commands (expire, pexpire, expireat, pexpireat, ttl, 
> pttl, and persist) need to be reimplemented to use the new function+delta 
> data model. They should also be careful to work correctly in a multi-node 
> cluster if one of the servers die.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8166) Change redis expiration commands to use function+delta

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118857#comment-17118857
 ] 

ASF GitHub Bot commented on GEODE-8166:
---

ringles commented on a change in pull request #5174:
URL: https://github.com/apache/geode/pull/5174#discussion_r431955425



##
File path: 
geode-redis/src/distributedTest/java/org/apache/geode/redis/executors/keys/PersistDUnitTest.java
##
@@ -134,10 +133,8 @@ public void testConcurrentPersistOperations() throws 
InterruptedException {
 
   private void setKeysWithExpiration(Jedis jedis, Long iterationCount, String 
key) {
 for (int i = 0; i < iterationCount; i++) {
-  SetParams setParams = new SetParams();
-  setParams.ex(600);
-
-  jedis.set(key + i, "value" + i, setParams);
+  jedis.sadd(key + i, "value" + 9);
+  jedis.expire(key + i, 600);

Review comment:
   Is there a resion why we're calling expire separately instead of using a 
set option?





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Change redis expiration commands to use function+delta
> --
>
> Key: GEODE-8166
> URL: https://issues.apache.org/jira/browse/GEODE-8166
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> The redis expiration commands (expire, pexpire, expireat, pexpireat, ttl, 
> pttl, and persist) need to be reimplemented to use the new function+delta 
> data model. They should also be careful to work correctly in a multi-node 
> cluster if one of the servers die.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8193) Broken link in statistics list

2020-05-28 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118856#comment-17118856
 ] 

ASF subversion and git services commented on GEODE-8193:


Commit dd990e8e38ebd1a4b120339df262ed9b3095356b in geode's branch 
refs/heads/develop from Alberto Bustamante Reyes
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=dd990e8 ]

GEODE-8193: Broken link in statistics list (#5166)



> Broken link in statistics list
> --
>
> Key: GEODE-8193
> URL: https://issues.apache.org/jira/browse/GEODE-8193
> Project: Geode
>  Issue Type: Improvement
>  Components: docs
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
>  Labels: pull-request-available
>
> The link of region entry heap-based eviction is wrong and shows the html 
> anchor id in the statistics lists:
>  * Region Entry Eviction - Heap-based eviction 
> (HeapLRUStatistics)#section_3B74F6FA08A374FBD92AA23047929B4F)
> [https://geode.apache.org/docs/guide/112/reference/statistics_list.html]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8193) Broken link in statistics list

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118855#comment-17118855
 ] 

ASF GitHub Bot commented on GEODE-8193:
---

karensmolermiller merged pull request #5166:
URL: https://github.com/apache/geode/pull/5166


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Broken link in statistics list
> --
>
> Key: GEODE-8193
> URL: https://issues.apache.org/jira/browse/GEODE-8193
> Project: Geode
>  Issue Type: Improvement
>  Components: docs
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
>  Labels: pull-request-available
>
> The link of region entry heap-based eviction is wrong and shows the html 
> anchor id in the statistics lists:
>  * Region Entry Eviction - Heap-based eviction 
> (HeapLRUStatistics)#section_3B74F6FA08A374FBD92AA23047929B4F)
> [https://geode.apache.org/docs/guide/112/reference/statistics_list.html]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8181) C++ client defaults statistic-sampling-enabled to true

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118819#comment-17118819
 ] 

ASF GitHub Bot commented on GEODE-8181:
---

pivotal-jbarrett commented on a change in pull request #606:
URL: https://github.com/apache/geode-native/pull/606#discussion_r431922763



##
File path: cppcache/integration-test/resources/system.properties
##
@@ -14,7 +14,7 @@
 # limitations under the License.
 # All the configurable parameters.
 statistic-sample-rate=700s
-statistic-sampling-enabled=false
+statistic-sampling-enabled=true

Review comment:
   Yeah, when I need more time in C++ again after ACE is gone...





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> C++ client defaults statistic-sampling-enabled to true
> --
>
> Key: GEODE-8181
> URL: https://issues.apache.org/jira/browse/GEODE-8181
> Project: Geode
>  Issue Type: Bug
>Reporter: Jacob Barrett
>Assignee: Jacob Barrett
>Priority: Major
>
> The Geode documentation, Java client and server all say the default value is 
> {{false}} but the C++ client library sets the default to {{true}}. This 
> causes files to be generated when it is not expected. It can cause failures 
> were writing to the current working directory is not allowed. Causes file 
> access violations if two caches are created in the same process space without 
> setting unique files or explicitly disabling.
> https://geode.apache.org/docs/guide/12/reference/topics/gemfire_properties.html



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-6641) Add support for two phase commit transactions

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-6641?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118812#comment-17118812
 ] 

ASF GitHub Bot commented on GEODE-6641:
---

pdxcodemonkey merged pull request #603:
URL: https://github.com/apache/geode-native/pull/603


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Add support for two phase commit transactions
> -
>
> Key: GEODE-6641
> URL: https://issues.apache.org/jira/browse/GEODE-6641
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Mario Ivanac
>Assignee: Mario Ivanac
>Priority: Major
>  Labels: needs-review, pull-request-available
> Fix For: 1.10.0
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Add in geode-native public API support for two phase commit transactions.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-6641) Add support for two phase commit transactions

2020-05-28 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-6641?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118811#comment-17118811
 ] 

ASF subversion and git services commented on GEODE-6641:


Commit a1f92449c76bc9041a60e8f7a310ded5f85926bb in geode-native's branch 
refs/heads/develop from M. Oleske
[ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=a1f9244 ]

GEODE-6641: Add ClientTransactionXATest to run (#603)

- sort integration tests in CMakeLists

> Add support for two phase commit transactions
> -
>
> Key: GEODE-6641
> URL: https://issues.apache.org/jira/browse/GEODE-6641
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Mario Ivanac
>Assignee: Mario Ivanac
>Priority: Major
>  Labels: needs-review, pull-request-available
> Fix For: 1.10.0
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Add in geode-native public API support for two phase commit transactions.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8181) C++ client defaults statistic-sampling-enabled to true

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118807#comment-17118807
 ] 

ASF GitHub Bot commented on GEODE-8181:
---

pdxcodemonkey commented on a change in pull request #606:
URL: https://github.com/apache/geode-native/pull/606#discussion_r431915373



##
File path: cppcache/integration-test/resources/system.properties
##
@@ -14,7 +14,7 @@
 # limitations under the License.
 # All the configurable parameters.
 statistic-sample-rate=700s
-statistic-sampling-enabled=false
+statistic-sampling-enabled=true

Review comment:
   Ugh.  I'd ask that we rename this file to reflect that it's 
test-case-specific, but I think time is better spent just getting rid of the 
old tests in general.  Thanks for the clarification.





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> C++ client defaults statistic-sampling-enabled to true
> --
>
> Key: GEODE-8181
> URL: https://issues.apache.org/jira/browse/GEODE-8181
> Project: Geode
>  Issue Type: Bug
>Reporter: Jacob Barrett
>Assignee: Jacob Barrett
>Priority: Major
>
> The Geode documentation, Java client and server all say the default value is 
> {{false}} but the C++ client library sets the default to {{true}}. This 
> causes files to be generated when it is not expected. It can cause failures 
> were writing to the current working directory is not allowed. Causes file 
> access violations if two caches are created in the same process space without 
> setting unique files or explicitly disabling.
> https://geode.apache.org/docs/guide/12/reference/topics/gemfire_properties.html



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8181) C++ client defaults statistic-sampling-enabled to true

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118798#comment-17118798
 ] 

ASF GitHub Bot commented on GEODE-8181:
---

pivotal-jbarrett commented on a change in pull request #606:
URL: https://github.com/apache/geode-native/pull/606#discussion_r431913457



##
File path: cppcache/integration-test/resources/system.properties
##
@@ -14,7 +14,7 @@
 # limitations under the License.
 # All the configurable parameters.
 statistic-sample-rate=700s
-statistic-sampling-enabled=false
+statistic-sampling-enabled=true

Review comment:
   No it’s used by a single integration test.





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> C++ client defaults statistic-sampling-enabled to true
> --
>
> Key: GEODE-8181
> URL: https://issues.apache.org/jira/browse/GEODE-8181
> Project: Geode
>  Issue Type: Bug
>Reporter: Jacob Barrett
>Assignee: Jacob Barrett
>Priority: Major
>
> The Geode documentation, Java client and server all say the default value is 
> {{false}} but the C++ client library sets the default to {{true}}. This 
> causes files to be generated when it is not expected. It can cause failures 
> were writing to the current working directory is not allowed. Causes file 
> access violations if two caches are created in the same process space without 
> setting unique files or explicitly disabling.
> https://geode.apache.org/docs/guide/12/reference/topics/gemfire_properties.html



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8181) C++ client defaults statistic-sampling-enabled to true

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118794#comment-17118794
 ] 

ASF GitHub Bot commented on GEODE-8181:
---

pivotal-jbarrett commented on a change in pull request #606:
URL: https://github.com/apache/geode-native/pull/606#discussion_r431913049



##
File path: cppcache/integration-test/testSystemProperties.cpp
##
@@ -51,7 +51,7 @@ BEGIN_TEST(DEFAULT)
 ASSERT(
 systemProperties->statisticsSampleInterval() == 
std::chrono::seconds(1),
 "expected 1");
-ASSERT(systemProperties->statisticsEnabled() == true, "expected true");
+ASSERT(systemProperties->statisticsEnabled() == false, "expected true");

Review comment:
   Ha! Details!





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> C++ client defaults statistic-sampling-enabled to true
> --
>
> Key: GEODE-8181
> URL: https://issues.apache.org/jira/browse/GEODE-8181
> Project: Geode
>  Issue Type: Bug
>Reporter: Jacob Barrett
>Assignee: Jacob Barrett
>Priority: Major
>
> The Geode documentation, Java client and server all say the default value is 
> {{false}} but the C++ client library sets the default to {{true}}. This 
> causes files to be generated when it is not expected. It can cause failures 
> were writing to the current working directory is not allowed. Causes file 
> access violations if two caches are created in the same process space without 
> setting unique files or explicitly disabling.
> https://geode.apache.org/docs/guide/12/reference/topics/gemfire_properties.html



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8181) C++ client defaults statistic-sampling-enabled to true

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118790#comment-17118790
 ] 

ASF GitHub Bot commented on GEODE-8181:
---

pdxcodemonkey commented on a change in pull request #606:
URL: https://github.com/apache/geode-native/pull/606#discussion_r431908122



##
File path: cppcache/integration-test/testSystemProperties.cpp
##
@@ -80,7 +80,7 @@ BEGIN_TEST(NEW_CONFIG)
std::chrono::seconds(700),
"expected 700");
 
-ASSERT(systemProperties->statisticsEnabled() == false, "expected false");
+ASSERT(systemProperties->statisticsEnabled() == true, "expected false");

Review comment:
   Same here

##
File path: cppcache/integration-test/testSystemProperties.cpp
##
@@ -51,7 +51,7 @@ BEGIN_TEST(DEFAULT)
 ASSERT(
 systemProperties->statisticsSampleInterval() == 
std::chrono::seconds(1),
 "expected 1");
-ASSERT(systemProperties->statisticsEnabled() == true, "expected true");
+ASSERT(systemProperties->statisticsEnabled() == false, "expected true");

Review comment:
   The string description should now be "expected false," no?

##
File path: cppcache/integration-test/resources/system.properties
##
@@ -14,7 +14,7 @@
 # limitations under the License.
 # All the configurable parameters.
 statistic-sample-rate=700s
-statistic-sampling-enabled=false
+statistic-sampling-enabled=true

Review comment:
   I don't understand this change.  Doesn't this change the value to true 
for _all_ integration tests now?  I thought only the expiration tests required 
this, i.e. the two places where you're now explicitly enabling them in test 
code.





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> C++ client defaults statistic-sampling-enabled to true
> --
>
> Key: GEODE-8181
> URL: https://issues.apache.org/jira/browse/GEODE-8181
> Project: Geode
>  Issue Type: Bug
>Reporter: Jacob Barrett
>Assignee: Jacob Barrett
>Priority: Major
>
> The Geode documentation, Java client and server all say the default value is 
> {{false}} but the C++ client library sets the default to {{true}}. This 
> causes files to be generated when it is not expected. It can cause failures 
> were writing to the current working directory is not allowed. Causes file 
> access violations if two caches are created in the same process space without 
> setting unique files or explicitly disabling.
> https://geode.apache.org/docs/guide/12/reference/topics/gemfire_properties.html



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (GEODE-8183) Travis Dockerfile doesn't match committed Dockerfile

2020-05-28 Thread Blake Bender (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8183?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Blake Bender closed GEODE-8183.
---

> Travis Dockerfile doesn't match committed Dockerfile
> 
>
> Key: GEODE-8183
> URL: https://issues.apache.org/jira/browse/GEODE-8183
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Michael Oleske
>Priority: Major
>
> I'm not sure how geode-native keeps the Travis Dockerfile up to date, but it 
> is not with the committed one.  The docker image currently used by Travis has 
> geode 1.12 while the committed one uses 1.9.  It also fails to build because 
> tzdata is interactive.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (GEODE-8183) Travis Dockerfile doesn't match committed Dockerfile

2020-05-28 Thread Blake Bender (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8183?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Blake Bender resolved GEODE-8183.
-
Resolution: Fixed

> Travis Dockerfile doesn't match committed Dockerfile
> 
>
> Key: GEODE-8183
> URL: https://issues.apache.org/jira/browse/GEODE-8183
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Michael Oleske
>Priority: Major
>
> I'm not sure how geode-native keeps the Travis Dockerfile up to date, but it 
> is not with the committed one.  The docker image currently used by Travis has 
> geode 1.12 while the committed one uses 1.9.  It also fails to build because 
> tzdata is interactive.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (GEODE-8184) Enforece no-extra-semi

2020-05-28 Thread Blake Bender (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8184?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Blake Bender resolved GEODE-8184.
-
Resolution: Fixed

> Enforece no-extra-semi
> --
>
> Key: GEODE-8184
> URL: https://issues.apache.org/jira/browse/GEODE-8184
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Oleske
>Priority: Major
>
> {{no-extra-semi}} was added as an exception to warnings as errors.  This has 
> a todo and should be enforced.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (GEODE-8184) Enforece no-extra-semi

2020-05-28 Thread Blake Bender (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8184?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Blake Bender closed GEODE-8184.
---

> Enforece no-extra-semi
> --
>
> Key: GEODE-8184
> URL: https://issues.apache.org/jira/browse/GEODE-8184
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Oleske
>Priority: Major
>
> {{no-extra-semi}} was added as an exception to warnings as errors.  This has 
> a todo and should be enforced.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8176) CI Failure: ClientServerMiscBCDUnitTest > testPingWrongServer[1]

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8176?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118777#comment-17118777
 ] 

ASF GitHub Bot commented on GEODE-8176:
---

alb3rtobr opened a new pull request #5176:
URL: https://github.com/apache/geode/pull/5176


   Hi @metatype 
   I have been trying to reproduce the failure reported in the ticket, but I 
have not been able to do it yet.
   I dont know if you have progressed with this issue but just in case I think 
that we could add these checks to the test case in develop branch to have more 
information next time it appears.



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> CI Failure: ClientServerMiscBCDUnitTest > testPingWrongServer[1] 
> -
>
> Key: GEODE-8176
> URL: https://issues.apache.org/jira/browse/GEODE-8176
> Project: Geode
>  Issue Type: Bug
>Reporter: Donal Evans
>Assignee: Anthony Baker
>Priority: Major
>
> Failed in 
> https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/UpgradeTestOpenJDK8/builds/192#A
> {noformat}
> org.apache.geode.internal.cache.tier.sockets.ClientServerMiscBCDUnitTest > 
> testPingWrongServer[1] FAILED
> org.apache.geode.test.dunit.RMIException: While invoking 
> org.apache.geode.internal.cache.tier.sockets.ClientServerMiscDUnitTestBase$$Lambda$310/201549247.run
>  in VM 3 running on Host c0a964e32781 with 5 VMs
> Caused by:
> org.junit.ComparisonFailure: expected:<[tru]e> but was:<[fals]e>
> {noformat}
> I ran the test 200 times locally with no failure, so this is possibly just a 
> blip.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-6641) Add support for two phase commit transactions

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-6641?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118753#comment-17118753
 ] 

ASF GitHub Bot commented on GEODE-6641:
---

codecov-commenter commented on pull request #603:
URL: https://github.com/apache/geode-native/pull/603#issuecomment-635385889


   # [Codecov](https://codecov.io/gh/apache/geode-native/pull/603?src=pr=h1) 
Report
   > Merging 
[#603](https://codecov.io/gh/apache/geode-native/pull/603?src=pr=desc) into 
[develop](https://codecov.io/gh/apache/geode-native/commit/35b6d5260b2c04cf25e84b34d38bacbf56f0445e=desc)
 will **decrease** coverage by `0.06%`.
   > The diff coverage is `n/a`.
   
   [![Impacted file tree 
graph](https://codecov.io/gh/apache/geode-native/pull/603/graphs/tree.svg?width=650=150=pr=plpAqoqGag)](https://codecov.io/gh/apache/geode-native/pull/603?src=pr=tree)
   
   ```diff
   @@ Coverage Diff @@
   ##   develop #603  +/-   ##
   ===
   - Coverage73.42%   73.35%   -0.07% 
   ===
 Files  639  639  
 Lines5092650926  
   ===
   - Hits 3739037356  -34 
   - Misses   1353613570  +34 
   ```
   
   
   | [Impacted 
Files](https://codecov.io/gh/apache/geode-native/pull/603?src=pr=tree) | 
Coverage Δ | |
   |---|---|---|
   | 
[cppcache/src/ReadWriteLock.cpp](https://codecov.io/gh/apache/geode-native/pull/603/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL1JlYWRXcml0ZUxvY2suY3Bw)
 | `81.25% <0.00%> (-18.75%)` | :arrow_down: |
   | 
[cppcache/src/ThinClientStickyManager.cpp](https://codecov.io/gh/apache/geode-native/pull/603/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL1RoaW5DbGllbnRTdGlja3lNYW5hZ2VyLmNwcA==)
 | `77.88% <0.00%> (-10.58%)` | :arrow_down: |
   | 
[cppcache/src/ServerLocation.hpp](https://codecov.io/gh/apache/geode-native/pull/603/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL1NlcnZlckxvY2F0aW9uLmhwcA==)
 | `85.41% <0.00%> (-4.17%)` | :arrow_down: |
   | 
[...tion-test/testThinClientRemoteQueryFailoverPdx.cpp](https://codecov.io/gh/apache/geode-native/pull/603/diff?src=pr=tree#diff-Y3BwY2FjaGUvaW50ZWdyYXRpb24tdGVzdC90ZXN0VGhpbkNsaWVudFJlbW90ZVF1ZXJ5RmFpbG92ZXJQZHguY3Bw)
 | `85.48% <0.00%> (-4.04%)` | :arrow_down: |
   | 
[cppcache/src/ThinClientBaseDM.cpp](https://codecov.io/gh/apache/geode-native/pull/603/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL1RoaW5DbGllbnRCYXNlRE0uY3Bw)
 | `67.51% <0.00%> (-2.55%)` | :arrow_down: |
   | 
[cppcache/src/ClientMetadata.cpp](https://codecov.io/gh/apache/geode-native/pull/603/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0NsaWVudE1ldGFkYXRhLmNwcA==)
 | `65.43% <0.00%> (-1.24%)` | :arrow_down: |
   | 
[cppcache/src/TcrEndpoint.cpp](https://codecov.io/gh/apache/geode-native/pull/603/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL1RjckVuZHBvaW50LmNwcA==)
 | `54.97% <0.00%> (-1.13%)` | :arrow_down: |
   | 
[cppcache/src/ThinClientRedundancyManager.cpp](https://codecov.io/gh/apache/geode-native/pull/603/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL1RoaW5DbGllbnRSZWR1bmRhbmN5TWFuYWdlci5jcHA=)
 | `74.84% <0.00%> (-1.10%)` | :arrow_down: |
   | 
[cppcache/src/RemoteQuery.cpp](https://codecov.io/gh/apache/geode-native/pull/603/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL1JlbW90ZVF1ZXJ5LmNwcA==)
 | `75.53% <0.00%> (-1.07%)` | :arrow_down: |
   | 
[cppcache/src/TcrConnection.cpp](https://codecov.io/gh/apache/geode-native/pull/603/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL1RjckNvbm5lY3Rpb24uY3Bw)
 | `71.33% <0.00%> (-0.95%)` | :arrow_down: |
   | ... and [11 
more](https://codecov.io/gh/apache/geode-native/pull/603/diff?src=pr=tree-more)
 | |
   
   --
   
   [Continue to review full report at 
Codecov](https://codecov.io/gh/apache/geode-native/pull/603?src=pr=continue).
   > **Legend** - [Click here to learn 
more](https://docs.codecov.io/docs/codecov-delta)
   > `Δ = absolute  (impact)`, `ø = not affected`, `? = missing data`
   > Powered by 
[Codecov](https://codecov.io/gh/apache/geode-native/pull/603?src=pr=footer). 
Last update 
[35b6d52...f42e1f4](https://codecov.io/gh/apache/geode-native/pull/603?src=pr=lastupdated).
 Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Add support for two phase commit transactions
> -
>
> Key: GEODE-6641
> URL: https://issues.apache.org/jira/browse/GEODE-6641
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>   

[jira] [Commented] (GEODE-8184) Enforece no-extra-semi

2020-05-28 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8184?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118724#comment-17118724
 ] 

ASF subversion and git services commented on GEODE-8184:


Commit 7ed0bc5f369e3e30f437fc71652ae02c4d6bc18c in geode-native's branch 
refs/heads/develop from M. Oleske
[ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=7ed0bc5 ]

GEODE-8184: Enforce no-extra-semi as error (#605)



> Enforece no-extra-semi
> --
>
> Key: GEODE-8184
> URL: https://issues.apache.org/jira/browse/GEODE-8184
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Oleske
>Priority: Major
>
> {{no-extra-semi}} was added as an exception to warnings as errors.  This has 
> a todo and should be enforced.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8184) Enforece no-extra-semi

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8184?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118725#comment-17118725
 ] 

ASF GitHub Bot commented on GEODE-8184:
---

pdxcodemonkey merged pull request #605:
URL: https://github.com/apache/geode-native/pull/605


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Enforece no-extra-semi
> --
>
> Key: GEODE-8184
> URL: https://issues.apache.org/jira/browse/GEODE-8184
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Oleske
>Priority: Major
>
> {{no-extra-semi}} was added as an exception to warnings as errors.  This has 
> a todo and should be enforced.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8166) Change redis expiration commands to use function+delta

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118490#comment-17118490
 ] 

ASF GitHub Bot commented on GEODE-8166:
---

dschneider-pivotal closed pull request #5137:
URL: https://github.com/apache/geode/pull/5137


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Change redis expiration commands to use function+delta
> --
>
> Key: GEODE-8166
> URL: https://issues.apache.org/jira/browse/GEODE-8166
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> The redis expiration commands (expire, pexpire, expireat, pexpireat, ttl, 
> pttl, and persist) need to be reimplemented to use the new function+delta 
> data model. They should also be careful to work correctly in a multi-node 
> cluster if one of the servers die.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8166) Change redis expiration commands to use function+delta

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118492#comment-17118492
 ] 

ASF GitHub Bot commented on GEODE-8166:
---

dschneider-pivotal commented on pull request #5137:
URL: https://github.com/apache/geode/pull/5137#issuecomment-635229163


   closing in favor of: https://github.com/apache/geode/pull/5174



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Change redis expiration commands to use function+delta
> --
>
> Key: GEODE-8166
> URL: https://issues.apache.org/jira/browse/GEODE-8166
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> The redis expiration commands (expire, pexpire, expireat, pexpireat, ttl, 
> pttl, and persist) need to be reimplemented to use the new function+delta 
> data model. They should also be careful to work correctly in a multi-node 
> cluster if one of the servers die.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8119) Threads are not properly closed when offline disk-store commands are invoked

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118455#comment-17118455
 ] 

ASF GitHub Bot commented on GEODE-8119:
---

mkevo commented on a change in pull request #5167:
URL: https://github.com/apache/geode/pull/5167#discussion_r431672982



##
File path: 
geode-core/src/upgradeTest/java/org/apache/geode/internal/cache/Geode8119RegressionDistributedTest.java
##
@@ -0,0 +1,170 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+
+package org.apache.geode.internal.cache;
+
+import static org.apache.geode.distributed.ConfigurationProperties.LOCATORS;
+import static org.apache.geode.distributed.ConfigurationProperties.MCAST_PORT;
+import static 
org.apache.geode.distributed.ConfigurationProperties.START_LOCATOR;
+import static 
org.apache.geode.internal.AvailablePortHelper.getRandomAvailableTCPPortsForDUnitSite;
+import static org.apache.geode.test.awaitility.GeodeAwaitility.await;
+import static org.apache.geode.test.dunit.VM.getVM;
+import static org.assertj.core.api.Assertions.assertThat;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.Serializable;
+import java.util.Arrays;
+import java.util.Properties;
+import java.util.stream.Collectors;
+import java.util.stream.IntStream;
+
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+
+import org.apache.geode.cache.DiskStoreFactory;
+import org.apache.geode.cache.Region;
+import org.apache.geode.cache.RegionShortcut;
+import org.apache.geode.distributed.internal.InternalDistributedSystem;
+import org.apache.geode.internal.serialization.Version;
+import org.apache.geode.test.dunit.Host;
+import org.apache.geode.test.dunit.VM;
+import org.apache.geode.test.dunit.rules.CacheRule;
+import org.apache.geode.test.dunit.rules.DistributedRule;
+import org.apache.geode.test.junit.rules.GfshCommandRule;
+import 
org.apache.geode.test.junit.rules.serializable.SerializableTemporaryFolder;
+
+@RunWith(Parameterized.class)
+public class Geode8119RegressionDistributedTest implements Serializable {
+  private static final String REGION_NAME = "TestRegion";
+  private static final String DISK_STORE_ID = "testDisk";
+
+  @Rule
+  public CacheRule cacheRule = new CacheRule();
+
+  @Rule
+  public transient GfshCommandRule gfsh = new GfshCommandRule();
+
+  @Rule
+  public DistributedRule distributedRule = new DistributedRule();
+
+  @Rule
+  public SerializableTemporaryFolder temporaryFolder = new 
SerializableTemporaryFolder();
+
+  @Parameterized.Parameter
+  public RegionShortcut regionShortcut;
+
+  @Parameterized.Parameters(name = "RegionType={0}")
+  public static Iterable data() {
+return Arrays.asList(RegionShortcut.PARTITION_PERSISTENT, 
RegionShortcut.REPLICATE_PERSISTENT);
+  }
+
+  private Properties createLocatorConfiguration(int localLocatorPort) {
+Properties config = new Properties();
+config.setProperty(MCAST_PORT, "0");
+config.setProperty(LOCATORS, "localhost[" + localLocatorPort + ']');
+config.setProperty(START_LOCATOR,
+"localhost[" + localLocatorPort + 
"],server=true,peer=true,hostname-for-clients=localhost");
+
+return config;
+  }
+
+  private Properties createServerConfiguration(int localLocatorPort) {
+Properties config = new Properties();
+config.setProperty(MCAST_PORT, "0");
+config.setProperty(LOCATORS, "localhost[" + localLocatorPort + ']');
+
+return config;
+  }
+
+  private void createDiskStore(File[] diskStoreDirectories) {
+DiskStoreFactory diskStoreFactory = 
cacheRule.getCache().createDiskStoreFactory();
+diskStoreFactory.setMaxOplogSize(1);
+diskStoreFactory.setAutoCompact(true);
+diskStoreFactory.setAllowForceCompaction(true);
+diskStoreFactory.setDiskDirs(diskStoreDirectories);
+
+diskStoreFactory.create(DISK_STORE_ID);
+  }
+
+  private void createRegion() {
+cacheRule.getCache()
+.createRegionFactory(regionShortcut)
+.setDiskStoreName(DISK_STORE_ID)
+.create(REGION_NAME);
+  }
+
+  private void createServerWithRegionAndPersistentRegion(File[] 
diskStoreDirectories) 

[jira] [Commented] (GEODE-8119) Threads are not properly closed when offline disk-store commands are invoked

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118454#comment-17118454
 ] 

ASF GitHub Bot commented on GEODE-8119:
---

mkevo commented on a change in pull request #5167:
URL: https://github.com/apache/geode/pull/5167#discussion_r431672982



##
File path: 
geode-core/src/upgradeTest/java/org/apache/geode/internal/cache/Geode8119RegressionDistributedTest.java
##
@@ -0,0 +1,170 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+
+package org.apache.geode.internal.cache;
+
+import static org.apache.geode.distributed.ConfigurationProperties.LOCATORS;
+import static org.apache.geode.distributed.ConfigurationProperties.MCAST_PORT;
+import static 
org.apache.geode.distributed.ConfigurationProperties.START_LOCATOR;
+import static 
org.apache.geode.internal.AvailablePortHelper.getRandomAvailableTCPPortsForDUnitSite;
+import static org.apache.geode.test.awaitility.GeodeAwaitility.await;
+import static org.apache.geode.test.dunit.VM.getVM;
+import static org.assertj.core.api.Assertions.assertThat;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.Serializable;
+import java.util.Arrays;
+import java.util.Properties;
+import java.util.stream.Collectors;
+import java.util.stream.IntStream;
+
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+
+import org.apache.geode.cache.DiskStoreFactory;
+import org.apache.geode.cache.Region;
+import org.apache.geode.cache.RegionShortcut;
+import org.apache.geode.distributed.internal.InternalDistributedSystem;
+import org.apache.geode.internal.serialization.Version;
+import org.apache.geode.test.dunit.Host;
+import org.apache.geode.test.dunit.VM;
+import org.apache.geode.test.dunit.rules.CacheRule;
+import org.apache.geode.test.dunit.rules.DistributedRule;
+import org.apache.geode.test.junit.rules.GfshCommandRule;
+import 
org.apache.geode.test.junit.rules.serializable.SerializableTemporaryFolder;
+
+@RunWith(Parameterized.class)
+public class Geode8119RegressionDistributedTest implements Serializable {
+  private static final String REGION_NAME = "TestRegion";
+  private static final String DISK_STORE_ID = "testDisk";
+
+  @Rule
+  public CacheRule cacheRule = new CacheRule();
+
+  @Rule
+  public transient GfshCommandRule gfsh = new GfshCommandRule();
+
+  @Rule
+  public DistributedRule distributedRule = new DistributedRule();
+
+  @Rule
+  public SerializableTemporaryFolder temporaryFolder = new 
SerializableTemporaryFolder();
+
+  @Parameterized.Parameter
+  public RegionShortcut regionShortcut;
+
+  @Parameterized.Parameters(name = "RegionType={0}")
+  public static Iterable data() {
+return Arrays.asList(RegionShortcut.PARTITION_PERSISTENT, 
RegionShortcut.REPLICATE_PERSISTENT);
+  }
+
+  private Properties createLocatorConfiguration(int localLocatorPort) {
+Properties config = new Properties();
+config.setProperty(MCAST_PORT, "0");
+config.setProperty(LOCATORS, "localhost[" + localLocatorPort + ']');
+config.setProperty(START_LOCATOR,
+"localhost[" + localLocatorPort + 
"],server=true,peer=true,hostname-for-clients=localhost");
+
+return config;
+  }
+
+  private Properties createServerConfiguration(int localLocatorPort) {
+Properties config = new Properties();
+config.setProperty(MCAST_PORT, "0");
+config.setProperty(LOCATORS, "localhost[" + localLocatorPort + ']');
+
+return config;
+  }
+
+  private void createDiskStore(File[] diskStoreDirectories) {
+DiskStoreFactory diskStoreFactory = 
cacheRule.getCache().createDiskStoreFactory();
+diskStoreFactory.setMaxOplogSize(1);
+diskStoreFactory.setAutoCompact(true);
+diskStoreFactory.setAllowForceCompaction(true);
+diskStoreFactory.setDiskDirs(diskStoreDirectories);
+
+diskStoreFactory.create(DISK_STORE_ID);
+  }
+
+  private void createRegion() {
+cacheRule.getCache()
+.createRegionFactory(regionShortcut)
+.setDiskStoreName(DISK_STORE_ID)
+.create(REGION_NAME);
+  }
+
+  private void createServerWithRegionAndPersistentRegion(File[] 
diskStoreDirectories) 

[jira] [Commented] (GEODE-8119) Threads are not properly closed when offline disk-store commands are invoked

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118442#comment-17118442
 ] 

ASF GitHub Bot commented on GEODE-8119:
---

mkevo commented on pull request #5167:
URL: https://github.com/apache/geode/pull/5167#issuecomment-635198597


   I tried to run it and it failed with:
   ```
   [Could not find: "/tmp/junit5454972723589376526/diskDir2/BACKUPtestDisk.if, 
/tmp/junit5454972723589376526/diskDir3/BACKUPtestDisk.if"
   ] expected:<[OK]> but was:<[ERROR]>
   ```
   
   Also I tried to run it locally on the gfsh(without my changes) and see that 
if you create disk-store with multiple dirs added it will create this .if file 
only in first dir, and when doing validate it can't found it in other dirs.



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Threads are not properly closed when offline disk-store commands are invoked
> 
>
> Key: GEODE-8119
> URL: https://issues.apache.org/jira/browse/GEODE-8119
> Project: Geode
>  Issue Type: Bug
>  Components: gfsh
>Reporter: Mario Kevo
>Assignee: Mario Kevo
>Priority: Major
>
> Threads can be opened when you are online and offline, but close only when 
> you are online. Once some offline command started thread it cannot be closed 
> and after some time if there is a bigger number of this threads it can lead 
> to OOM exception.
> Also the problem is that its validating only disk-dirs but not diskStore 
> name. So thread can be created but there is no diskStore with that name and 
> it will also hang.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-8193) Broken link in statistics list

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118429#comment-17118429
 ] 

ASF GitHub Bot commented on GEODE-8193:
---

alb3rtobr commented on pull request #5166:
URL: https://github.com/apache/geode/pull/5166#issuecomment-635191929


   > Looks good to me. Thanks for the fix.
   
   Could you merge the PR? Im not a committer so I dont have permissions to do 
it. Thanks.



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Broken link in statistics list
> --
>
> Key: GEODE-8193
> URL: https://issues.apache.org/jira/browse/GEODE-8193
> Project: Geode
>  Issue Type: Improvement
>  Components: docs
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
>  Labels: pull-request-available
>
> The link of region entry heap-based eviction is wrong and shows the html 
> anchor id in the statistics lists:
>  * Region Entry Eviction - Heap-based eviction 
> (HeapLRUStatistics)#section_3B74F6FA08A374FBD92AA23047929B4F)
> [https://geode.apache.org/docs/guide/112/reference/statistics_list.html]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (GEODE-2484) Remove ACE from native client dependencies

2020-05-28 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-2484?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17118371#comment-17118371
 ] 

ASF GitHub Bot commented on GEODE-2484:
---

codecov-commenter commented on pull request #607:
URL: https://github.com/apache/geode-native/pull/607#issuecomment-635137877


   # [Codecov](https://codecov.io/gh/apache/geode-native/pull/607?src=pr=h1) 
Report
   > Merging 
[#607](https://codecov.io/gh/apache/geode-native/pull/607?src=pr=desc) into 
[develop](https://codecov.io/gh/apache/geode-native/commit/35b6d5260b2c04cf25e84b34d38bacbf56f0445e=desc)
 will **decrease** coverage by `0.03%`.
   > The diff coverage is `85.53%`.
   
   [![Impacted file tree 
graph](https://codecov.io/gh/apache/geode-native/pull/607/graphs/tree.svg?width=650=150=pr=plpAqoqGag)](https://codecov.io/gh/apache/geode-native/pull/607?src=pr=tree)
   
   ```diff
   @@ Coverage Diff @@
   ##   develop #607  +/-   ##
   ===
   - Coverage73.42%   73.38%   -0.04% 
   ===
 Files  639  641   +2 
 Lines5092650984  +58 
   ===
   + Hits 3739037414  +24 
   - Misses   1353613570  +34 
   ```
   
   
   | [Impacted 
Files](https://codecov.io/gh/apache/geode-native/pull/607?src=pr=tree) | 
Coverage Δ | |
   |---|---|---|
   | 
[cppcache/include/geode/CacheableString.hpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvaW5jbHVkZS9nZW9kZS9DYWNoZWFibGVTdHJpbmcuaHBw)
 | `96.07% <ø> (ø)` | |
   | 
[cppcache/src/AdminRegion.cpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0FkbWluUmVnaW9uLmNwcA==)
 | `40.67% <0.00%> (-31.74%)` | :arrow_down: |
   | 
[cppcache/src/AdminRegion.hpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0FkbWluUmVnaW9uLmhwcA==)
 | `100.00% <ø> (ø)` | |
   | 
[cppcache/src/CacheImpl.cpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0NhY2hlSW1wbC5jcHA=)
 | `77.98% <ø> (ø)` | |
   | 
[cppcache/src/CacheImpl.hpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0NhY2hlSW1wbC5ocHA=)
 | `97.56% <ø> (+2.43%)` | :arrow_up: |
   | 
[cppcache/src/ClientProxyMembershipID.hpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0NsaWVudFByb3h5TWVtYmVyc2hpcElELmhwcA==)
 | `82.60% <ø> (ø)` | |
   | 
[cppcache/src/ClientProxyMembershipIDFactory.hpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0NsaWVudFByb3h5TWVtYmVyc2hpcElERmFjdG9yeS5ocHA=)
 | `100.00% <ø> (ø)` | |
   | 
[cppcache/src/DistributedSystemImpl.cpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0Rpc3RyaWJ1dGVkU3lzdGVtSW1wbC5jcHA=)
 | `66.66% <ø> (ø)` | |
   | 
[...che/src/InternalCacheTransactionManager2PCImpl.cpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL0ludGVybmFsQ2FjaGVUcmFuc2FjdGlvbk1hbmFnZXIyUENJbXBsLmNwcA==)
 | `32.18% <0.00%> (-0.76%)` | :arrow_down: |
   | 
[cppcache/src/SystemProperties.cpp](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree#diff-Y3BwY2FjaGUvc3JjL1N5c3RlbVByb3BlcnRpZXMuY3Bw)
 | `88.17% <ø> (ø)` | |
   | ... and [56 
more](https://codecov.io/gh/apache/geode-native/pull/607/diff?src=pr=tree-more)
 | |
   
   --
   
   [Continue to review full report at 
Codecov](https://codecov.io/gh/apache/geode-native/pull/607?src=pr=continue).
   > **Legend** - [Click here to learn 
more](https://docs.codecov.io/docs/codecov-delta)
   > `Δ = absolute  (impact)`, `ø = not affected`, `? = missing data`
   > Powered by 
[Codecov](https://codecov.io/gh/apache/geode-native/pull/607?src=pr=footer). 
Last update 
[35b6d52...319cc6e](https://codecov.io/gh/apache/geode-native/pull/607?src=pr=lastupdated).
 Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Remove ACE from native client dependencies
> --
>
> Key: GEODE-2484
> URL: https://issues.apache.org/jira/browse/GEODE-2484
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: David Kimura
>Priority: Major
>  Labels: pull-request-available
> Fix For: 1.9.0
>
>